Skip to content
난이도 문제은행 6

UML 다이어그램의 종류 2 ​

앞 문서에서 UML(Unified Modeling Language, 통합 모델링 언어) 다이어그램 14종의 분류를 봤다. 이 문서는 시험에 구성 요소까지 나오는 유스케이스·순차·패키지 다이어그램을 자세히 본다.

유스케이스 다이어그램 ​

유스케이스 다이어그램(use case diagram)은 사용자와 외부 시스템이 이 시스템으로 무엇을 할 수 있는지를 사용자 관점에서 그린다. 요구사항 분석 단계에서 기능 범위를 합의하는 데 쓴다.

  • 시스템 범위: 유스케이스들을 사각형으로 묶어 시스템 경계를 표시한다.
  • 액터(actor): 시스템과 상호작용하는 외부 요소다. 시스템을 써서 이득을 얻는 사람은 주액터(primary actor), 주액터를 돕기 위해 서비스를 제공하는 외부 시스템은 부액터(supporting actor)다.
  • 유스케이스(use case): 사용자가 보는 기능 하나를 타원으로 그린다.
  • 관계: 포함(include)은 반드시 함께 실행되는 기능, 확장(extend)은 조건에 따라 덧붙는 기능, 일반화 관계(generalization)는 상위·하위 관계다.

예를 들어 은행 앱의 "계좌 이체"가 매번 "본인 인증"을 거친다면 포함이고, "영화 예매" 중 원하는 사람만 "간식 함께 주문"을 한다면 확장이다.

순차 다이어그램 ​

순차 다이어그램(sequence diagram)은 객체들이 메시지를 주고받는 과정을 위에서 아래로 시간 순서대로 그린다. 구성 요소는 액터, 객체, 객체가 살아 있는 기간을 세로 점선으로 그린 생명선(lifeline), 객체가 일하는 중임을 나타내는 가늘고 긴 사각형인 실행 상자(activation box), 화살표로 그린 메시지, 생명선 끝의 X 표시인 객체 소멸(destruction event), 다이어그램을 묶는 프레임(frame)이다.

패키지 다이어그램 ​

패키지 다이어그램(package diagram)은 유스케이스나 클래스 같은 요소를 묶은 패키지 사이의 의존 관계(dependency)를 점선 화살표로 그린다. 패키지 상자 안에 이름만 적는 단순 표기법과, 안에 든 요소까지 그리는 확장 표기법이 있다. 의존 화살표에는 스테레오타입(stereotype)으로 관계를 구체적으로 적는데, 시험은 «import»를 다른 패키지의 요소를 직접 가져와 쓰는 것, «access»를 인터페이스를 거쳐 접근해 쓰는 것으로 구분한다.1

시험 포인트 ​

  • "사용자 관점에서 기능 표현, 액터와 유스케이스" → 유스케이스 다이어그램. 반드시 실행 → 포함, 조건부 → 확장.
  • "메시지를 시간 순서로, 생명선·실행 상자" → 순차 다이어그램.
  • "패키지 사이 의존" → 패키지 다이어그램. 가져와 씀 → import, 접근만 → access.

참고

  1. UML 2.5.1 명세에서는 둘 다 다른 패키지의 이름을 들여오는 패키지 가져오기(package import)다. 들여온 이름을 공개(public)로 두면 «import», 비공개(private)로 두어 다시 내보내지 않으면 «access»로 표시한다. ↩︎

관련 문서