자격증/정보처리기사

[정처기] UML : 사물, 관계, 다이어그램

gangee 2024. 7. 9. 14:52

목차

    728x90
    반응형

    UML ⭐

    • 시스템 개발 과정에서 의사소통이 원활하게 이루어지도록 표준화한 대표적인 객체지향 모델링 언어이다.
    • Rumbaugh, Booch, Jacobson 등의 객체지향 방법론의 장점을 통합UML 구성요소
    • 사물(Things), 관계(Relationship), 다이어그램(Diagram)

    1. 사물(Things)

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

    사물의 종류

    • 구조, 행동, 그룹, 주해 사물
    1. 구조 사물 : 시스템의 개념적, 물리적 요소를 표현
    2. 행동 사물 : 시간과 공간에 따른 요소들의 행위를 표현
    3. 그룹 사물 : 요소들을 그룹으로 묶어서 표현
    4. 주해 사물 : 부가적인 설명이나 제약조건 등을 표현

    2. 관계(Relationship)

    • 사물과 사물 사이의 연관성을 표현하는 것관계의 종류
    • 연관, 집합, 포함, 일반화, 의존, 실체화 관계

    2-1. 연관 관계 (Association)

    • 2개 이상의 사물이 서로 관련되어 있는 관계
    • 실선 : 연결, 화살표 : 방향성
    • 양방향 관계 : 화살표 생략, 실선으로만 연결
    • 다중도(객체의 개수)를 선 위에 표기

    2-2. 집합 관계 (Aggregation)⭐

    • 하나의 사물이 다른 사물에 포함되어 있는 관계
    • 서로 독립적
    • 속이 빈 마름모를 연결하여 표현
    • 포함하는 쪽(whole)에 마름모가 붙어있음

    2-3. 포함 관계 (Cimposition)

    • 포함하는 사물의 변화가 포함되는 사물에게 영향을 미치는 관계
    • 서로 독립될 수 없고 생명주기를 함께
    • 속이 채워진 마름모를 연결하여 표현
    • 포함하는 쪽(whole)에 마름모가 붙어있음

    2-4. 일반화 관계 (Generalization)⭐

    • 하나의 사물이 다른 사물에 비해 더 일반적이거나 구체적인 관계
    • 구체적(하위)인 사물에서 일반적(상위)인 사물 쪽으로 속이 빈 화살표 연결

    2-5. 의존 관계 (Dependency)⭐

    • 서로에게 영향을 주는 짧은 시간 동안만 연관을 유지라는 관계
    • 소유 관계는 아니지만 영향을 미치는 관계
    • 영향을 주는 사물이 영향을 받는 사물 쪽으로 점선 화살표

    2-6. 실체화 관계 (Realization)

    • 할 수 있거나 해야 하는 기능으로, 서로를 그룹화 할 수 있는 관계
    • 사물에서 기능 쪽으로 속이 빈 점선 화살표 연결

    3. 다이어그램(Diagram)

    • 사물과 관게를 도형으로 표현한 것
    • 정적 모델링 -> 구조적 다이어그램
    • 동적 모델링 -> 행위 다이어그램

    3-1. 구조적(Structural) 다이어그램 - 정적

    • 클래스, 객체, 컴포넌트, 배치, 복합체 구조, 패키지 다이어그램

    1. Class Diagram⭐

    • 클래스와 클래스가 가지는 속성, 클래스, 사이의 관게를 표현함

    2. Object Diagram⭐

    • 클래스에 속한 사물들, 즉 인스턴스를 특정 시점의 객체와 객체 사이의 관계로 표현함
    • 럼바우 객체지향 분석 기법에서 객체 모델링에 활용됨

    3. Component Diagram

    • 실제 구현 모듈인 컴포넌트 간의 관계나 컴포넌트 간의 인터페이스를 표현함
    • 구현 단계에서 사용됨

    4. Deplyment Diagram⭐

    • 결과물, 프로세스, 컴포넌트 등 물리적 요소들의 위치를 표현함
    • 구현 단계에서 사용됨

    5. Composite Structure Diagram (복합체 구조 다이어그램)

    • 클래스나 컴포넌트가 복합 구조를 갖는 경우 그 내부 구조를 표현함

    6. Package Diagram

    • 유스케이스나 클래스 등의 모델 요소들을 그룹화한 패키지들의 관계를 표현함

    3-2. 행위(Behavioral) 다이어그램 - 동적

    • 유스케이스, 순차, 커뮤니케이션, 상태, 활동, 상호작용 개요, 타이밍 다이어그램

    1. Use Case Diagram⭐

    • 사용자의 요구를 분석하는 것으로, 기능 모델링 작업에 사용함
    • 사용자(Actor)와 사용 사례(Use Case)로 구성됨

    2. Sequence Diagram⭐

    • 객체들 사이의 메시지 교환을 표현함

    3. Communication Diagram

    • 객체들이 주고받는 메시지와 객체들 간의 연관 관계를 표현함

    4. State Diagram⭐

    • 하나의 객체가 자신이 속한 클래스의 상태 변화 혹은 다른 객체와의 상호작용에 따라 상태가 어떻게 변화하는지르 표현함
    • 럼바우 객체지향 분석 기법에서 동적 모델링에 활용됨

    5. Activity Diagram

    • 시스템이 어떤 기능을 수행하는지 객체의 처리 로직이나 조건에 따른 처리의 흐름을 순서에 따라 표현함

    6. Interaction Overview Diagram (상호작용 개요 다이어그램)

    • 상호작용 다이어그램 간의 제어 흐름을 표현함

    7.Timing Diagram

    • 객체 상태 변화와 시간 제약을 명시적으로 표현함

    3-3. 스테레오 타입(Stereotype)

    • UML에서 표현하는 기본 기능 외에 추가적인 기능을 표현하는 것
    • 길러멧이라고 부르는 겹화살표(<< >>) 사이에 표현할 형태를 기술

    ⭐중요⭐

    1. 럼바우 객체지향 분석 기법에서 활용되는 다이어그램
      • 객체 다이어그램(객체 모델링)
      • 상태 다이어그램(동적 모델링)
    2. 구현 단계에서 사용되는 다이어그램
      • 컴포넌트 다이어그램
      • 배치 다이어그램
    728x90
    반응형