클래스 다이어 그램 [UML : Class Diagram]

 

UML[Unified Modeling Language]
시스템 설계를 시각화하는 표준 방법

 

 

클래스 다이어 그램
객체 지향 모델링에서 클래스의 속성 및 연산과 클래스간의 정적인 관계를 표현
순환, 의존이 발생하는 문제점을 파악하기 용이

클래스 : 공통 속성, 연산, 관계, 의미를 공유하는 객체들의 집합

 

 

관계 표현

 

연관 
Association
클래스가 서로 개념적으로 연결된 선
2개 이상의 사물이 서로 관련되어 있는 상태
방향성은 화살표로 표시하며, 서로에게 영향이 있는 양방향 관계의 경우 실선으로 표현

etc-image-0

 

1 한 객체와 연관
0..1 0개에서 1개까지 연관됨
0..* 0개 또는 무한한 객체와 연관[0 생략가능]
1..2,4 1개에서 2개 또는 4개까지 연관

 

 

 

 

의존
Dependency
하나의 클래스가 다른 클래스를 사용하는 관계
다른 클래스의 멤버 함수 사용
영향을 주는 사물이 영향을 받는 사물 쪽으로 점선 화살표를 연결하여 표현

etc-image-1

 

 

 

일반화
Generalization
일반적인 개념[부모]에 구체적인 개념[자식]으로 표현되는 관계
자식에서 부모로 화살표로 표현

 

etc-image-2

 

 

 

 

 

실체화
Realization
추상 클래스나 인터페이스를 상속받아 자식클래스가 추상 메서드를 구현할 때 사용

 

etc-image-3

 

 

 

 

포함
Composition
영구적이며, 집합관계보다 강한 관계로 표현
자동차[Whole]은 바퀴,핸들[part]를 종속적으로 가지고 있고, 전체수명을 책임지며, Part는 공유되지 않습니다.
포함되는 쪽이 포함되는 쪽으로 꽉찬 마름모로 표현

etc-image-4

 

 

 

 

집합
Aggregation
하나의 객체에 여러개의 독립적인 객체들이 구성되는 관계
하나의 객체가 다른 객체에 포함되어 있습니다.
포함되는 쪽[Part]에서 포함되는 쪽[Whole]으로 빈 마름모로 표현합니다.

etc-image-5