第1章 概述 1
1.1 模型驱动开发方法 1
1.2 了解建模 2
1.3 建模的重要性 5
1.4 UML建模 5
1.5 UML建模工具 7
1.6 RUP软件开发方法 8
1.6.1 RUP的核心概念 8
1.6.2 RUP是迭代和增量的过程 8
1.6.3 RUP的生命周期 8
1.7 重要的面向对象思想 10
1.8 小结 14
习题 14
第2章 UML简介 15
2.1 UML发展历程 15
2.2 UML概述 17
2.2.1 UML是一种建模语言 17
2.2.2 UML是一种可视化建模语言 18
2.2.3 UML是一种用于规约的语言 18
2.2.4 UML是一种用于构造的语言 19
2.2.5 UML是一种用于文档化的语言 19
2.2.6 UML的应用领域 20
2.3 UML的基本构成 21
2.3.1 UML的构造块 21
2.3.2 UML的建模规则 26
2.3.3 基于UML的模型驱动开发 26
2.4 UML的公共机制 27
2.5 小结 28
习题 29
第3章 公共机制 30
3.1 基本概念 30
3.1.1 注解 30
3.1.2 修饰 31
3.1.3 扩展机制 32
3.1.4 扩展机制的使用 37
3.2 常用建模技术 39
3.2.1 建模注释 39
3.2.2 建模新特性 39
3.2.3 建模新的语义 40
3.3 小结 41
习题 42
第4章 用例模型 43
4.1 基本概念 43
4.1.1 用例图 43
4.1.2 用例 43
4.1.3 参与者 44
4.1.4 关联关系 47
4.1.5 用例描述 51
4.2 建模技术 52
4.2.1 构建用例模型的方法 52
4.2.2 建模系统的语境 54
4.2.3 建模系统的需求 55
4.3 小结 58
习题 58
第5章 类模型 59
5.1 基本概念 59
5.1.1 类 59
5.1.2 关系 64
5.2 建模技术 70
5.2.1 建模类图的步骤 70
5.2.2 UML类图的正向工程和逆向工程 72
5.3 小结 73
习题 73
第6章 状态机模型 75
6.1 基本概念 75
6.2 基本建模元素 76
6.2.1 状态 76
6.2.2 复合状态 79
6.2.3 迁移 83
6.2.4 事件 85
6.2.5 状态图的执行 88
6.3 建模技术 90
6.3.1 建模反应式对象 90
6.3.2 状态图的建模元素 91
6.3.3 状态机模型的正向工程和逆向工程 91
6.4 小结 92
习题 92
第7章 交互模型 93
7.1 概述 93
7.2 顺序图 95
7.2.1 交互的参与者 95
7.2.2 消息 96
7.2.3 控制焦点 98
7.2.4 语境、对象和角色 98
7.2.5 组合片段 99
7.2.6 时间约束 106
7.3 通信图 107
7.4 常用建模技术 108
7.4.1 按时间顺序对控制流建模 108
7.4.2 按组织结构对控制流建模 110
7.4.3 建模元素总结 111
7.4.4 正向工程和逆向工程 112
7.5 小结 112
习题 112
第8章 活动图模型 114
8.1 概述 114
8.2 基本概念 114
8.2.1 活动 114
8.2.2 动作 116
8.2.3 活动节点 118
8.2.4 控制流 121
8.2.5 对象流 121
8.2.6 泳道 122
8.3 建模技术 123
8.3.1 建模系统的业务流程 123
8.3.2 建模复杂的操作 124
8.4 小结 127
习题 128
第9章 接口、类型和角色 129
9.1 接口 129
9.1.1 定义 130
9.1.2 操作 130
9.1.3 接口的关系 131
9.2 类型和角色 133
9.3 常用建模技术 133
9.3.1 建模系统的接口 133
9.3.2 建模静态类型和动态类型 134
9.4 小结 135
习题 135
第10章 包模型 136
10.1 主要概念 136
10.1.1 模型包 136
10.1.2 名字 137
10.1.3 可见性 137
10.1.4 包之间的关系 138
10.1.5 包图 140
10.2 常用建模技术 141
10.2.1 建模成组的元素 141
10.2.2 建模体系结构视图 142
10.3 小结 143
习题 143
第11章 构件模型 144
11.1 主要概念 144
11.1.1 构件 144
11.1.2 接口 147
11.1.3 依赖关系 147
11.1.4 构件图分类 151
11.2 常用建模技术 152
11.2.1 建模可执行程序 152
11.2.2 建模源代码 152
11.2.3 建模API 153
11.3 小结 154
习题 154
第12章 部署模型 155
12.1 概述 155
12.1.1 概念 155
12.1.2 节点 156
12.1.3 关系 157
12.2 常用建模技术 158
12.2.1 建模处理器和设备 158
12.2.2 建模制品的分布 158
12.3 小结 159
习题 160
第13章 UML的扩展语言 161
13.1 概述 161
13.2 系统建模语言SysML 161
13.2.1 SysML的语义 161
13.2.2 SysML的图形表示 162
13.2.3 SysML的主要特点及应用领域 166
13.3 实时与嵌入式系统的建模与分析语言MARTE 167
13.3.1 MARTE与UML的关系 167
13.3.2 MARTE的组成部分 167
13.3.3 MARTE对时间与非功能属性的建模 168
13.4 小结 170
第14章 网上选课系统 171
14.1 问题描述 171
14.2 用例建模 171
14.2.1 登录系统用例描述 173
14.2.2 查询课程用例描述 173
14.2.3 选择课程用例描述 173
14.2.4 查询学生信息用例描述 174
14.2.5 删除学生信息用例描述 174
14.2.6 添加课程用例描述 175
14.3 静态建模 175
14.4 动态建模 176
14.4.1 创建交互图 176
14.4.2 创建状态图 185
14.4.3 创建活动图 185
14.5 系统的构件图 188
14.6 系统的部署图 190
第15章 ATM系统 191
15.1 问题描述 191
15.2 用例建模 191
15.3 静态建模 195
15.4 动态建模 196
15.4.1 创建顺序图 196
15.4.2 创建状态图 198
15.5 系统的构件图 201
15.6 系统的部署图 201
第16章 在线购物系统 202
16.1 问题描述 202
16.2 用例建模 202
16.2.1 浏览目录用例描述 203
16.2.2 下单请求用例描述 204
16.2.3 处理配送订单用例描述 205
16.2.4 确认配送和给客户开账单用例描述 205
16.3 静态结构建模 206
16.4 动态行为建模 206
16.4.1 创建通信图 207
16.4.2 创建活动图 212
16.5 系统的构件图 216
16.6 系统的部署图 216
参考文献 219