정보처리기사

[정처기] 실기요약 - 1-3. 요구사항 확인

검이 2023. 12. 14. 18:00

목차

1. 요구사항 확인

Chapter 01  소프트웨어 개발 방법론
Chapter 02  현행 시스템 분석
Chapter 03  요구사항 확인


요구사항 분류

기능적 요구사항 / 비기능적 요구사항

1. 기능적 요구사항
- 시스템이 제공하는 기능, 서비스에 대한 요구사항
- 특정 입력에 대해 시스템이 어떻게 반응해야 하는지에 대한 기술
- 특정 상황에 대해 시스템이 어떻게 동작해야 하는지에 대한 기술
- 기능성, 완전성, 일관성
- ex_1) 온라인 홈페이지에서 쇼핑카트에 주문하고자 하는 품목을 저장할수 있는 장바구니 기능을 제공
- ex_2) 상품의 결제 수단은 신용카드, 무통장 입금, 포인트 결제 가능

2. 비기능적 요구사항
- 시스템이 수행하는 기능 이외의 사항, 시스템 구축에 대한 제약사항에 관한 요구사항
- 품질 속성에 관련하여 시스템이 갖춰야 할 사항에 관한 기술
- 시스템이 준수해야 할 제한 조건에 관한 기술
- 신뢰성, 사용성, 효율성, 유지보수성, 이식성, 보안성 및 품질 관련 요구사항, 제약 사항
- ex_1) 특정 함수의 호출 시간은 3초를 넘지 않아야 함
- ex_2) 시스템은 하루 24시간 가동되어야 하며 가동률 99.5%를 만족해야함
- ex_3) 시스템은 운영되는 중에 패치 및 업그레이드를 할 수 있어야 함.


요구사항 개발 프로세스

도출 / 분석 / 명세 / 확인 및 검증

 

 

4. 요구사항 확인 및 검증 단계


- 시스템이 제공하는 기능, 서비스에 대한 요구사항
- 적용 경험과 성공사례가 많음
- 소프트웨어 개발 시 각 단계를 확실히 마무리 지은 후 다음단계로 넘어감
- 타당성검토 →  계획 → 요구사항 분석 → 설계 → 구현 → 테스트  유지보수


요구사항 도출 단계

- 소프트웨어가 해결 해야 할 문제를 이해하고, 고객으로부터 제시되는 추상적 요구에 대해 관련 정보를 식별하고 수집 방법 결정, 수집된 요구사항을 구체적으로 표현
- 도출 단계에서 이해관계자가 식별되고, 개발팀과 고객 사이의 관계가 형성되며 다양한 이해관계자아 효율적 의사소통 중요
- 주요 활동으로 고객분석, 조직환경분석, 후보 요구사항 분류, 후보 요구사항 정제, 요구사항 소스 관리

도출 주요 기법: 인터뷰 / 브레인스토밍 / 델파이 기법 / 롤플레잉 / 워크숍 / 설문조사

요구사항 분석 단계

- 추출된 요구사항에 대해 충돌, 중복, 누락 등의 분석을 통해 완전성과 일관성을 확보
- 요구사항 간 상충되는 것 해결, 소프트웨어 범위 파악, 소프트웨어가 환경과 어떻게 상호작용하는지 이해
- 주요 활동으로는 시스템 요구사항을 정제하여 소프트웨어 요구사항 분류, 후보 요구사항 모델링, 요구사항의 우선순위 부여, 해당 릴리즈에 수행할 요구사항 선정, 요구사항 협의
- 요구사항 분석 활동으로 비용과 일정에 대한 제약설정, 타당성 조사, 요구사항 정의 문서화 수행

요구사항 분석단계 절차
요구사항 분류 → 개념 모델링 생성 및 분석 → 요구사항 할당 → 요구사항 협상 → 정형분석

요구사항 분석단계 기법
1. 자료 흐름 지향 분석: 데이터 흐름도 및 자료사전으로부터 소프트웨어 구조를 유도하는 방법
2. 객체 지향 분석: 시스템의 기능과 데이터를 함께 분석, UML로 표준화

데이터 흐름도: 데이터가 각 프로세스를 따라 흐르면서 변환되는 모습을 나타낸 그림으로, 시스템 분석과 설계에서 매우 유용하게 사용
자료사전: 자료 요소, 자료요소들의 집합, 자료의 흐름, 자료 저장소의 의미와 그들간의 관계, 관계값, 범위, 단위들을 구체적으로 명시
UML: 객체 지향 소프트웨어 개발과정에서 산출물을 명세화, 시각화, 문서화할 시 사용되는 모델링 기술과 방법론을 통합해 만든 표준화된 범용 모델링 언어

요구사항 분석 기술
- 청취기술 / 인터뷰와 질문 기술 / 분석 기술 / 중재 기술 / 관찰 기술 / 작성 기술 / 조직 기술 / 모델 작성 기술


요구사항 명세 단계

- 체계적으로 검토, 평가, 승인될 수 있는 문서를 작성
- 동의한 요구사항을 하나 이상의 형태로 저장하여 정형화된 요구사항을 생성하는 활동 수행
- 주요 활동으로는 요구사항 명세 기준 정의, 요구사항 명세서 작성, 요구사항 추적 관련 정보 저장
- 산출물로 요구사항 명세서가 있다.

요구사항 명세 단계 주요 기법
1. 비정형 명세기법
- 사용자의 요구를 표현할 때 자연어를 기반으로 서술
- 사용자와 개발자의 이해가 용이
- 명확성 및 검증에 문제
2. 정형 명세 기법
- 사용자의 요구를 표현할 때 수학적인 원리와 표기법으로 서술
- 정형 명세 언어인 Z-스키마, Petri Nets, 상태차트 활용
- 표현이 간결, 명확성 및 검증이 용이
- 기법의 이해가 어려움

요구사항 명세 원리 및 검증 항목
: 명확성 / 완전성 / 검증 가능성 / 일관성 / 수정 용이성 / 추적 가능성 / 개발 후 이용성

요구사항 확인 및 검증 단계

- 요구사항 확인 및 검증은 요구사항 명세서에 사용자의 요구가 올바르게 기술되었는지에 대한 검토, 베이스라인 설정
- 프로젝트 참여자들이 요구사항을 이해했는지 확인하고 요구사항 문서가 회사의 표준에 적합한지, 일관성을 만족하는지, 완전한지를 검증
- 요구사항 명세서의 오류가 개발 단계나 운영중인 상태에서 발견된다면 오류 수정 및 재작업 비용이 많이 소요되므로 요구사항 확인 및 검증은 반드시 필요

요구사항 확인 및 검증 프로세스
요구사항 목록 확인 → 요구사항 정의서 작성 여부 확인 → 비기능적 요구사항의 확인 → 타시스템 연계 및 인터페이스 요구사항 확인

요구사항 정의서 목록
ID / 이름 / 유형 / 품질 속성 / 우선순위 / 중요도 / 출처 / 관련 부서 / 전제 조건 / 내용 / 관련 요구사항 / 버전 / 수용 여부

요구사항 확인 및 검증 단계의 주요 기법
- 요구사항 검토
- 정형기술검토 활용(★): 동료검토 / 워크 스루 / 인스펙션
- 프로토 타이핑 활용 
- 모델 검증 
- 테스트 케이스 및 테스트를 통한 확인
- CASE 도구 활용 검증
- 베이스라인을 통한 검증
- 요구사항 추적표를 통한 검증

상세 정형 기술 검토 기법
- 관리 리뷰 / 기술리뷰 / 인스펙션 / 워크 스루 / 감사


요구사항 관리 단계(CMM Level 2 프로세스 영역)

- 요구사항 관리는 프로젝트 진행 과정에서 발생하는 요구사항의 변경에 대해 일치성과 무결성을 제공하기 위해 변경 제어와 추적 등 일련의 관리를 수행하는 활동
- 주요 산출물: 요구사항 변경요청서 / 요구사항 변경 승인서 / 요구사항 추적표

요구사항 관리단계 절차
요구사항 협상 → 요구사항 기준선 설정 → 요구사항 변경 관리 → 요구사항 확인 및 검증

요구사항의 기술적 타당성 검토

성능 및 용량 산정의 적정성 / 시스템 간 상호 운용성 / IT 시장 성숙도 및 트렌드 부합성 / 기술적 위험 분석

요구사항의 기술적 타당성 분석 프로세스

타당성 분석 결과 기록 → 타당성 분석 결과의 이해관계자 검증 → 타당성 분석 결과 확인 및 배포 / 공유