UML에서 Interface를 나타내는 표기법

UML에서의 Interface 표기방식(좌:클래스 형태표기, 우:롤리팝 표기법)

 

1. 클래스 형태 표기 (Stereo)

가장 표준적인 방식으로, 일반 클래스 상자에 스테레오타입인 «interface»를 표기합니다. 

  • 구성 : 상단에 «interface» 키워드와 인터페이스 이름을 작성하고, 아래 칸에 추상 메서드(오퍼레이션) 목록을 나열합니다.
  • 구현 연결 : 클래스가 이 인터페이스를 구현할 때는 점선 화살표(빈 삼각형 머리)인 '인터페이스 실현(Realization)' 선으로 연결합니다. 

2. 롤리팝 표기법 (Lollipop/Socket)

인터페이스를 간결하게 표현할 때 사용하는 아이콘 방식입니다.

  • 제공 인터페이스(Provided Interface) : 클래스 끝에 붙은 작은 원(공) 모양으로 표현하며, 해당 클래스가 인터페이스를 구현하고 서비스를 제공함을 의미합니다. (공을 줄께..)
  • 요구 인터페이스(Required Interface) : 클래스 끝에 붙은 반원(소켓) 모양으로 표현하며, 해당 클래스가 특정 기능을 수행하기 위해 해당 인터페이스를 필요로 함을 의미합니다. (공을 받을께..)

3. 비교

비교 항목 클래스 형태 표기법 (Stereotype) 롤리팝 표기법 (Lollipop & Socket)
모양 직사각형 + <<interface>> 원(Ball) 또는 반원(Socket)
상세 정보 표시함 (메서드, 속성 등) 감춤 (인터페이스 이름만 표시)
주 사용처 클래스 다이어그램 (상세 설계 단계) 컴포넌트 다이어그램 (아키텍처/구조 파악 단계)
목적 개발자가 어떤 메서드를 구현해야 하는지 명세할 때 시스템의 전체적인 연결 구조와 의존성을 볼 때

 

4. 기출문제

<감리사 2019년 기출문제>

 

[풀이] User 클래스는 Provider interface의 기능을 요구하므로 받는 놈, Provider interface는 기능을 주는 놈. 그러므로 주는 놈은 원, 받는 놈은 괄호로 표시. (가)의 Provider가 주는놈이니까 끝이 검정 공이고, User클래스가 받는 놈이니까 포수의 글러브처럼 공을 받고 있다고 생각하면 된다.