728x90

UML(Unified Modeling Language)

- 시스템 개발 과정에서 시스템 개발자와 고객 또는 개발자 상호 간의 의사소통이 원활하게 이루어지도록 표준화한 객체지향 모델링 언어

- 객체지향 방법론의 장점을 통합하였으며 OMG(Object Management Group)에서 표준으로 지정

- 구성 요소 : 사물, 관계, 다이어그램

 

- 사물

    -> 모델을 구성하는 가장 중요한 기본 요소

    -> 다이어그램 안에서 관계가 형성될 수 있는 대상

    -> 구조 사물

        * 시스템의 개념적, 물리적 요소 표현

        * 클래스, 유스케이스, 컴포넌트, 노드 등

    -> 행동 사물

        * 시간과 공간에 따른 요소들의 행위 표현

        * 상호작용, 상태 머신 등

    -> 그룹 사물

        * 요소들의 그룹으로 묶어서 표현

        * 패키지

    -> 주해 사물

        * 부가적인 설명이나 제약조건 등 표현

        * 노트

 

- 관계

    -> 사물과 사물 사이의 연관성 표현

    -> 연관 관계

        * 2개 이상의 사물이 서로 관련되어 있음을 표현

        * 실선과 화살표로 연결하여 표현하지만 양방향 관계의 경우 화살표 없이 실선으로 연결하여 표현

사람과 집이 1:1 관계

 

교수는 1명 이상의 학생을 가르치고 학생은 1명 이상의 교수에게 가르침을 받음

    -> 집합 관계

        * 하나의 사물이 다른 사물에 포함되어 있는 관계

        * 부분(포함되는 쪽)에서 전체(포함하는 쪽)로 속이 빈 마름모를 연결하여 표현

프린터는 컴퓨터에 연결해서 사용할 수 있음

 

    -> 포함 관계

        * 집합 관계의 특수한 형태로 포함하는 사물의 변화가 포함되는 사물에게 영향을 미치는 관계

        * 부분(포함되는 쪽)에서 전체(포함하는 쪽)로 속이 채워진 마름모를 연결하여 표현

문을 열 수 있는 키는 하나이고 해당 키로 다른 문은 열 수 없음

 

    -> 의존 관계

        * 사물 사이에 연관은 있으나 필요에 의해서 서로에게 영향을 주는 짧은 시간 동안만 연관을 유지하는 관계

        * 영향을 주는 사물이 영향을 받는 사물 쪽으로 점선 화살표 연결

출석률은 학점을 낼 때 영향을 미침

 

    -> 일반화 관계

        * 하나의 사물이 다른 사물에 비해 일반적인지 구체적인지 표현

        * 구체적인 사물에서 일반적인 사물 쪽으로 속이 빈 화살표를 연결

     -> 실체화 관계

        * 사물이 할 수 있거나 해야 하는 기능으로 서로를 그룹화할 수 있는 관계

        * 사물에서 기능 쪽으로 속이 빈 점선 화살표 연결

 

UML - 다이어그램

- 사물과 관계를 도형으로 표현

- 정적 모델링에서는 주로 구조적 다이어그램을 사용하고 동적 모델링에서는 주로 행위 다이어그램 사용

- 구조적 다이어그램

    -> 클래스 다이어그램 : 클래스, 클래스가 가지는 속성, 클래스 사이 관계 표현

    -> 객체 다이어그램 : 인스턴스를 특정 시점의 객체와 객체 사이의 관계로 표현

    -> 컴포넌트 다이어그램 : 구현 단계에서 사용되며 컴포넌트 간의 관계나 인터페이스를 표현

    -> 패치 다이어그램 : 구현단계에서 사용되며 결과물, 프로세스, 컴포넌트 등 물리적 요소들의 위치 표현

    -> 복합체 구조 다이어그램 : 복잡한 구조를 가지는 클래스 혹은 컴포넌트의 내부 구조 표현

    -> 패키지 다이어그램 : 유스케이스나 클래스 등의 모델 요소들을 그룹화한 패키지들의 관계 표현

- 행위 다이어그램

    -> 유스케이스 다이어그램 : 사용자의 요구를 분석하여 기능 모델링 작업에 사용됨

    -> 시퀀스 다이어그램 : 상호 작용하는 시스템이나 객체들이 주고받는 메시지 표현

    -> 커뮤니케이션 다이어그램 : 객체들이 주고받는 메시지를 표현할 뿐 아니라 객체들 간의 연관까지 표현

    -> 상태 다이어그램 : 하나의 객체가 자신이 속한 클래스의 상태 변화 혹은 다른 객체와의 상호 작용에 따라 어떻게 변화하는지 표현

    -> 활동 다이어그램 : 객체의 처리 로직이나 조건에 따른 처리의 흐름을 순서에 따라 표현

    -> 상호작용 개요 다이어그램 : 상호작용 다이어그램 간의 제어 흐름 표현

    -> 타이밍 다이어그램 : 객체 상태 변화와 시간 제약을 명시적으로 표현

 

모델링

- 기능 모델링

    -> 개발될 시스템이 갖춰야 할 기능을 정리하여 사용자에게 공유하기 위해 그림으로 표현한 것

    -> 유스케이스 다이어그램, 활동 다이어그램

- 정적 모델링

    -> 사용자가 요구한 기능을 구현하는데 필요한 자료들의 논리적인 구조를 표현한 것

    -> 객체들 사이에 어떤 관련이 있는지 구조적인 관점에서 표현

    -> 클래스 다이어그램

- 동적 모델링

    -> 시스템의 내부 구성 요소들의 상태 변화 과정과 과정에서 발생하는 상호 작용을 표현한 것

    -> 시퀀스 다이어그램, 커뮤니케이션 다이어그램, 상태 다이어그램

 

유스케이스 다이어그램

- 사용자 측면에서 요구사항으로 사용자가 원하는 목표를 위해 수행할 기능을 정리한 그림

활동 다이어그램

- 사용자의 측면에서 시스템이 수행하는 기능을 처리 흐름에 따라 순서대로 표현한 것

 

 

클래스 다이어그램

- 클래스, 클래스가 가지는 속성, 클래스 사이 관계 표현

 

시퀀스 다이어그램

- 시스템이나 객체들이 메시지를 주고받으며 상호작용하는 과정을 표현

 

패키지 다이어그램

- 유스케이스나 클래스 등의 요소들을 그룹화한 패키지간의 의존 관계를 표현

 

 

실기 정리

 

2021 정보처리기사 실기 정리

본 정리 글은 시나공 정보처리기사 실기책과 2020년 기출문제 등을 참고하여 작성하였습니다. -> 책 정보 확인하기 시나공 정보처리기사 실기 수험생들의 궁금증을 100% 반영시험에 나올만한 내

1d1cblog.tistory.com

 

728x90

+ Recent posts