본문 바로가기
IT개발/Tech Notes

UML 스테레오 타입(Stereotype) 완벽 정복: UML 확장 메커니즘과 활용법

by 시간기억자 2025. 6. 14.
반응형

UML 스테레오 타입(Stereotype) 완벽 정복

 

**UML (Unified Modeling Language)**은 소프트웨어 시스템을 모델링하기 위한 강력한 표준 언어입니다.

하지만 때로는 표준 UML 요소만으로는 특정 도메인의 특수한 요구사항이나 개발 프로젝트의 고유한 개념을 충분히 표현하기 어려울 때가 있습니다.

 

이때 활용되는 것이 바로 UML의 확장 메커니즘 중 하나인 **스테레오 타입(Stereotype)**입니다.


✅ 스테레오 타입(Stereotype)이란?

스테레오 타입은 UML의 기본 요소(클래스, 인터페이스, 유스케이스 등)에 새로운 의미나 용도를 부여하여 UML을 확장하는 메커니즘입니다. 기존 UML 요소의 형태를 그대로 사용하면서도, 그 요소가 특정 목적이나 역할을 수행한다는 것을 명확히 알려주는 일종의 '꼬리표' 또는 '태그'라고 생각할 수 있습니다.

  • 목적:
    • UML의 표현 능력을 확장하여 특정 도메인이나 기술적 특성을 반영합니다.
    • UML 모델의 가독성을 높이고, 모델의 의도를 명확하게 전달합니다.
    • 팀원들 간의 의사소통을 개선하고, 설계에 대한 오해를 줄입니다.
  • 표기 방법: 스테레오 타입은 일반적으로 '겹꺾쇠 괄호' 안에 이름을 넣어 표현합니다. (예: <<interface>>, <<controller>>)

✅ 스테레오 타입의 필요성

UML은 범용 모델링 언어이기 때문에 모든 산업 분야나 기술적 특성을 처음부터 내장하기는 어렵습니다.

스테레오 타입은 이러한 한계를 극복하고, 개발자가 특정 프로젝트나 도메인에 맞는 모델링 요소를 유연하게 정의할 수 있도록 돕습니다.

예를 들어, 웹 애플리케이션 개발 시 'DAO' (데이터 접근 객체)나 'Service' (서비스)와 같은 스테레오 타입을 사용하여 클래스의 역할을 명확히 할 수 있습니다.


✅ 자주 사용되는 스테레오 타입 예시 (정보처리기사 출제 빈도 높음)

첨부 이미지와 정보처리기사 시험에서 자주 다루는 스테레오 타입은 다음과 같습니다.

스테레오 타입 설명
include (인클루드) 유스케이스 다이어그램에서 사용됩니다. 하나의 유스케이스가 다른 유스케이스의 기능을 반드시 포함하여 실행해야 할 때 사용합니다. 일반적으로 포함되는 유스케이스는 재사용 가능한 공통 기능을 나타냅니다. (예: '로그인' 유스케이스는 '회원 정보 조회' 유스케이스에 포함됨)
extend (익스텐드) 유스케이스 다이어그램에서 사용됩니다. 하나의 유스케이스가 특정 조건 하에 다른 유스케이스의 기능을 선택적으로 확장할 때 사용합니다. 확장되는 유스케이스는 기존 유스케이스의 특정 지점(확장점)에서 실행됩니다. (예: '상품 주문' 유스케이스는 '쿠폰 적용' 유스케이스로 확장될 수 있음)
interface (인터페이스) 클래스 다이어그램에서 사용됩니다. 일반적인 클래스가 아닌, 인터페이스를 정의할 때 사용합니다. 인터페이스는 모든 메소드가 추상 메소드이며, 이를 구현하는 클래스가 구체적인 동작을 정의합니다. (자바의 interface와 유사)
constructor (컨스트럭터) 오퍼레이션(메소드)에 적용됩니다. 해당 오퍼레이션이 클래스의 생성자 역할을 수행함을 나타냅니다.
entity (엔티티) 주로 유스케이스 분석에서 사용되는 클래스 스테레오 타입으로, 시스템 내에서 관리되고 오래 지속되는 정보(데이터)를 나타내는 클래스에 사용됩니다.
boundary (바운더리) 시스템과 외부 액터(사용자나 외부 시스템) 간의 상호작용을 담당하는 클래스에 사용됩니다. 사용자 인터페이스나 외부 시스템과의 연동 부분을 모델링할 때 유용합니다.
control (컨트롤) 시스템이 제공하는 특정 기능의 비즈니스 로직이나 제어 흐름을 담당하는 클래스에 사용됩니다. 엔티티와 바운더리를 연결하여 유스케이스의 시나리오를 구현하는 역할을 합니다.
exception (예외) 예외(Exception)를 정의하는 클래스나 오퍼레이션에 사용됩니다.

✅ 스테레오 타입 활용의 장점

  • 표현력 증대: 표준 UML 요소로는 표현하기 어려운 복잡하거나 특수한 개념을 모델에 반영할 수 있습니다.
  • 의사소통 개선: 모델 요소의 특정 역할이나 의미를 명확히 하여 팀원 간의 이해도를 높입니다.
  • 도메인 특화: 특정 산업 분야나 개발 프레임워크의 개념을 UML 모델에 통합하여 사용할 수 있습니다.

📌 정보처리기사 시험 팁

  • 스테레오 타입의 개념: UML을 확장하는 메커니즘이며 '겹꺾쇠 괄호' 기호를 사용한다는 것을 기억하세요.
  • 주요 스테레오 타입의 역할: 특히 '인클루드', '익스텐드', '인터페이스', '컨스트럭터'는 출제 빈도가 높으므로 각 용도를 정확히 숙지해야 합니다. 유스케이스 다이어그램에서의 인클루드와 익스텐드 차이점은 매우 중요합니다.

📌 매일 간단히 IT 관련 개념을 익히고 싶다면 구독하세요!👇👇👇

http://www.youtube.com/@itbite_daily

 

오늘의 IT한입

👋 하루 한 입, 쉽게 배우는 IT & 개발 개념! 프로그래밍, 데이터베이스, 운영체제, 네트워크, 보안, 코딩테스트까지! 취업 준비부터 실무 감각까지 매일 짧고 강력하게 정리해드립니다. 📍 매일

www.youtube.com

 

반응형

댓글