요구사항 정의 – ① 요구사항 개요

요구사항 정의 – ① 요구사항 개요

요구공학(Requirements Engineering)이란 요구사항을 정의하고, 문서화하고, 관리하는 프로세스를 의미한다.

요구사항 개발 프로세스

소프트웨어공학 지식체계(SWEBOK: SoftWare Engineering Body of Knowledge)에서는 이 프로세스를 요구사항 도출(Elicitation), 분석(Analsysis), 명세(Specification), 확인(Validation)으로 구분하고 있다.

요구사항 개발 프로세스

(1) 요구사항 도출(Requirement Elicitation)

  1. 요구사항 도출은 소프트웨어가 해결해야 할 문제를 이해하는 첫 번째 단계로서 요구사항이 어디에 있고, 어떻게 수집할 것인가와 관련되어 있다.
  2. 이 단계에서 이해관계자(Stakeholder)가 식별되고, 개발 팀과 고객 사이의 관계가 만들어진다.
  3. 이 단계에서는 다양한 이해관계자와 효율적인 의사소통이 중요하다.

(2) 요구사항 분석(Requirement Analysis)

  1. 요구사항들 간 상충되는 것을 해결하고, 소프트웨어의 범위를 파악하며, 소프트웨어가 환경과 어떻게 상호 작용하는지 이해한다.
  2. 시스템 요구사항을 정제하여 소프트웨어 요구사항을 도출한다.

(3) 요구사항 명세(Requirement Specification)

  1. 요구사항 명세란 체계적으로 검토, 평가, 승인될 수 있는 문서를 작성하는 것을 의미한다.
  2. 시스템 정의, 시스템 요구사항, 소프트웨어 요구사항을 작성한다.

(4) 요구사항 확인(Requirement Validation)

  1. 분석가가 요구사항을 이해했는지 확인(Validation)이 필요하고, 요구사항 문서가 회사의 표준에 적합하고 이해 가능하며, 일관성이 있고, 완전한지 검증(Verification)하는 것이 중요하다.
  2. 이해관계자들이 문서를 검토해야 하고, 요구사항 정의 문서들에 대해 형상 관리를 해야 하는데, 일반적으로 요구사항 관리 툴을 이용한다.
  3. 리소스가 요구사항에 할당되기 전에 문제를 파악하기 위하여 검증을 수행한다.

위와 같은 요구사항 개발 프로세스 중에서 요구사항 확인하기와 관련된 단계는 분석 및 검증 단계이므로, 필요 지식에서는 도출 및 명세 단계를 생략한 분석 및 검증 단계에 대해서만 기술하기로 한다.

출처

NCS 학습모듈: 20.정보통신 > 01.정보기술 > 02.정보기술개발 > 02.응용SW엔지니어링 (일부 수정)

코멘트 제출

컨텐츠 복사 및 출력 방지! - 회원 가능