일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- ret2libc
- SNR
- AINCAA
- Unity #Indie Game
- Race condition
- Security
- dtft
- stride
- 게임개발
- 유니티
- 운영체제
- sampling theory
- 게임 개발
- 메카님
- 배경 그림
- pdlc
- DP
- Frequency Response
- MLFQ
- linear difference equation
- DSP
- MAC
- link layer
- information hiding
- convolution
- frequency-domain spectrum analysis
- STCF
- 유스케이스
- polymorphism
- dirty cow
- Today
- Total
다양한 기록
분석 단계 개요 본문
분석 단계의 역할
- 시스템의 구성 요소를 파악하는 것이 목표
- 시스템의 구성 요소는 개발 방법론에 따라 달라질 수 있음
개발 방법론 | 시스템 구성 요소 |
구조적 방법론 | 모듈(함수, 프로시저) |
객체지향 방법론 | 클래스 |
컴포넌트 기반 방법론 | 컴포넌트 |
구조적 방법론
- 모듈은 임베디드 소프트웨어 분야에서 사용되는 시스템 구성 요소
객체지향 방법론
- 클래스는 1990년대 이후 객체지향 방법론을 적용한 기본 요소
컴포넌트 기반 방법론
- 컴포넌트는 별도의 인터페이스에 의해서만 기능을 수행하는 소프트웨어 모듈
역할
- 클래스 결정
- 클래스 별 속성, 연산, 연관 관계 도출
- 도출된 클래스는 완전하고 정확해야 함
구성 요소
산출물 | 관점 | 설명 | UML |
분석 클래스 모델 | 정적 관점 | 클래스, 클래스 간의 관계 | 클래스 다이어그램 |
분석 유스케이스 실현 모델 | 동적 관점 | 객체들 간의 상호작용 | 시퀀스 다이어그램 |
분석 모델의 요건
요건 | 설명 | 방법 |
명확성 | 모든 사람이 클래스/시퀀스 다이어그램을 동일하게 해석해야 한다 | 클래스/시퀀스 다이어그램의 표현법 준수 |
정확성 | 분석 클래스들이 유스케이스 실현 모델에 따라서 동작하면서 시스템의 요구사항을 정확하게 충족시켜야 한다 | 유스케이스 실현 모델의 검증 |
완전성 | 요구사항을 충족시키기 위하여 필요한 모든 클래스, 속성/연산, 관계가 정의되어야 한다 | 유스케이스 실현 모델과 분석 모델의 일관성 검증 |
설계 단계와의 차이점
- 플랫폼 소프트웨어 계층(미들웨어, 운영체제) 없음
- 분석 단계에서는 기능적 요구사항만을 수행
분석 클래스 모델
- 클래스 다이어그램을 이용해 표현
- 분석 패키지는 유사한 성격을 가지는 클래스만을 포함해야 함
.. 개념적 유사성, 기능적 유사성, 변화의 유사성, 관리적 유사성
분석 유스케이스 실현 모델
- 분석 클래스 모델의 완전성과 정확성을 높이기 위해 사용
분석 명세서
- 개요: 문서의 작성 목적과 문서의 내용에 대한 개략적인 소개
- 시스템 구성: 분석 패키지와 분석 클래스 명세
- 유스케이스 실현 명세: 시퀀스 다이어그램을 사용하여 시나리오 기술
분석 클래스 모델의 작성
- 각 유스케이스에 대한 명세서를 바탕으로 분석 수준의 클래스 모델을 작성하는 것이 표현
- 분석 클래스 모델은 경계(Boundary), 제어(Control), 엔티티 클래스로 구성
- 분석 클래스 간의 연관 관계, 일반화 관계, 의존 관계를 포함
- 각 클래스 별로 속성과 연산은 아직 정의되지 않은 상태
분석 클래스 모델의 상세화
- 분석 클래스의 속성과 연산 정의
- 각 유스케이스 별로 실현 모델 작성 (이때 시퀀스 다이어그램은 인스턴스를 나타냄)
분석 클래스 모델의 조직화
- 분석 클래스를 패키지화 하여 효율적으로 관리
1. 개념적 유사성
- 한 패키지에 속한 클래스들은 비슷한 개념적 범주에 속함
2. 기능적 유사성
- 한 패키지에 속한 클래스들은 하나의 기능을 제공하기 위하여 서로 협력
3. 변화의 유사성
- 비슷한 이유로 비슷한 시점에 변경이 될 가능성이 높은 클래스들은 한 패키지에 배치
4. 관리적 유사성
- 프로젝트 관리 측면에서 유사하게 취급될 클래스들을 하나의 패키지에 배치
'소프트웨어공학' 카테고리의 다른 글
분석 클래스 모델의 작성 (0) | 2024.10.26 |
---|---|
클래스 다이어그램 (0) | 2024.10.26 |
유스케이스의 조직화 (0) | 2024.10.26 |
유스케이스 모델 구조화 (0) | 2024.10.25 |
유스케이스 모델 상세화 (0) | 2024.10.24 |