본문 바로가기
지식 아카이브/정보처리기사

2020 정보처리기사 실기 대비 내용 정리 21-30

by canoe726 2020. 10. 18.
728x90

2020 정보처리기사 실기를 대비하기 위해 보았던 관련 실기 책의 내용을 정리한 노트를 공유하는 포스팅입니다.

 

정보처리기사 실기를 공부하면서 개인적으로 중요하다고 생각되는 부분을 모아 정리하였습니다.

 

2020년 실기 3회 까지는 개념에 대한 설명 (서술형), 설명하는 개념에 대한 정답 서술 (단답형), SQL, 프로그래밍 (C++, Java, Python) 정도의 유형으로 출제되는 것 같습니다.

 

 

 

- 키워드 : 테스트 케이스, 프로세스, 프레임워크, 테스트의 원칙, 시스템 명세서, UI 설계원칙, 테스트 분류, 통합 테스트, XML

 


21. 테스트 케이스

- 정의 : 요구 사항을 준수하는지 검증하기 위한 테스트 조건, 입력값, 결과 등 테스트 조건을 명시한 것

 

- 설계 기법

 

1) 명세기반 테스트 : 동등분할, 경계값 분석, 의사결정 테이블, 직교배열

 

2) 구조기반 테스트 : 구문 커버리지, 조건 커버리지, 다중조건 커버리지

 

3) 경험기반 테스트 : 탐색적, 오류추정, 체크리스트 기반, 특성 테스트

 


22. 테스트 프로세스 구성 및 단계

- 절차 : 계획/제거 -> 분석/설계 -> 구현/실행 -> 평가 -> 완료

 


23. 프로세스

 

- 정의 : 한 개 이상의 정보자원의 입력을 통해 가치있는 산출물을 제공하는 모든 관련 활동들의 집합

 

- 필수 구성 요소 : 책임자, 맵, Task 정의서, 성과지표, 조직, 경영자의 리더쉽

 

 

24. 프레임 워크

- 정의 : 빠르게 개발할 수 있도록 기본적으로 필요한 기능을 갖추고 있는 것, 라이브러리, 인터페이스, 설정 정보의 집합

 

ex) Java - Spring, Python - Django, Javascript - Angluar

 

- 특징

 

1) 모듈화 (캡슐화)

 

2) 재사용성 (성능, 신뢰성, 상호운용성 향상)

 

3) 확장성 (다형성)

 

4) 제어의 역흐름 (제어 : 프레임워크 -> 애플리케이션)


25. 소프트웨어 테스트의 원칙 (기능적, 비기능적 요소의 결함을 찾는 활동)

1) 개발자가 자신이 개발한 프로그램 및 소스코드를 테스트하지 않는다.

 

2) 낚시의 법칙 : 특정 기능, 모듈, 라이브러리에서 결함이 많이 발견됨

 

3) 파레토의 법칙 : 전체결함의 80%는 전체기능의 20%에 집중되어 있다.

 

4) 완벽한 테스팅은 불가능하다.

 

5) 테스트는 계획 단계부터 해야 한다.

 

6) 살충제 패러독스 : 정기적으로 테스트케이스 리뷰 및 새로운 테스트케이스를 추가해야 한다.

 

7) 오류 부재의 궤변 : 사용자 요구사항을 반영하지 않고 사용성이 낮은 SW는 잘 개발되었어도 품질이 낮다.



26. 명세서

 

1) 시스템 인터페이스 명세서 : 한 시스템의 인터페이스 현황을 확인하기 위하여 시스템이 갖는 인터페이스 목록과 인터페이스 명세를 보여주는 설계문서

 

2) 컴포넌트 명세서 : 컴포넌트의 개요 및 내부 클래스의 동작, 인터페이스를 통해 외부와 통신하는 명세를 정의한다.

 

3) 인터페이스 명세서 : 컴포넌트 명세서에 명시된 인터페이스 클래스의 세부적인 조건 및 기능을 명시한 명세서이다.

 

* XML (eXtensible Markup Language) : 다목적 마크업 언어, 다른 종류의 데이터 기술에 사용가능, 데이터를 주고 받는 목적으로 사용됨

 


27. UI 설계원칙

1) 직관성 : 누구나 큰 노력 없이 쉽게 이해하고 사용 및 제작

 

2) 유효성 : 사용목적이 정확하고 완벽하게 달성될 수 있도록 제작

 

3) 학습성 : 초보자와 숙련자 모두 쉽게 배우고 익힐 수 있게 제작해야함

 

4) 유연성 : 사용자의 요구를 최대한 수용, 오류 최소화



28. 테스트 기법 분류


- 프로그램 실행 여부에 따른 분류

 

1) 정적 테스트 : 리뷰, 정적 코드분석, 실행 없이 명세를 구현함

 

ex) 인스펙션, 코드 검사

 

2) 동적 테스트 : 시스템 소프트웨어를 실행하면서 수행

 

ex) 화이브 박스 테스트, 블랙 박스 테스트

 

 

- 테스트 기법에 따른 분류

 

1) 화이트박스 테스트 : 내부 구조나 구현을 기반으로 테스트를 도출함 (아키텍처, 워크플로우)

 

2) 블랙박스 테스트 : 적절한 테스트 베이시스에 대한 분석을 통해 구현된 기능 테스트

 

 

- 테스트에 대한 시각에 따른 분류

 

1) 확인 (Validation) : 사용자 관점

 

2) 검증 (Verification) : 개발자 관점

 

 

- 테스트의 목적에 따른 분류

 

1) 회복 테스트 : 결함을 주어 실패시키고 복구하는지 확인하는 테스트

 

2) 안전 테스트 : 시스템 보호 도구가 불법적인 침입으로부터 시스템을 보호할 수 있는지 확인하는 테스트

 

3) 강도 테스트 : 과도한 정보량이나 빈도를 부과해 과부하 시에도 시스템이 정상 실행하는지 확인하는 테스트

 

4) 성능 테스트 : SW의 실시간 성능이나 전체적인 효율성 진단

 

5) 구조 테스트 : SW의 내부적인 경로, 소스코드 복잡성 평가

 

6) 회귀 테스트 : SW 변경, 수정 코드에 새로운 결함이 없음을 확인하는 테스트

 

7) 병행 테스트 : 변경된 기존 SW에 동시에 동일한 데이터 입력을 하여 결과를 비교하는 테스트

 


29. 통합 테스트

1) 상향식 통합 (Bottom Up) : 최하위에서 위쪽방향, 드라이버

 

2) 하향식 통합 (Top Down) : 아래방향으로 하향식 통합, 스텁

 

3) 회귀 테스팅 : 변경된 모듈 또는 컴포넌트가 있을 경우, 다른 부분에 영향을 미치는지 테스트하여 새로운 오류 여부 확인



30. SQL 그룹함수

 

1) ROLLUP : 하나 더 큰 레벨만큼 중간 집계값 생성

 

2) CUBE : 모든 값에 다차원 집계 생성

 

3) GROUPING SETS : 컬럼간 순서와 무관한 결과를 얻을 수 있다.

 

 

728x90

댓글