第1章 软件工程与UML概述 1
1.1 软件工程概述 1
1.1.1 软件工程的发展历史 1
1.1.2 软件工程的生命周期 1
1.2 UML概述 3
1.2.1 UML的历史 3
1.2.2 UML包含的内容 4
1.2.3 UML的定义 5
1.2.4 UML的应用领域 7
第2章 Rational Rose简介 8
2.1 建模概论 8
2.2 Rational Rose的安装 8
2.2.1 安装前的准备 8
2.2.2 安装的步骤 8
2.3 Rational Rose使用介绍 11
2.3.1 Rational Rose主界面 11
2.3.2 使用Rational Rose建模 14
2.3.3 设置全局选项 16
2.3.4 框图设计 17
第3章 UML语言初览 21
3.1 概述 21
3.2 UML中的事物 21
3.2.1 结构事物(Structure Things) 21
3.2.2 行为事物(Behavior Things) 23
3.2.3 组织事物(Grouping Things) 23
3.2.4 辅助事物(Annotation Things) 24
3.3 UML中的关系 24
3.3.1 关联(Association)关系 24
3.3.2 依赖(Dependency)关系 25
3.3.3 泛化(Generalization)关系 25
3.3.4 实现(Realization)关系 25
3.4 UML中的视图 26
3.5 UML中的图 28
第4章 静态视图 32
4.1 概述 32
4.2 类与关系 32
4.2.1 类 32
4.2.2 关系 35
4.3 类图 41
4.3.1 类图的概念和内容 42
4.3.2 类图的用途 42
4.3.3 类图建模技术 43
4.4 对象图 45
4.4.1 对象图的概念和内容 45
4.4.2 对象图建模 45
4.5 包图 46
4.5.1 包的名字 46
4.5.2 包拥有的元素 47
4.5.3 包的可见性 47
4.5.4 引入与输出 48
4.5.5 包中的泛化关系 48
4.5.6 标准元素 49
4.5.7 包图建模技术 49
4.6 实例——图书馆管理系统中的静态视图 50
4.6.1 建立对象图步骤 50
4.6.2 对象的生成 50
4.6.3 使用Rose绘制对象图 51
第5章 用例视图 56
5.1 概述 56
5.2 参与者(Actor) 56
5.3 用例(Use Case) 57
5.3.1 用例的概念 57
5.3.2 识别用例 58
5.3.3 用例与事件流 60
5.3.4 用例间的关系 60
5.4 用例图建模技术 62
5.4.1 对语境建模 62
5.4.2 对需求建模 63
5.5 实例——图书馆管理系统中的用例视图 64
5.5.1 确定系统涉及的内容 64
5.5.2 确定系统参与者 64
5.5.3 确定系统用例 64
5.5.4 使用Rational Rose来绘制用例图 65
第6章 动态视图 70
6.1 时序图(Sequence Diagram) 70
6.1.1 时序图的概念和内容 70
6.1.2 时序图的用途 71
6.1.3 时序图的建模技术 71
6.2 协作图(Collaboration Diagram) 73
6.2.1 协作图的概念和内容 73
6.2.2 协作图的用途 74
6.2.3 协作图的建模技术 74
6.2.4 协作图与时序图的互换 75
6.3 状态图(Statechart Diagram) 76
6.3.1 状态图的概念和内容 76
6.3.2 状态图的用途 81
6.3.3 状态图的建模技术 81
6.4 活动图(Activity Diagram) 83
6.4.1 活动图的概念和内容 83
6.4.2 活动图的用途 88
6.4.3 活动图的建模技术 88
6.5 实例——图书馆管理系统的动态视图 91
6.5.1 各种动态视图的区别 91
6.5.2 使用Rose绘制状态图 91
6.5.3 使用Rose绘制活动图 94
6.5.4 使用Rose绘制时序图 98
6.5.5 使用Rose绘制协作图 101
第7章 UML实现与部署 104
7.1 组件图(Component Diagram) 104
7.1.1 组件图的概念和内容 104
7.1.2 组件 104
7.1.3 接口 105
7.1.4 关系 106
7.1.5 补充图标 107
7.1.6 组件图建模技术 108
7.2 配置图(Deployment Diagram) 109
7.2.1 配置图的概念和内容 109
7.2.2 节点 110
7.2.3 组件 110
7.2.4 关系 111
7.2.5 配置图建模技术 111
7.3 实例——图书馆管理系统的组件图与配置图 113
7.3.1 绘制组件图与配置图的步骤 113
7.3.2 使用Rose绘制组件图 113
7.3.3 使用Rose绘制配置图 115
第8章 UML与统一开发过程 119
8.1 软件开发过程历史概述 119
8.1.1 软件开发过程简介 119
8.1.2 当前流行的软件过程 119
8.2 RUP简介 120
8.2.1 什么是RUP过程 120
8.2.2 RUP的特点 120
8.2.3 RUP的十大要素 123
8.3 统一开发过程核心工作流 126
8.3.1 需求捕获工作流 127
8.3.2 分析工作流 131
8.3.3 设计工作流 134
8.3.4 实现工作流 138
8.3.5 测试工作流 141
8.4 RUP统一过程案例 146
8.4.1 简介 146
8.4.2 要求 146
8.4.3 创意设计大纲 147
8.4.4 导航图 147
8.4.5 创意设计比选方案 148
8.4.6 Web设计元素 148
8.4.7 初始Web用户接口原型 149
8.4.8 UI指南 149
8.4.9 Web用户接口总体原型 149
8.4.10 总体导航图 149
第9章 Rose的双向工程 151
9.1 双向工程简介 151
9.2 正向工程 151
9.3 逆向工程 156
9.4 实例——类图的代码生成与逆向工程 157
9.4.1 代码生成 157
9.4.2 逆向工程 160
第10章 档案管理系统 162
10.1 软件需求分析 162
10.1.1 软件需求的定义 162
10.1.2 软件需求的层次 162
10.1.3 需求分析的任务与过程 163
10.2 档案管理系统的需求分析 164
10.2.1 系统功能需求 164
10.2.2 用户管理模块 166
10.2.3 系统参数设置模块 167
10.2.4 借阅管理模块 167
10.2.5 案卷管理模块 168
10.2.6 文件管理模块 168
10.2.7 数据管理模块 168
10.3 系统的UML基本模型 169
10.3.1 UML初始模型 169
10.3.2 系统的用例图 170
10.3.3 系统的时序图 173
10.3.4 系统的协作图 176
10.3.5 系统的状态图 178
10.3.6 系统的活动图 179
10.4 系统中的类 182
10.4.1 类图的生成 182
10.4.2 各类之间的关系 185
10.5 系统的配置与实现 186
10.5.1 系统的组件图 186
10.5.2 系统的配置图 186
第11章 BBS论坛系统 187
11.1 BBS论坛系统的需求分析 187
11.1.1 系统的功能需求 187
11.1.2 前台基本业务模块 188
11.1.3 后台管理模块 189
11.2 系统的UML建模 189
11.2.1 UML初始模型 189
11.2.2 系统的用例图 190
11.2.3 系统的时序图 192
11.2.4 系统的协作图 193
11.2.5 系统的状态图 195
11.2.6 系统的活动图 196
11.3 系统中的类 197
11.3.1 类图的生成 197
11.3.2 各类之间的关系 198
11.4 系统的配置和实现 199
11.4.1 系统的组件图 199
11.4.2 系统的配置图 199
第12章 新闻中心管理系统 200
12.1 新闻中心管理系统的需求分析 200
12.1.1 系统功能需求 200
12.1.2 信息浏览模块 201
12.1.3 后台管理模块 201
12.2 系统的UML基本模型 202
12.2.1 UML初始模型 202
12.2.2 系统的用例图 202
12.2.3 系统的时序图 204
12.2.4 系统的协作图 206
12.2.5 系统的状态图 207
12.2.6 系统的活动图 207
12.3 系统中的类 208
12.3.1 类图的生成 208
12.3.2 双向工程 210
12.3.3 各类之间的关系 213
12.4 系统的配置和实现 213
12.4.1 系统的组件图 214
12.4.2 系统的配置图 214
附录A 术语 215
A.1 范围 215
A.2 部分术语 215
附录B 标准元素 255
附录C 元模型 263
C.1 简介 263
C.2 背景 263
C.3 元元模型 265
参考文献 266