-
230221 소프트웨어 개발 : 소프트웨어 공학OS Computer Science 2021. 2. 23. 19:24
경계값 분석 기법
동치 분할의 경계부분에 해당되는 입력값에서 결함이 발견될 확률이 높다는 특성을 이용한 소프트웨어 테스트 기법
- 대표적인 명세 기반 기법(Specification-based technique)
테스트 대상으 입력값 범위가 1~100이라면,
- 유효 균등 유형은 1~100이고
- 무효 균등 유형은 0, -1, -2, -3... 과 101, 102, 103
- 경계값인 1, 0, 100, 101로 테스트
ISO/IEC 9126의 소프트웨어 품질 특성
애플리케이션 테스트
- 개발된 소프트웨어가 고객의 요구사항을 만족시키는지 확인(Validation)하고 소프트웨어가 기능을 정확히 수행하는지 검증(Verification)한다.
애플리케이션 테스트의 기본 원리
- 완벽한 테스트 불가능: 애플리케이션 테스트는 소프트웨어의 잠재적인 결함을 줄일 수 있지만 소프트웨어에 결함이 없다고 증명할 수는 없다.
- 결함 집중: 애플리케이션의 결함은 대부분 개발자의 특성이나 애플리케이션의 기능적 특징 때문에 특정 모듈에 집중되어있다. 파레토 법칙을 적용하기도 한다.
* 파레토 법칙: 애플리케이션의 20%에 해당하는 코드에서 전체 결함의 80%가 발견된다.
- 살충제 패러독스: 애플리케이션 테스트에서는 동일한 테스트 케이스로 동일한 테스트를 반복하면 더 이상 결함이 발견되지 않는 현상이 발생한다. 살충제 패러독스를 방지하기 위해서 테스트 케이스를 지속적으로 보완 및 개선해야 한다.
- 테스팅은 정황(Context) 의존: 애플리케이션 테스트는 소프트웨어 직틍, 테스트 환경, 테스터 역량 등 정황에 따라 테스트 결과가 달라질 수 있으므로, 정황에 따라 테스트를 다르게 수행해야 한다.
- 오류-부재의 궤변(Absence of Errors Fallacy): 소프트웨어의 결함을 모두 제거해도 사용자의 요구사항을 만족시키기 못하면 해당 소프트웨어는 품질이 높다고 말할 수 없다.
- 테스트와 위험은 반비례
- 테스트의 점진적 확대
- 테스트의 별도 팀 수행
시각에 따른 테스트
- 검증(Verification) 테스트: 개발자의 시각에서 제품의 생산 과정을 테스트하는 것, 제품이 명세서대로 완성됐는지를 테스트
- 확인(Validation) 테스트: 사용자의 시각에서 생산된 제품의 결과를 테스트하는 것, 사용자가 요구한대로 제품이 완성됐는지, 제품이 정상적으로 동작하는지를 테스트
출처: https://dev-huhu.tistory.com/30 [공부하는 개발자 허씨]
>> 출처 들어가면 애플리케이션 테스트 관련해서 자세하게 나와있으니 꼭 읽어봐야 한다.
1,2회 #21
평가 점수에 따른 성적부여는 다음 표와 같다. 이를 구현한 소프트웨어를 경계값 분석 기법으로 테스트 하고자 할 때 다음 중 테스트 케이스의 입력 값으로 옳지 않은 것은?
평가점수
성적
80~100
A
60~79
B
0~59
C
1 59
2 80
3 90
4 101
1,2회 #25
소프트웨어 품질 측정을 위해 개발자 관점에서 고려해야 할 항목으로 거리가 먼 것은?
1 정확성2 무결성
3 사용성4 간결성
1,2회 #26
소프트웨어 테스트에서 오류의 80%는 전체 모듈의 20% 내 에서 발견된다는 법칙은?
1 Brooks의 법칙2 Boehm의 법칙
3 Pareto의 법칙4 Jackson의 법칙
1,2회 #37
ISO/IEC 9126의 소프트웨어 품질 특성 중 기능성 (Functionality)의 하위 특성으로 옳지 않은 것은?
1 학습성2 적합성
3 정확성4 보안성
3회 #22
소프트웨어 공학의 기본 원칙이라고 볼 수 없는 것은?
1 품질 높은 소프트웨어 상품 개발
2 지속적인 검증 시행
3 결과에 대한 명확한 기록 유지4 최대한 많은 인력 투입
3회 #23
패키지 소프트웨어의 일반적인 제품 품질 요구사항 및 테스트를 위한 국제 표준은?
1 ISO/IEC 2196
2 IEEE 19554
3 ISO/IEC 12119
4 ISO/IEC 149593회 #26
제어 흐름 그래프가 다음과 같을 때 McCabe의 cyclomatic 수는 얼마인가?
3회 #30
소프트웨어 품질 목표 중 주어진 시간 동안 주어진 기능을 오류 없이 수행하는 정도를 나타내는 것은?
1 직관성2 사용 용이성
3 신뢰성4 이식성
3회 #38
소프트웨어 재공학이 소프트웨어의 재개발에 비해 갖는 장점으로 거리가 먼 것은?
1 위험부담 감소
2 비용절감3 시스템 명세의 오류억제
4 개발시간의 증가
4회 #28
소프트웨어 설치 매뉴얼에 대한 설명으로 틀린 것은?
1 설치과정에서 표시될 수 있는 예외상황에 관련 내용을 별도로 구분하여 설명한다.
2 설치 시작부터 완료할 때까지의 전 과장을 빠짐없이 순서대로 설명한다.
3 설치 매뉴얼은 개발자 기준으로 작성한다.
4 설치 매뉴얼에는 목차, 개요, 기본사항 등이 기본적으로 포함되어야 한다.'OS Computer Science' 카테고리의 다른 글
240221 데이터베이스 구축 : SQL (0) 2021.02.24 230221 소프트웨어 개발 : DB (0) 2021.02.23 230221 소프트웨어 개발 : 검증 검사 (0) 2021.02.23 230221 소프트웨어 개발 : 통합 (0) 2021.02.23 230221 소프트웨어 개발 : 인터페이스 구현 (0) 2021.02.23