第Ⅰ部分 UML和UML五步法:都是关于交流的 3
第1章 UML简介:面向对象的分析和设计(OOAD) 3
1.1 对象 3
1.2 分析 5
1.3 设计 5
1.4 模型 6
1.5 UML 8
1.5.1 UML的统一 8
1.5.2 与UML相混淆的概念 9
1.5.3 UML图 10
1.6 UML的作用 17
1.7 总结 18
1.8 练习题答案 18
2.1.1 过程中的问题 20
2.1 使用一个过程 20
第2章 UML五步法:轻量级OOAD 20
2.1.2 回答:UML五步法 21
2.1.3 UML五步法概述 22
2.2 自己实践UML 22
2.2.1 寻找问题 23
2.2.2 从朋友处获得帮助 23
2.3 第1步:定义 24
2.3.1 UML表示法 24
2.3.2 第1步的具体过程 29
2.4 第2步:细化 32
2.4.1 UML表示法 32
2.4.2 第2步的具体过程 37
2.5 第3步:分配 39
2.5.1 UML表示法:泳道 39
2.5.2 第3步的具体过程 46
2.6 第4步:设计 49
2.6.1 UML表示法 49
2.6.2 组件 49
2.6.3 接口 50
2.6.4 实现 50
2.6.5 依赖关系 50
2.6.6 组件图 50
2.6.7 第4步的具体过程 51
2.7 第5步:重复 58
2.7.1 UML表示法 59
2.7.2 第5步的具体过程 61
2.8 第5步(a):再次重复 74
2.9 第5步(b):再次重复? 77
2.10.1 UML表示法 79
2.10 第5步(c):重复(反过来) 79
2.10.2 部署图 80
2.10.3 设计部署:总结 81
2.11 总结 81
第3章:实用指南:起作用的图 83
3.1 做有用的工作 83
3.1.1 目标 83
3.1.2 问题 84
3.1.3 听众 84
3.1.4 .NET视角 84
3.1.5 使用工具 84
3.2 模型规则 84
3.3 “合法的”并不一定是“漂亮的” 85
3.4 MTB规则 86
3.5 7±2规则 88
3.6 简历规则 89
3.7 “您只是没有理解”从来不是一个借口 90
3.8 每个图表达一个故事 91
3.9 公路地图规则 92
3.10 使用原型定义您自己的UML 94
3.11 刚刚好的建模:分析,而不是瘫痪(paralysis) 95
3.12 总结 98
第4章 .NET的UML视图 100
4.1 .NET基础 100
4.1.1 命名空间 100
4.1.2 类 101
4.1.3 结构体 101
4.1.5 枚举 102
4.1.6 事件和委托 102
4.1.4 接口 102
4.1.7 异常 103
4.1.8 程序集 103
4.1.9 System.Object 104
4.2 常见的.NET应用程序 105
4.2.1 控制台应用程序 105
4.2.2 WinForms应用程序 105
4.2.3 WebForms应用程序 106
4.2.4 Web服务 106
4.3 总结 107
第Ⅱ部分 案例分析:应用于.NET解决方案的UML 111
第5章 需求:我门的麻烦从这儿开始 111
5.1 收集需求 111
5.2 需求分类 113
5.3 确定需求之间的依赖 115
5.5 评审需求 116
5.4 绘图需求 116
5.6 需求:.NET视角 117
5.7 总结 117
第6章 第1步:定义需求 118
6.1 犬舍管理系统 118
6.1.1 您所知道的一切未必正确 118
6.1.2 提醒一句话:提前工作 118
6.2 确定和组织角色 119
6.2.1 KMS角色原型(Stereotype) 121
6.2.2 角色分层模式 121
6.3 确定和组织域对象 129
6.3.1 KMS域对象原型 131
6.3.2 域对象分层模式(The Domain Object Hierarchy Pattern) 131
6.4 为每个角色确定和编制用例 141
6.5 评审域对象以确保所有必要的用例 157
6.6 管理人员对需求的观点 159
6.6.1 安置职员 160
6.6.2 编制计划 163
6.6.3 跟踪 166
6.6.4 报告 167
6.6.5 修正 167
6.6.6 风险管理 167
6.7 测试人员对需求的观点 168
6.8 文档人员对需求的观点 168
6.9 总结 168
第7章 第2步:细化需求 169
7.1 确定每个用例的场景并制图 169
7.2 管理人员对细化需求的观点 175
7.2.1 安置职员 176
7.2.2 编制计划 176
7.2.6 风险管理 177
7.2.5 修正 177
7.3 测试人员对细化需求的观点 177
7.2.3 跟踪 177
7.2.4 报告 177
7.4 文档人员对细化需求的观点 178
7.5 总结 179
第8章 第3步:将需求分配到组件和接口 180
8.1 从需求模型进入体系结构模型 180
8.2 向活动图添加泳道 182
8.2.1 定义承包人时间表(Define Contractor Schedule) 182
8.2.2 检查承包人作业列表(Review Contractor Task List) 185
8.2.3 请求口令(Request Password) 186
8.2.4 查看PetCam(View PetCam) 187
8.3 管理人员对泳道和接口的观点 190
8.3.1 安置职员 190
8.3.2 编制计划 190
8.5 文档人员对泳道和界面的观点 191
8.4 测试人员对泳道和界面的观点 191
8.6 总结 191
8.3.3 跟踪 191
8.3.6 风险管理 191
8.3.5 修正 191
8.3.4 报告 191
第9章 第4步:设计体系结构 192
9.1 我所指的“体系结构”是什么意思? 192
9.2 搜集和整理接口 193
9.2.1 宠物接口 194
9.2.2 承包人接口 195
9.2.3 设施接口 200
9.2.4 视频接口 200
9.2.5 基础设施接口 201
9.2.6 安全接口 201
9.3 搜集和整理用户界面 203
9.4 为组件分配接口和用户界面 204
9.4.1 为UI组件分配用户界面 205
9.4.2 为功能组件分配接口 206
9.4.3 添加用户特有的组件 207
9.4.4 添加遗漏的东西 208
9.5 从活动图确定依赖关系 209
9.6 组织体系结构 210
9.6.1 体系结构模式 212
9.6.2 选择KMS体系结构 216
9.6.3 环境图(Context Diagram) 217
9.7 管理人员对体系结构的观点 218
9.7.1 安置职员 218
9.7.2 编制计划 218
9.7.3 跟踪 218
9.8 测试人员对体系结构的观点 219
9.9 文档人员对体系结构的观点 219
9.7.5 修正 219
9.7.6 风险管理 219
9.7.4 报告 219
9.10 总结 220
第10章 第5步:重复设计组件 221
10.1 设计UI组件 221
10.1.1 为该组件创建一个新的设计模型 221
10.1.2 为该组件创建UI原型 222
10.1.3 定义UI需求 223
10.1.4 细化UI需求 225
10.1.5 分配UI职责 233
10.1.6 设计UI结构 238
10.2 设计服务组件 241
10.2.1 为该组件创建一个新的设计模型 241
10.2.2 细化服务需求 241
10.2.3 分配服务职责 243
10.2.4 设计服务结构 245
10.3 一个可供选择的方法:使用VS.NET和RATIONAL XDE 249
10.3.1 运用VS.NET和XDE设计ContractorWeb 250
10.3.2 运用VS.NET和XDE设计ContractorSystem 253
10.4 管理人员对组件设计的观点 257
10.4.1 安置职员 257
10.4.2 编制计划 259
10.4.3 跟踪 259
10.4.4 报告 259
10.4.5 修正 259
10.4.6 风险管理 259
10.5 测试人员对组件设计的观点 259
10.6 文档人员对组件设计的观点 260
10.7 总结 260
11.1 将组件分配到各节点 262
第11章 从外部设计部署 262
11.1.1 记账系统 263
11.1.2 主管系统 263
11.1.3 接收系统 263
11.1.4 Web服务器 263
11.1.5 KMS服务器 263
11.1.6 视频服务器 263
11.1.7 数据库服务器 263
11.2 描述节点 263
11.3 设计逻辑部署 264
11.4 设计物理部署 267
11.5 描述关联 267
11.6 管理人员对部署的观点 268
11.6.1 安置职员 268
11.6.2 编制计划 268
11.6.3 风险管理 269
11.7 测试人员对部署的观点 270
11.8 文档人员对部署的观点 270
11.9 总结 270
第Ⅲ部分 隐藏在代码后面的内容 275
第12章 开发过程的UML模型 275
12.1 瀑布模型的UML模型 276
12.2 螺旋过程的UML模型 280
12.3 统一过程的UML模型 282
12.3.1 4个关键特征 282
12.3.2 核心工作流程 282
12.3.3 统一过程阶段 284
12.3.4 需求工作流程 284
12.3.5 分析工作流程 285
12.3.6 设计工作流程 286
12.3.7 实现工作流程 287
1 2.3.8 测试工作流程 288
12.3.9 定制统一过程 289
12.4 UML五步法的UML模型 290
12.5 极限编程的UML模型 291
12.6 总结 295
第13章 所有内容都是关于交流的 296
13.1 UML的其余内容 296
13.1.1 顺序图 296
13.1.2 协作图 298
13.1.3 状态图 300
13.2 在开始的地方结束 301
第Ⅳ部分 附录 307
附录A 犬舍管理系统的规范 307
附录B 精选的UML工具列表 319
附录C 参考书目 320
附录D 网络资源目录 324