[UML] UML (Unified Modeling Language) 이란?

.DS_Store·2023년 6월 1일
0

Intro

마지막 프로젝트 달리고 한 달만에 찾아온 블로그... 당장 토요일에 정처기 쳐야하는데 아주아주 큰일이 났다. 모의고사만 계속 돌리는데 여기도 UML 저기도 UML 그래서 UML이 뭔데 ㅠㅠ!

UML (Unified Modeling Language)

개념

UML은 한국말로 하면 통합 모델링 언어. 소프트웨어 시스템을 개발하는 과정에서 산출물의 명세화, 시각화, 문서화할 때 사용하는 모델링 언어이다.
보기 쉽게 만들어 소프트웨어 개발 과정에 참여하는 사람들 간의 의사 소통을 돕기 위해 만들어졌다.
(a 누르면 b가 나온다를 a -> b 로 표현한 느낌)

UML의 구성요소

UML의 구성요소로는 사물, 관계, 다이어그램이 있다.

  1. 사물(Things) (★★☆☆☆)
    사물은 추상적인 개념으로, UML에서 모델링의 대상이 되는 요소들을 의미한다.
  2. 관계(Relationships) (★★★★☆)
    관계는 사물과 사물 사이의 연관성을 표현하는 것으로, 연관, 집합, 포함, 일반화, 의존, 실체화 관계 등이 있다. (연집포 일의실... 연집포 일의실...)
  3. 다이어그램(Diagrams) (★★★★★)
    다이어그램은 사물과 관계를 모아 그림으로 표현한 형태이다.
    구조적(정적) 다이어그램(클래스, 객체, 컴포넌트, 배치, 복합체 구조, 패키지)과
    행위적(동적) 다이어그램(유스케이스, 시퀀스, 커뮤니케이션, 상태, 활동, 타이밍)이 있다.
    특히 정말 많이 나오는 다이어그램은 별이 다섯개!

빈출 다이어그램

클래스 다이어그램

  • 클래스 다이어그램은 클래스의 속성 및 연산과 클래스 간 정적인 관계를 표현
  • 구성요소: 클래스 이름, 속성, 연산, 접근 제어자

위와 같이 정의하니 개념이 와닿지 않아서 예시를 적어보자면,

위 그림은 (ERD랑 참 비슷하게 생겼다 싶었는데) 도서관이라는 시스템의 클래스 다이어그램이다.
도서관 관리 시스템을 만든다고 가정하면, 책이 필요할 것이고 책은 하나의 클래스로서 도서명이나 ISBN 등의 정보를 가질 것이다. 또한 해당 책은 책이나 잡지와 같이 나뉠 수 있으며 반대로 책과 잡지를 일반화하면 도서가 된다.
따라서 클래스 다이어그램은 시스템의 분석 및 설계 단계에서 여러번 작성된다.

유스케이스 다이어그램

  • 유스케이스 다이어그램은 시스템이 제공하고 있는 기능 및 그와 관련된 요소를 사용자의 관점에서 표현
  • 구성요소: 유스케이스, 액터, 시스템

시퀀스 다이어그램

  • 시퀀드 다이어그램은 객체 간 상호 작용을 메세지의 흐름으로 표현
  • 구성요소: 객체, 생명선, 실행, 메세지

0개의 댓글