UML 클래스 다이어그램의 6가지 관계

SW설계UML
읽는데 5분 소요
처음 쓰여진 날: 2025-09-26
마지막 수정일: 2025-10-26

요약

정보처리기사 실기 단골 문제인 UML 클래스 다이어그램의 6가지 관계(연관, 의존, 일반화, 실체화, 포함, 집합)를 표로 요약하여 쉽게 암기하는 방법을 알아봅니다. 정처기 대비를 위한 주관식 문제가 포함되어 있습니다.

UML 클래스 다이어그램의 6가지 관계는 소프트웨어 설계를 이해하는 데 매우 중요하지만, 처음에는 용어가 비슷해서 헷갈리기 쉽습니다. 각 관계를 비슷한 개념끼리 묶어 표로 요약하면 한눈에 파악하고 암기하는 데 도움이 됩니다.

UML 클래스 다이어그램 관계 요약표

6가지 관계가 있는데, 강약 마름모 2개(포집), 강약 화살표 2개(연의), 강약 속 빈 화살표 2개(일실)로 이뤄져있습니다.

관계모양키워드
포함(복합)강한 마름모◆ (속 찬)영구적, 강한, 속 찬
집합약한 마름모◇ (속 빈)포함, 독립적, 속 빈
연관강한 화살표→ (실선)서로 관련, 지속적
의존약한 화살표⇢ (점선)짧은 시간, 잠깐
일반화강한 속 빈 화살표─▷ (실선)일반적, 상속
실체화약한 속 빈 화살표- -▷ (점선)인터페이스, 약속

클래스 다이어그램 관계

클래스(class)는 보통 사물(thing)을 비유하기 때문에 사물은 클래스라고 생각하면 됩니다. 현실에서 사물간의 관계가 있듯이 클래스간의 관계를 정할 수 있습니다.

포함(복합: Composition)

  • 모양: 강한 마름모◆ (속 찬)
  • 키워드 : 영구적, 강한, 속 찬
  • 예시 : 집과 방(집이 없어지면 방도 없어진다.)

집과 방은 강하게 얽힌 운명 공동체입니다. 집이 없어지면 방도 없어집니다.

다이어그램을 로드하는 중...

집합(Aggregation)

  • 모양: 약한 마름모◇ (속 빈)
  • 키워드 : 포함, 독립적, 속 빈
  • 예시 : 학과와 학생(학과가 없어져도 학생은 없어지지 않는다.)

학과가 없어져도 학생은 없어지지 않습니다. 학생은 다른 학과로 가면 됩니다. 학과와 학생은 독립적인 느슨한 공동체입니다.

다이어그램을 로드하는 중...


연관(Association)

  • 모양: 강한 화살표→ (실선)
  • 키워드 : 서로 관련, 지속적
  • 예시 : 야구팀과 투수(야구팀은 투수를 항상, 지속적으로 사용한다.)

야구팀에 잠깐이라도 투수가 없다면 경기를 할 수 없습니다. 야구팀과 투수는 영원히 연결되어 있습니다.

다이어그램을 로드하는 중...

의존(Dependency)

  • 모양: 약한 화살표⇢ (점선)
  • 키워드 : 짧은 시간, 잠깐
  • 예시 : 개발자와 책(개발자는 책을 잠깐 사용한다.)

개발자는 공부하기 위해 책을 잠깐씩 사용합니다. 책이 없다고 개발자가 아무것도 하지 못하는 건 아닙니다.

다이어그램을 로드하는 중...


일반화(Generalization)

  • 모양: 강한 속 빈 화살표─▷ (실선)
  • 키워드 : 일반적, 상속
  • 예시 : 고양이는 동물이다. (동물은 고양이보다 더 일반적 이다. 상위(동물), 하위(고양이)로 나뉨, 고양이 -> 동물 )

고양이는 동물의 한 종입니다. 동물은 고양이보다 더 일반적인 개념입니다. 고양이는 동물의 하위 클래스입니다.

다이어그램을 로드하는 중...

실체화(Realization)

  • 모양: 약한 속 빈 화살표- -▷ (점선)
  • 키워드 : 인터페이스, 약속
  • 예시 : 로봇청소기는 청소할 수 있다. (청소할 수 있는 '기능' 으로 그룹화. '로봇청소기' --> '청소할 수 있는')

로봇청소기는 청소할 수 있는 기능을 가지고 있습니다. 청소할 수 있는 기능을 가진 건 여러가지가 있겠죠. 진공청소기, 빗자루, 걸레, 그리고 로봇 청소기가 있을 수 있습니다.

다이어그램을 로드하는 중...


정보처리기사 실기 대비 실전 문제