UML和统一过程:实用面向对象的分析和设计

UML和统一过程:实用面向对象的分析和设计
作 者: Jim Arlow 诺伊施塔特 方贵宾 李侃 张罡
出版社: 机械工业出版社
丛编项: 华章图书
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: UML
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  Jim Arlow自1990年开始从事编程和面向对象系统的设计工作,在此期间,为Mannesmann和British Airways等公司创建对象模型。在欧洲,他是受人尊重的OO顾问,他编写了在伦敦、法兰克福和苏黎士定期举办的很多培训课程的教程,并讲授这些培训课程。Jim经常在诸如 Object World会议上进行讲演,也是City University 和 British Computer Society的特邀演讲人。

内容简介

本书是使用UML(统一建模语言)进行OO(面向对象)分析和设计的复杂过程的绝佳指南。它描述了OO分析和设计过程如何适应同统一过程(UP)所定义的软件开发过程,并讨论了UML和统一过程中大量可以立即应用的实践技术。随着阅读的深入,读者将学会OO分析和设计技术、UML语法和统一过程的相关内容。同时,本书从OO分析师和设计师的角度提供了UML和统一过程可理解的、精确简洁的概述。本书内容丰富,结构合理,适于计算机及相关专业的学生及从业人员使用。??本书主要内容:??◆章节导航图、详细的图解和页边注解使读者可以快速找到需要的内容。??◆每一章的概要总结方便读者进行温习,而全面的索引则方便将本书作为参考书。一个简单的电子商务系统的完整可用的示例。??配套网站主要内容:??指向开源和专有软件的超级链接。http://www.umlandtheunifiedprocess.com

图书目录

第一部分 UML和UP介绍

第1章 什么是UML 3

1.1 章节导航图 3

1.2 什么是UML 5

1.3 UML的诞生 5

1.4 为什么“统一” 6

1.5 对象和 UML 7

1.6 UML 结构 7

1.7 UML构造块 8

1.7.1 物件 8

1.7.2 关系 8

1.7.3 图 9

1.8 UML 公共机制 9

1.8.1 规格说明 10

1.8.2 修饰 11

1.8.3 公共分类 12

1.8.4 扩展机制 13

1.9 构架 15

1.10 我们已经学习的内容 16

第2章 什么是UP 18

2.1 章节导航图 18

2.2 什么是 UP 20

2.3 UP 的诞生 20

2.4 UP和Rational统一过程 22

2.5 为项目实例化UP 23

2.6 UP 公理 24

2.7 UP 是迭代和增量过程 24

2.7.1 迭代工作流 25

2.7.2 基线和增量 25

2.8 UP 结构 26

2.9 UP 阶段 27

2.9.1 初始—目标 27

2.9.2 初始—焦点 27

2.9.3 初始—里程碑:生命期目标 28

2.9.4 细化—目标 28

2.9.5 细化—焦点 28

2.9.6 细化—里程碑:生命期构架 29

2.9.7 构造—目标 29

2.9.8 构造—焦点 29

2.9.9 构造—里程碑:初始运作功能 30

2.9.10 移交—目标 30

2.9.11 移交—焦点 30

2.9.12 移交—里程碑:产品发布 30

2.10 我们已经学习的内容 31

第二部分 需求

第3章 需求工作流 35

3.1 章节导航图 35

3.2 需求工作流 37

3.3 软件需求—元模型 38

3.4 需求工作流细节 38

3.5 需求的重要性 40

3.6 定义需求 40

3.6.1 系统需求规格说明 41

3.6.2 形式良好的需求 41

3.6.3 功能性和非功能性需求 41

3.6.4 需求抽取—映射是没有范围的 42

3.7 我们已经学习的内容 43

第4章 用例建模 45

4.1 章节导航图 45

4.2 用例建模 47

4.3 UP 活动:找出参与者和用例 47

4.3.1 系统边界 47

4.3.2 什么是参与者 48

4.3.3 什么是用例 49

4.3.4 项目词汇表 50

4.4 UP 活动:详述用例 51

4.4.1 用例规格说明 52

4.4.2 流内分支 54

4.4.3 流内循环:For 55

4.4.4 流内循环:While 56

4.4.5 需求跟踪 57

4.5 复杂用例 58

4.5.1 场景 58

4.5.2 说明主要场景 58

4.5.3 说明次要场景 58

4.5.4 寻找次要场景 58

4.5.5 多少场景 60

4.6 何时适用用例建模 60

4.7 我们已经学习的内容 61

第5章 高级用例建模 63

5.1 章节导航图 63

5.2 参与者泛化 65

5.3 用例泛化 66

5.4 《include》 69

5.5 《extend》 70

5.5.1 扩展用例 72

5.5.2 多重插入片段 73

5.5.3 条件扩展 73

5.6 何时使用高级特征 74

5.7 我们已经学习的内容 74

第三部分 分析

第6章 分析工作流 79

6.1 章节导航图 79

6.2 分析工作流 80

6.2.1 分析制品—元模型 80

6.2.2 分析工作流细节 81

6.3 分析模型—经验法则 82

6.4 我们已经学习的内容 82

第7章 类和对象 84

7.1 章节导航图 84

7.2 什么是对象 86

7.2.1 封装 87

7.2.2 消息传递 88

7.3 UML 对象符号 89

7.4 什么是类 90

7.4.1 类和对象 92

7.4.2 对象实例化 92

7.5 UML类符号 93

7.5.1 名称分栏 93

7.5.2 属性分栏 94

7.5.3 操作分栏 96

7.5.4 类构造型语法 97

7.6 范围 97

7.6.1 实例范围和类范围 97

7.6.2 范围决定访问 98

7.7 对象构造和销毁 98

7.7.1 构造函数—类BankAccount示例 99

7.7.2 析构函数—类BankAccount示例 100

7.8 我们已经学习的内容 100

第8章 寻找分析类 103

8.1 章节导航图 103

8.2 UP 活动:分析用例 105

8.3 什么是分析类 105

8.3.1 分析类剖析 106

8.3.2 如何产生良好的分析类 107

8.3.3 分析类经验法则 108

8.4 寻找类 109

8.4.1 使用名词/动词分析寻找类 109

8.4.2 使用 CRC 分析寻找类 110

8.4.3 寻找其他类来源 111

8.5 创建初步分析模型 112

8.6 我们已经学习的内容 112

第9章 关系 114

9.1 章节导航图 114

9.2 什么是关系 116

9.3 什么是链接 116

9.3.1 对象图 116

9.3.2 路径 117

9.4 什么是关联 118

9.4.1 关联语法 119

9.4.2 多重性 120

9.4.3 导航性 123

9.4.4 关联和属性 124

9.4.5 关联类 125

9.4.6 受限关联 127

9.5 什么是依赖 128

9.5.1 使用依赖 129

9.5.2 抽象依赖 130

9.5.3 授权依赖 131

9.6 我们已经学习的内容 132

第10章 继承和多态 135

10.1 章节导航图 135

10.2 泛化 137

10.3 类继承 138

10.3.1 覆盖 138

10.3.2 抽象操作和类 139

10.3.3 抽象层次 140

10.4 多态 141

10.5 我们已经学习的内容 144

第11章 分析包 145

11.1 章节导航图 145

11.2 什么是包 146

11.3 包依赖 147

11.4 传递性 148

11.5 嵌套包 149

11.6 包泛化 151

11.7 包构造型 151

11.8 构架分析 152

11.8.1 寻找分析包 153

11.8.2 包循环依赖 153

11.9 我们已经学习的内容 154

第12章 用例实现 157

12.1 章节导航图 157

12.2 UP 活动:分析用例 159

12.3 什么是用例实现 159

12.4 用例实现—元素 160

12.5 交互图 160

12.6 协作和交互 161

12.7 协作图 161

12.7.1 描述符形式的协作图 162

12.7.2 实例形式的协作图 163

12.7.3 对象交互 164

12.7.4 多重对象 167

12.7.5 迭代 168

12.7.6 分支和自委托 169

12.7.7 并发性—活动对象 170

12.7.8 对象状态 174

12.8 顺序图 175

12.8.1 迭代 177

12.8.2 分支和自委托 178

12.8.3 并发性—活动对象 178

12.8.4 对象状态和约束 179

12.9 我们已经学习的内容 181

第13章 活动图 184

13.1 章节导航图 184

13.2 什么是活动图 185

13.3 动作状态 185

13.4 子活动状态 186

13.5 迁移 186

13.6 判定 187

13.7 分叉和结合 188

13.8 泳道 189

13.9 对象流 190

13.10 信号 191

13.11 我们已经学习的内容 192

第四部分 设计

第14章 设计工作流 197

14.1 章节导航图 197

14.2 设计工作流 199

14.3 设计制品—元模型 199

14.4 设计工作流细节 202

14.5 制品 202

14.6 我们已经学习的内容 203

第15章 设计类 205

15.1 章节导航图 205

15.2 什么是设计类 207

15.3 设计类剖析 207

15.4 形式良好的设计类 208

15.4.1 完整性和充分性 208

15.4.2 原始性 209

15.4.3 高内聚 209

15.4.4 低耦合 210

15.5 继承 210

15.5.1 聚合与继承 211

15.5.2 多重继承 212

15.5.3 继承与接口实现 213

15.6 模板 213

15.7 嵌套类 215

15.8 我们已经学习的内容 216

第16章 精化分析关系 219

16.1 章节导航图 219

16.2 设计关系 221

16.3 聚合和组合 221

16.4 聚合语义 222

16.5 组合语义 224

16.6 如何精化分析关系 225

16.7 一对一关联 226

16.8 多对一关联 226

16.9 一对多关联 226

16.10 汇集 227

16.10.1 简单 OCL汇集 229

16.10.2 映射表 229

16.11 具体化关系 230

16.11.1 多对多关联 230

16.11.2 双向关联 231

16.11.3 关联类 231

16.12 我们已经学习的内容 232

第17章 接口和子系统 236

17.1 章节导航图 236

17.2 什么是接口 238

17.3 接口和基于组件的开发 239

17.4 寻找接口 242

17.5 接口设计 242

17.6 什么是子系统 243

17.6.1 子系统和接口 244

17.6.2 外观模式 245

17.6.3 物理构架和分层模式 245

17.7 接口的优点和缺点 247

17.8 我们已经学习的内容 247

第18章 用例实现—设计 250

18.1 章节导航图 250

18.2 用例实现—设计 251

18.3 交互图—设计 251

18.4 子系统交互 253

18.5 我们已经学习的内容 254

第19章 基本状态图 255

19.1 章节导航图 255

19.2 基本状态图 256

19.3 状态机与类 256

19.4 基本状态图语法 257

19.5 状态 258

19.6 迁移 259

19.7 事件 259

19.7.1 调用事件 260

19.7.2 信号事件 261

19.7.3 改变事件 261

19.7.4 时间事件 262

19.8 我们已经学习的内容 263

第20章 高级状态图 265

20.1 章节导航图 265

20.2 复合状态 267

20.3 顺序复合状态 267

20.4 并发复合状态 268

20.5 子状态机通信 271

20.5.1 使用属性通信 271

20.5.2 使用同步状态通信 272

20.6 历史 273

20.6.1 浅度历史 273

20.6.2 深度历史 274

20.7 子状态机状态 274

20.8 我们已经学习的内容 276

第五部分 实现

第21章 实现工作流 279

21.1 章节导航图 279

21.2 实现工作流 280

21.3 模型跟踪关系 281

21.4 实现工作流细节 282

21.5 制品 282

21.6 我们已经学习的内容 282

第22章 组件 284

22.1 章节导航图 284

22.2 什么是组件 285

22.3 简单 Java 示例 286

22.4 Enterprise JavaBean 示例 288

22.5 我们已经学习的内容 290

第23章 部署 291

23.1 章节导航图 291

23.2 部署图 292

23.3 部署图语法 292

23.4 Enterprise JavaBean 示例 294

23.5 我们已经学习的内容 296

附录A 用例模型举例 297

附录B XML和用例 302

参考书目 303

索引 305