최신판 |
당신의 편집 |
1번째 줄: |
1번째 줄: |
| [[분류:소프트웨어 공학]]
| |
| [[분류:프로젝트 관리]]
| |
|
| |
| ;Requirements engineering, RE | | ;Requirements engineering, RE |
| ;시스템 요구사항 문서를 생성, 검증, 관리하기 위하여 수행되는 구조화된 활동의 집합
| |
|
| |
| ==요구 공학의 필요성==
| |
| {| class="wikitable"
| |
| |-
| |
| !문제점!!설명!!해소 방안
| |
| |-
| |
| |요구사항 도출의 어려움
| |
| ||
| |
| *도메인에 대한 이해 부족
| |
| *의사소통에 관한 일반적인 문제
| |
| ||[[시나리오 기법]], [[유즈케이스]], [[프로토타이핑]]
| |
| |-
| |
| |요구사항과 기대의 차이
| |
| ||
| |
| *묵시적인 요구사항
| |
| *기능/비기능 요구사항
| |
| ||최소 구비조건, 요구사항 명세서, [[SLA]]
| |
| |-
| |
| |요구사항 변화관리의 어려움
| |
| ||
| |
| *무분별한 요구사항 변경
| |
| *변경 추적 및 대응 체계 필요
| |
| ||CCB, 요구사항 추적표
| |
| |}
| |
|
| |
| == 요구공학 레퍼런스 ==
| |
| {| class="wikitable"
| |
| !문헌
| |
| !레퍼런스
| |
| !주요 내용
| |
| |-
| |
| |[[PMBOK]]
| |
| |
| |
| * 범위 관리 - 요구사항 수집
| |
| |
| |
| * 요구사항 수집 도구 및 기법, 산출물
| |
| |-
| |
| |[[CMM]]
| |
| |
| |
| * Level 2 PA
| |
| * Level 3 PA
| |
| |
| |
| * 요구사항 개발
| |
| * 요구사항 관리
| |
| |-
| |
| |[[SWEBOK|SEBOK]]
| |
| |
| |
| * 요구사항 개발
| |
| |
| |
| * 요구사항 개발 프로세스
| |
| |}
| |
|
| |
| ==요구사항 개발 절차 및 구성(CMM 기준)==
| |
| [[파일:요구공학.png]]
| |
| ===요구사항 개발 절차===
| |
| {| class="wikitable"
| |
| |-
| |
| !절차!!세부 내용
| |
| |-
| |
| |타당성 조사
| |
| ||
| |
| *시스템 개발 프로세스 진행이 충분히 가치있는지 조사
| |
| |-
| |
| |요구사항 추출 및 분석
| |
| ||
| |
| *비즈니스/사용자 요구사항 도출
| |
| *요구사항 타당성 분석
| |
| |-
| |
| |요구사항 명세화
| |
| ||
| |
| *요구사항 상세화/구체화
| |
| *요구사항 상호 협의
| |
| |-
| |
| |요구사항 검증
| |
| ||
| |
| *요구사항이 정확하고 필요한 내용을 포괄하는지 확인
| |
| *리뷰, 프로토타입, 테스트케이스, 시나리오 등 활용
| |
| |}
| |
|
| |
| ===요구사항 관리===
| |
| {| class="wikitable"
| |
| |-
| |
| !관리 항목!!설명
| |
| |-
| |
| |요구사항 협상||수용가능한 수준에서 구현 가능한 범위 협상
| |
| |-
| |
| |요구사항 기준선||공식적으로 검토되고 합의된 명세서
| |
| |-
| |
| |요구사항 변경관리||기준선을 기반으로 변경 통제
| |
| |-
| |
| |요구사항 확인 및 검증||구축된 시스템과 이해관계자의 요구에 부합되는지 확인
| |
| |}
| |
|
| |
| == 요구사항 개발 프로세스(SWEBOK 기준) ==
| |
| {| class="wikitable"
| |
| !프로세스 단계
| |
| !설명
| |
| |-
| |
| |요구사항 도출
| |
|
| |
| (Elicitation)
| |
| |
| |
| * 요구사항 소스(Require Source)
| |
| * 도출기법(Elicitation Technique)
| |
| |-
| |
| |분석
| |
|
| |
| (Analysis)
| |
| |
| |
| * 요구사항 분류(Classification)
| |
| * 개념 모델링(Conceptual Modeling)
| |
| * 기술 구조 설계 및 요구사항 할당(Architectural design & Requirement allocation)
| |
| |-
| |
| |명세
| |
|
| |
| (Specification)
| |
| |
| |
| * 시스템 정의서(System Definition Document)
| |
| * 시스템 요구사항 명세서(System Requirement Specification)
| |
| * 소프트웨어 요구사항 명세서(Software Requirement Specification)
| |
| |-
| |
| |확인
| |
|
| |
| (Validation)
| |
| |
| |
| * 검토(Review)
| |
| * 프로토타이핑(Prototyping)
| |
| * 모델검증(Model Verification)
| |
| * 인수 테스트(Acceptance Test)
| |
| |-
| |
| |요구사항 관리
| |
|
| |
| (Management)
| |
| |
| |
| * 요구사항 도출, 분석, 명세, 확인단계에서의 모든 요구사항 개발 프로세스의 주요 이슈 관리
| |
| |}
| |
| <br />
| |
| ==요구사항의 분류==
| |
| {| class="wikitable"
| |
| !구분
| |
| !내용
| |
| |-
| |
| |비즈니스
| |
| 요구사항
| |
| |
| |
| *왜(Why)에 해당하는 정보
| |
| *발주기관에서 프로젝트를 추진하는 배경
| |
| *시스템을 개발함으로써 얻어지는 효과
| |
| |-
| |
| |사용자
| |
| 요구사항
| |
| |
| |
| *무엇(What)에 해당하는 정보
| |
| *시스템을 통하여 달성되는 "무엇"을 설명
| |
| *발주기관 현업에서 수행하려는 시스템
| |
| |-
| |
| |기능
| |
| 요구사항
| |
| |
| |
| *개발해야 하는 기술 행위 요구사항(Behavior Requirements)
| |
| *시스템이 수행해야 하거나 시스템을 이용해 발주기관에서 할 수 있어야 하는 것들
| |
| |}
| |
|
| |
| ==[[제안 요청서]]==
| |
|
| |
|
| ==[[요구사항 명세서]]== | | == 요구 공학의 필요성 == |
| | # 요구사항 도출의 어려움 |
| | #* 도메인에 대한 이해 부족 |
| | #* 의사소통에 관한 일반적인 문제 |
| | #* 방안: [[시나리오 기법]], [[유즈케이스]], [[프로토타이핑]] |
| | # 요구사항과 기대의 차이 |
| | #* 묵시적인 요구사항 |
| | #* 기능/비기능 요구사항 |
| | #* 방안: 최고 구비조건, 요구사항 명세서, SLA |
| | # 요구사항 변화관리의 어려움 |
| | #* 무분별한 요구사항 변경 |
| | #* 변경 추적 및 대응 체계 필요 |
| | #* 방안: CCB, 요구사항 추적표 |
|
| |
|
| ==같이 보기== | | == 요구사항 개발 절차 == |
| | # 요구사항 유도 |
| | #* 비즈니스 요구사항 도출 |
| | #* 사용자 요구사항 도출 |
| | # 요구사항 분석 |
| | #* 요구사항 상세화/구체화 |
| | #* 요구사항 타당성 분석 |
| | # 요구사항 정의(문서화) |
| | #* 요구사항 모델링 |
| | #* 요구사항 체계적 분류, 정리 |
| | # 요구사항 검증/확인 |
| | #* 요구사항 결정·합의·확정 |
|
| |
|
| *[[소프트웨어 공학]]
| | == 요구사항 관리 == |
| *[[제안요청서]]
| | # 요구사항 관리 계획 수립 |
| *[[요구사항 표현법]]
| | # 요구사항 변경 관리 |
| *[[요구사항 추적성 매트릭스]]
| | # 요구사항 추적 관리 |
| *[[요구사항 명세서]]
| | # 요구사항 일치화 |