第1章 基于面向对象的UML 1
1.1 面向对象是UML的基础 1
1.1.1 什么是面向对象 1
1.1.2 面向对象的基本特征 6
1.2 什么是模型 9
1.2.1 为什么要建模 9
1.2.2 建模的目标和原则 10
1.3 用面向对象设计项目 11
1.3.1 面向对象分析 11
1.3.2 面向对象设计 15
1.4 什么是UML 17
1.4.1 UML的发展历史 17
1.4.2 UML的主要特点 18
1.4.3 UML的应用领域 19
1.4.4 用UML可以建立的模型种类 19
1.5 习题 24
第2章 UML语言综述 26
2.1 UML语言的构成 26
2.2 UML的基本元素 26
2.2.1 结构事物 26
2.2.2 行为事物 28
2.2.3 分组事物 29
2.2.4 注释事物 29
2.3 关系元素 30
2.4 视图和图 31
2.4.1 视图 31
2.4.2 图 36
2.5 UML的公共机制 41
2.5.1 UML的通用机制 41
2.5.2 UML的扩展机制 42
2.6 习题 45
第3章 UML工具——Rational Rose 47
3.1 Rational Rose概述 47
3.2 Rational Rose的安装 48
3.3 Rational Rose的使用 50
3.3.1 Rational Rose的启动界面 50
3.3.2 Rational Rose的主界面 52
3.3.3 Rational Rose的常用操作 57
3.4 Rational Rose的四种视图模型 64
3.4.1 用例视图 64
3.4.2 逻辑视图 68
3.4.3 部署视图 72
3.4.4 构件视图 73
3.5 用Rational Rose生成代码 74
3.5.1 生成代码的方法 75
3.5.2 逆向工程 78
3.6 习题 79
第4章 类图和对象图 81
4.1 类图的概念 81
4.2 UML中的类 82
4.2.1 类的表示 83
4.2.2 类的组成 83
4.2.3 类的类型 87
4.2.4 类的构造型 88
4.3 类图中的关系 89
4.3.1 实现关系 89
4.3.2 泛化关系 90
4.3.3 依赖关系 91
4.3.4 关联关系 92
4.4 绘制类图 93
4.4.1 类图和类的创建 93
4.4.2 类与类之间关系的创建 98
4.5 对象图的概念 100
4.5.1 对象的表示 101
4.5.2 链的表示 101
4.6 绘制对象图的方法 102
4.7 创建类图和对象图实例分析 103
4.7.1 确定类和关联 103
4.7.2 确定属性和操作 104
4.7.3 根据类图创建对象图 105
4.8 习题 105
第5章 包图 108
5.1 包图的概念 108
5.1.1 模型的组织结构 108
5.1.2 包图和包 110
5.2 包的表示 111
5.2.1 包的命名 111
5.2.2 包的可见性 111
5.2.3 包的构造型 112
5.2.4 包的子系统 113
5.3 包图中的关系 113
5.3.1 依赖关系 113
5.3.2 泛化关系 115
5.4 包的嵌套 115
5.5 绘制包图 116
5.5.1 包的创建 116
5.5.2 添加包中的类 117
5.5.3 包的依赖关系创建 118
5.6 创建包图实例分析 118
5.6.1 确定包的分类 118
5.6.2 创建包和关系 119
5.7 习题 120
第6章 用例图 122
6.1 用例图的概念 122
6.2 用例图的表示 123
6.2.1 参与者的表示 123
6.2.2 用例的表示 124
6.3 参与者之间的关系 125
6.3.1 识别参与者 125
6.3.2 参与者间的泛化关系 126
6.4 用例之间的关系 127
6.4.1 识别用例 127
6.4.2 用例的粒度 127
6.4.3 用例规约 128
6.4.4 标识用例间的关系 129
6.5 系统边界 132
6.6 绘制用例图 132
6.6.1 创建用例图 133
6.6.2 创建参与者 135
6.6.3 创建用例 136
6.6.4 创建用例和参与者之间的关联 137
6.6.5 创建用例之间的关系 137
6.7 创建用例图实例分析 138
6.7.1 需求分析 138
6.7.2 识别参与者 140
6.7.3 确定用例 140
6.7.4 构建用例模型 141
6.8 习题 142
第7章 序列图 145
7.1 序列图的概念 145
7.2 序列图的表示 146
7.2.1 对象的表示 146
7.2.2 生命线的表示 147
7.2.3 激活的表示 148
7.2.4 消息的表示 148
7.3 序列图中的对象行为 150
7.3.1 对象的创建和销毁 150
7.3.2 分支与从属流 151
7.4 绘制序列图 151
7.4.1 序列图的创建和删除 151
7.4.2 序列图中对象的创建和删除 153
7.4.3 消息的创建 154
7.4.4 消息的设置 155
7.4.5 生命线的设置 157
7.4.6 对象的销毁 157
7.5 创建序列图实例分析 158
7.5.1 需求分析 158
7.5.2 确定序列对象 159
7.5.3 创建的序列图 160
7.6 习题 160
第8章 活动图 163
8.1 活动图的概念 163
8.2 活动图的表示 164
8.2.1 活动状态的表示 165
8.2.2 动作状态的表示 165
8.2.3 组合活动的表示 166
8.2.4 分支与合并的表示 166
8.2.5 分叉与汇合的表示 167
8.2.6 对象流的表示 168
8.2.7 泳道的表示 169
8.3 绘制活动图 170
8.3.1 活动图的创建 170
8.3.2 初始和终止状态的创建 172
8.3.3 动作状态的创建 172
8.3.4 活动状态的创建 173
8.3.5 泳道的创建 174
8.3.6 转换的创建 175
8.3.7 分支的创建 175
8.4 创建活动图实例分析 176
8.4.1 确定需求用例 176
8.4.2 确定用例路径 177
8.4.3 创建完整的活动图 178
8.5 习题 178
第9章 协作图 182
9.1 协作图的概念 182
9.2 协作图的表示 183
9.2.1 对象的表示 184
9.2.2 消息的表示 184
9.2.3 链的表示 185
9.3 绘制协作图 185
9.3.1 协作图的创建 185
9.3.2 对象的创建 187
9.3.3 链和消息的创建 188
9.3.4 序列图和协作图的转换 189
9.4 创建协作图实例分析 189
9.4.1 创建协作图的步骤 189
9.4.2 需求分析 190
9.4.3 确定协作图元素 191
9.4.4 确定元素之间的关系 191
9.4.5 创建协作图 192
9.5 习题 192
第10章 状态图 195
10.1 状态图的概念 195
10.1.1 状态机 195
10.1.2 状态图 196
10.2 状态图的表示 197
10.2.1 状态 197
10.2.2 转换 199
10.2.3 判定 201
10.2.4 同步 202
10.2.5 事件 203
10.2.6 初始状态和终止状态 204
10.3 状态的分类 204
10.3.1 历史状态 205
10.3.2 组成状态 205
10.4 绘制状态图 206
10.4.1 状态图的创建 207
10.4.2 初始和终止状态的创建 208
10.4.3 状态的创建 208
10.4.4 状态间转换的创建 209
10.4.5 事件的创建 209
10.4.6 动作的创建 210
10.4.7 监护条件的创建 211
10.5 创建状态图实例分析 211
10.5.1 确定状态图的实体 211
10.5.2 确定状态图中实体的状态 212
10.5.3 创建相关事件完成状态图 212
10.6 习题 213
第11章 构件图和部署图 215
11.1 构件的概念 215
11.1.1 构件 215
11.1.2 构件的种类 216
11.1.3 构件的表示 216
11.2 构件图的概念 217
11.3 绘制构件图 219
11.3.1 构件图的创建 219
11.3.2 构件的创建 221
11.3.3 构件关系的创建 221
11.4 部署图 222
11.4.1 部署图的概念 222
11.4.2 部署图的表示 222
11.5 绘制部署图 224
11.5.1 节点的创建 225
11.5.2 节点的设置 226
11.5.3 连接的创建 227
11.6 创建构件图和部署图实例分析 228
11.6.1 创建构件图 228
11.6.2 创建部署图 230
11.7 习题 231
第12章 Rational统一过程 234
12.1 软件开发过程 234
12.2 Rational统一过程简介 235
12.2.1 统一过程的概念 235
12.2.2 Rational统一过程的历史 236
12.3 Rational统一过程的框架 237
12.3.1 Rational统一过程的核心工作流 238
12.3.2 Rational统一过程的迭代开发模式 240
12.3.3 Rational统一过程的最佳实现 240
12.4 Rational统一过程的开发模型 244
12.4.1 统一过程的动态开发 245
12.4.2 统一过程的静态开发 249
12.4.3 面向架构的过程 251
12.5 Rational统一过程的配置和实现 253
12.5.1 Rational统一过程的配置 253
12.5.2 Rational统一过程的实现 253
12.6 习题 255
第13章 网上购物商店 257
13.1 系统需求分析 257
13.2 系统建模 259
13.2.1 创建系统用例模型 259
13.2.2 创建系统静态模型 262
13.2.3 创建系统动态模型 266
13.2.4 创建系统部署模型 277