22. White Box Testing 에 대한 설명으로 옳지 않은 것은?

 ① Base Path Testing, Boundary Value Analysis가 대표적인 기법이다.

 Source Code 의 모든 문장을 한번 이상 수행함으로서 진행된다.

 모듈 안의 작동을 직접 관찰 할 수 있다.

 ④ 산출물의 각 기능별로 적절한 프로그램의 제어구조에 따라 선택, 반복 등의 부분들을 수행함으로써 논리적 경로를         점검한다.

 

[해설] White Box Testing

 - 원시 코드의 모든 문장을 한 번 이상 실행함으로써 수행

 - 모듈 안의 작동을 직접 관찰

 - 프로그램 제어 구조에 따라 선택, 반복 등의 분기적 부분들을 수행하여 논리적 기능 제어

 - 종류

  1) 기초경로 검사(Base Path Testing)

  2) 제어구조 검사(Control Structure Testing)

    (1) 조건 검사(Condition Testing)

    (2) 루프 검사(Loop Testing)

    (3) 데이터 흐름 검사(Data Flow Testing)


23. 소프트웨어 품질 측정을 위해 개발자 관점에서 고려해야 할 항목으로 거리가 먼 것은?

 ① 정확성

 ② 무결성

 사용성

 ④ 간결성

 

[해설] 소프트웨어 품질 측정 - 개발자 관점

1. 정확성

2. 신뢰성

3. 효율성

4. 무결성

5. 유연성

6. 이식성

7. 재사용성

8. 상호 운용성

* 간결성은 사용자 관점


26. 다음 트리를 전위 순회(preorder traversal)한 결과는?

    +*AB/*CDE

    ② AB/C*D*E+

    A/B*C*D+E

    ④ +**/ABCDE

 

 

[해설] 트리의 순회

1. 전위 순회: 중앙노드 - 좌측노드 - 우측노드 → +**/ABCDE

2. 중위 순회: 좌측노드 - 중앙노드 - 우측노드 → A/B*C*D+E

3. 후위 순회: 좌측노드 - 우측노드 - 중앙노드 → AB/C*D*E+


27. 인터페이스 보안을 위해 네트워크 영역에 적용될 수 있는 솔루션과 거리가 먼 것은?

 IPSec

 ② SMTP

 SSL

 ④ S-HTTP

 

[해설] 인터페이스 보안 솔루션

1. IPSec: 네트워크 계층에서 IP 패킷 단위의 데이터 변조 방지 + 은닉기능

2. SSL: TCP/IP 계층과 애플리케이션 계층 사이에서 인증, 암호화, 무결성 보장

3. S-HTTP: 클라이언트-서버간 전송되는 모든 메시지 암호화

4. SMTP: 전자우편을 교환하는 시스템 제공


28. 평가 점수에 따른 성적부여는 다음 표와 같다. 이를 구현한 소프트웨어를 경계값 분석 기법으로 테스트 하고자 할 때 다음 중 테스트 케이스의 입력 값으로 옳지 않은 것은?

 

59

80

③ 90

101

 

 

[해설] 경계값 분석 기법

경계가 되는 곳은 0, 59, 60, 79, 80, 100

→ 90은 80~100 사이의 값이므로 입력 값으로 옳지 않음

 * 101은 100 이상의 값이므로 입력하였을 때의 반응 확인 가능


29. 반정규화(Denormalization) 유형중 중복 테이블을 추가하는 방법에 해당하지 않는 것은?

 ① 빌드 테이블의 추가

  집계 테이블의 추가

  진행 테이블의 추가

  특정 부분만을 포함하는 테이블의 추가

 

[해설] 반정규화 유형-중복 테이블 추가

1. 진행 테이블 추가

2. 집계 테이블 추가

3. 특정 부분만을 포함하는 테이블 추가


30. ISO/IEC 9126의 소프트웨어 품질 특성 중 기능성(Functionlity)의 하위 특성으로 옳지 않은 것은?

 ① 학습성

 ② 적합성

 정확성

 ④ 보안성

 

[해설] ISO/IEC 9126 - 기능성

1. 적합성

2. 상호 운용성

3. 준수성

4 정확성

5. 보안성

* 학습성은 사용성의 하위특성


31. 다음 트리의 차수(degree)와 단말 노드(terminal node)의 수는?

    차수: 4, 단말 노드: 4

    ② 차수: 2, 단말 노드: 4

    차수: 4, 단말 노드: 8

    차수: 2, 단말 노드: 8

 

 

[해설] 트리의 구조

1. 노드의 차수: 서브 트리의 개수 혹은 간선의 수

2. 트리의 차수: 트리의 최대 차수 → 2 (2진 트리)

3. 단말 노드: 자식이 없는 노드 → 4 (D, F, G, H)

4. 노드의 깊이: 루트에서 어떤 노드까지 도달하기 위해 거쳐야 하는 간선의 수 (ex. D의 깊이: 2)

5. 노드의 레벨: 트리의 특정 깊이를 갖는 노드의 집합 (ex. A-레벨1, D-레벨3) 


33. 소프트 웨어 테스트에서 오류의 80%는 전체 모듈의 20% 내에서 발견된다는 법칙은?

 ① Brooks의 법칙

 ② Boehm의 법칙

 ③ Pareto의 법칙

 ④ Jackson의 법칙

 

[해설] 소프트웨어 테스트

1. Pareto의 법칙: 오류의 80%는 전체 모듈의 20% 내에서 발견

2. Brooks의 법칙: 지연되는 프로젝트에 인력을 투입하면 더 늦어짐


36. 소스코드 품질분석 도구 중 정적분석 도구가 아닌 것은?

 ① pmd

 ② cppcheck

 ③ valMeter

 ④ checkstyle

 

[해설] 소스코드 품질분석 도구

1. 정적 분석도구: pmd / CppCheck / SonarQube / CheckStyle / ccm / Cobertuna

2. 동적 분석도구: Avalanche / Valgrind / ValMeter


40. 외계인코드(Alien Code)에 대한 설명으로 옳은 것은?

 프로그램의 로직이 복잡하여 이해하기 어려운 프로그램을 의미한다.

 ② 아주 오래되거나 참고문서 또는 개발자가 없어 유지보수 작업이 어려운 프로그램을 의미한다.

 오류가 없어 디버깅 과정이 필요 없는 프로그램을 의미한다.

 사용자가 직접 작성한 프로그램을 의미한다.

 

[해설] 외계인 코드(Alien Code)

- 아주 오래되거나 참고문서 또는 개발자가 없어 유지보수 작업이 어려운 프로그램을 의미한다.

- 나쁜 코드: 로직이 서로 얽혀 있는 코드 (스파게티 코드라고도 함)

 

7. GoF(Gang of Four)의 디자인 패턴에서 행위 패턴에 속하는 것은?

 ① Builder

 ② Visitor

 ③ Prototype

 ④ Bridge

 

[해설] GoF의 디자인 패턴 종류

1. 생성 패턴: Factory Method / Singleton / Abstract Factory / Builder / Prototype

2. 구조 패턴: Adapter / Facade / Bridge Composite / decorator / Flyweight / Proxy

3. 행위 패턴: Strategy / Chain of Responsibility / Command / Interpreter / Iterator / Mediator / Memento / Observer / State Template Method  / Visitor


9. 트랜잭션이 올바르게 처리되고 있는지 데이터를 감시하고 제어하는 미들웨어는?

 RPC

 ② ORB

 ③ TP monitor

 ④ HUB

 

[해설] 트랜잭션 미들웨어

1. RPC: 원격 절차 호출 또는 원격 프로시저 호출

2. ORB: 객체간 메시지 전달 지원(객체지향 미들웨어)

3. TP monitor: 트랜잭션 처리를 감시/제어


11. XP(eXtreme Programming)5가지 가치로 거리가 먼 것은?

 용기

 ② 의사소통

 ③ 정형분석

 ④ 피드백

 

[해설] XP의 5가지 가치

1. 용기

2. 단순성

3. 커뮤니케이션

4. 피드백

5. 존중


13. 소프트웨어 개발 방법 중 요구사항 분석(requirements annalysis)과 거리가 먼 것은?

 비용과 일정에 대한 제약설정

 타당성 조사

 요구사항 정의 문서화

 ④ 설계 명세서 작성

 

[해설] 소프트웨어 개발 방법-요구사항 분석

1. 비용과 일정에 대한 제약 설정

2. 타당성 조사

3. 요구사항 정의 문서화

 * 설계 명세서 작성: 요구사항 명세서 단계


16. 객체지향 기법에서 클래스들 사이의 '부분-전체(part-whole)' 관계 또는 '부분(is-a-part-of)'의 관계로 설명되는 연관성을 나타내는 용어는?

 ① 일반화

 ② 추상화

 ③ 캡슐화

 ④ 집단화

 

[해설] 객체지향 기법

1. 캡슐화: 정보 처리에 필요한 기능들을 한 테두리로 묶는 것

2. 추상화: 중요한 부분만을 분리하여 간결하고 이해하기 쉽게 만드는 것

3. 상속: 상위 클래스의 속성, 메소드를 하위 클래스가 물려받는 것

4. 집단화(연관성): 클래스들 간 부분-전체 또는 부분의 관계


17. CASE가 갖고 있는 주요 기능이 아닌 것은?

 그래픽 지원

 소프트웨어 생명주기 전 단계의 연결

 ③ 언어번역

 다양한 소프트웨어 개발 모형 지원

 

[해설] CASE가 갖는 주요 기능들

1. SW 생명주기 전(모든) 단계 연결

2. 모델들 사이의 모순 검사

3. 오류 검증

4. 자료 흐름도 등 다이어그램 작성

5. 다양한 소프트웨어 개발 모형지원

6. 시스템 문서화 및 명세화를 위한 그래픽 지원


20. 객체지향 분석 방법론 중 E-R 다이어그램을 사용하여 객체의 행위를 모델링하며, 객체식별, 구조식별, 주체정의, 속성 및 관계 정의, 서비스 정의 등의 과정으로 구성되는 것은?

 ① Coad와 Yourdon 방법

 ② Booch 방법

 ③ Jacobson 방법

 ④ Wirfs-Broocks 방법

 

[해설] 객체지향 분석 방법론

1. RumBaugh 방법: 분석 활동을 객체모델, 동적 모델, 기능 모델로 나누어 수행

2. Booch 방법: 클래스와 객체들을 분석/식별하고 클래스의 속성, 연산 정의

3. Jacobson 방법: Use Case를 이용

4. Coad-Yourdon 방법: E-R 다이어그램 이용

 

 

+ Recent posts