티스토리 뷰

STUDY/정보처리기사

[정보처리기사] UML

✨sunee✨ 2022. 7. 12. 21:57

UML

개발자와 사용자의 의사소통을 원할히 하기 위해 표준화한 객체 지향 모델링 언어

 

UML 특징

구분 설명
가시화 언어 개념 모델 작성 시 오류가 적고 의사소통 용이
구축 언어 다양한 프로그래밍 언어로 실행 시스템 예측 가능
UML을 코드로 변환 가능
명세화 언어 정확한 모델 제시
문서화 언어 시스템에 대한 평가 및 의사소통의 문서

 

UML 구성요소

구성요소 설명
사물
(Things)
다이어 그램 안에서 관계가 형성될 수 있는 대상
구조사물 시스템의 개념적, 물리적 요소
행동사물 시간, 공간에 따른 요소의 행위
그룹사물 요소들을 그룹으로 묶어서 표현
주해사물 부가적인 설명이나 제약조건 등을 표현
관계
(Relationships)
연관관계
(Association)
2개 이상 사물이 서로 관련된 관계.
사물 사이를 실선으로 연결, 방향성은 화살표로 표현하며 양방향 관계는 화살표 생략
집합관계
(Aggregation)
한 사물이 다른 사물에 포함된 관계.
전체에서 부분으로 속 빈 마름모로 연결
포함관계
(Composition)
포함하는 사물(전체)의 변화가 포함되는 사물(부분)에게 영향을 미치는 관계.
부분에서 전체로 속이 채워진 마름모를 연결
일반화관계
(Generalization)
한 사물이 다른 사물에 비해 더 일반적 또는 구체적인지 표현. 보다 일반적인 개념을 상위(부모), 구체적인 개념을 하위(자식)으로 부른다.
하위에서 상위 쪽으로 속 빈 화살표 연결
의존관계
(Dependency)
필요에 의해 짧은 시간 동안만 서로에게 영향을 주고 유지하는 관계.
영향 주는 사물이 영향 받는 사물 쪽으로 점선 화살표를 연결
실체화관계
(Realization)
한 객체가 다른 객체에 의해 오퍼레이션을 수행하도록 지정
사물이 할 수 있거나 해야 하는 기능을 그릅화
사물에서 기능 쪽으로 속 빈 점선 화살표를 연결
다이어그램 사물과 관계를 도형으로 표현
구조적
다이어그램
클래스 구성요소
1. 클래스 이름(Class Name)
2. 속성(Attribute)
3. 연산(Operation)
4. 접근 제어자
private(-): 클래스 내부 접근만 허용
public(+): 클래스 외부 접근을 허용
protected(#): 동일 패키지, 파생 클래스에서 접근 가능
default(~): 동일 패키지 클래스에서 접근 가능
객체  
컴포넌트 컴포넌트 사이 관계나 인터페이스를 표현. 구현단계 사용
배치 물리적 위치를 표현. 구현단계에서 사용
복합체 구조
(Composite Structure Diagram)
클래스나 컴포넌트가 복합구조를 가질 시 그 내부 구조를 표현
패키지  
행위
다이어그램
유스케이스 사용자의 요구를 분석하며 모델링 작업에 사용
구성요소
1. Usecase
2. Actor
3. System
시퀀스 시스템이나 객체들이 주고받는 메시지 표현
구성요소
1. 객체 (Object) : 사각형 안에 밑줄친 이름으로 명시
2. 생명선 (LifeLine) : 객체로 부터 뻗어나가는 점선
3. 실행 (Activation) : 점선 위 직사각형 (실행시간)
4. 메시지 (Message) : 화살표
커뮤니케이션 객체들이 주고받는 메시지와 객체 간 연관까지 표현
상태 상태변화 표현
활동 처리 흐름을 순서에 따라 표현
상호작용 개요 다이어그램
(Interaction Overview Diagram)
상호작용 다이어그램 간 제어 흐름 표현
타이밍 객체 상태 변화와 시간 제약 명시적 표현
댓글