第1章 UML概述 1
1.1 什么是UML 1
1.2 UML的发展历程 1
1.3 UML的特点 3
1.4 UML的结构 3
1.4.1 UML中的事物 3
1.4.2 UML中的关系 4
1.5 UML的视图 5
1.5.1 用例视图 5
1.5.2 逻辑视图 5
1.5.3 并发视图 6
1.5.4 组件视图 6
1.5.5 部署视图 6
1.6 UML的图 6
1.6.1 用例图 6
1.6.2 类图 6
1.6.3 对象图 7
1.6.4 状态机图 7
1.6.5 活动图 7
1.6.6 顺序图 8
1.6.7 通信图 8
1.6.8 构件图 9
1.6.9 部署图 9
1.7 UML2.0新特性 10
1.8 系统开发阶段 12
小结 13
习题 14
第2章 面向对象技术和建模基础 15
2.1 面向对象的基本概念 15
2.1.1 面向对象方法 16
2.1.2 对象 16
2.1.3 类 17
2.1.4 封装 18
2.1.5 继承 19
2.1.6 多态 20
2.1.7 消息 21
2.2 面向对象开发 22
2.2.1 系统调查和需求分析 22
2.2.2 面向对象分析方法 23
2.2.3 面向对象设计方法 24
2.3 软件建模概述 24
2.3.1 软件建模的概念 25
2.3.2 软件建模的用途 25
2.3.3 软件建模的优点 25
小结 26
习题 26
第3章 UML建模工具简介 27
3.1 常用UML建模工具 27
3.1.1 Rational Rose 28
3.1.2 Visio 30
3.1.3 PowerDesigner 31
3.1.4 StarUML 32
3.2 StarUML安装与配置 34
3.2.1 StarUML的安装 34
3.2.2 StarUML的配置 37
3.3 使用StarUML建模 37
3.3.1 StarUML主界面 37
3.3.2 StarUML的模型、视与图 37
3.3.3 StarUML建模的基本过程 38
3.4 双向工程 43
3.4.1 正向工程 43
3.4.2 逆向工程 47
小结 50
习题 50
第4章 用例和用例图 51
4.1 用例和用例图的概念 51
4.1.1 参与者 52
4.1.2 用例 54
4.1.3 用例描述 54
4.2 用例之间的可视化表示 56
4.2.1 包含关系 56
4.2.2 扩展关系 57
4.2.3 泛化关系 57
4.2.4 分组关系 58
4.3 用例图建模技术及应用 58
小结 67
习题 68
第5章 类图和对象图 69
5.1 类图和对象图概述 69
5.1.1 类图概述 69
5.1.2 对象图概述 72
5.1.3 接口 73
5.1.4 抽象类 73
5.2 类之间的关系 74
5.2.1 依赖关系 74
5.2.2 泛化关系 76
5.2.3 关联关系 76
5.2.4 实现关系 80
5.3 类图的建模技术及应用 81
小结 91
习题 92
第6章 顺序图和通信图 93
6.1 顺序图 93
6.1.1 顺序图概述 93
6.1.2 顺序图的基本内容 94
6.1.3 约束 99
6.1.4 顺序图的建模技术及应用 101
6.2 通信图 106
6.2.1 通信图概述 106
6.2.2 通信图的基本内容 107
6.2.3 通信图建模技术及应用 110
6.2.4 顺序图与通信图的比较 114
小结 114
习题 115
第7章 状态机图和活动图 117
7.1 状态机图 117
7.1.1 状态机图概述 117
7.1.2 状态机图的基本元素 119
7.1.3 状态 119
7.1.4 转换 122
7.1.5 状态机图的建模技术及应用 123
7.2 活动图 126
7.2.1 活动图概述 126
7.2.2 活动图的基本元素 127
7.2.3 动作状态 127
7.2.4 活动状态 128
7.2.5 转移 128
7.2.6 分支 128
7.2.7 分叉和汇合 129
7.2.8 泳道 129
7.2.9 对象流 130
7.2.10 活动图的建模技术及应用 131
7.2.11 状态机图和活动图的比较 135
小结 135
习题 136
第8章 构件图和部署图 137
8.1 构件图 137
8.1.1 构件图概述 137
8.1.2 组件 139
8.1.3 接口 140
8.1.4 关系 140
8.1.5 使用构件图对系统建模及应用 141
8.2 部署图 144
8.2.1 部署图概述 144
8.2.2 结点 144
8.2.3 组件 146
8.2.4 关系 146
8.2.5 部署图的系统建模及应用 147
小结 151
习题 151
第9章 UML2.0新图 152
9.1 包图 152
9.1.1 包图概述 152
9.1.2 包之间的关系 152
9.1.3 包图的建模技术及应用 153
9.2 组合结构图 154
9.2.1 组合结构图概述 154
9.2.2 基本元素 155
9.2.3 组合结构图的建模技术及应用 155
9.3 定时图 155
9.3.1 定时图概述 155
9.3.2 基本元素 156
9.3.3 定时图的建模技术及应用 156
9.4 交互概览图 158
9.4.1 交互概览图概述 158
9.4.2 基本元素 158
9.4.3 交互概览图的建模技术及应用 158
小结 161
习题 161
第10章 统一软件过程RUP 162
10.1 RUP简介 162
10.1.1 什么是RUP过程 162
10.1.2 RUP的特点 163
10.2 RUP工作流程 165
10.2.1 业务建模 165
10.2.2 需求分析 165
10.2.3 分析与设计 165
10.2.4 实现 166
10.2.5 测试 166
10.2.6 部署 166
10.2.7 配置和变更管理 166
10.2.8 项目管理 166
10.2.9 环境 166
10.2.10 统一软件开发过程RUP裁剪 167
10.3 RUP的十大要素 167
10.3.1 开发前景 167
10.3.2 达成计划 167
10.3.3 标识和减少风险 168
10.3.4 分配和跟踪任务 168
10.3.5 检查商业理由 168
10.3.6 设计组件构架 168
10.3.7 对产品进行增量式的构建和测试 169
10.3.8 验证和评价结果 169
10.3.9 管理和控制变化 169
10.3.10 提供用户支持 169
10.4 StarUML在RUP模型中的应用 169
10.4.1 可视化建模 169
10.4.2 StarUML介绍 170
10.4.3 StarUML建模与RUP 170
10.4.4 StarUML建模与RUP应用实例 171
小结 174
习题 175
第11章 汽车租赁系统 176
11.1 系统需求分析 176
11.1.1 汽车租赁系统的需求分析 176
11.1.2 功能模块图 177
11.2 用例图设计建模 178
11.2.1 汽车租赁系统中的用例图简述 178
11.2.2 与客户有关的用例图 178
11.2.3 与系统维护人员有关的用例图 179
11.2.4 与技术人员有关的用例图 181
11.3 类图设计建模 181
11.4 顺序图 184
11.4.1 汽车租赁系统中的数据流和相应顺序图 184
11.4.2 与客户有关的事件流和顺序图 184
11.4.3 与系统维护人员有关的事件流和顺序图 188
11.4.4 与技术人员有关的事件流和用例图 191
11.5 通信图设计建模 194
11.5.1 汽车租赁系统中的通信图 194
11.5.2 与客户有关的通信图 195
11.5.3 与技术人员有关的通信图 196
11.5.4 与系统维护人员有关的通信图 198
11.6 活动图 200
11.6.1 系统中的活动图 200
11.6.2 与客户有关的活动图 200
11.6.3 与系统维护人员有关的活动图 204
11.6.4 与技术人员有关的活动图 207
11.7 状态机图设计建模 207
11.8 配置图设计建模 209
第12章 新闻中心管理系统 211
12.1 系统需求说明 211
12.1.1 新闻中心管理系统的需求分析 211
12.1.2 UML对系统需求分析的支持 213
12.1.3 利用UML模型构造软件体系结构 213
12.2 系统的用例图 214
12.3 系统中的类图 216
12.4 系统的顺序图 218
12.5 系统的通信图 220
12.6 系统状态机图 222
12.7 系统的活动图 223
12.8 系统的配置和实现 223
12.9 系统的配置图 224
12.10 生成Java代码 224
12.11 逆向工程的实现 232
第13章 BBS论坛系统 233
13.1 BBS论坛系统的需求分析 233
13.1.1 系统的功能需求 233
13.1.2 前台功能模块 235
13.1.3 后台功能模块 237
13.2 BBS论坛系统的UML建模 238
13.2.1 BBS论坛系统的用例图 238
13.2.2 BBS论坛系统的时序图 242
13.2.3 BBS论坛系统的通信图 261
13.2.4 BBS论坛系统的状态机图 268
13.2.5 BBS论坛系统的活动图 270
13.3 BBS论坛系统中的类 276
13.4 BBS论坛系统中的配置和部署 280
13.4.1 构件图的建立 280
13.4.2 部署图的建立 280
参考文献 281