본문 바로가기

카테고리 없음

061 모듈간 공통

2과목 소프트웨어개발
1. 데이터 입출력 구현
2. 통합 구현
3. 제품 소프트웨어 패키징
4. 애플리케이션 테스트 관리
5. 인터페이스 구현

UML
대표적인 객체지향 모델링 언어 (시스템 개발자-고객 의사소통 원활을 목적).
UML은 공동된 표현법으로 개발할 대상물을 다이어그램으로 표현하는 도구.
OMG(Object Management Group)에서 표준으로 지정
- UML으로 구조 다이어그램 (시스템 구조 표현, 6개) / 행위 다이어그램(시스템 행위 표현, 7개)
- UML 구성요소는 사물, 관계, 다이어그램 있음
- 각 다이어그램은 사물과 사물 간의 관계를 용도에 맞게 표현함

사물
- 모델을 구성하는 중요한 기본요소. 관계가 형성될 수 있는 대상
- 구조, 행동, 그룹, 주해
사물 내용
구조 사물
개념적/물리적 표현
클래스 Class, 유스케이스 Use Case, 컴포넌트 Component, 노드 Node
행동 사물
시간/공간에 요소의 행위 표현
상호작용 Interaction, 상태 머신 State Machine
그룹 사물
요소를 그룹으로 묶어 표현
패키지 Package
주해 사물
부가적 설명, 제약조건
노트 Note


관계
사물과 사물 사이의 연관성을 표현
- 연관, 집합, 포함, 일반화, 의존, 실제화
관계 내용
연관 Association
2개 이상 사물이 연결되어 있음을 표현. 사물사이는 실선, 방향성을 화살표
양방향일 경우 실선표시, 다중도(연관 객체 갯수)는 선위에 표기
(선생님 1..nㅡ 학생, 학생은 한명이상 선생님으로부터 가르침을 받는다)

1(n) 1(n)개 연관
0..1 없거나 1개 연관
* / 0..* 없거나 다수
1(n)..* 적어도 1(n)개 이상
n..m 최소 n에서 최대 m개
집합 Aggregation
하나의 사물이 다른 사물에 포함되는 관계. 서로 독립적.
포함되는 쪽에서 포함하는 쪽으로 속이 빈 마름모 연결
(컴퓨터 ◇ㅡ 프린터)
포함 Composition
특수한 집합 형태
포함하는 사물의 변화가 포함되는 사물에 영향을 미치는 관계 표현. 생명주기 함께함(비독립적)
포함하는 쪽으로 속이 빈 마름모 연결
(문 ◆ㅡ 키)
일반화 Generalization
하나의 사물이 다른 사물에 비해 일반적/구체적인지 포함. (상위/하위 개념)
구체적 사물에서 일반적 사물쪽으로 속이 빈 화살표 연결
(사람 ◁ㅡ 여자 / 사람◁ㅡ 남자)
의존 Dependency
사물 사이에 연관은 있으나 필요에 의해 짧은 시간동안 연관되는 관계 표현
소유관계는 아니지만, 사물의 변화가 다른 사물에게 영향을 미침
영향을 주는 사물이 영향을 받는 쪽으로 점선 화살표
(등급 ---> 할인율)
실제화 Realization
사물이 할수 있거나 해야하는 기능(행위, 인터페이스)를 그룹화 할수 있는 관계
사물에서 기능쪽으로 속이 빈 점선 화살표
(fly ◁--- 새 / fly ◁--- 비행기)

다이어그램
사물과 관계를 도형으로 표현
- 시스템을 가시화 한 view 제공
- 주로 정적 모델링(구조 다이어그램) / 동적 모델링(행위 다이어그램) 사용함

구조적 다이어그램 행위 다이어그램
클래스
클래스 간 관계
시스템파악용이, 구조문제점파악가능
유스 케이스
사용자 요구분석, 모델링 작업에 사용
사용자, 사용 사례로 구성
사용 사례는 여러 관계를 이룸
객체 인스턴스 객체-객체 간 관계 시퀀스 상호 작용 시스템, 객체들이 주고 받는 메시지 표현
컴포넌트
실제 구현 컴포넌트 간 관계
구현단계에서 사용
커뮤니케이션 동작하는 객체가 주고받는 메시지 표현, 객체 간 연관까지 표현
배치
결과물, 프로세스, 컴포넌트의 물리 위치 표현
구현단계에서 사용
상태
객체가 속한 클래스 상태변화, 다른 객체와의 상호 작용 후 어떻게 변화하는지 표현
복합체 구조 클래스, 컴포넌트의 내부 구조 표현 활동 시스템이 수행하는 기능, 객체 처리 로직, 조건에 따른 처리흐름을 순서에 따라 표현
패키지 유스케이스/클래스 모델을 그룹화한 패키지 관계 상호 작용 개요
상호작용 다이어그램 간의 제어 흐름
타이밍
객체 상태 변화, 시간 제약을 명시