UML基础、案例与应用(第3版)(修订版)

978-7-115-47137-6
作者: 【美】Joseph Schmuller(施穆勒)
译者: 李虎李强
编辑: 陈冀康

图书目录:

第 一部分 基 础 知 识

第 1章 UML简介 1

1.1 在纷繁复杂中寻求解决问题的办法 2

1.2 UML的诞生 2

1.3 UML的组成 3

1.3.1 类图 3

1.3.2 对象图 4

1.3.3 用例图 5

1.3.4 状态图 5

1.3.5 顺序图 6

1.3.6 活动图 7

1.3.7 协作图 8

1.3.8 构件图 9

1.3.9 部署图 9

1.4 其他特征 10

1.4.1 注释 10

1.4.2 关键字和构造型 10

1.5 UML 2.0中的新图 11

1.5.1 组成结构图 11

1.5.2 交互纵览图 12

1.5.3 计时图 13

1.5.4 有创新也有保留的包图 13

1.6 为什么需要这么多种图 14

1.7 这不仅仅是一系列图 14

1.8 小结 15

1.9 常见问题解答 15

1.10 小测验和习题 16

1.10.1 小测验 16

1.10.2 习题 16

第 2章 理解面向对象 18

2.1 无处不在的对象 18

2.2 一些面向对象的概念 20

2.2.1 抽象 20

2.2.2 继承 21

2.2.3 多态性 22

2.2.4 封装 22

2.2.5 消息传递 23

2.2.6 关联 24

2.2.7 聚集 25

2.3 意义 26

2.4 小结 27

2.5 常见问题解答 27

2.6 小测验和习题 28

第3章 运用面向对象 29

3.1 类的可视化表示 29

3.2 属性 30

3.3 操作 31

3.4 属性、操作和可视化表达 32

3.5 职责和约束 33

3.6 附加注释 34

3.7 类——应该做什么和如何识别

它们 35

3.8 小结 37

3.9 常见问题解答 37

3.10 小测验和习题 37

3.10.1 小测验 37

3.10.2 习题 38

第4章 关系 39

4.1 关联 39

4.1.1 关联上的约束 40

4.1.2 关联类 41

4.1.3 链 41

4.2 多重性 41

4.3 限定关联 43

4.4 自身关联 43

4.5 继承和泛化 44

4.5.1 找出继承关系 45

4.5.2 抽象类 46

4.6 依赖 46

4.7 类图和对象图 47

4.8 小结 48

4.9 常见问题解答 49

4.10 小测验和习题 49

4.10.1 小测验 49

4.10.2 习题 49

第5章 聚集、组成、接口和实现 51

5.1 聚集 51

5.2 组成 52

5.3 组成结构图 52

5.4 接口和实现 53

5.5 接口和端口 56

5.5.1 可见性 56

5.5.2 作用域 57

5.6 小结 57

5.7 常见问题解答 58

5.8 小测验和习题 58

5.8.1 小测验 58

5.8.2 习题 58

第6章 介绍用例 59

6.1 什么是用例 59

6.2 用例的重要性 60

6.3 举例:饮料销售机 60

6.3.1 用例“买饮料” 60

6.3.2 其他用例 61

6.4 包含用例 62

6.5 扩展用例 63

6.6 开始用例分析 64

6.7 小结 64

6.8 常见问题解答 64

6.9 小测验和习题 65

6.9.1 小测验 65

6.9.2 习题 65

第7章 用例图 66

7.1 用例模型的表示法 66

7.1.1 回顾饮料销售机 67

7.1.2 跟踪场景中的步骤 67

7.2 用例之间关系的可视化表示 68

7.2.1 包含 68

7.2.2 扩展 69

7.2.3 泛化 70

7.2.4 分组 71

7.3 用例图在分析过程中的作用 71

7.4 运用用例模型:举例 71

7.4.1 理解领域 71

7.4.2 理解用户 72

7.4.3 理解用例 73

7.4.4 进一步深入 74

7.5 “清查存货” 75

7.5.1 结构元素 75

7.5.2 关系 75

7.5.3 分组 76

7.5.4 注释 76

7.5.5 扩展 76

7.5.6 其他 76

7.6 UML“大图” 76

7.7 小结 77

7.8 常见问题解答 77

7.9 小测验和习题 77

7.9.1 小测验 78

7.9.2 习题 78

第8章 状态图 79

8.1 什么是状态图 79

8.1.1 基本符号集 80

8.1.2 在状态图标中增加细节 80

8.1.3 增加转移的细节:事件和动作 81

8.1.4 增加转移的细节:保护

条件 82

8.2 子状态 82

8.2.1 顺序子状态 82

8.2.2 并发子状态 83

8.3 历史状态 84

8.4 UML 2.0中的新变化 84

8.5 为什么状态图很重要 85

8.6 UML“大图” 85

8.7 小结 86

8.8 常见问题解答 87

8.9 小测验和习题 87

8.9.1 小测验 87

8.9.2 习题 87

第9章 顺序图 88

9.1 什么是顺序图 88

9.1.1 对象 88

9.1.2 消息 88

9.1.3 时间 89

9.2 汽车和车钥匙 90

9.2.1 类图 90

9.2.2 顺序图 91

9.3 饮料销售机 92

9.4 顺序图:一般顺序图 95

9.5 在消息序列中创建对象实例 96

9.6 帧化顺序图:UML 2.0中的

顺序图 98

9.6.1 交互事件 98

9.6.2 交互片段的组合 100

9.7 UML“大图” 101

9.8 小结 102

9.9 常见问题解答 102

9.10 小测验和习题 102

9.10.1 小测验 103

9.10.2 习题 103

第 10章 协作图 104

10.1 什么是协作图 104

10.2 汽车和车钥匙 105

10.3 饮料销售机 108

10.4 创建对象 109

10.5 编号的一点注意事项 109

10.6 其他概念 110

10.6.1 发送给多对象的消息 110

10.6.2 返回结果 110

10.6.3 主动对象 111

10.6.4 同步 111

10.7 UML“大图” 112

10.8 小结 113

10.9 常见问题解答 113

10.10 小测验和习题 113

10.10.1 小测验 113

10.10.2 习题 114

第 11章 活动图 115

11.1 基础:什么是活动图 115

11.1.1 判定 116

11.1.2 并发路径 116

11.1.3 信号 117

11.2 活动图的应用 117

11.3 泳道 118

11.4 混合图 120

11.5 UML 2.0中的新概念 121

11.5.1 一个活动的对象 121

11.5.2 处理异常 122

11.5.3 活动的析构 122

11.5.4 标记时间并结束流程 123

11.5.5 特殊影响 124

11.6 对一个交互的纵览 125

11.7 UML“大图” 128

11.8 小结 128

11.9 常见问题解答 129

11.10 小测验和习题 130

11.10.1 小测验 130

11.10.2 习题 130

第 12章 构件图 131

12.1 什么是构件 131

12.2 构件和接口 131

12.2.1 回顾接口 132

12.2.2 替换和复用 132

12.3 什么是构件图 133

12.3.1 在UML 1.x和UML 2.0中表示一个构件 133

12.3.2 接口表示法 134

12.3.3 黑盒和白盒 135

12.4 应用构件图 135

12.5 UML“大图”中的构件图 139

12.6 小结 140

12.7 常见问题解答 140

12.8 小测验和习题 141

12.8.1 小测验 141

12.8.2 习题 141

第 13章 部署图 142

13.1 什么是部署图 142

13.2 应用部署图 144

13.2.1 家用计算机系统 144

13.2.2 令牌环网 145

13.2.3 ARCnet 146

13.2.4 细缆以太网 146

13.2.5 Ricochet无线网 147

13.3 UML“大图”中的部署图 148

13.4 小结 149

13.5 常见问题解答 149

13.6 小测验和习题 149

13.6.1 小测验 149

13.6.2 习题 149

第 14章 理解包和UML语言基础 150

14.1 包图 150

14.1.1 包的作用 150

14.1.2 包之间的关系 151

14.1.3 合并包 152

14.2 层级 153

14.2.1 一个类比 154

14.2.2 继续 155

14.3 大胆深入 155

14.4 用包表示UML的底层结构 156

14.4.1 Core包 157

14.4.2 Profiles包 158

14.5 回到UML 160

14.5.1 又见4层结构 161

14.5.2 用包表示UML的上层

结构 161

14.6 UML的扩展 163

14.6.1 构造型 163

14.6.2 图形构造型 164

14.6.3 约束 165

14.6.4 标记值 165

14.7 小结 165

14.8 常见问题解答 165

14.9 小测验和习题 166

14.9.1 小测验 166

14.9.2 练习 166

第 15章 在开发过程中运用UML 167

15.1 开发过程方法学:传统的和

现代的 167

15.1.1 传统的开发过程方

法学 167

15.1.2 新的开发过程方法学 168

15.2 开发过程中必须做什么 168

15.3 GRAPPLE 169

15.4 RAD3:GRAPPLE的结构 170

15.4.1 需求收集 171

15.4.2 分析 172

15.4.3 设计 173

15.4.4 开发 174

15.4.5 部署 174

15.5 GRAPPLE总结 175

15.6 小结 175

15.7 常见问题解答 175

15.8 小测验和习题 176

第 二部分 学 习 案 例

第 16章 学习案例介绍 177

16.1 从业务入手 177

16.2 用GRAPPLE开发过程解决

问题 177

16.3 发现业务过程 178

16.3.1 招待一位顾客 178

16.3.2 准备饭菜 185

16.3.3 清理餐桌 186

16.4 吸取的经验教训 186

16.5 小结 187

16.6 常见问题解答 187

16.7 小测验和习题 188

16.7.1 小测验 188

16.7.2 习题 188

第 17章 领域分析 189

17.1 分析业务过程会谈 189

17.2 开发初步类图 190

17.3 对类分组 191

17.4 形成关联 193

17.4.1 Customer参与的关联 193

17.4.2 Server参与的关联 195

17.4.3 Chef参与的关联 197

17.4.4 Busser参与的关联 197

17.4.5 Manager参与的关联 197

17.4.6 其他问题 198

17.5 形成聚集和组成 199

17.6 填充类的信息 200

17.6.1 Customer类 200

17.6.2 Employee类 200

17.6.3 Check类 202

17.7 有关模型的一些问题 202

17.7.1 模型词典 202

17.7.2 模型图的组织 202

17.8 吸取的经验教训 203

17.9 小结 203

17.10 常见问题解答 203

17.11 小测验和习题 203

17.11.1 小测验 204

17.11.2 习题 204

第 18章 收集系统需求 205

18.1 开发系统的映像 207

18.2 收集系统需求 211

18.3 需求联合应用开发会议 211

18.4 结果 214

18.5 下一步该做什么 216

18.6 小结 216

18.7 常见问题解答 216

18.8 小测验和习题 217

18.8.1 小测验 217

18.8.2 习题 217

第 19章 开发用例 218

19.1 分析和描述用例 218

19.2 用例分析 218

19.3 Server包 219

19.3.1 用例“Take an Order” 220

19.3.2 用例“Transmit the Order

to the Kitchen” 220

19.3.3 用例“Change an

Order” 221

19.3.4 用例“Track Order

Status” 221

19.3.5 用例“Notify Chef about

Party Status” 222

19.3.6 用例“Total Up a

Check” 223

19.3.7 用例“Print a Check” 223

19.3.8 用例“Summon

an Assistant” 224

19.3.9 其余的用例 225

19.4 系统中的构件 225

19.5 小结 226

19.6 常见问题解答 226

19.7 小测验和习题 227

19.7.1 小测验 227

19.7.2 习题 227

第 20章 交互 228

20.1 系统中的工作部件 228

20.1.1 Server包 228

20.1.2 Chef包 229

20.1.3 Busser包 229

20.1.4 Assistant Server包 229

20.1.5 Assistant Chef包 229

20.1.6 Bartender Chef包 230

20.1.7 Coat-Check Clerk包 230

20.2 系统中的交互 230

20.2.1 用例“Take an Order” 230

20.2.2 用例“Change an

Order” 232

20.2.3 用例“Track Order

Status” 233

20.3 结论 234

20.4 小结 234

20.5 常见问题解答 235

20.6 小测验和习题 235

20.6.1 小测验 235

20.6.2 习题 236

第 21章 设计外观、感觉和部署 237

21.1 GUI设计的一般原则 237

21.2 用于GUI设计的 JAD

Session 239

21.3 从用例到用户界面 239

21.4 用于GUI设计的UML图 241

21.5 描绘出系统的部署 242

21.5.1 网络 242

21.5.2 节点和系统部署图 243

21.6 下一步 244

21.7 听听项目的发起人怎么说 244

21.7.1 扩展销售区的地理

范围 244

21.7.2 扩展餐馆的地理范围 245

21.8 小结 246

21.9 常见问题解答 246

21.10 小测验和习题 247

21.10.1 小测验 247

21.10.2 习题 247

第 22章 理解设计模式 248

22.1 参数化 248

22.2 设计模式 250

22.3 职责链模式 251

22.3.1 职责链模式:餐馆

领域 252

22.3.2 职责链模式:Web浏览

器事件模型 253

22.4 我们自己的设计模式 254

22.5 使用设计模式的好处 256

22.6 小结 256

22.7 常见问题解答 257

22.8 小测验和习题 257

22.8.1 小测验 257

22.8.2 习题 257

第三部分 高 级 应 用

第 23章 嵌入式系统建模 258

23.1 回到餐馆 258

23.2 发明之母 258

23.3 研制GetAGrip 259

23.4 什么是嵌入式系统 261

23.5 嵌入式系统中的基本概念 261

23.5.1 时间 261

23.5.2 线程 261

23.5.3 中断 262

23.5.4 操作系统 263

23.6 对GetAGrip系统建模 265

23.6.1 类 265

23.6.2 用例 267

23.6.3 交互 267

23.6.4 整体状态变化 270

23.6.5 整体部署 270

23.7 锻炼肌肉 271

23.8 小结 271

23.9 常见问题解答 272

23.10 小测验和习题 272

23.10.1 小测验 272

23.10.2 习题 272

第 24章 描绘UML的未来 273

24.1 在业务领域的扩展 273

24.2 从业务领域的扩展得到的经验 274

24.3 图形用户界面 274

24.3.1 连接到用例 274

24.3.2 GUI建模 275

24.4 专家系统 276

24.4.1 专家系统的构件 276

24.4.2 举例 278

24.4.3 知识库建模 279

24.5 Web应用 281

24.6 就写到这里吧 283

24.7 小结 283

24.8 常见问题解答 283

24.9 小测验和习题 284

24.9.1 小测验 284

24.9.2 习题 284

第四部分 附 录

附录A 小测验答案 285

附录B UML建模工具 294

附录C UML图总结 312

详情

本书教读者循序渐进地、系统地学习UML基础知识和应用技术。和前一版相比,本书内容根据UML 2.0进行了补充和更新,随书光盘包含了建模工具Poseidon的试用版。 全书分为三部分24章。主要是介绍UML语言的基础知识以及面向对象的概念和思想,结合实例详细分析了UML的应用方法与技巧,运用UML来描述设计模式和嵌入式系统,然后讨论UML在其他领域的应用前景。

图书摘要

相关图书

现代软件工程:如何高效构建软件
现代软件工程:如何高效构建软件
持续交付:发布可靠软件的系统方法(英文版)
持续交付:发布可靠软件的系统方法(英文版)
团队软件过程(修订版)
团队软件过程(修订版)
掌握需求过程(第3版)
掌握需求过程(第3版)
术以载道——软件过程改进实践指南
术以载道——软件过程改进实践指南
系统分析师UML项目实战
系统分析师UML项目实战

相关文章

相关课程