UML의 관계(Relationships)란?
UML 다이어그램에서 사물(Things)과 사물 간의 연관성을 나타내는 선 또는 화살표를 말함
- 클래스, 객체, 인터페이스 등 사물들이 서로 어떻게 연결되어 있는지를 보여주는 개념
관계의 종류
- 연관 관계(Association)
- 사물 간의 일반적인 연결 관계
- 실선
- 집합 관계(Aggregation)
- 포함 관계이지만 전체와 부분이 독립적
- 속이 빈 마름모
- 포함 관계(Composition)
- 포함 관계이며 전체와 부분이 생명주기를 함께 함
- 속이 채워진 마름모
- 일반화 관계
- 상위(부모)와 하위(자식)의 상속 관계
- 속이 빈 화살표
- 의존 관계(Dependency)
- 한 사물이 다른 사물에 일시적으로 의존
- 점선 화살표
- 실체화 관계(Realization)
- 인터페이스와 구현 클래스 간의 구현 관계
- 속이 빈 점선 화살표
연관 관계(Association)
두 개 이상의 사물이 서로 관련되어 있는 관계
- 사물 간 실선으로 연결
- 한쪽만 방향이 있을 경우 화살표로 표시
양방향이면 화살표 생략 - 선 위에 숫자나 기호로 표현하여 연결 개수를 표시(다중도)

다중도
| 다중도 | 의미 |
| 1 | 1개의 객체가 연관 |
| n | n개의 객체과 연관 |
| 0..1 | 연관된 객체가 없거나 1개만 존재 |
| 0..* 또는 * | 연관된 객체가 없거나 다수 |
| 1..* | 연관된 객체가 적어도 1개 이상 |
| n..* | 연관된 객체가 적어도 n개 이상 |
| n..m | 연관된 객체가 최소 n개에서 최대 m개 |
집합 관계(Aggregation)
한 사물이 다른 사물에 포함되어 있지만, 서로 독립적인 관계
- 전체와 부분이 존재하되, 부분이 독립적으로 존재 가능
- 포함되는 쪽(부분)에서 포함하는 쪽(전체)으로 속이 빈 마름모로 연결

포함 관계(Composition)
전체와 부분이 생명주기를 함께하는 포함 관계
- 포함하는 사물의 변화가 포함되는 사물에게 영향을 미치는 관계
- 포함 관계이며 전체가 없어지면 부분도 사라짐
- 포함되는 쪽(부분)에서 포함하는 쪽(전체)으로 속이 채워진 마름모로 연결

일반화 관계(Generalization)
한 사물이 다른 사물보다 더 일반적이거나 구체적인 관계 (상속 관계)
- 상위 클래스(부모)와 하위 클래스(자식) 간의 상속 관계
- 하위(자식) → 상위(부모) 방향으로 속이 빈 화살표로 연결

의존 관계(Dependency)
사물 사이에 짧은 시간 동안만 연관을 유지하는 일시적 의존 관계
- 한 클래스가 다른 클래스의 기능을 잠시 사용하는 관계
- 점선 화살표로 표현
- 영향 받는 쪽(이용자)에서 영향 주는 쪽(제공자)으로 화살표가 향함

실체화 관계(Realization)
한 사물이 다른 사물에서 정의한 기능을 실제로 수행(구현)하는 관계
- 사물이 할 수 있거나 해야 하는 기능으로, 서로를 그룹화 할 수 있는 관계
- 주로 인터페이스와 구현 클래스 간의 관계를 표현
- 속이 빈 점선 화살표로 연결

정리
- 관계는 사물 간의 연관성을 표현한 것
- 연과 관계는 실선, 집합 관계는 속이 빈 마름모, 포함 관계는 속이 채워진 마름모로 표현
- 일반화 관계는 속이 빈 화살표, 의존 관계는 점선 화살표, 실체화 관계는 속이 빈 점선 화살표로 표현
- 포함 관계는 전체와 부분이 생명주기를 함께하며, 집합 관계는 독립적으로 존재할 수 있음
'정보처리기사' 카테고리의 다른 글
| 정보처리기사 실기 - 유스케이스 다이어그램 (0) | 2025.10.29 |
|---|---|
| 정보처리기사 실기 - UML-다이어그램 (0) | 2025.10.29 |
| 정보처리기사 실기 - UML(사물, 관계, 다이어그램) (1) | 2025.10.29 |
| 정보처리기사 실기 - 요구사항 분석 CASE와 HIPO (0) | 2025.10.29 |
| 정보처리기사 실기 - 요구사항 분석 (0) | 2025.10.29 |