IT/정보처리기사실기 공부
[정보처리기사실기] UML, 유스케이스 다이어그램
phobi-k
2020. 9. 27. 22:16
1. UML (Unified Modeling Language) (A)
- UML의 개요 : 상호간의 의사소통을 위한 표준화한 대표적인 객체지향 모델링 언어! (모델링 언어: 시작적으로 표현)
- 럼바우, Booch 등 객체지향 방법론 장점 통합, OMG에서 표준으로 지정
- UML을 이용하여 6개 구조 다이어그램, 7개 행위 다이어그램 작성 가능
- UML 구성요소: 사물, 관계, 다이어그램
- 사물 : 모델을 구성하는 기본 요소 (*요소 4개 암기 구.행.그.주 )......구구는 행복해 그리고 주말에 해가좋아
- 구조 사물: 시스템의 개념적, 물리적 요소 표현
- 클래스, 유스케이스, 컴포넌트, 노드
- 행동 사물: 시간과 공간에 따른 요소들의 행위 표현
- 상호작용, 상태 머신
- 그룹 사물: 요소를 그룹으로 묶어서 표현
- 패키지
- 주해 사물: 부가적인 설명, 제약조건을 표현
- 노트
- 구조 사물: 시스템의 개념적, 물리적 요소 표현
- 관계 : 사물과 사물 사이의 연관성을 표현
- 연관 관계: 2개 이상의 사물이 서로 관련되어 있음을 표현 (사람->집)
- 사물 사이를 실선으로 표현, 방향성은 화살표로 표현
- 양방향 관계의 경우 화살표 생략하고 실선으로만 연결
- 연관에 참여하는 객체의 개수를 의미하는 다중도를 선 위에 표기
- 1..* : 연관된 객체가 적어도 1개 이상
- n..m : 연관된 객체가 최소 n개에서 최대 m개
- 0..1 : 연관된 객체가 없거나 1개
- 집합 관계 : 하나의 사물이 다른 사물에 포함되어 있는 관계
- 포함하는 쪽과 포함되는 쪽은 독립적이다. (컴퓨터와 프린터)
- 속이 빈 마름모 연결 (방향 part -> whole)
- 포함 관계 : 집합 관계의 특수한 형태
- part와 whole이 서로 영향을 끼침 (문과 열쇠)
- 속이 채워진 마름모로 연결 (방향 part -> whole)
- 일반화 관계 : 사물이 일반적(커피)인지 구체적(아메리카노, 라떼) 인지를 표현
- 구체적(하위)인 사물에서 일반적(상위)인 사물 쪽으로 속이 빈 화살표 연결
- 의존 관계 : 연관 관계같이 서로 연관은 있는데 필요에 의해 짧은 시간 동안만 연관을 유지한다. (등급과 할인율)
- 소유 관계는 아니지만 사물의 변화가 다른 사물에게 영향을 끼침
- 영향을 주는 사물(이용자)이 영향을 받는 사물(제공자) 쪽으로 점선 화살표를 연결
- 실체화 관계 : 사물이 할 수 있거나 해야하는 기능으로 서로를 그룹화 할 수 있는 관계
- 사물에서 기능쪽으로 속이 빈 점선 화살표 연결
- 연관 관계: 2개 이상의 사물이 서로 관련되어 있음을 표현 (사람->집)
- 다이어그램
- 구조적 다이어그램 (6개)
- 클래스 다이어그램 : 정적 모델링
- 객체 다이어그램
- 컴포넌트 다이어그램 : 구현 단계에서 사용. 컴포넌트 간의 인터페이스 표현
- 배치 다이어그램 : 구현 단계에서 사용. 결과물, 프로세스, 컴포넌트 등 물리적 요소들의 위치 표현
- 복합체 구조 다이어그램
- 패키지 다이어그램
- 행위 다이어그램 (7개)
- 유스케이스 다이어그램 : 기능 모델링
- 시퀀스 다이어그램 : 동적 모델링
- 커뮤니케이션 다이어그램 : 동적 모델링
- 상태 다이어그램 : 동적 모델링
- 활동(액티비티) 다이어그램 : 기능 모델링
- 상호작용 개요 다이어그램
- 타이밍 다이어그램
- 구조적 다이어그램 (6개)
2. 유스케이스(Use Case) 다이어 그램 (A)
- 기능 모델링의 개념: 시스템이 갖춰야할 기능을 정리한 후 사용자와 공유하기 위해 표현하는 것
- UML의 기능 모델링 : 유스케이스 다이어그램, 액티비티 다이어그램
- 유스케이스 다이어그램 개념 : 기능을 사용자 관점에서 표현한 것
- 유스케이스 다이어그램 구성 요소 : 시스템 범위, 액터, 유스케이스, 관계
- 시스템 범위 : 외부 시스템과 구분하기위해 사각형으로 범위 나눔
- 액터(Actor) : 시스템과 상호작용하는 모든 외부 요소. 사람, 외부 시스템
- 주액터 : 주로 사람
- 부액터 : 서비스를 제공하는 외부 시스템. 상단에 <<Actor>>라고 표시
- 유스케이스 : 서비스 또는 기능
- 타원으로 표시
- 더 이상 분할되지 않는 기능의 단위
- 상호 작용의 목적을 내포하되 단순 명료하게 기술
- 관계 : 포함 관계, 확장 관계, 일반화 관계
- 포함 관계 : 여러 유스케이스에 공통적으로 적용되는 기능을 분리하여 새로운 유스케이스로 생성
- 원래 유스케이스 ------> 새롭게 만든 유스케이스 <<include>> 표기
- 확장 관계 : 유스케이스를 수행하다 어떤 조건에 부합되면 기능을 추가로 수행하는 관계
- 원래 유스케이스 <---------- 확장될 유스케이스 <<extends>> 표기
- 일반화 관계 : 속이 빈 삼각형 + 실선으로 연결
- 포함 관계 : 여러 유스케이스에 공통적으로 적용되는 기능을 분리하여 새로운 유스케이스로 생성