요구사항 정의
1. 요구사항 정의
요구사항: 문제를 해결하기 위해 필요한 조건이나 제약사항을 요구
1) 기능적 요구사항
- 기능 요구사항 : 시스템 기능, 입력, 출력, 저장, 수행 등등
- 비기능 요구사항: 시스템 장비 구성,성능, 품질, 제약사항, 프로젝트,인터페이스,테스트, 데이터
- 품질 요구사항 : 가용성, 집합성, 상호 호환성, 대응성, 신뢰성, 사용성, 유지관리성, 이식성,확장성, 보안성 등으로 구분해 기술
2) 이용자 요구사항
- 사용자 요구사항
- 시스템/SW 요구사항( 개발자) 시스템 전체가 사용자와 다른 시스템에 제공해야 할 요구사항
2. 요구사항 개발 프로세스 #도분명검 (도출- 분석-명세-검증)
1. 요구사항 도출(Requirement Elicitation, 요구사항 수집)
시스템, 사용자, 시스템 개발에 관련된 사람들이 서로 의견을 교환하여 요구사항이 어디에 있는지, 어떻게 수집할 것인지를 식별하고 이해하는 과정
- 요구사항 도출 단계에서 개발자와 고객 사이의 관계가 만들어지고 이해관계자가 식별됨
- 이 단계에서는 다양한 이해관계자 간의 효율적인 의사소통이 중요함
- 요구사항을 도출하는 주요 기법 : 인터뷰, 설문, 브레인스토밍, 프로토타이핑, 유스케이스 등
- 브레인 스토밍(Brain Storming) : 3인 이상이 자유롭게 의견을 교환하며 독창적인 아이디어 산출해 내는 방법
- 프로토타이핑(Prototyping) : 프로토타입을 통해 효과적으로 요구 분석을 수행하면서 명세서를 산출하는 작업
- 유스케이스(Use Case) : 사용자의 요구사항을 기능 단위로 표현하는 것
2. 요구사항 분석(Requirement Analysis)
개발 대상에 대한 사용자의 요구사항 중 명확하지 않거나 모호하여 이해되지 않는 부분을 발견하고 이를 걸러내기 위한 과정
- 현재 상태 파악, 문제 정의, 문제 해결, 목표 명확히
- 사용자 면접, 사용중 각종 문서 검토, 설문 조사 의겸 수렴
- 요구사항 정의 문서화( 기능 기술, 비용 일정에 대한 제약 설정, 타당성 조사)
- 사용자 요구사항의 타당성을 조사하고 비용과 일정에 대한 제약을 설정
- 도출된 요구사항들을 토대로 소프트웨어의 범위 파악, 소프트웨어와 주변 환경이 상호 작용하는 방법 이해
eg. 구조적 분석: 데이터 흐름도DFD , 자료사전DD, 소단위 명세서(mini-spec)
요구사항 분석 기법 #분개할협정
- 요구사항 분류
- 개념 모델링(UML)
- 요구사항 할당
- 요구사항 협상
- 정형 분석:구문, 의미를 갖는 정형화된 언어 -> 요구사항을 수학적 기호 표현
요구사항 관리 프로세스 #협기변확
요구사항 협상 → 요구사항 기준선 → 요구사항 변경관리 → 요구사항 확인 및 검증
3. 요구사항 명세(Requirement Specification, 요구사항 문서화)
요구사항을 체계적으로 분석한 후 승인될 수 있도록 문서화하는 것
1) 정형 명세 기법:수학기호 eg. VDM, Z, CSP, Petri-net
2) 비정형 명세 기법: 서술, 다이어그램 eg. 상태, 기능, 객체, FSM, DT,ERM, SADT
- 도출된 요구사항들을 토대로 소프트웨어의 범위 파악, 소프트웨어와 주변 환경이 상호 작용하는 방법 이해
4. 요구사항 확인/검증(Requirement Validation )
개발 자원을 요구사항에 할당하기 전에 요구사항 명세서가 정확하고 완전하게 작성되었는지 검토하는 활동
- 요구사항 문서는 이해관계자들이 검토해야 함
- 일반적으로 요구사항 관리 도구를 이용하여 교구사항 정의 문서들에 대해 형상 관리를 수행
*형상 관리(SCM; Software Configuration Management) : SW개발 과정에서 만들어지는 형상들의 변경 사항을 관리하는 일련의 활동(최소 비용, 방해
- 관리 대상: 소스 레벨, 수행 형태인 프로그램, 서술 문서, 자료구조 (비용 아님)
- 관리 항목: 정의 단계의 문서, 개발 단계의 문서 & 프로그램, 유지보수 단계 변경 사항
요구사항 확인 기법 20년 1, 2, 3회 기출문제
요구사항 개발 과정을 거쳐 문서화된 요구사항 관련 내용을 확인하고 검증하는 방법
- 요구사항에 자원이 배정 전, 문제 파악을 위한 검증 수행
요구사항 검토- 프로토타이핑- 모델 검증- 인수 테스트(알파 테스트, 베타 테스트) #검프모인
'Challenges > 정보처리기사' 카테고리의 다른 글
[정보처리기사]1. 소프트웨어 설계/요구사항 확인/요구사항 분석 CASE와 HIPO (2) | 2021.08.06 |
---|---|
[정보처리기사] 1. 소프트웨어 설계/요구사항 확인/요구사항 분석의 구조적 분석 (0) | 2021.08.05 |
[정보처리기사]1.소프트웨어 설계/요구사항 확인/시스템 & 기술 환경 (0) | 2021.08.03 |
[정보처리기사]1.소프트웨어 설계/요구사항 확인/Agile 방법론 (0) | 2021.08.02 |
[정보처리기사]1. 소프트웨어 설계/요구사항 확인/소프트웨어 생명 주기 (0) | 2021.08.01 |