본문 바로가기

정보관리기술사/소프트웨어공학

UML(Unified Modeling Language)

반응형

I. 개발자와 사용자간에 표준화된 의사소통 방식 UML의 개요

. UML(Unified Modeling Language)의 정의

- 객체지향 시스템 개발 전 과정(Life Cycle)에서 개발자와 사용자간에 표준화된 의사소통 방식 객체지향 모델링 언어.(표기법)

- 소프트웨어 시스템 아키텍처를 정의하여 가시화(Visualization) 및 문서화(Documentation) 하기 위한 그래픽적 표기법

. UML의 등장배경 및 필요성

- 객체지향 모델링을 위해 학자들마다 중복되고 일부 다른 방식으로

표현

- 보다 체계적인 모델링 방법을 표준화하기 위해 3명의 학자가 주장하는

표기법의 통일이 필요하게 됨

- 객체지향 시스템 개발 전 과정(Life Cycle)에서 개발자와 사용자간에

표준화된 의사소통 방식 필요

. UML의 특징

1) 단순 표기법이 아닌 각각의 표기에 의미를 가진 언어

2) 이용 시 개발자간 의사소통 원활, 객체프로세스(반복적 점진적 과정)

3) 개발규모, 개발 프로세스, 언어에 관계없이 적용가능

 

II. UML의 구성도와 구성 요소(4+1 View를 기반으로 설명)

가. UML의 구성요소(4+1View관점)

View

내 용

Use Case View

- 시스템의 요구분석 단계에서 사용되는 관점

- 시스템을 사용하는 이벤트와 기능 위주로 표현(Use Case Diagram)

Logical View

- 객체 모델을 의미하며 클래스 다이어그램으로 나타냄

- 시스템 내부의 클래스와 컴포넌트를 파악하고 기술(Class

Diagram, Object Diagram)

Process View

- 동적 모델을 의미하며 시스템의 내부구조 즉 클래스와 클래스의 관계 및 상호작용에 초점 (Sequence Diagram, Collaboration Diagram)

Component View

- 대규모 시스템을 서브시스템으로 나눌 때 사용

- 물리적인 시스템을 조립, 배포하는데 사용 되는 컴포넌트와 파일들로 구성 (Component Diagram)

Deployment View

- S/W H/W의 어떤 부분에 배치될 것인지를 표현 (Deployment Diagram)

Diagram의 종류

구분

분류

내용

요구

사항

Use Case

- 사용자의 입장에서 본 시스템의 행동을 표현

- Use Case들은 시스템의 기능적인 요구를 정의함.

정적

모델링

Class

- 시스템 내 클래스들의 정적 구조를 표현

- 클래스는 객체들의 집합으로 속성(Attribute)과 동작(Behavior)으로 구성됨.

Object

- 클래스의 여러 Object 인스턴스(Instance)를 나타내는 대신에 실제 클래스를 사용함

- 클래스다이어그램에서 2가지 예외를 제외하고 동일 표기법을 사용함

- 관계 있는 모든 인스턴스를 표현함.

State

- 클래스의 객체가 가질 수 있는 모든 가능한 상태와 상태간의 전이를 표현

- 진입 조건, 탈출 조건, 상태전이에 필요한 사건 등 자세한 사항이 기술

- 설계 단계에서 클래스 객체의 동적인 행동 방식을 표현하는 데 사용

동적

모델링

Sequence

- 객체와 객체간의 상호작용을 메시지 흐름으로 표시한다

- 오브젝트(Object) 사이에 메시지를 보내는 시간 또는 순서를 보여주기 위해 사용함.

Collaboration

- 오브젝트(Object)간의 연관성을 표현하며, 내용이 중요한 경우에 이용함.

Activity

- 행위(Activity)의 순서적 흐름을 표시함.

- 순서도나 병렬적인 처리를 요하는 행위를 표현할 때 사용

Component

- 코드 컴포넌트(Code component)에 바탕을 둔 코드의 물리적 구조를 표현

- 컴포넌트(component)는 논리적 클래스 혹은 클래스 자신의 구현에 대한 정보를 포함함.

- 실질적인 프로그래밍 작업에 사용함.

Deployment

- 시스템 하드웨어와 소프트웨어간의 물리적 구조를 표현하며, 실질적인 컴퓨터와 Device간의 관계를 표현하는데 이용함.

- 컴포넌트(Component) 사이의 종속성을 표현함.

UML 구성요소

구성

내용

view

모델화된 시스템의 서로 다른 모형 제공

Diagram

View의 내용을 나타내기 위한 9가지 다이어그램 제공

모델요소

Model Element

객체지향 개념을 표현하기 위해 사용되는 요소

클래스, 속성, 오퍼레이션으로 구성

General Mechanism

모델 요소에 대하여 여분의 주석 정보와 의미를 제공함

 

 

 

 

 

반응형

'정보관리기술사 > 소프트웨어공학' 카테고리의 다른 글

5-Force  (0) 2014.03.17
디자인 패턴(Design Patten)  (0) 2014.03.15
SW 분할발주  (0) 2014.03.09
제안서(Proposal)  (0) 2014.03.08
SW 분리 발주  (0) 2014.03.07