인수테스트
태그 :
- 개념
- - 시스템의 인수를 위해 기능적/비기능적 요구사항을 사용자가 직접 테스트하여 개발이 완료되었음을 증명하는 테스트
1. 개발된 시스템의 인수결정을 위한 확인 과정, 인수테스트 개요
가. 인수테스트 정의
- 시스템의 인수를 위해 기능적/비기능적 요구사항을 사용자가 직접 테스트하여 개발이 완료되었음을 증명하는 테스트
나. 인수테스트의 목적
구분 |
상세내용 |
확신(Confidence) |
- 시스템이나 시스템의 일부 또는 특정한 비기능적인 특성에 대해“확신(Confidence)”을 얻는 것 |
배포 가능성 평가 |
- 결함을 찾는 것이 아닌, 시스템을 배포하거나 사용할만한 준비가 되었는지에 대한 평가 |
준수성 확인 |
- 계약 또는 규정에 대한 준수성 확인 |
고객 피드백 |
- 판매 또는 상용(COTS) 소프트웨어는 목표시장의 기존 고객이나 잠재적인 고객으로부터 피드백을 위해 실시 |
2. 인수테스트의 프로세스 및 인수기준과 유형
가. 인수테스트의 프로세스
단계 |
활동 |
산출물 |
준비 |
- 테스트 계획 검토 - 테스트 환경 구축 - 테스트 케이스 및 데이터 개발 - 테스트 케이스별 절차 정의 |
테스트 시나리오 |
수행 |
- 테스트 수행 - 오류 수정 및 테스트 |
테스트 수행계획서 |
평가 |
- 테스트 결과 요약 - 테스트 결과 검토 및 승인 |
테스트 결과 보고서 |
시스템 모니터링 |
- 시스템 데이터 수집 및 검토 - 시스템 자원 사용량 분석 - 시스템 성능 분석 - 시설 보안 위반상태 분석 |
시스템 테스트 보고서 |
나. 인수테스트의 주요 인수기준
구분 |
상세설명 |
기능성 |
- 단계 내 또는 단계간의 문서 및 코드 일관성, 기능의 추적성, 논리의 적합성 검증 - 기능 평가 및 시험, 운용 환경에서 기능 유지 |
성능 |
- 성능요구의 타당성 조사, 정확한 모의실험 및 구현도구, 운용환경에서 성능 분석 |
인터페이스 품질 |
- 인터페이스 문서화, 인터페이스 복잡도, 인터페이스 및 통합시험 계획, 운용 환경에서 인터페이스 시험 |
소프트웨어 품질 |
- 품질 측정의 정량화, 소프트웨어 산출물의 인수기준, 문서화 및 소프트웨어 개발 표준의 적합성, 운용 시험의 품질기준 |
보안성 |
- 보안 요구 확인, 보안 시험 계획, 보안의 공식 검증 |
소프트웨어 안전성 |
- 안전 요구사항 확인 - 안전성이 요구되는 시스템에서 부적절한 개발기법 및 기술의 삭제 - 안전 위험을 방지하고 복구할 수 있는 안전장치 및 안전코드 도입 |
- 기능, 성능, 소프트웨어 안전성, 보안 및 인터페이스 등의 요구사항 기준이 정량화 되어 있는가를 확인해야 함
다. 인수 테스트의 유형 및 유형별 특징
구분 |
공식적 |
비공식적 |
||
유형 |
사용자 인수테스트 |
- 사용자가 시스템 사용의 적절성 확인 |
알파테스트 |
- 선택된 사용자에 의한 개발 환경에서의 테스트 |
운영상의 인수테스트 |
- 시스템 관리자에 의한 시스템 인수 시 수행 - 백업/복원테스트, 재난복구, 보안 취약성 점검 |
베타테스트 |
- 사용자의 사용 환경에서 진행 - 사용자가 모든 문제를 기록하여 보고함 - 상용 소프트웨어가 상업적으로 판매되기 전에 목표시장의 기존고객이나 잠재적인 고객으로부터 피드백을 목적으로 활용 |
|
계약 인수테스트 |
- 맞춤식-개발(Custom-developed) S/W가 계약 상의 인수조건을 준수하는지 확인 |
|||
규정 인수테스트 |
- 정부의 지침, 법률 또는 안전 규정 등 준수해야 하는 규정에 맞게 개발되었는지 확인 |
|||
특징 |
- 통제되고 관리되는 프로세스를 가진 가장 전형적인 형태의 테스트 - 테스트의 문서화가 요구됨 - 최종사용자의 조직 또는 독립적인 테스트 그룹에 의해 수행됨 |
- 테스트 수행절차가 공식적 테스트에 비해 엄격하지 않음 - 정형화된 공식적인 테스트에 비해 덜 통제되고 주관적임 |
||
목적 |
- 정형화된 확인(Validation) |
- 최종 사용자의 사용 경험 확보와 이해 향상 (예. 게임SW 출시 등) |
||
장점 |
- 기능의 명확한 이해와 측정 - 테스트 자동화와 회귀테스트 가능 - 진척관리, 모니터링 가능 |
- 예측하지 못한 결함 발견이 용이 함 - 테스트 대상의 기능과 특성이 알려짐 |
||
단점 |
- 상당한 자원이 요구되며 예측하지 못한 결함을 발견하기가 어려움 |
- 통제가 어려우며, 최종 사용자가 기존 시스템과의 비교에 중점을 둠 - 자원의 제약으로 테스트 활동이 위축될 수 있음 |
- 인수테스트 유형의 선택은 계약 상의 요구사항, 조직의 표준, Application Domain에 의해 결정됨.