
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
-
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
41
-
42
-
43
-
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
-
52
-
53
-
54
-
55
-
56
-
57
-
58
-
59
-
60
-
61
-
62
-
63
-
64
-
65
-
66
-
67
-
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
-
76
-
77
-
78
-
79
-
80
-
81
-
82
-
83
-
84
-
85
-
86
-
87
-
88
-
89


목차
7. 파일과 데이터베이스 설계
8. 소프트웨어 설계
9. 자료 흐름 중심 설계
10. 객체지향 분석 및 설계
8. 소프트웨어 설계
9. 자료 흐름 중심 설계
10. 객체지향 분석 및 설계
본문내용
다이어그램(class diagram)
. 행위 다이어그램(behavior diagram)
- 상태 다이어그램
- 활동 다이어그램과 작업 흐름 다이어그램
- 순서 다이어그램, 상호작용 다이어그램, 메시지 추적 다이어그램, 사건추적 다이어그램
- 협력 다이어그램, 객체 메시지 다이어그램
. 실행 다이어그램(implementation diagram)
. UML의 특징: p.460하
. UML의 개발 과정: 그림 10.38
- 개념화 단계: 프로젝트의 목표와 범위를 설정
- 상세화 단계
. 문제 영역을 분석
. 프로젝트 계획서 작성
. 높은 수준의 분석과 설계를 위해 구체적인 요구사항을 수집
. 시스템의 구조 설계
. 구현 계획을 수립
- 구축 단계: 시스템의 구현과 테스트
- 전이 단계
. 사용자 환경에서 사용할 수 있도록 필요한 작업을 수행
. 베타 시험, 성능 조율, 사용자 교육 등을 실시
- 반복 단계: 반복적, 점진적으로 시스템을 개선
- UML, Booch, OMT의 비교: 표 10.3
10.4 표준 객체지향 모델링 언어 UML 소개
- UML(Unified Modeling Language)
. Booch, OMT, OOSE 방법론을 통합하여 만든 모델링 개념의 공통 집합으로 객체지향 분석 및 설계의 표준
- UML의 역사
. 여러 가지 방법론을 참조하여 통합: 그림 10.39
- OMT의 분석 방법
- Booch의 설계 방법
- OOSE의 행위 분석
. 1995 UML 0.8, 0.9, 0.91, 1.0
. 1997 UML 1.1을 OMG에서 표준으로 결정
- UML에서 사용하는 기호: 그림 10.40
. 핵심 기호: class, state, use case, association, dependency
. 확장 기호: actor, attribute, operation, link, 일반화, 집단화
. 특수 기호: stereotype
- UML의 다이어그램: 그림 10.41
. 사용사례 diagram: BPR 작업흐름도, 사용사례 기술서, 사용사례 diagram, 객체 모델, CRC card
. 상태 diagram: 활동 diagram, 상태 diagram
. 정적구조 diagram: 요구사항 명세서, 시나리오, 클래스 diagram, 객체 diagram
. 상호작용 diagram: 순차 diagram, 협력 diagram
. 구현 diagram: 패키지 diagram, 컴포넌트 diagram, 배치 diagram
- 정적 구조 다이어그램: 그림 10.42
. 클래스, 객체
. 정적 관계
. 속성, 연산
. 제약 사항
. 클래스 다이어그램: 그림 10.44
- 구현 환경을 반영하지 않는 시스템의 정적 구조를 정의
- 사용사례 다이어그램을 기반으로 식별된 클래스간의 정적관계를 표현
- 클래스의 표기 형식: 그림 10.43
. 클래스 이름
. 속성: private(-), public(+$)
. 연산: private(-), public(+), protected(#)
- 다이어그램의 구분
. 개념 수준: 분석단계에서 문제영역의 이해를 돕기 위해 구현환경을 고려치 않고 작성
. 명세 수준: 설계단계에서 정형화된 시스템 명세를 제공하기 위해 인터페이스를 추가
. 구현 수준: 상세 설계단계에서 구현환경을 고려한 최종 다이어그램
- 관계
. 의존 관계: 클래스간의 사용 관계: 그림 10.45
. 일반화/특수화 관계: 클래스간의 상속 관계: 그림 10.46
- 서브 클래스는 슈퍼 클래스의 속성과 연산을 상속: 그림 10.47
. 연관 관계: 클래스간의 구조적 관계
- 연관 이름과 방향: 그림 10.48
- 연관에서 클래스 역할: 그림 10.49
- 연관의 다중성(multiplicity): 그림 10.50
. 집단화 관계: 전체-부분 관계: 그림 10.51
. 객체 다이어그램: 그림 10.52
- 객체 명: 클래스 명
- 속성 명 = 속성 값
- 동적 구조 다이어그램: 그림 10.53
. 시스템의 동적 구조를 표현
. 상호작용 다이어그램과 상태 다이어그램
. 상호작용 다이어그램: 객체간의 메시지를 주고받는 상호작용
- 순차 다이어그램: 그림 10.54
. 시간 진행에 따른 객체들의 상호작용을 표현
. 객체간 메시지 전달
. 객체의 생명선과 객체의 제어 초점
- 협력 다이어그램: 그림 10.55
. 객체간의 상호작용을 표현
. 메시지 경로와 순번
. 상태 다이어그램: 그림 10.56
- 객체 혹은 시스템의 생명주기 동안의 상태변화를 표시
- 사건과 상태전이에 의한 상태기계로 표현
- 상태는 상태이름과 내부활동을 표시
- 상위 상태와 하위 상태 다이어그램: 그림 10.57,58
. 활동 다이어그램: 그림 10.59
- 활동을 원자성 연산으로 분해하고 활동의 흐름을 표현
- 사용사례별로 다이어그램을 작성
- swimline을 사용하여 활동 주체를 표현: 그림 10.60
- 구현 다이어그램: 그림 10.61
. 사용사례 다이어그램: 그림 10.62
- 사용사례: 행위자의 요청에 의해서 수행되는 시스템의 기능
- actor: 시스템과 상호작용할 수 있는 사람이나 다른 시스템
- 관계: 구성 요소간 상호작용 관계
. 의존 관계, 일반화 관계, 연관 관계
. 확장 관계: 사용사례간의 관계로서, 이미 완료된 사용사례에 새로운 흐름을 추가하여 확장
. 사용 관계(포함 관계): 공통적인 기능을 재사용하는 관계
- 사용사례 기술서: 사용사례의 시나리오
- 객체 모델: 분석 단계에서의 객체 다이어그램
. 패키지 다이어그램: 그림 10.63
- 클래스, 컴포넌트, 사용사례 등을 그룹화하여 복잡한 다이어그램을 간단하게 표현
. 컴포넌트 다이어그램
- 컴포넌트
. 재사용하기 쉬운 형태로 클래스들을 그룹화: 그림 10.65
. 시스템을 구성하는 물리적 단위
. 인터페이스를 통해서만 접근
- 컴포넌트 다이어그램: 그림 10.64
. 컴포넌트 사이의 구성과 의존 관계를 표시
. 배치 다이어그램: 그림 10.66
- 실행처리 능력을 갖는 노드의 구성과 그 노드에 존재하는 컴포넌트를 표현
. 노드: 물리적인 하드웨어나 클라이언트/서버 계층을 표시
- 내장 시스템, 클라이언트/서버 시스템, 분산 시스템을 가시화
. 행위 다이어그램(behavior diagram)
- 상태 다이어그램
- 활동 다이어그램과 작업 흐름 다이어그램
- 순서 다이어그램, 상호작용 다이어그램, 메시지 추적 다이어그램, 사건추적 다이어그램
- 협력 다이어그램, 객체 메시지 다이어그램
. 실행 다이어그램(implementation diagram)
. UML의 특징: p.460하
. UML의 개발 과정: 그림 10.38
- 개념화 단계: 프로젝트의 목표와 범위를 설정
- 상세화 단계
. 문제 영역을 분석
. 프로젝트 계획서 작성
. 높은 수준의 분석과 설계를 위해 구체적인 요구사항을 수집
. 시스템의 구조 설계
. 구현 계획을 수립
- 구축 단계: 시스템의 구현과 테스트
- 전이 단계
. 사용자 환경에서 사용할 수 있도록 필요한 작업을 수행
. 베타 시험, 성능 조율, 사용자 교육 등을 실시
- 반복 단계: 반복적, 점진적으로 시스템을 개선
- UML, Booch, OMT의 비교: 표 10.3
10.4 표준 객체지향 모델링 언어 UML 소개
- UML(Unified Modeling Language)
. Booch, OMT, OOSE 방법론을 통합하여 만든 모델링 개념의 공통 집합으로 객체지향 분석 및 설계의 표준
- UML의 역사
. 여러 가지 방법론을 참조하여 통합: 그림 10.39
- OMT의 분석 방법
- Booch의 설계 방법
- OOSE의 행위 분석
. 1995 UML 0.8, 0.9, 0.91, 1.0
. 1997 UML 1.1을 OMG에서 표준으로 결정
- UML에서 사용하는 기호: 그림 10.40
. 핵심 기호: class, state, use case, association, dependency
. 확장 기호: actor, attribute, operation, link, 일반화, 집단화
. 특수 기호: stereotype
- UML의 다이어그램: 그림 10.41
. 사용사례 diagram: BPR 작업흐름도, 사용사례 기술서, 사용사례 diagram, 객체 모델, CRC card
. 상태 diagram: 활동 diagram, 상태 diagram
. 정적구조 diagram: 요구사항 명세서, 시나리오, 클래스 diagram, 객체 diagram
. 상호작용 diagram: 순차 diagram, 협력 diagram
. 구현 diagram: 패키지 diagram, 컴포넌트 diagram, 배치 diagram
- 정적 구조 다이어그램: 그림 10.42
. 클래스, 객체
. 정적 관계
. 속성, 연산
. 제약 사항
. 클래스 다이어그램: 그림 10.44
- 구현 환경을 반영하지 않는 시스템의 정적 구조를 정의
- 사용사례 다이어그램을 기반으로 식별된 클래스간의 정적관계를 표현
- 클래스의 표기 형식: 그림 10.43
. 클래스 이름
. 속성: private(-), public(+$)
. 연산: private(-), public(+), protected(#)
- 다이어그램의 구분
. 개념 수준: 분석단계에서 문제영역의 이해를 돕기 위해 구현환경을 고려치 않고 작성
. 명세 수준: 설계단계에서 정형화된 시스템 명세를 제공하기 위해 인터페이스를 추가
. 구현 수준: 상세 설계단계에서 구현환경을 고려한 최종 다이어그램
- 관계
. 의존 관계: 클래스간의 사용 관계: 그림 10.45
. 일반화/특수화 관계: 클래스간의 상속 관계: 그림 10.46
- 서브 클래스는 슈퍼 클래스의 속성과 연산을 상속: 그림 10.47
. 연관 관계: 클래스간의 구조적 관계
- 연관 이름과 방향: 그림 10.48
- 연관에서 클래스 역할: 그림 10.49
- 연관의 다중성(multiplicity): 그림 10.50
. 집단화 관계: 전체-부분 관계: 그림 10.51
. 객체 다이어그램: 그림 10.52
- 객체 명: 클래스 명
- 속성 명 = 속성 값
- 동적 구조 다이어그램: 그림 10.53
. 시스템의 동적 구조를 표현
. 상호작용 다이어그램과 상태 다이어그램
. 상호작용 다이어그램: 객체간의 메시지를 주고받는 상호작용
- 순차 다이어그램: 그림 10.54
. 시간 진행에 따른 객체들의 상호작용을 표현
. 객체간 메시지 전달
. 객체의 생명선과 객체의 제어 초점
- 협력 다이어그램: 그림 10.55
. 객체간의 상호작용을 표현
. 메시지 경로와 순번
. 상태 다이어그램: 그림 10.56
- 객체 혹은 시스템의 생명주기 동안의 상태변화를 표시
- 사건과 상태전이에 의한 상태기계로 표현
- 상태는 상태이름과 내부활동을 표시
- 상위 상태와 하위 상태 다이어그램: 그림 10.57,58
. 활동 다이어그램: 그림 10.59
- 활동을 원자성 연산으로 분해하고 활동의 흐름을 표현
- 사용사례별로 다이어그램을 작성
- swimline을 사용하여 활동 주체를 표현: 그림 10.60
- 구현 다이어그램: 그림 10.61
. 사용사례 다이어그램: 그림 10.62
- 사용사례: 행위자의 요청에 의해서 수행되는 시스템의 기능
- actor: 시스템과 상호작용할 수 있는 사람이나 다른 시스템
- 관계: 구성 요소간 상호작용 관계
. 의존 관계, 일반화 관계, 연관 관계
. 확장 관계: 사용사례간의 관계로서, 이미 완료된 사용사례에 새로운 흐름을 추가하여 확장
. 사용 관계(포함 관계): 공통적인 기능을 재사용하는 관계
- 사용사례 기술서: 사용사례의 시나리오
- 객체 모델: 분석 단계에서의 객체 다이어그램
. 패키지 다이어그램: 그림 10.63
- 클래스, 컴포넌트, 사용사례 등을 그룹화하여 복잡한 다이어그램을 간단하게 표현
. 컴포넌트 다이어그램
- 컴포넌트
. 재사용하기 쉬운 형태로 클래스들을 그룹화: 그림 10.65
. 시스템을 구성하는 물리적 단위
. 인터페이스를 통해서만 접근
- 컴포넌트 다이어그램: 그림 10.64
. 컴포넌트 사이의 구성과 의존 관계를 표시
. 배치 다이어그램: 그림 10.66
- 실행처리 능력을 갖는 노드의 구성과 그 노드에 존재하는 컴포넌트를 표현
. 노드: 물리적인 하드웨어나 클라이언트/서버 계층을 표시
- 내장 시스템, 클라이언트/서버 시스템, 분산 시스템을 가시화
추천자료
[경영정보시스템]경영정보시스템의 도입 사례및성과에 대한 분석 -국민은행을 중심으로-
[보안][컴퓨터보안][컴퓨터보안 위협 사례][컴퓨터보안시스템]컴퓨터보안의 정의, 컴퓨터보안...
정보시스템, 정보보안, 해킹, 시스템유지보수 등 관련 사건 사고 사례분석
[정부관료제, 정부관료제 진화과정, 정부관료제 변화, 정부관료제와 정권교체, 조직시스템]정...
[린생산방식][린생산시스템][린생산][생산][시스템]린생산방식(린생산시스템)의 탄생, 린생산...
[MAS][관리회계시스템][관리회계][회계]MAS(관리회계시스템)의 역사, MAS(관리회계시스템)의 ...
[신유통업태][신유통][유통][5대유망분야][경영전략시스템][경영전략][기업]신유통업태의 의...
[기업][기업정보관리][기업정보공개정책][기업정보시스템][기업정보화]기업정보관리, 기업정...
[기업][기업업무][기업조직][기업시스템][기업커뮤니케이션][기업공개][기업경영][기업관리]...
“밸류체인의 이해” - 가치사슬(Value Chain)”{가치사슬 개념정리, 가치 창출 활동, 가치활동...
[마케팅전략] DHL 기업분석, SWOT 분석, 가치사슬 전략, 물류시스템, 경쟁사 분석, STP 전략,...
[산업경영공학, 시스템경영공학] 지식재산학 - 특허분석 예시 ( 특허분석예 )
삼양사
[JIT시스템] JIT시스템의 성공 사례 ; JIT시스템의 장점과 특징 분석