예상문제 오답노트

clay·2023년 2월 13일
0

소프트웨어 개발

목록 보기
33/47
post-thumbnail

다음 중 애플리케이션 테스트에 대한 설명으로 틀린 것은?
1. 애플리케이션 테스트는 소프트웨어에 잠재되어 있는 결함을 찾아내는 일련의 행위이다.
✅ 2. 테스트는 고객의 요구사항을 만족했는지 Verification해야 한다.
3. 테스트는 오류 검출뿐만 아니라 새로운 오류의 유입도 방지할 수 있다.
4. 테스트를 효과적으로 실행하면 최고한의 시간과 노력으로 많은 결함을 찾을 수 있다.

Verification: 개발자의 입장에서 명세서에 맞게 만들어졌는지를 점검하는 것
Validation: 사용자의 입장에서 고객의 요구사항에 맞게 구현되었는지 점검하는 것

다음 중 워크스루와 인스펙션에 대해 설명으로 가장 옳지 않은 것은?
1. 워크스루는 전문가들에 의해 개발자의 작업 내역이 검토된다.
2. 워크스루는 제품 개발자가 주체가 된다.
✅ 3. 워크스루는 오류 발견과 발견된 오류의 문제 해결에 중점을 둔다.
4. 인스펙션은 워크스루를 발전시킨 형태이다.

워크스루의 목적은 오류 해결이 아니라 오류의 조기 검출이다.

다음 중 화이트박스 테스트에 대한 설명으로 옳지 않은 것은?
1. 제품의 내부 요소들이 명세서에 따라 수행되고 충분히 실행되는가를 테스트한다.
2. 모듈 안의 작동을 직접 관찰한다.
3. 프로그램 원시 코드의 논리적인 구조를 커버하도록 테스트 케이스를 설계한다.
✅ 4. 설계된 모든 기능들이 정상적으로 수행되는지 확인한다.

설계된 모든 기능들이 정상적으로 수행되는지 확인하는 것은 블랙박스 테스트이다.
화이트박스 검사는 응용 프로그램의 내부 구조와 동작을 검사하는 소프트웨어 테스트 방식으로, 블랙박스 검사와는 반대된다.

소프트웨어 생명주기 모델 중 V 모델과 관련한 설명으로 틀린 것은?
✅ 1. 요구 분석 및 설계 단계를 거치지 않으며 항상 통합 테스트를 중심으로 V 형태를 이룬다.
2. Perry에 의해 제안되었으며 세부적인 테스트 과정으로 구성되어 신뢰도 높은 시스템을 개발하는데 효과적이다.
3. 개발 작업과 검증 작업 사이의 관계를 명확히 들어내놓은 폭포수 모델의 변형이라고 볼 수 있다.
4. 폭포수 모델이 산출물 중심이라면 V 모델은 작업과 결과의 검증에 초점을 둔다.

소프트웨어 생명 주기의 V 모델은 '요구사항 -> 분석 -> 설계 -> 구현' 단계로 수행되며 각 단계를 테스트와 연결하여 표현한다.

단위 테스트(Unit Test)와 관련한 설명으로 틀린 것은?
1. 구현 단계에서 각 모듈의 개발을 완료한 후 개발자가 명세서의 내용대로 정확히 구현되었는지 테스트한다.
2. 모듈 내부의 구조를 구체적으로 볼 수 있는 구조적 테스트를 주로 실행한다.
✅ 3. 필요 데이터를 인자를 통해 넘겨주고, 테스트 완료 후 그 결과값을 받는 역할을 하는 가상의 모듈을 테스트 스텁이라고 한다.
4. 테스트할 모듈을 호출하는 모듈도 있고, 테스트할 모듈이 호출하는 모듈도 있다.

  • 필요 데이터를 인자로 통해 넘겨주고, 테스트 완료 후 그 결과값을 받는 역할을 하는 가상의 모듈을 테스트 드라이버라고 한다.
  • 테스트 스텁은 제어 모듈이 호출하는 타 모듈의 기능을 단순히 수행하는 도구로, 일시적으로 필요한 조건만을 가지고 있는 시험용 모듈이다.

상향식 통합 테스트의 과정이 옳게 나열된 것은?

낮은 수준의 모듈들을 클러스터로 결합 -> 드라이버라는 제어 프로그램의 작성 -> 클러스터의 검사 -> 클러스터를 상위로 결합

n개의 원소를 정렬하는 방법 중 평균 수행시간 복잡도와 최악 수행시간 복잡도가 모두 O(nlog₂n)인 정렬은?
1. 삽입 정렬
✅ 2. 힙 정렬
3. 버블 정렬
4. 선택 정렬

삽입 정렬, 버블 정렬, 선택 정렬은 평균과 최악 수행시간 복잡도가 모두 O(n²)이다.

다음 중 최악의 경우 검색 효율이 가장 나쁜 트리 구조는?
✅ 1. 이진 탐색 트리
2. AVL 트리
3. 2-3 트리
4. 레드-블랙 트리

이진 탐색 트리를 보완하고자 개발된 균형 트리가 AVL, 2-3, 레드-블랙 트리이다.

profile
샤코타임 팬

0개의 댓글