01. 비기능적 정보 요구 사항 추가 |
분석 결과물에 비기능적 정보 요구 사항을 추가하여 통합된 문서를 만든다.
추가해야 할 비기능적 정보 요구 사항은 다음과 같다.
- 시스템의 기술적/물리적/논리적 제약
- 시스템의 성능 판단 기준
- 신뢰성, 확장성, 이식성, 보안
02. 프로세스 관점에서의 정보 요구 사항 상세화 |
분해되지 않는 최소의 업무 단위를 프로세스(Process)라고 한다.
프로세스 관점에서의 상세화는 다음 과정을 거쳐야 한다.
- 프로세스 계층도, 프로세스 정의서 작성
- 각 프로세스의 정보를 표준화하여 정리.
- 검토 후, 개별 프로세스를 통합/분리
- 만족된 정보 요구 사항을 목록화.
프로세스 계층도란 기능분류에 따른 순서를 트리(계층)구조로 가시화한 것.
하위 프로세스가 많고, 분리 가능한 프로세스를 찾는 것에 목적이 있다.
계층도 분석 시 다음과 같은 사항에 주의한다.
- 높은 응집도(Cohesion) 및 낮은 결합도(Coupling)을 만족하는 방향으로 분석한다.
- => 즉, 하위 프로세스가 많으면 분리하는 것을 고려한다.
- 프로세스 설명은 이해하기 쉽도록 상세하게 작성한다.
- 계층도에 모든 업무 조건이 반영되었는지 검토한다.
- 더욱 상세하게 재분석한다.
여러개의 기본 프로세스로 구성된 프로세스는 분해가능하다.
기본 프로세스란 데이터의 상태를 조회/변화(추가/수정/삭제)시키는 프로세스로 해석한다.
다음 사항에 주의하며 분해한다.
- 초기 작업시, 모든 프로세스를 균형있게 분해한다.
- 단위 업무(하위 업무가 없는) 프로세스가 도출되도록 분해한다.
- 너무 많이 분해하지 않는다. (단위 업무 수준, 최대 3차 까지)
유사한 프로세스가 있다면 통합가능하다.
다음 사항에 주의하며 통합한다.
- 적당한 통합은 관리 효율성을 증가시킨다.
- 무리한 통합은 정보를 심각하게 추상화 시킬 수 있음.
도출된 프로세스 정보를 표준화하여 기록한다.
다음 사항에 주의하며 기록한다.
- 프로세스의 기능에 따라 분류한다. (삽입/조회/갱신/삭제)
- 관련된 정보 요구 사항을 기입한다.
- 정보 요구 사항을 기준으로 프로세스를 분류한 문서도 작성한다.
03. 객체지향 관점에서의 정보 요구 사항 상세화 |
객체지향 방법론에서는 유즈케이스(Use-case) 다이어그램을 적용하여
기능적 정보 요구 사항을 정의한다.
유즈케이스의 구성요소는 다음과 같다.
- 액터 : 정보 시스템과 관련된 주체
- 유즈케이스 : 정보 시스템이 제공해야하는 서비스
- 릴레이션 : 각 구성요소간의 관계. (액터-유즈케이스 / 유즈케이스-유즈케이스)
- 확장 : 하나의 유즈케이스가 실행되었을 때, 선택적으로 실행되는 유즈케이스와의 관계. Extneds
- 포함 : 하나의 유즈케이스가 실행되었을 때, 절대적으로 실행되는 유즈케이스와의 관계. Include
- 소통 : 행위자가 유즈케이스에 참가함을 나타내는 관계. Communicates
유즈케이스 작성 후, 다음과 같이 상세화한다.
- 각 유즈케이스에 대한 설명을 기입한다.
- 사전, 사후 조건 및 프로세스 흐름을 기술한다.
- 비기능적인 정보 요구 사항
- 대체가능한 메인 프로세스 흐름과 대안을 기입.
- 예외 처리 사항.
유즈케이스를 바탕으로 다음과 같이 클래스 다이어그램을 작성한다.
- 의미가 모호한 객체를 제거한다.
- 관심 영역과 관련이 없는 객체를 제거한다.
- 유사한 구조와 행위를 가진 객체들을 클래스로 그룹핑한다.
- 각 클래스 간의 관계를 도출한다.
- 각 클래스의 속성(명사로 정의되는 특징)을 도출한다.
'# 미사용' 카테고리의 다른 글
[2-4-1]: 정보 요구 사항 상관분석 (0) | 2018.03.16 |
---|---|
[2-3-3]: 정보 요구 사항 확인 (0) | 2018.03.15 |
[2-3-1]: 정보 요구 사항 분석 (0) | 2018.03.14 |
[2-2-3]: 정보 요구 사항 통합 (0) | 2018.03.13 |
[2-2-2]: 정보 요구 사항 정리 (0) | 2018.03.13 |