본문 바로가기
정리/정보처리기사

UML

by 2744m 2020. 5. 9.

UML(Unified Modeling Language)
시스템 분석, 설계, 구현 등 시스템 개발 과정에서 시스템 개발자와 고객 또는 개발자 상호 간의 의사소통이 원할하게 이루어지도록 표준화한 대표적인 객체지향 모델링 언어

  • 객체 기술에 관해 국제표준화기구인 OMG에서 표준으로 지정
  • 시스템 구조를 표현하는 6개의 구조 다이어그램과 시스템 동작을 표현하는 7개의 행위 다이어그램을 작성
  • 구성요소 : 사물, 관계, 다이어그램 등...

사물 : 모델을 구성하는 기본요소, 관계가 형성될 수 있는 대상

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

관계 : 사물과 사물사이의 연관성을 표현하는 것

  • 연관관계 : 2개 이상 사물이 서로 연관 되있는 것을 표현
    • 1 : 1개 객체가 연관
    • n : n개 객체가 연관
    • 0..1 : 연관된 객체가 없거나 1개만
    • 0..* or * : 연간된 객체가 없거나 다수
    • 1..* : 연간된 객체거 적어도 1개 이상
    • n..* : 연간된 객체가 적어도 n개 이상
    • n..m : 연간된 객체가 최소 n개에서 최대 m개
  • 집합관계 : 하나의 사물이 다른 사물에 포한되어 있는 관계
    • 포함하는 쪽과 포함되는 쪽은 서로 독립적
    • 포함되는 쪽에서 포함하는 쪽으로 속이 빈 마름모를 연결해서 표현
  • 포함관계 : 집합관계의 특수한 형태, 포함하는 사물의 변화가 포함되는 사물에게 영향을 미치는 관계
    • 포함하는 쪽과 포함되는 쪽은 서로 독립이 될 수 없고 생명주기를 함께한다.
    • 포함되는 쪽에서 포함하는 쪽으로 속이 찬 마름모를 연결해서 표현
  • 일반화 관계 : 하나의 사물이 다른 사물에 비해서 더 일반적인지 구체적인지를 표현
    • 일반적인 개념을 상위(부모), 구제척인 개념을 하위(자식)이라 부른다.
    • 하위에서 상위쪽으로 속이 빈 화살표를 연결해서 표현
  • 의존관계 : 필요에 의해 서로에게 영향을 주는 짧은 시간 동안만 연관을 유지하는 관계
    • 하나의 사물과 다른 사물이 소유관계는 아니지만 사물의 변화가 다른 사물에도 영향을 미치는 관계
    • 영향을 주는 사물(이용자)이 영향을 받는 사물(제공자)쪽으로 점선 화살표를 연결하여 표현

      (ex 등급이 높은면 할인 적용, 아니면 할인 미적용)
  • 실체화 관계 : 사물이 할 수 있거나 해야하는 기능(행위, 인터페이스)으로 서로를 그룹화 할 수 있는 관계를 표현
    • 사물에서 기능쪽으로 속이 빈 점선 화살표를 연결하여 표현

다이어그램 : 사물과 관계를 도형으로 표현한 것
- 여러 관점에서 시스템을 가시화한 뷰를 제공함으로써 의사소통에 도움을 준다.
- 정적 모델링에서는 주로 구조적 다이어그램을 사용, 동적 모델리에서는 주로 행위 다이어그램 사용
- 구조적 다이어그램(DG) 종류 : 클래스DG, 객체DG, 컴포넌트DG, 배치DG, 복합체 구조DG, 패키지DG
- 행위 다이어그램 종류 : 유스케이스DG, 시퀀스DG, 커뮤니케이션DG, 상태DG, 활동DG, 상호작용 개요DG, 타이밍DG


활동 다이어그램

-       자료 흐름도와 유사한 것

-       사용자 관점에서 시스템이 수행하는 기능을 순서대로 표현

-       액션, 액티비티, 노드, 스윔레인 등으로 구성


  동적 모델링

-       시간의 흐름에 따라 변화하는 과정과 발생하는 상호작용을 표현

-       시퀀스DG, 커뮤니케이션DG, 상태DG 등이 있다.

  시퀀스 다이어그램

-       객체들의 상호 작용 과정에서 주고받는 메시지를 표현

-       클래스 내부에 있는 객체들을 기본 단위로 하여 그들의 상호 작용을 표현

-       액터, 객체, 라이브라인, 활성 상자, 메시지 등으로 구성

  커뮤니케이션 다이어그램

-       초기에 협업 다이어그램이라 불림

-       액터, 객체, 링크, 메시지 등으로 구성

-       객체들이 주고 받는 메시지, 객체들 간의 관계까지 표현


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

현행 시스템 파악/요구사항 분석 기법  (0) 2020.05.13
Python의 기초  (0) 2020.05.06
데이터 입출력  (0) 2020.05.06
2장 데이터 모델링 및 설계  (0) 2019.01.30
1장 데이터 베이스의 개념  (0) 2019.01.28

댓글