점진적이고 진화적인 요구 사항 관리의 중요성
전통적인 폭포수 모델 접근법의 문제점을 지적하고, 진화적인 요구 사항 관리의 장점을 강조한다.
요구 사항 정의
- 요구 사항은 시스템 및 프로젝트가 준수해야 하는 기능과 조건을 의미한다.
- UP(Unified Process)는 요구 사항을 체계적으로 찾아내고, 문서화하고, 조직하며, 추적하는 것을 강조한다.
Evolutionary Requirment Management VS waterfall model
- UP는 요구 사항이 변하는 것을 기본 가정으로 삼아 이를 수용한다.
- UP 및 다른 진화적 방법론(Scrum, XP, FDD 등)은 대부분 요구 사항이 분석되기 전에 프로그래밍과 테스트를 시작한다.
- 폭포수 모델은 초기 단계에서 모든 요구 사항을 정의하려고 하지만, 이는 변화나는 요구 사항을 반영하지 못해 실패할 가능성이 높다.
기술적 요구 사항 관리 방법
- 요구 사항을 체계적으로 찾고, 문서화하며, 조직하고, 추적하는 접근 방식을 권장
- 고객과 함께 사용 사례를 작성하고, 개발자와 고객이 함께하는 요구 사항 워크숍, 프로토타입을 통한 피드백 수집 등의 방법을 사용한다.
요구 사항의 유형 및 분류
- FURPS+ 모델사용: 기능적 요구사항/비기능적 요구사항 분류
기능적 요구사항: 기능, 보안 등
비기능적 요구사항: 사용성, 신뢰성, 성능, 지원성 등
UP 아티팩트에서 요구 사항 조직화
UP는 여러 요구 사항 아티팩트를 제공한다.
주요 아티팩트:
- use case model
- 보충 명세
- 용어 사전
- 비전 문서
- 비즈니스 규칙