1. UML이란?
– 시스템 개발자와 고객간의 의사소통이 원할하게 이루어지도록 표준화한 대표적인 객체지향 모델링 언어.
– Rumbaugh, Booch, Jacobson 등 객체지향 방법론의 장점을 통합.
– 객체 기술에 관한 국제표준화기구(OMG)에서 표준으로 지정.
– UML의 구성요소: 사물, 관계, 다이어그램. ★★
1. 1. 사물
– 모델을 구성하는 가장 중요한 기본 요소.
– 다이어그램 안에서 관계가 형성될 수 있는 대사들을 의미.
1. 2. 관계 ★★
: 사물과 사물 사이의 연관성을 표현
- 일반화 관계(Generalization): 한 클래스가 다른 클래스를 포함하며, 더 구체적으로 표현.(상속)
- 연관 관계(Accocication): 한 클래스가 다른 클래스에서 제공하는 기능을 사용.
- 의존 관계(dependency): 클래스의 관계가 한 매서드를 실행하는 동안과 같이 짧은 시간만 유지.
- 실체화 관계(Realization): 인터페이스를 구현받아 추상 메서드를 오버라이딩.
- 집합 관계(Aggregation): 하나의 사물이 다른 사물을 포함.
- 합성 관계, 포함관계(Composition): 부분 객체가 전체 객체에 속하는 관계로, 긴밀한 필수적 관계
1. 3. 다이어그램
: 사물과 관계를 도형으로 표현한 것.
1. 3. 1. 구조적(Structural) 다이어그램 ★★ => 정적
- 클래스(Class): 클래스와 클래스가 가지는 속성⋅관계를 표현.
- 객체(Object)
- 컴포넌트(Component): 구현 단계
- 배치(Deployment): 물리적 요소들의 위치를 표현.
- 복합체 구조(Composite Structure): 클래스나 컴포넌트가 복합 구조를 갖는 경우.
- 패키지(Package): 패키지들의 관계 표현.
1. 3. 2. 행위(Behavioral) 다이어그램 ★★ => 동적
- 유스케이스(Use Case): 사용자의 요구를 분석. 모델링에 사용.
- 시퀀스(Sequence): 상호작요하는 시스템이나, 주고받는 메세지를 표현.
- 커뮤니케이션(Communicataion): 메세지뿐만 아니라 객체간의 연관까지 표현.
- 상태(State): 상태의 변화를 표현.
- 활동(Activity): 처리의 흐름을 순서에 따라 표현.
- 타이밍(Timing): 객체 상태 변화와 시간 제약을 표현.
- 상호작용 개요(Interaction Overview): 상호작용 다이어그램 간 제어 흐름을 표현.