UML(Unified Modeling Language, 통합 모델링 언어)는 시스템의 디자인을 시각화하는 언어이자 모델입니다.
UML은 구조 다이어그램과 행동 다이어그램, 이 두 가지로 나뉩니다.
하나씩 살펴보겠습니다.
1. 구조적 다이어그램 (Structure Diagrams)
1) 클래스 다이어그램, Class Diagram
클래스 다이어그램은 아래와 같이 세 가지 블럭으로 나뉘는 구조입니다.
첫 번째 블럭은 클래스의 이름입니다. 첫 글자는 대문자이며, 중앙정렬이고, 두꺼운 폰트를 사용합니다.
두 번째 블럭은 클래스의 속성들 입니다.
세 번째 블럭은 클래스의 실행할 수 있는 작업을 나타냅니다.
여기에 클래스 레벨 연관관계를 표현하면 다음과 같습니다.
여기서 사용되는 화살표들은 클래스 다이어그램, 객체 다이어그램에서 함께 사용되고 있습니다.
다음과 같습니다.
순서대로
연관 (Association)
상속 (Inheritance 혹은 Generalization 일반화)
실체화 (Realization 혹은 Implementation)
의존 (Dependency)
집합 (Aggregation)
합성 (Composition)
입니다.
2) 객체 다이어그램, Object Diagram
클래스에 속한 사물(객체), 즉 인스턴스를 특정 시점의 객체와 객체 사이의 관계로 표현합니다.
3) 컴포넌트 다이어그램, Component Diagram
컴포넌트들이 더 큰 구조를 만들기 위해 어떻게 연결되는지. 복잡한 시스템 구조를 설명하기 위해 사용합니다.
4) 배치 다이어그램, Deployment Diagram
컴포넌트 사이의 종속성을 표현하며 결과물, 프로세스, 컴포넌트 등 물리적 요소들의 위치를 표현합니다.
5) 복합체 구조 다이어그램, Composite Structure Diagram
클래스나 컴포넌트가 복합 구조를 갖는 경우 그 내부 구조를 표현합니다.
6) 패키지 다이어그램, Package Diagram
유스케이스나 클래스 등의 모델 요소들을 그룹화한 패키지들의 관계를 표현합니다.
2. 행위적 다이어그램 (Behavioral Diagrams)
1) 유스케이스 다이어그램, Use Case Diagram
시스템의 기능적 요구 정의에 활용하며 사용자 관점에서 시스템의 활동을 표현합니다.
2) 시퀀스 다이어그램, Sequence Diagram
객체 간 상호 작용을 메시지 흐름으로 표현하여 시간을 표현할 수 있습니다.
3) 커뮤니케이션 다이어그램, Communication Diagram
시퀀스 다이어그램과 같이 동작에 참여하는 객체들이주고받는 메시지를 표현하는 데 메시지뿐만 아니라 객체 간의 연관까지 표현할 수 있습니다.
4) 상태 다이어그램, State Diagram
하나의 객체가 자신이 속한 클래스의 상태 변화 혹은 다른 객체와의 상호 작용에 따라 상태가 어떻게 변화하는지 표현하며, 모든 가능한 상태와 전이를 표현할 수 있습니다. (진입 조건, 탈출 조건, 상태 전이 등)
5) 활동 다이어그램, Activity Diagram
시스템이 어떤 기능을 수행하는지를 객체의 처리 로직이나 조건에 따른 처리의 흐름으로 순서대로 표현
활동의 순서대로 흐름을 표현
6) 타이밍 다이어그램, Timing Diagram
객체 상태 변화와 시간 제약을 명시적으로 표현합니다.
'정보처리기사' 카테고리의 다른 글
[정보처리기사] 디지털 저작권 관리(DRM)의 구성 요소와 역할 (0) | 2023.05.09 |
---|---|
[정보처리기사] 블루투스(Bluetooth) 와 블루투스를 통한 공격기법 (0) | 2023.04.24 |
[정보처리기사] DoS란? (Smurf, Land Attack, SYN, ICMP, UDP, HTTP Flood) (0) | 2023.04.24 |
[정보처리기사] 접근통제 방법 MAC, DAC, RBAC (0) | 2023.04.24 |
[정보처리기사] 대칭키 vs 비대칭키 vs 단방향 암호화 + PEM (0) | 2023.04.24 |