# 범위
216 page ~
# 내용
## Object Interaction Modeling
- Object Interaction Modeling은 개발 팀이 현재 비즈니스 프로세스를 이해하는데 돕고 비즈니스를 개선하기 위한 객체 상호 동작을 설계한다.
## 9.1 WHAT IS OBJECT INTERACTION MODELING?
- 객체는 상속, aggregation, 연관관계 등으로 이루어져 있다. 그리고 상호작용을 거치며 시스템이 돌아간다.
- 분석문제 - 기존의 수동 방식 비즈니스 프로세스에서 비즈니스 작업을 수행하기 위해 객체가 어떻게 상호 작용하는가?
- 개발팀원들이 지금의 비즈니스 프로세스에 익숙하지 않을 수 있기 때문에 분석문제는 중요하다.
- 따라서 분석 목적으로 객체 상호작용 모델을 구성하는 것은 유용하다.
- 디자인 문제 - 비즈니스 프로세스를 개선하기 위해 시스템에서 객체가 어떻게 작용해야할까?
- 기존 비즈니스 프로세스는 수십년전에 개발된 것이고, 그간 기술의 발전 덕에 기존의 프로세스가 구식이거나 수동적일 수 있다.
- 기존 프로세스를 다시 설계해야 할 수 있으며 설계 목적을 위해 객체 모델을 구성해야 한다.
- [객체 상호작용 모델링(OIM)은 다음을 위한 프로세스이다]
- 기존시스템에서 객체가 어떻게 상호작용 했는지를 이해한다.
- 기존 시스템에서의 문제와 한계를 파악할 수 있도록 돕는다.
- 제안된 소프트웨어 시스템에서 객체가 상호작용하여 use case를 수행 할 수 있는 방법을 설계하고 지정한다.
## 9.2 UML SEQUENCE DIAGRAM
- UML 시퀀스 다이어그램은 객체 상호작용을 객체간에 주고 받는 일련의 시간 순서 메시지로 나타낸다.
## 9.2.1 Notion and Notations
## 9.2.2 Representing Instances of a Class
## 9.2.3 Sequence Diagrams Illustarted
## 9.2.4 Sequence Diagram for Analysis and Design
- 분석과 설계의 차이
- 분석은 어플리케이션 지향적인 반변, 설계는 소프트웨어 솔루션 지향적이다.
- 분석단계에서는 어플리케이션의 문제를 파악하고, 혁식적인 솔루션을 제안하는데 집중해야 한다.
- 설계단계에서는 개발팀은 개발에 더욱 집중하며 적절한 소프트웨 아키텍처와 그요소를 개발하는데 중점을 둔다. 예를 들어 높은 응집력 낮은 결합도와 같은 설계 원칙을 고려해야 한다.
- 분석과 설계의 차이는 모델링
- 분석단계에서는 개발팀은 응용프로그램 도메인에 대한 모델을 구성하여 응용프로그램을 이해하는데 도움을 준다
- 설계 단계에서는 소프트웨어 시스템 모델이 구성된다.
- 지각과 컴퓨터화된 표현의 차이
- 분석 모델에서 객체는 도메인 개념과 인서턴스에 대한 인식 -> 시스템을 실제 세상으로 묘사
- 설계 모델에서 클래스 및 객체는 소프트웨어 클래스 및 소프트웨어 개념이다. -> 시스템을 소프트웨어 솔로쎤으로
## 9.2.5 Using the Notations Correctly
## 9.3 STEPS FOR OBJECT INTERACTION MODELING
- 기존 비즈니스 프로세스에 대한 정보를 수집한다.
- expanded use cases의 사소한 단계에 대한 시나리오를 지정한다.
- 시나리오 테이블을 구성한다.
- 시나리오 표에서 UML 시퀀스 다이어그램을 도출한다.
- Object interaction models를 리뷰한다.
'• 독서 > Object Oriented Software Engineering' 카테고리의 다른 글
[Object Oriented S/E] Chapter 10 - Object Interaction Modeling (0) | 2023.06.02 |
---|---|
[Object Oriented S/E] Chapter 8 - Actor System Interaction Modeling (0) | 2023.05.12 |
[Object Oriented S/E] Chapter 7 - Deriving Use Cases from Requirements (0) | 2023.05.04 |
[Object Oriented S/E] Chapter 6 - Architectural Design (0) | 2023.04.28 |
[Object Oriented S/E] Chapter 5 - Domain Modeling (0) | 2023.04.13 |