第1章 面向对象的开发方法 1
1.1 面向对象技术概述 1
1.1.1 面向对象技术的由来 1
1.1.2 面向对象的基本思想 2
1.1.3 传统开发方法存在的问题 2
1.1.4 面向对象方法的优点 3
1.2 面向对象的基本概念 3
1.2.1 对象 4
1.2.2 类 4
1.2.3 封装 5
1.2.4 继承 5
1.2.5 聚合 6
1.2.6 关联 7
1.2.7 消息 8
1.2.8 多态性 8
1.3 面向对象分析 9
1.3.1 面向对象分析的主要原则 9
1.3.2 面向对象分析的步骤 10
1.4 面向对象设计 13
1.4.1 面向对象设计的主要原则 14
1.4.2 OOD的步骤 14
1.5 面向对象编程语言 15
1.6 几种典型的面向对象方法 15
1.6.1 Booch方法 15
1.6.2 Ivar Jacobson的OOSE方法 16
1.6.3 Coad-Yourdon方法 17
1.6.4 James Rumbaugh的OMT方法 18
1.6.5 RDD法 20
1.7 本章习题 20
第2章 统一建模语言UML 22
2.1 UML概述 22
2.1.1 UML的发展历史 22
2.1.2 UML的主要特点 23
2.1.3 UML的构成 23
2.2 UML的体系结构 24
2.2.1 用例视图 25
2.2.2 逻辑视图 25
2.2.3 并发视图 25
2.2.4 组件视图 25
2.2.5 配置视图 26
2.3 UML的模型图 26
2.3.1 用例模型图 26
2.3.2 静态模型图 26
2.3.3 动态模型图 27
2.3.4 UML2.0新增图 28
2.4 UML模型元素 28
2.4.1 事物 29
2.4.2 关系 31
2.5 通用机制 32
2.5.1 修饰 32
2.5.2 注释 32
2.5.3 规格说明 33
2.5.4 通用划分 33
2.6 扩展机制 34
2.6.1 构造型 34
2.6.2 标记值 35
2.6.3 约束 36
2.7 本章习题 36
第3章 需求建模——用例图 38
3.1 用例图概述 38
3.2 参与者 39
3.2.1 参与者的概念及表示法 39
3.2.2 识别参与者 40
3.2.3 参与者之间的关系 40
3.3 用例 41
3.3.1 用例的概念及表示法 41
3.3.2 确定用例 42
3.3.3 描述用例 42
3.4 用例间的关系 45
3.4.1 泛化关系 45
3.4.2 包含关系 45
3.4.3 扩展关系 46
3.5 用例图建模 46
3.6 需求建模实例 47
3.7 同步实验指导 53
3.8 本章习题 54
第4章 静态建模——类图、对象图和包图 57
4.1 类与关系 57
4.1.1 类 57
4.1.2 接口 61
4.1.3 关系 62
4.2 类图 66
4.2.1 类图的定义 66
4.2.2 类图的结构 67
4.2.3 类图的应用 68
4.3 对象图 68
4.3.1 对象图的定义 69
4.3.2 对象图的组成 69
4.3.3 对象图和类图的区别 70
4.3.4 对象图的应用 70
4.4 包图 71
4.4.1 概述 71
4.4.2 包 71
4.4.3 包之间的关系 72
4.4.4 包图的应用 72
4.5 静态建模实例 73
4.6 同步实验指导 76
4.7 本章习题 77
第5章 动态建模——状态图 80
5.1 状态图 80
5.1.1 状态机 80
5.1.2 状态图简介 80
5.2 状态图的组成成分 81
5.2.1 状态图的图形元素 81
5.2.2 状态 82
5.2.3 转移 85
5.2.4 事件 87
5.2.5 动作 88
5.3 状态图建模 89
5.4 状态图建模实例 89
5.5 同步实验指导 91
5.6 本章习题 92
第6章 动态建模——活动图 94
6.1 活动图概述 94
6.2 活动图元素及表示法 94
6.2.1 活动图元素 94
6.2.2 动作与活动 95
6.2.3 控制流 96
6.2.4 判定与合并 96
6.2.5 分岔与汇合 97
6.2.6 泳道 98
6.2.7 对象流 99
6.3 活动图与状态图 101
6.3.1 活动图与状态图的相同点 101
6.3.2 活动图与状态图的不同点 101
6.4 活动图建模及应用 102
6.4.1 活动图应用 102
6.4.2 活动图建模 103
6.5 活动图建模实例 104
6.6 同步实验指导 108
6.7 本章习题 109
第7章 动态建模——时序图 111
7.1 时序图概述 111
7.2 时序图元素及表示法 112
7.2.1 对象 112
7.2.2 生命线 113
7.2.3 激活 113
7.2.4 消息 114
7.2.5 消息中的参数和序号 116
7.2.6 对象的创建和撤销 116
7.3 时序图建模 117
7.4 时序图建模实例 118
7.5 同步实验指导 127
7.6 本章习题 128
第8章 动态建模——协作图 130
8.1 协作图概述 130
8.2 协作图元素及表示法 131
8.2.1 对象 131
8.2.2 链接 131
8.2.3 消息 131
8.3 协作图与时序图 131
8.3.1 协作图与时序图的比较 132
8.3.2 协作图与时序图的互换 132
8.4 协作图建模 133
8.5 协作图建模实例 134
8.6 同步实验指导 141
8.7 本章习题 142
第9章 物理实现建模——组件图 144
9.1 组件图概述 144
9.2 组件图的元素 145
9.2.1 组件 145
9.2.2 接口 146
9.2.3 关系 147
9.3 组件图建模及应用 147
9.3.1 组件图的应用 147
9.3.2 组件图建模 148
9.4 组件图建模实例 149
9.5 同步实验指导 150
9.6 本章习题 151
第10章 物理实现建模——配置图 153
10.1 配置图概述 153
10.2 配置图元素及表示法 153
10.2.1 节点 154
10.2.2 关系 155
10.3 配置图建模及应用 155
10.3.1 配置图的应用 155
10.3.2 配置图建模 157
10.4 配置图建模实例 158
10.5 同步实验指导 159
10.6 本章习题 159
第11章 UML与统一过程 161
11.1 软件开发过程 161
11.1.1 软件开发过程概述 161
11.1.2 传统软件开发模型 162
11.2 Rational统一过程 163
11.2.1 Rational统一过程的发展历史 163
11.2.2 Rational统一过程的二维开发模型 164
11.2.3 Rational统一过程的4个阶段 165
11.2.4 Rational统一过程的核心工作流 167
11.3 核心工作流程 169
11.3.1 需求捕获工作流 169
11.3.2 分析工作流 173
11.3.3 设计工作流 177
11.3.4 实现工作流 180
11.3.5 测试工作流 184
11.4 配置和实现Rational统一过程 189
11.4.1 配置Rational统一过程 189
11.4.2 实现Rational统一过程 189
11.5 本章习题 191
第12章 UML建模工具 193
12.1 Rational Rose 2003简介 193
12.1.1 Rational Rose概述 193
12.1.2 Rational Rose的安装 194
12.1.3 Rational Rose的使用 196
12.2 Rose的双向工程 215
12.2.1 双向工程概述 215
12.2.2 正向工程 216
12.2.3 逆向工程 218
12.3 Microsoft Visio 2003简介 219
12.4 JUDE工具简介 220
12.5 Rational Rose 2003实验指导 220
12.6 本章习题 221
第13章 图书管理系统 224
13.1 系统需求分析 224
13.1.1 需求分析的任务 224
13.1.2 需求分析的过程 225
13.1.3 图书管理系统需求分析 225
13.2 系统建模 226
13.2.1 创建系统用例模型 226
13.2.2 创建系统静态模型 228
13.2.3 创建系统动态模型 228
13.2.4 创建系统部署模型 256
第14章 超市信息管理系统 260
14.1 系统需求分析 260
14.2 系统建模 261
14.2.1 创建系统用例模型——超市信息管理 261
14.2.2 创建系统静态模型 266
14.2.3 创建系统动态模型——超市信息管理 267
14.2.4 创建系统实现模型 274
参考文献 276