요구사항 분석은 책이 없이 인터넷으로만 공부하기엔 어려운 것 같다..
요구사항 분석
- 시스템의 목표를 확립하는 과정
- 시스템이 만족시켜야 할 요구사항의 발견, 정제, 모델링, 명세화하는 과정
- 새롭게 만들고자하는 시스템의 명세를 만들어내는 과정 ▶ 시스템이 만족시켜야 할 기능, 성능, 다른 시스템과 인터페이스 규명
- 요구사항 분석의 최종 산출물: 요구사항 명세서 = 기능 명세서 = 목표 문서
특징
- "How" 대신 "What"에 초점이 맞춰져 있음
- 고객들과 협상하여 공동의 목표를 끌어내야 함
- 실패나 실수를 방지하고 프로젝트 초기 단계의 중대한 실수를 최소화
요구사항 종류
- 고객 요구사항: 개발의 이유, 목적, 제한조건, 환경, 변경의 유효성, 적합성 관점에서 기대사항을 정의, 사실 및 가정을 이야기
- 기능 요구사항: 필수적인 동작 정의
- 비기능 요구사항: 품질, 편의성 등 눈에 보이지 않는 것
- 성능 요구사항: 어떤 기능이 동작해야하는 한계를 정의
시스템 분석가의 자질과 임무
- 비즈니스나 응용분야에 대한 지식이 필수적
- 하드웨어, 소프트웨어를 포함한 컴퓨터에 대한 기술 이해
- 의사소통 능력
- 사용자들로부터 모순되는 요구사항 해결
- 시스템을 만들어야하므로 상대의 관점에서 문제를 바라봐야 함
- 쉬운 용어로 설명
- 주도적으로 일을 처리(시스템 개발의 최전방)
- 사용자의 요구사항과 전문지식을 뽑아내야 함
요구사항 명세서
요구사항 분석의 최종 목표, 초기에 완벽한 요구사항 명세서를 만드는 것이 필수적
▶ 요구사항이 잘못 분석되었을 때, 시간과 노력을 들여도 원하는 결과가 나오지 않을 수 있음
요구사항 명세서의 만족 조건
1. 고객과 개발자 모두 쉽게 이해할 수 있어야 함
2. 명시되어있는 조건들은 고객과 개발자가 동의한 것
3. 제안된 시스템이 수행할 모든 기능을 명확하게 기술 ▶ 요구사항 명세서의 핵심
4. 제안된 시스템에 영향을 미치는 모든 제약조건을 요구사항 명세서에 명시
5. 시스템을 사용하기 위해 필요한 조항을 검증할 수 있도록 명세서에 검증 기준 제시
6. 원하는 시스템의 품질, 상대적인 중요선, 품질의 측정 및 검증 방법 등을 명시
7. 시스템의 포용성과 오류 조건의 명시
분석의 문제점
- 의사소통 문제
- 요구사항의 계속적인 변화
- 분석 도구 미비
- 문서화 어려움
- 정치적 문제
- 일 할당 문제
📌 해결책: 구조적 분석 기법, 상태변화도, ER 모델 등 ▶ 시스템이 클수록 분할정복하여 분석의 복잡도 해결
요구사항 분석 단계에서의 주요 활동
1. 사용자 인터뷰 정리
- 사용자, 요구자와의 인터뷰 ▶ 구현될 소프트웨어나 시스템에 반영될 기능/비기능적 요구사항을 회의록, 인터뷰 내용에 기입
- 해당 관련자의 확인 및 요건 정의 확정(변경 최소화)이 필수적으로 이루어져야 함
2. 요구사항 정의
- 사용자, 요구자의 요구사항을 정리하여 순서대로 ID를 부여하여 리스트 작성
3. 요구사항 추적 관리
- 각 항목의 반영여부 추적할 수 있도록 요구사항 정의서에 반영된 항목 ID, 구현 소스명, 테스트 결과서 항목 ID등 기술
4. 기존 업무 분석
- 현재 구현할 소프트웨어와 관련된 업무 분석, 정의
- 업무 메뉴얼 참고, 해당 업무에 대한 프로세스, 동선 분석 작업 수행 결과 작성
5. 기본 정보 시스템 분석
- 현재 갖춰진 시스템 환경, 소프트웨어, 네트워크 구성도, 데이터베이스 분석 등 작성
- 새로운 소프트웨어나 시스템의 구축 및 운영 시 영향도를 평가하고 예측
'IT > CS' 카테고리의 다른 글
[DB] SQL 정리 (0) | 2021.08.12 |
---|---|
[소프트웨어공학] 소프트웨어 아키텍처 설계 (0) | 2021.08.08 |
[DB] 엔터티, 속성, 관계 (0) | 2021.08.03 |
[DB] 데이터 모델링2 - 데이터 독립성 (0) | 2021.08.02 |
[DB] 데이터 모델링1 (0) | 2021.07.24 |