본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

요구사항 검증(Requirements Validation)은 명세된 요구사항이 고객이 실제로 원하는 시스템을 올바르게 정의하고 있는지, 서로 상충하거나 빠진 것은 없는지를 개발에 들어가기 전에 점검하는 요구 공학 활동이다.

요구 공학은 요구사항 도출 → 분석 → 명세 → 검증 순으로 진행하고, 검증은 명세서를 기준선으로 확정하기 전 마지막 관문이다. 요구사항 단계의 오류는 늦게 발견될수록 고치는 비용이 커진다. 설계·코드·테스트 산출물이 모두 잘못된 요구사항 위에 쌓이기 때문에, 개발이 끝난 뒤에 문제가 드러나면 막대한 재작업 비용이 든다. 그래서 검증은 요구 공학에서 가장 비용 효과가 큰 활동으로 꼽힌다.

확인과 검증(V&V)의 구분으로 보면 요구사항 검증은 "올바른 제품을 만들려 하는가" 를 묻는 확인(Validation)에 해당한다.

항목 점검 내용
타당성 요구사항이 고객과 이해관계자의 실제 요구를 반영하는가
일관성 문서 안의 요구사항끼리 서로 상충하지 않는가
완전성 필요한 기능·제약이 빠짐없이 들어 있는가
실현 가능성 기술·예산·일정 안에서 구현할 수 있는가
검증 가능성 구현 결과가 요구사항을 만족하는지 시험으로 확인할 수 있게 적혀 있는가
명확성 한 가지로만 해석되는가
추적 가능성 요구사항마다 출처와 설계·테스트 항목을 이을 수 있는가
  • 요구사항 검토(Review) : 이해관계자와 개발자가 명세서를 함께 읽고 오류를 찾는다. 동료 검토, 워크스루, 인스펙션이 있다
  • 프로토타이핑 : 시제품을 보여 주고 고객이 원하는 것이 맞는지 확인한다
  • 테스트 케이스 설계 : 요구사항마다 테스트를 미리 만들어 본다. 테스트를 만들 수 없으면 요구사항이 모호한 것이다
  • 모델 검증 : 분석 모델(유스케이스, 상태 모델)이 일관된지 확인한다
  • CASE 도구 : 명세의 누락·모순을 자동으로 찾는다
  • 추적표 점검 : 요구사항 추적성 매트릭스로 빠진 연결을 찾는다

요구사항 검증으로 모든 요구사항 문제를 발견할 수는 없다.

  • 이해관계자 자신도 모르는 묵시적 요구사항이 있다
  • 개발이 진행되면서 업무 환경과 요구가 바뀐다
  • 검토자의 지식과 시간에 한계가 있다

그래서 검증 뒤에도 요구사항 변경 관리와 추적을 계속하고, 반복적 개발로 고객의 확인을 자주 받는다.