Elaboration (정교화)
- Elaboration is the initial series of iterations during which:
→ The core, risky software architecture is programmed and tested. / 핵심 SW Architecutre 프로그램 및 테스팅
→ Most requirements are discovered and stabilized. / 요구사항 발견 및 안정화
→ The major risks are mitigated or retired. / 주요 위험은 완화되거나 폐기
UP Artifacts in Elaboration - OOA (Analysis)
- Domain Models
- Use-Case Model
Domain Model
- Domain model is a visual representation of conceptual classes or realsituation objects in a domain.
- 도메인에 뭐가 있는지 보여주는 Visual Dictionary 라고도 함.
- Domain model은 class diagrams 처럼 생겼는데
- no operations
- domain objects (or conceptual classes)
- associations between conceptual classes
- attributes of conceptual classes
SSD (System Sequence Diagram)
- A picture that shows the events that external actors generate, their order, and inter-system events, for one particular scenario of a use case.
- sequence diagram notation 그대로 쓰면 됨
- Used as input to object design → SSD를 그리면서 System operations을 찾아내는 것!
- system event 는 추상적으로 쓰는 게 좋다. (HW, UI, GUI, 이런 게 정해진 게 없으므로 직접적 언급은 피함)
Operation Contracts
- Use a pre- and post- condition form to describe detailed changes to objects in a domain model, as the result of a system operation.
- 시스템 인터페이스의 계약 사항
- as contracts of high-level system operations
- Preconditions / Postconditions와 같은 optional 항목으로 system interface 검증용으로 사용될 수 있음.
Quiz) 다음은 Elaboration 단계에 대한 설명이다. 올바르지 않은 것은?
① The core, risky software architecture is programmed and tested.
② Most requirements are discovered and stabilized.
③ The major risks are mitigated or retired.
④ High-level candidate SW architecture is proposed.
→ Elaboration 단계에서 Architecture + 구현까지 정해져야 함
Quiz) 다음의 Domain Model에 대한 설명 중 올바른 것을 모두 고르세요.
① Domain Model은 Design Class Diagram의 일종이다.
② Domain Model을 그림으로서 앞으로 개발할 SW가 어떤 환경에서 사용될 지를 가늠할 수 있다.
③ Domain Model에는 나중에 SW로 구현되지 않는 다양한 Conceptual Classes (Objects)가 포함된다.
④ Domain Model이 준비되면 Correctness 여부를 정확하게 검사한 후 사용해야한다.
Quiz) 다음의 System Sequence Diagram에 대한 설명 중 올바른 것을 고르세요.
① System을 black box component로 간주하고 분석한다.
② External Actor와 System 간의 모든 Interaction을 System Operation으로 선정한다.
→ 모든 interatcion은 아니고, system으로 들어오는 것만 선정
③ System이 각 System Operation에 대해서 어떻게 내부적으로 동작할 것인가도 고려해서 분석한다.
→ 내부적 동작은 고려하지 X
④ UML 2.0을 구성하는 중요한 다이어그램 중 하나이다.
→ SSD는 UML 2.0 13가지에 포함되지 않음
Quiz) Operation Contract에 대한 다음의 설명 중 올바르지 않은 것은?
① Describe detailed changes to objects in a domain model, as the result of a system operation
② Postcondition은 Domain Model을 기준으로 Objects의 상태가 어떻게 변하는가를 기술한다.
③ 가능하면 모든 System Operations에 대해서 Operation Contracts을 만드는 것이 좋다.
→ 복잡한 것만 만들면 됨.
④ Elaboration 단계 이후에는 크게 유용하지 않다.
본 글은 개인의 S/W 구조설계 역량 강화를 위한 학습 목적으로 정리된 내용입니다.
일부 타/개인 단체에 저작권이 있는 자료를 포함하고 있으므로, 절대 영리 목적으로 사용하실 수 없습니다.
'SW 공부 > OOP_OOAD_UML' 카테고리의 다른 글
[OOAD] 3-3. Elaboration - OOI (2) | 2022.08.29 |
---|---|
[OOAD] 3-2. Elaboration - OOD (2) | 2022.08.29 |
[OOAD] 2.Inception (12) | 2022.08.29 |
[OOAD] 1. Introduction of Object-Oriented Analysis and Design (2) | 2022.08.29 |
[UML] Component Diagram (2) | 2022.08.29 |
댓글