티스토리 뷰
요구사항 확인
요구공학: 사용자 요구 반영 시스템 개발위해 요구사항 도출, 분석, 명세, 확인 및 검증하는 구조화된 활동.
요구공학 목적: 이해관계자 사이 의사소통 수단 제공, 요구사항에 대한 공통된 이해를 설정. 요구사항 누락 방지 등 불필요한 비용 절감. 요구사항 변경 추적 가능케. 초기 요구사항 관리로 개발 비용, 시간 절약.
- 요구사항 분류: 요구사항 파악의 기본은 시스템 요구사항 파악이며, 요구사항은 기능적/비기능적 요구사항
기능적 | 비기능적 | |
개념 | 시스템의 기능, 서비스에 대한 요구사항 | 기능 이외의 시스템 구축 제약사항에 관한 요구사항 |
도출방법 | 입력/상황에 대해 시스템이 어떻게 반응/동작해야하는지 기술 | 품질 속성에 관련, 시스템이 준수할 제한 조건 기술. |
특성 | 기능성, 완전성, 일관성 | 신뢰성, 사용성, 효율성, 유지보수성, 이식성, 보안성 및 품질관련 요구사항, 제약사항 |
사례 | - 온라인 홈피에서 주문 품목을 저장하는 장바구니 기능 제공 결제수단은 신용카드, 무통장 입금, 포인트 결제 가능 |
특정 함수 호출시간 3초 이내 시스템은 24시간 가동, 가동률 99.5% 운영 중 패치 및 업그레이드 가능 |
- 요구공학 프로세스
: 요구사항 개발단계와 요구사항 관리단계로 구성됨.
- 요구사항 개발단계 구성 (CMM Level 3 프로세스 영역)
: 요구사항도출->분석->명세->확인 및 검증 단계
1) 요구사항도출(Elicitation): sw가 해결할 문제 이해, 고객 요구 정보 식별, 수집방법 결정, 요구사항 구체적 표현. 이해관계자가 식별되고, 고객분석, 조직 환경분석, 요구사항 소스 관리 등
2) 요구사항 분석: 도출된 요구사항에 충돌, 중복, 누락 등 분석 통해 완전성과 일관성 확보. 요구사항간 상충 해결, sw 범위 파악하며, sw 환경과 어떻게 상호작용 하는지 이해하는 단계. 시스템 요구사항 정제, sw 요구사항 분류, 후보 요구사항 모델링/우선순위 부여, 릴리즈 수행할 요구사항 선정, 요구사항 협의. 비용과 일정에 대한 제약설정, 타당성조사, 요구사항 정의 문서화
3) 요구사항 명세(specification): 검토,평가,승인될 문서작성. 동의한 요구사항을 하나 이상 형태로 저장해 정형화된 요구사항을 생성하는 활동 수행. 요구사항 명세 기준 정의, 명세서 작성, 요구사항 추적 관련 정보 저장.
4) 요구사항 확인 및 검증(Validation & Validation): 분석가가 요구사항 확인했는지 확인, 요구사항 문서가 회사의 표준에 적합하고 이해가능하며, 일관성있고, 완전한지 검증하는 단계. 명세서 검토, 요구사항 용어 검증, 베이스라인 수립. 이해관계자들이 요구사항 문서 검토 및 요구사항 관리 툴을 이용해 요구사항 저의 문서들에 대한 형상 관리 수행. 리소스가 요구사항에 할당되기 전에 문제파악위해 검증 수행.
- 요구사항 개발단계 상세
[1] 요구사항 도출 단계
주요 기법 | 설명 |
인터뷰 | 이해관계자와 직접 대화해 공식적/비공식적 정보 수집 |
브레인스토밍 | 말꺼내기 쉬운 분위기 만들어 아이디어 비판없이 수용 회의 |
델파이기법 | 전문가 경험지식 통한 문제해결,미래예측 |
롤플레잉 | 현실 장면 설정하고 각자 맡은 역할 연기해 요구사항 분석, 수집 |
워크숍 | 단기간 집중 통해 전문적 정보 획득, 공유. 플젝 핵심인물참여 필요. 사전 준비 요구 |
설문조사 | 설문지, 여론 조사로 간접적 정보 수집. 사용자가 다수일 때 의견수렴 용이. |
[2] 요구사항 분석 단계
순서 | 절차 | 설명 |
1 | 요구사항분류 | 요구사항이 기능/비기능인지와 sw에 미치는 영향, 생명주기동안 변경 발생확인 |
2 | 개념 모델링 생성 및 분석 | 현실세계를 단순화, 개념적 표현. 개념모델은 문제 도메인의 Entity들과 개별 관계 및 종속성을 반영. 유스케이스 다이어그램, 데이터흐름모델, 상태모델, 목표기반모델, 사용자인터랙션, 객체모델, 데이터모델 등 모델링표기는 주로 UML사용 |
3 | 요구사항 할당 | 아키텍처 구성요소 식별. 추가적 요구사항 발견 |
4 | 요구사항 협상 | 이해관계자 상충시 합의. 우선순위 부여. |
5 | 정형 분석 | 구문(syntax),의미(Semantics)를 갖는 정형화된 언어 사용해 수학적 기호로 표현. 요구사항 분석의 마지막 단계. |
요구사항 분석단계 기법에는 자료흐름 지향분석, 객체지향 분석이 있다.
- 자료흐름지향분석:데이터흐름도, 자료사전으로부터 sw 구조 유도방법
-객체지향분석:시스템기능과 데이터 분석, UML로 표준화
다양한 요구사항 분석 위해 청취기술, 인터뷰와 질문 기술, 분석 기술, 중재기술, 관찰 기술, 작성 기술, 조직 기술, 모델작성 기술도 사용.
- 요구사항 분석 기술
분석기술 | 설명 |
청취 | 이해관계자로부터 의견 듣는 기술 |
인터뷰와 질문 | |
분석 | 요구사항에 대해 충돌, 중복, 누락 등 분석 통해 완전성과 일관성 확보 |
중재 | 이해관계자들의 상충된 요구 중재 |
관찰 | 작업관찰하며 미언급된 의미 탐지 |
작성 | 문서 작성 |
조직 | 정보를 일관성있게 구조화하는 능력 |
모델작성 | 제어흐름, 기능처리, 동작행위, 정보내용 등을 이해하기 쉽게 모델로 작성 |
[3] 요구사항 명세 단계
: 체계적 검토, 평가, 승인될 문서를 작성하는 단계
요구사항 명세서가 명세단계의 산출물임.
주요기법 | 설명 |
비정형 명세기법 | 요구표현을 자연어로 서술. 명확성 및 검증에 문제. 사용자와 개발자의 이해가 용이 |
정형 명세기법 | 요구표현을 수학적 원리와 표기법으로 서술. 정형 명세인 Z-스키마, Petri Nets, 상태차트 활용. 표현 간결, 명확성 및 검증 용이. 기법 이해 어려움 |
- 요구사항 명세 원리 및 검증 항목:
항목 | 설명 |
명확성 | 각 요구사항 명세내용은 하나의 의미만 부여 |
완전성 | 기능, 성능, 속성 등 모든 시스템 요구사항이 포함되어야 함. |
검증 가능성 | 요구 충족 여부와 달성정도 확인 가능 |
일관성 | 요구내용에 상호 모순이 없어야 함 |
수정 용이성 | 요구사항 변경 시 쉽게 수정 가능 |
추적 가능성 | 각 요구사항 근거에 추적과 상호참조가 가능 |
개발 후 이용성 | 시스템 개발 후 운영 및 유지보수에 효과적 이용이 가능해야 함. |
[4] 요구사항 확인 및 검증 단계
요구사항 명세서에 사용자 요구가 올바르게 기술되었는지 검토, 베이스라인을 설정하는 활동.
플젝 참여자들이 요구사항 이해했는지 확인(validation)하고 문서가 회사표준에 적합한지, 일관성&완전성 만족하는지 검증(Verification)해야함.
명세서의 오류가 개발단계/운영상태에서 발견시 비용 소요되므로 요구사항 확인 및 검증은 반드시 필요.
- 요구사항 확인 및 검증 프로세스
순서 | 절차 | 설명 |
1 | 요구사항 목록확인 | 업무기능에 대한 요구사항 반영여부 확인 |
2 | 요구사항 정의서 작성여부확인 | 요구사항 중 수용인 경우, 요구사항 정의서(유스케이스 명세서)에 시스템 동작방식을 구체적으로 작성되어있는지 확인. |
3 | 비기능적 요구사항 확인 | 비기능적 요구사항 검토. 성능, 가용성, 사용 용이성, 유지보수 용이성, 안전성, 보안성 등에 대한 요구사항 문서화 여부 확인. |
4 | 타 시스템연계, 인페 요구사항 확인 | 타/하위시스템 등과 인페 요구사항 확인. 인페 구분(내/외부), 주기, 방법, 제공자, 요청자 등 명확 정의 확인. |
요구사항 정의서 목록
목록 | 검토내용 |
ID | 명명규칙에 따라 유일성 확보되는 식별자가 부여되었는지 확인 |
이름 | 요구사항 내용 요약하고, 중복확인 |
유형 | 기능/비기능/제약사항/기타로 구분확인 |
품질속성 | 비기능유형이 품질속성에 성능, 가용성, 유지보수성, 신뢰성, 보안성, 유지보수 용이성, 사용 용이성 등 명시되었는지 확인. |
우선순위 | 필수/선택/희망사항 등으로 구분확인 |
중요도 | 작성규칙에 따라 적절점수 부여됐는지확인 |
출처 | 요구사항 낸 이해관계자 이름이나 관련 문서명 기술됐는지 확인 |
관련부서 | 요구사항 관련 부서명 기술됐는지 확인 |
전제조건 | 요구사항 관련 전제조건 적절한지 확인 |
내용 | 내용 명확/이해쉽게 기술됐는지 확인 |
관련요구사항 | 관련 요구사항이 적절한지 확인 |
버전 | 요구사항 변경 상태에 따라 버전관리되고있는지 확인 |
수용여부 | 검토 예정, 수용, 거부 등 수용여부 진행상태 기술되어있는지 확인. |
요구사항 확인 및 검증 단계의 주요 기법 및 산출물
- 상세 정형 기술 검토 기법
기법 | 설명 |
관리리뷰 | 범위, 일정, 인력에 대한 통제 및 의사결정을 지원하는 리뷰 |
기술리뷰 | 계획, 몇세를 준수하는가 검토를 수행하는 리뷰. 변경사항 적절히 구현됐는가, 대안 추천. 대표 엔지니어가 주재하며, 관리자도 참여 가능. |
인스펙션 | 저작자 외 타전문가, 팀이 문제식별. =동료검토 |
워크스루 | |
감사(Audit) | sw 및 프로세스가 규제, 표준, 가이드라인, 계획, 절차를 준수하고있는지 독립적으로 평가. sw 제공자, 소비자, 제3기관이 시행. |
(워크스루는 위의 정형기술 검토활용 설명 참조)
- 요구사항 관리단계(CMM Level 2 프로세스영역):
요구사항은 일치성, 무결성 제공위해 변경제어, 추적 등 관리하는 것임.
주요산출물로 요구사항 변경요청서, 요구사항 변경승인서, 요구사항 추적표가 있음.
- 요구사항 관리 단계 절차:
순서 | 절차 | 내용 | 기법/산출물 |
1 | 요구사항 협상 | 구현 가능한 기능 협상 기법 | 우선순위 설정, 시뮬레이션 |
2 | 요구사항 기준선 설정 | 요구사항 명세서를 통해 기준선 설정 | 공식 회의, 형상관리 |
3 | 요구사항 변경관리 | 요구사항 기준선 기반으로 변경을 공식적으로 통제 | 형상통제위원회, 영향도 분석 |
4 | 요구사항 확인 및 검증 | 이해관계자가 기대한 요구사항에 시스템이 부합하는지 확인 | 확인 및 검증 |
- 요구사항 시스템화 타당성 분석
요구사항이 응용 sw에 미칠 영향에 대해 검토.
요구사항의 기술적 타당성 검토
검토항목 | 내용 |
성능 및 용량산정의 적정성 | 시스템의 용량이 산정되면 유사 플젝 경험치를 적용해 재조정, 성능 관련 비기능 요구사항과 비교해 적정성 여부 판단 |
시스템간 상호운용성 | 타 시스템과 연동시, 상호 운용 가능한지 판단 |
IT시장 성숙도 및 트렌드 부합성 | 기술들의 시장 성숙도 및 발전방향 파악, 요구사항이 부합하는지 판단. 향후 노사용 시스템은 유지보수가 어려워짐. |
기술적 위험 분석 | 적용한 기술의 복합성, 검증여부, 의존성 등에 대해 위험발생 가능성, 영향도 파악 |
-요구사항 기술적 타당성 분석 프로세스:
순서 | 분석 프로세스 | 설명 |
1 | 타당성 분석 결과 기록 | 타당성분석을 위한 속성을 요구사항 목록에 추가. 타당성분석 결과기록. (타당성분석: 성능, 용량, 상호운용성, 시장성숙도, 트렌드부합성, 기술복잡성, 기술검증, 기술의존성 등) |
2 | 타당성 분석 결과의 이해관계자 검증 | 타당성분석결과를 이해관계자에 배포해 사전검토 요청 후 관계자들이 결과 검증. 이견이 있으면 합의 도출 |
3 | 타당성분석 결과 확인 및 배포/공유 | 타당성분석결과를 의사결정자가 확인. 이해관계자에 배포 공유. |
'도구 > Etc' 카테고리의 다른 글
[2021 정보처리기사 실기] 5. 화면 설계 (0) | 2021.07.02 |
---|---|
[2021 정보처리기사 실기] 4. 분석 모델 확인하기 (0) | 2021.06.30 |
[2021 정보처리기사 실기] 2. 현행시스템 파악 (0) | 2021.06.29 |
[2021 정보처리기사 실기] 1. 소프트웨어 생명주기(SDLC; SW Development Life Cycle) (0) | 2021.06.29 |
ASCII Table - 아스키 코드표 (0) | 2021.05.21 |