UML 다이어그램

김석재·2024년 2월 9일
0

정보처리기사 공부


UML 다이어그램

UML(Unified Modeling Language) : 소프트웨어 시스템을 개발하는 과정에서 산출물의 명세화, 시각화, 문서화할 때 사용하는 모델링 언어로, 하나의 시스템을 표현하기 위한 표준적인 방법 제공을 위해 만들어졌다.

1) Class Diagram(클래스 다이어그램)

시스템에서 사용되는 객체 타입을 정의하는 다이어그램. 객체 지향 시스템에서 공통적으로 많이 쓰이는 다이어그램으로, 프로그램 코드로 바로 변환이 가능하다는 장점이 있다. 클래스는 이름, 속성, 연산으로 구성되고 모델 요소와 클래스 간의 관계를 여러 모양의 화살표와 선으로 표현한다.

2) Use Case Diagram(유즈케이스 다이어그램)

시스템과 사용자의 상호작용을 다이어그램으로 표현한 UML 다이어그램. 사용자가 시스템 내부 기능 중 어떤 기능을 사용 가능한지 나타내기 때문에, 고객과 개발자의 요구사항 관련 의견을 조율할 수 있다. 사용자와 시스템 사이의 관계를 나타내는 다이어그램이다.

3) Package Diagram(패키지 다이어그램)

클래스와 같이 여러 모델 요소를 그룹화하여 표현하는 UML 다이어그램. 서로 다른 패키지들 사이 의존관계를 표현한다. 패키지는 여러 클래스들로 구성된 묶음을 말하고, 의존 관계는 하나의 패키지가 다른 패키지를 사용하는 관계이다.

4) Statechart Diagram(상태 다이어그램)

객체가 가지는 모든 가능한 상태를 표현한 UML 다이어그램. 진입 조건, 탈출 조건, 상태 전이에 필요한 사건 등 자세한 상황을 표현한다. 설계 단계에서 객체가 동적 행동을 어떻게 하는지 표현하는데 쓰인다.

5) Activity Diagram(액티비티 다이어그램)

객체가 로직이나 조건에 따라 처리되는 흐름을 순서에 따라 정의한 UML 다이어그램. 무언가를 하고 있는 상태를 활동이라 하고, 시작 상태와 종료 상태, 선택점과 전이 등 클래스의 관계와 생명 주기나 관계를 표현한다.

6) Component Diagram(컴포넌트 다이어그램)

시스템을 구성하는 요소들의 조직과 종속성을 보여준다. 클래스 다이어그램과 비슷한데, 둘 다 의존성이 있고 일반화가 가능하다. 정해진 인터페이스를 실현 가능하기도 하다. 단, 클래스는 논리적인 추상화에 가까운 반면 컴포넌트는 물리적 요소를 나타낸다. 클래스는 속성과 오퍼레이션을 직접 가지지만, 컴포넌트는 자신의 인터페이스를 통해 접근 가능한 오퍼레이션만 가질 수 있다.

7) Sequence Diagram(순차 다이어그램)

객체들끼리 주고 받는 메세지의 순서를 시간의 흐름에 따라 보여주는 다이어그램이다. 일반적으로 화면 요구사항과 클래스 다이어그램 기반으로 작성된다. 1. 객체 간의 관계, 메시지의 시간적 순서 강조 표현과 2. useCase 시나리오를 시간과 순서에 따라 묘사 및 도식화하고 3. 복잡한 시나리오나 실시간 명세 표현, 메시지의 명시적인 순서 표현하는 특징이 있다.

0개의 댓글