UML - 시스템 모델링 언어

anonymous·2021년 5월 27일
0

정보처리기사

목록 보기
1/15

UML

  • Unifed Modeling Lanaguage
  • 고객/개발자 사이의 요구사항을 시각화 (분석 -> 설계 -> 개발)
  • 구성요소 : 사물, 관계, 다이어그램
  • 사물 사이의 관계 를 시각적으로(다이어그램) 표현

사물

사물내용
구조 사물 (Structural Things)시스템의 개념적, 물리적 요소를 표현클래스, 유스 케이스, 컴포넌트 등
행동 사물 (Behavioral Things)시간과 공간에 따른 요소들의 행위를 표현상호작용, 상태 머신 등
그룹 사물 (Grouping Things)요소들을 그룹으로 묶어서 표현패키지
주해 사물 (Annotation Things)부가적인 설명이나 제약조건 등을 표현노트

관계

일반화 : A 사물이 B 사물에 비해 더 일반적인지 구체적인지 구분

일반화 관계는 하나의 사물이 다른 사물에 비해 더 일반적인지 구체적인지를 표현한다.
구체적(하위)인 사물에서 일반적(상위)인 사물 쪽으로 속이 빈 화살표를 연결하여 표현한다.

실제화 : A 사물과 B 사물 사이에 기능으로 서로 그룹화 할 수 있는 관계

실체화 관계는 사물이 할 수 있거나 해야 하는 기능(행위, 인터페이스)으로 서로를
그룹화할 수 있는 관계를 표현합니다.

비행기와 새는 모두 날 수 있다. 그러므로 비행기와 새는 날 수 있다는 행위로 그룹화할 수 있다.

의존 : A 사물과 B 사물 사이가 연관은 있지만 짧은 시간 동안만 그 관계를 유지. 소유 관계 X.

의존 관계는 연관 관계와 같이 사물 사이에 서로 연관은 있으나 필요에 의해 서로
게 영향을 주는 짧은 시간 동안만 연관을 유지하는 관계를 표현합니다.

등급이 높으면 할인율을 적용하고, 등급이 낮으면 할인율을 적용하지 않는다.

연관 : 2개 이상 서로 관련

다중도의미
11개의 객체가 연관되어 있다.
nn 개의 객체가 연관되어 있다.
0.. 1연관된 객체가 없거나 1개만 존재한다
0.. 또는 연관된 객체가 없거나 다수일 수 있다.
1..*연관된 객체가 적어도 1개 이상이다.
n..*연관된 객체가 적어도 n 개 이상이다.
n.. m연관된 객체가 최소 n 개에서 최대 m 개이다.


사람은 휴대폰을 소유하는 관계이다. 사람은 자기가 소유하고 있는 휴대폰에 대해 알지만, 휴대폰은 누구에 의해 자신이 소유되고 있는지 모른다.
'사람' 쪽에 표기된 다중도가 '1'이므로, 휴대폰은 한 사람에 의해서만 소유될 수 있다.
'휴대폰'쪽에 표기된 다중도가 '1'이므로 사람은 휴대폰을 하나만 소유할 수 있다.

집합 : A 사물이 B사물에 포함됨.

집합 관계는 하나의 사물이 다른 상품에 포함되어 있는 관계를 표현합니다.

프린터는 컴퓨터에 연결해서 사용할 수 있으며, 다른 컴퓨터에 연결해서 사용할 수도 있다는 것을 의미합니다

포함 : A 사물이 B사물에 포함되고 해당 사물에 영향을 미침.

포함 관계는 집합 관계의 특수한 형태로, 포함하는 사물의 변화가 포함되는 사물에게 영향을 미치는 관계를 표현합니다.

문을 열수 있는 키는 하나이며, 해당 키로 다른 문은 열 수 없다. 문이 없어지면 키도 더 이상 필요하지 않다는 의미입니다.

다이어그램

사물과 관계를 도형으로 표현. 시스템 뷰를 제공하여 의사소통에 도움을 줌.

구조적(Structural) 다이어그램의 종류

클래스 다이어그램 (Class Diagram)클래스와 클래스가 가지는 속성, 클래스 사이의 관계를 표현한다.
객체 다이어그램 (Object Diagram)클래스에 속한 사물(객체)들, 즉 인스턴스(Instance)를 특정 시점의 객체와 객체 사이의 관계로 표현한다.
컴포넌트 다이어그램 (Component Diagram)실제 구현 모듈인 컴포넌트 간의 관계나 컴포넌트 간의 인터페이스를 표현한다

행위(Behavioral) 다이어그램의 종류

유스 케이스 다이어그램 (Use Case Diagram)사용자의 요구를 분석하는 것으로 기능 모델링 작업에 사용
시퀀스 다이어그램 (Sequence Diagram)상호 작용하는 시스템이나 객체들이 주고받는 메시지를 표현한다.
커뮤니케이션 다이어그램 (Communication Diagram)시퀀스 다이어그램과 같이 동작에 참여하는 객체들이 주고받는 메시지를 표현하는데, 메시지뿐만 아니라 객체들 간의 연관까지 표현한다.
상태 다이어그램 (State Diagram)하나의 객체가 자신이 속한 클래스의 상태 변화 혹은 다른 객체와의 상호 작용에 따라 상태가 어떻게 변화하는지를 표현한다.
활동 다이어그램 (Activity Diagram)시스템이 어떤 기능을 수행하는지 객체의 처리 로직이나 조건에 따른 처리의 흐름을 순서에 따라 표현한다.
상호작용 개요 다이어그램 (Interaction Overview Diagram)상호작용 다이어그램 간의 제어 흐름을 표현한다.
타이밍 다이어그램 (Timing Diagram)객체 상태 변화와 시간 제약을 명시적으로 표현한다.

구조적 다이어그램 (정적)

클래스 다이어그램 :

  • 클래스 사이의 속성 관계 표현.

객체 다이어그램 :

  • 객체 사이의 관계

컴포넌트 다이어그램 :

컴포넌트 : 시스템 컴포넌트

  • 시스템 기능 정의

패키지 다이어그램

패키지 : 시스템 내부 기능에 대한 분류

  • 다이어그램의 요소를 조직화하여 패키지형태로 나타냄

배포 다이어그램

배포 : 물리적인 연결

  • 컴퓨터를 기반으로 하는 시스템의 물리적 구조

복합체 구조 다이어그램

  • 클래스 모델을 만들 때 각 컴포넌트 클래스를 전체 클래스 안에 위치시켜 클래스 내부 구조 표현

행위 다이어그램 (동적)

유즈케이스 다이어그램 :

  • 사용자 요구 분석하고 기능 모델링 작업에 사용

활동 다이어그램 :

  • 객체의 처리 로직과 조건에 따른 순차적인 처리 흐름을 표현을 하여 시스템 기능 수행 파악.

통신 다이어그램

  • 하나의 시스템을 구성하는 요소들은 다른 요소들과 손발을 맞추면서 시스템 전체의 목적을 이루어 나가는 것을 표현

시퀀스 다이어그램

  • 객체끼리 주고받는 메시지의 순서를 시간의 흐름에 따라 보여줌

상태 다이어그램

상태 : 객체 상태
다이어그램 : 시각적으로 상태를 표현

  • 시간에 따라서 객체가 변하는 상태

유즈 케이스 다이어그램

유즈 : 사용자의 행위

  • 사용자의 입장에서 본 시스템의 행동

출처

https://m.blog.naver.com/PostView.naver?blogId=hermet&logNo=220120846602&proxyReferer=http:%2F%2F222.120.192.204%2F

https://www.google.com/url?sa=i&url=https%3A%2F%2Flipcoder.tistory.com%2Fentry%2F1-1-9%25EC%259E%25A5-UMLUnified-Modeling-Language&psig=AOvVaw1eXz3_PNisbBSKS7jpko2t&ust=1622629922200000&source=images&cd=vfe&ved=0CAIQjRxqFwoTCKDD8NKd9vACFQAAAAAdAAAAABAX

https://www.nextree.co.kr/p6753/

https://myeonguni.tistory.com/752 [명우니닷컴]

https://m.blog.naver.com/gluestuck/221814471561

profile
기술블로거입니다

0개의 댓글