분석가가 요구사항을 이해했는지 확인(Validation)하는 것이 필요하고, 요구사항 문서가 회사의 표준에 적합하고 이해 가능하고, 일관성이 있고, 완전한지 검증(Verification)하는 것이 중요하다. 이해관계자들이 문서를 검토해야 하고, 요구사항 정의 문서들에 대해 형상 관리를 해야 하는데 일반적으로 요구사항 관리 툴을 이용한다. 리소스가 요구사항에 할당되기 전에 문제를 파악하기 위하여 검증을 수행한다.
요구사항 확인 기법
(1) 요구사항 검토(Requirement Reviews)
(가) 요구사항 검증의 가장 일반적인 방법으로, 여러 검토자들이 에러, 잘못된 가정, 불명확성, 표준과의 차이 등을 찾아내는 작업을 수행하며, 검토자 그룹을 어떻게 구성하느냐가 중요하다.
(나) 예를 들어, 고객 중심 프로젝트에서는 검토자 그룹에 고객 대표자가 1명 이상 포함되어야 한다.
(다) 검토는 시스템 정의서(System Definition Document), 시스템 사양서(System Specification), 소프트웨어 요구사항 명세서(SRS: Software Requirements Specification Document)를 완성한 시점 등에서 이루어진다.
IEEE Std 830-1998의 사용자 클래스 기준으로 조직화된 SRS 템플리트 |
---|
3. 상세 요구사항(Specific Requirements) 3.1 외부 인터페이스 요구사항(External Interface Requirements) 3.1.1 사용자 인터페이스(User Interface) 3.1.2 하드웨어 인터페이스(Hardware Interface) 3.1.3 소프트웨어 인터페이스(Software Interface) 3.1.4 통신 인터페이스(Communication Interface) 3.2 기능 요구사항(Functional Requirements) 3.2.1. 사용자 클래스 (User Class) 1 3.2.1.1 기능 요구사항 1.1 … 3.2.m 사용자 클래스(User Class) m 3.2.1.1 기능 요구사항 m.1 … 3.2.1.n 기능 요구사항 m.n 3.3 성능 요구사항(Performance Requirements) 3.4 설계 제약사항(Design Constraints) 3.5 소프트웨어 시스템 속성(Software System Attributes) 3.6 기타 요구사항(Other Requirements) |
(2) 프로토타이핑(Prototyping)
(가) 프로토타이핑은 새로운 요구사항을 도출하기 위한 수단으로, 또한 소프트웨어 요구사항에 대해 소프트웨어 엔지니어가 해석한 것을 확인하기 위한 수단으로 많이 사용된다.
(나) 프로토타이핑의 장점은 분석가의 가정을 파악하고 잘못된 경우 유용한 피드백을 제공한다는 점, 사용자 인터페이스(User Interface)의 동적인 행위가 문서나 그래픽 모델보다 프로토타입으로 이해하기 쉬운 점, 요구사항의 가변성이 프로토타이핑 이후에 급격히 감소하는 점이다.
(다) 단점은 사용자의 관심이 핵심 기능에서 멀어지고 프로토타입의 디자인이나 품질 문제로 집중될 수 있으며, 프로토타입 수행 비용이 발생한다는 것이다.
(라) 잘못된 요구사항을 만족시키기 위하여 자원을 낭비하는 것을 방지할 수 있다는 점에서 프로토타이핑을 긍정적으로 검토할 수 있다.
(3) 모델 검증(Model Verification)
(가) 분석단계에서 개발된 모델의 품질을 검증할 필요가 있다.
(나) 예를 들어, 객체 모델의 경우 객체들 사이의 존재하는 의사소통 경로(Communic ation Path)를 검증(Verify)하기 위하여 정적 분석(Static Analysis)을 수행하는 것이 유용하다.
(4) 인수 테스트(Acceptance Tests)
(가) 요구사항의 중요한 속성은 최종 제품이 요구사항을 만족시키는지 확인이 가능해야 한다는 것이다.
(나) 각각의 요구사항을 어떻게 확인할 것인지에 대한 계획을 세워야 한다.
요구사항 검증 단계에서 사용되는 기법 이외에 요구사항 품질 검증을 위한 국내 표준을 활용하여 요구사항을 검증할 수 있다. 정보통신단체표준 TTAK.KO-11.0103 “소프트웨어 요구사항 품질 평가 항목”에서는 요구사항 명세의 품질을 객관적이고 정량적으로 평가하기 위한 기준으로 평가 항목을 제시하고 있다.
출처
NCS 학습모듈: 20.정보통신 > 01.정보기술 > 02.정보기술개발 > 02.응용SW엔지니어링 (일부 수정)