반응형
요구사항 개념
개념
- 도출, 분석, 명세, 확인의 프로세스를 가진다.
요구사항의 유형
기능 요구사항
- 시스템의 기능과 입출력 및 연산에 대한 요구사항
비기능 요구사항
- 장비, 성능, 품질에 대한 요구사항
사용자 요구사항
- 시스템이 사용자에게 제공해야하는 것들에 대한 요구사항
- 개발자 관점으로 작성되며 전문적, 기술적인 용어로 표현한다.
요구사항 도출
개념
- 요구사항의 출처를 파악한다.
- 어떠한 방법으로 수집할지 파악한다.
- 개발자와 고객사이의 관계가 만들어지고 이해관계자가 식별된다.
- 개발 생명 주기 동안 지속적으로 반복되는 단계이다.
요구사항 도출 기법
인터뷰
- 가능한 많은 사용자로부터 인터뷰 진행
- 회의록을 작성, 가능한 인터뷰 내용을 녹취
설문조사
- 인터뷰가 어려울경우 설문조사 형식으로 조사
- 시스템의 문제점, 개선할 점 등을 끌어낼 수 있는 설문만 진행
프로토타이핑
- 기본적인 기능들만 빠르게 구현후 피드백
스토리텔링
- 이야기 형식으로 요구사항 기록
유스케이스
- 사용자의 요구사항을 기능 단위로 표현
유스케이스 다이어그램
유스케이스 다이어그램 구성 요소
시스템 범위
- 시스템 범위를 사각형으로 표시한 것
유스케이스
- 기능의 이름은 단순 명료하게 작성
액터
- 시스템 외부에서 상호작용하는 요소들
- 프라이머리 액터 - 시스템을 사용함으로써 이득을 보는 액터, 왼쪽에 위치하며 보통 사람을 의미
- 세컨드리 액터 - 프라이머리 액터가 이득을 얻기 위해 도움을 주는 액터, 오른쪽에 위치하며 보통 외부 시스템을 의미
관계
- 액터와 유스케이스간의 상호작용을 화살표 등으로 표시한 것
- 포함, 일반화, 확장 관계가 있다.
유스케이스 다이어그램 관계
포함 관계(필수적)
- 공통적으로 쓰이는 기능을 따로 분리하여 새로운 유스케이스를 생성한 경우
- 새로운 유스케이스 방향으로 점선 화살표를 그리고, <<include>>를 표시한다.
일반화 관계
- 상위, 하위 관계를 표현한다.
- 상위 유스케이스 방향으로 속이 빈 실선 삼각 화살표를 그린다.
확장관계(선택적)
- 특정한 조건이 만족되는 경우에만 실행
- 원래의 유스케이스 방향으로 점선 화살표를 그리고, <<extend>>를 표시한다.
유스케이스 다이어그램 작성 시 주의사항
실행 순서를 나타낼수 없기 때문에 흐름도처럼 그려선 안된다.
불필요하고 과도한 포함관계 사용을 자제해야한다.
유스케이스 기술서 구성요소
유스케이스 명, 액터 명, 개요, 사전 조건, 기본 흐름, 대체 흐름
요구사항 분석
요구사항 분석의 개념
- 사용자 요구사항의 타당성을 조사
- 서로 다르거나 중복, 상충되는 것들을 해결
요구사항 분석 기법
요구사항 분류
- 범위와 우선순위를 분류
- 기능적, 비기능적 요구사항 분류
- 사용자, 개발자 요구사항 분류
- 형상관리 대상인지 아닌지 분류 - 지속적인 대상인지
개념 모델링
- 주변 시스템이 상호작용하는 시나리오를 개념 모델로 작성
- 구체화하는 도구로 UML사용
요구사항 할당
- 요구사항을 만족시킬 수 있는 구성 요소들을 식별한 후 업무에 맞게 할당
- 개발자, 소프트웨어, 시스템, 데이터베이스 등의 구성요소를 식별
- 각 구성 요소별 상호작용으로 인한 추가적인 요구사항이 있는지 판단
요구사항 협상
- 서로 충돌하는 경우 적절한 기준점을 찾기
- 2명 이상의 이해 관계자가 요구하는 요구사항이 충돌하는 경우
- 요구사항과 자원이 서로 충돌하는 경우
- 기능 요구사항과 비기능 요구사항이 충돌하는 경우
- 요구사항에 각각의 우선순위를 부여
정형 분석
- 구분과 의미를 갖는 정형화된 언어로 요구사항 표시
- 정확하고 명확한 표현으로 이해관계자 간의 오해를 최소화
요구사항 분석
구조적 분석의 원리
- 추상화 원칙
- 객체의 중요한 특징만을 간단하게 표현
- 세부적인 것에 의해 제약을 받지 않고 문제 해결을 고려
- 정형화 원칙
- 문제를 해결하는데 엄격하고 공학적인 접근 방법을 적용
- 분할 정복의 개념
- 작은 독립적인 서브 시스템으로 나누기
- 서브 시스템을 해결하여 큰 시스템으로 합치기
- 계층적 구조의 개념
- 독립적인 모듈들로 나누어 계층적 구조로 배열
- 모듈의 상호 연관 관계 및 구조에 대한 이해도 향상
구조적 분석의 특징
- 이미지 중심의 형태로 표현
- 개발의 모든 단계에서 필요한 명세서 작성이 가능
- 사용자 참여 기회를 확대
- 중복성을 배제하고 하향식으로 분석
구조적 분석 도구
자료 흐름도
- 구성 요소들 사이를 어떻게 흐르는지 그림으로 표현한 양식
- 자료의 흐름을 명확히 파악 가능
- 작업 소요시간을 알 수 없다.
- 자료 흐름도 표기법자료 흐름도 작성 지침
- 자료는 처리가 될 때마다 새로운 명칭을 부여
- 최하위 프로세스는 소단위 명세서를 가진다.
- 페이지당 버블(프로세스)의 수가 12개 이내이다.
- 페이지의 단계는 2~3단계이다.
- 최종단계의 버블은 코딩이 가능한 수준에서 멈춘다.
자료 사전
- 자료의 이름과 속성을 표기하고 조직화한 도구이다.
- 모든 자료는 규칙에 맞게 정리하여 명세
- 자료 사전 표기법
NS차트
- NS차트의 3가지 제어 구조 : 순차, 선택, 반복
- NS 도표 특징
- 도형 표현 방법
- 임의의 제어 이동이 어렵다
- 시각적으로 명확히 식별되어 프로그램 구현이 쉽다.
HIPO
- 시스템의 기능을 고유한 모듈로 분할하고 이들 간의 인터베이스를 계층구조로 표현
- 입력, 처리, 출력으로 기본 시스템 모델이 구상
- 하향식 소프트웨어 개발을 위한 문서화 도구
- 기호, 도표등을 사용해서 직관적이고 이해가 쉽다.
- 수정 및 유지보수에 좋고 소규모 프로젝트에 적합하다.
반응형
'자격증 > 정보처리기사' 카테고리의 다른 글
UML (0) | 2023.11.15 |
---|---|
요구사항 정의(2) (0) | 2023.10.16 |
소프트웨어 개발 환경 분석 (0) | 2023.10.13 |
소프트웨어 생명 주기 모델 (0) | 2023.10.12 |
소프트웨어 개발 방법론 활용 (0) | 2023.10.06 |