UML

2023. 11. 15. 12:01· 자격증/정보처리기사
목차
  1. UML
  2. 사물
  3. 개념
  4. 사물의 종류
  5. 관계
  6. 개념
  7. 관계의 종류
  8. UML 확장 모델의 스테레오 타입
  9. 다이어그램
  10. 개념
  11. 구조적 다이어그램의 종류
  12. 행위 다이어그램의 종류
반응형

UML

  • 객체지향 모델링 언어이다.
  • 객체지향 방법론의 장점을 통합하였다.
  • UML의 구성요소에는 사물, 관계, 다이어그램이 있다.
  • 시스템의 구조를 표현하는 구조 다이어 그램과 시스템의 동작을 표현하는 다이어그램이 있다.

 

 

사물

개념

  • 다이어그램 안에서 관계가 형성될 수 있는 대상이다.
  • 모델을 구성하는 가장 중요한 요소이다.

 

사물의 종류

1. 구조 사물 - 시스템의 개념적, 물리적 요소인 클래스, 컴포넌트, 노드 등을 표현한다.

2. 행동 사물 - 시간과 공간에 따른 요소들의 상호작용 행위를 표현한다.

3. 그룹 사물 - 요소들을 그룹으로 묶어서 패키지로 표현한다.

4. 주해 사물 - 부가적인 설명이다 제약조건들을 표현한다.

 

 

관계

개념

  • 사물과 사물 간의 연관성을 표현한다.
  • 연관, 집합, 포함, 일반화, 의존, 실체화 관계 등이 있다.

 

관계의 종류

1. 연관 관계

  • 둘 이상의 사물이 서로 관련되어 있음을 나타낸다.
  • 사물 사이를 실선으로 표현한다.
  • 방향성을 화살표로 표현하되, 양방향일 경우엔 생략한다.
  • 연관되는 객체의 개수를 선위에 표기한다.

 

2. 집합 관계

  • 하나의 사물이 다른 사물에 포함되어 있는 관계를 표현한다.
  • 전체(Whole)와 부분(Part)은 서로 독립적이다.
  • 사물 사이를 실선으로 표현한다.
  • 전체 사물쪽에 속이 빈 마름모를 붙여서 표현한다.

 

3. 포함 관계



  • 전체 사물의 변화가 부분 사물에게 영향을 미치지 않는다.
  • 전체와 부분은 서로 독립적이지 않다.
  • 사물 사이를 실선으로 표현한다.
  • 전체 사물 쪽에 속이 찬 마름모를 붙여서 표현한다.

 

4. 일반화 단계

  • 하나의 사물이 다른 사물에 대해 상위(일반적), 하위(구체적) 관계를 표현한다.
  • 상위 사물쪽에 속이 빈 화살표를 붙여서 사용한다.
  • 사물 사이를 실선으로 표현한다.

 

5. 의존 관계

  • 필요에 의해 짧은 시간 동안만 연관성을 유지하는 관계를 표현한다.
  • 사물의 변화가 다른 사물에 영향을 미친다.
  • 사물 사이를 점선으로 표시한다.
  • 영향을 받는 사물쪽에 화살표를 붙여서 사용한다.

 

6. 실체화 단계

  • 사물들을 기능적 요소로 서로 그룹화 할 수 있는 관계를 표현한다.
  • 사물 사이를 점선으로 표시한다.
  • 기능 쪽에 속이 빈 삼각 화살표를 붙여서 표현한다.

 

 

UML 확장 모델의 스테레오 타입

  • UML은 기본적 요소 이외에 새로운 요소를 만들어 내기 위한 확장 메커니즘(스테레오 타입)이다.
  • 형태는 기존의 UML의 요소를 그대로 사용하지만 내부 의미는 다른 목적으로 사용하도록 확장된다.
  • UML의 스테레오타입은 '<<>>' 기호를 사용하여 표현된다.

<<include>> : 하나의 유스케이스가 어떤 시점에서 반드시 다른 유스케이스를 실행하는 포함 관계

<<extend>> : 하나의 유스케이스가 어떤 시점에서 다른 유스케이스를 실행할 수 있고, 그렇지 않을 수도 있는 확장 관계

<<interface>> : 모든 메소드가 추상 메소드이며 바로 인스턴스를 만들수 없는 클래스로, 추상 메소드와 상수만으로 구성된 클래스

<<entity>> : 일반적으로 정보 또는 오래 지속되는 연관된 행위를 형상화하는 클래스, 기억장치에 저장되어야 할 정보를 표현하는 클래스

<<boundary>> : 시스템과 외부 액터와의 상호작용을 담당하는 클래스

<<control>> : 시스템이 제공하는 기능의 로직 및 제어를 담당하는 클래스 

 

 

다이어그램

개념

  • 사물과 사물들의 관계를 도형으로 표현한다.
  • 뷰를 제공하여 의사소통에 도움을 준다.
  • 정적 모델링은 주로 구조적 다이어그램을 사용한다.
  • 동적 모델링은 주로 행위 다이어그램을 사용한다.

구조적 다이어그램의 종류

1. 클래스 다이어그램

  • 클래스와 클래스 사이의 관계를 표현한다.
  • 시스템의 구조와 문제를 파악할 수 있다.
  • 클래스 다이어그램의 요소

 

2. 객체 다이어그램

  • 클래스의 인스턴스를 객체 간의 관계로 표현한다.

 

3. 컴포넌트 다이어그램

  • 구현단계에서 사용된다.
  • 컴포넌트 간의 인터페이스를 표현한다.

 

4. 배치 다이어그램

  • 구현단계에서 사용된다.
  • 물리적인 요소인 결과물이나 컴포넌트 등의 위치를 표현한다.

 

5. 복합체 구조 다이어 그램

  • 복합적 구조를 갖는 컴포넌트, 클래스등의 내부 구조를 표현한다.

 

6. 패키지 다이어 그램

  • 모델 요소들을 그룹화한 패키지들의 관계를 표현한다.

 

행위 다이어그램의 종류

1. 유스케이스 다이어그램

  • 사용자의 요구를 분석하여 모델링 작업에 사용한다.

 

2. 시퀸스 다이어그램

  • 시스템과 객체들이 주고받는 메시지를 표현한다.
  • 생명선, 실행, 메시지, 상호작용 등으로 구성한다.

 

3. 커뮤니케이션 다이어그램

  • 객체들이 주고 받는 메시지뿐만 아니라 연관관계까지 표현
  • 메시지 + 연관 관계

 

4. 상태 다이어그램

  • 자신이 속한 클래스, 상호작용하는 객체의 상태변화를 표현한다.

 

5. 활동 다이어그램

  • 객체의 프로세스나 로직의 처리 흐름을 순서에 따라 표현한다.

 

6. 상호작용 개요 다이어그램

  • 활동 다이어그램과 시퀸스 다이어그램을 접목시켜 표현한다.
  • 객체의 처리흐름을 시퀀스 다이어그램을 이용하여 부분적으로 표현한다.

 

7. 타이밍 다이어그램

  • 객체의 상태변화와 시간제약을 명시적으로 표현한다.

 

반응형
저작자표시 (새창열림)

'자격증 > 정보처리기사' 카테고리의 다른 글

UI 요구사항  (0) 2024.01.11
UI 표준  (0) 2023.11.26
요구사항 정의(2)  (0) 2023.10.16
요구사항 정의(1)  (0) 2023.10.16
소프트웨어 개발 환경 분석  (0) 2023.10.13
  1. UML
  2. 사물
  3. 개념
  4. 사물의 종류
  5. 관계
  6. 개념
  7. 관계의 종류
  8. UML 확장 모델의 스테레오 타입
  9. 다이어그램
  10. 개념
  11. 구조적 다이어그램의 종류
  12. 행위 다이어그램의 종류
'자격증/정보처리기사' 카테고리의 다른 글
  • UI 요구사항
  • UI 표준
  • 요구사항 정의(2)
  • 요구사항 정의(1)
Jong_seoung
Jong_seoung
기록하자, 머리는 생각하는 곳이지 저장장치가 아니다.
반응형
Jong_seoung
Today_developStory
Jong_seoung
전체
오늘
어제

블로그 메뉴

  • Home
  • Git Hub
  • 분류 전체보기 (351)
    • Theory (16)
    • Java (3)
      • 알고리즘 (2)
      • 문법 (0)
    • Spring (7)
      • 스프링 입문 (6)
      • PickTalk (0)
      • 에러처리 (1)
    • Python (80)
      • 알고리즘 - 이론 (17)
      • 알고리즘 - 내장함수, 라이브러리 등등 (3)
      • 알고리즘 - 백준 (53)
      • 나도코딩 정리 (2)
      • 기타 (5)
    • Django (159)
      • DRF (105)
      • 인프라 (46)
      • DataBases (2)
      • API Docs (6)
    • FrontEnd (22)
      • htmx (2)
      • React (8)
      • 자바스크립트 (12)
    • GIT (16)
    • 기타 (8)
      • 정리 (2)
      • Flutter (1)
      • 마이크로프로세서 - ATmega128 (2)
      • 개발환경 세팅 (3)
    • 자격증 (37)
      • 정보처리기사 (19)
      • SQLD자격증 (18)

인기 글

최근 글

태그

  • alarm
  • BFS
  • CSRF
  • Django
  • django channels
  • django sse
  • django tutorial
  • django 배포
  • django 스웨거 적용
  • Django 이미지 저장

최근 댓글

hELLO · Designed By 정상우.v4.3.0
Jong_seoung
UML
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.