MDA与可执行UML

MDA与可执行UML
作 者: 拉斯特瑞克 赵建华 赵建华
出版社: 机械工业出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: UML
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  Chris Raistrick Kennedy Carter有限公司的项目工程管理服务主管。自1989年起,Chris主要致力于将面向对象方法应用于具有战略重要性的系统的开发中。他为电信、汽车、分布式控制、嵌入式系统、卫生保健等部门的客户提供咨询服务。Chris有长达5年的将UML成功应用于许多项目的实践经验。他在可执行建模、组件集成和代码生成技术領域发表过多篇具有开创性的论文,并曾在所有关于UML、OMG和嵌入式系统的主流会议上作过技术报告。

内容简介

本书以独特的视角讨论了软件开发中的一项革命性技术,即使得模型规约可以被完全、高效地转换成为代码的技术。读者将学会如何使用影响广泛的软件建模语言UML,基于OMG的模型驱动的体系结构来建立强壮的软件规约。作者还描述了把可执行UML(xUML)模型转换成任意的平台相关实现时所需要的步骤。这个方法的好处不仅能减少或者消除编码阶段,它还保证了平台无关性,使模型免于过时(程序设计语言可能改变,但是模型不会),并且,允许通过在一个支持测试-排错的xUML环境中执行模型而对模型进行完全的验证。本书的作者们都是书中描述的技术和过程的富有经验的实践者。他们曾经在各种行业中参与了这些实践,这些行业包括国防、航天、汽车、电信、政府、医疗保健、保险、过程控制等。他们见证了面向对象、可执行建模和模型驱动的体系结构的各种各样的能力。他们曾经和客户一起把可执行建模和代码生成技术应用到各种系统中去。从多年的第一手经验中他们认识到,可执行建模和代码生成非常有用。他们也了解如何充分使用这些技术,以及需要注意的问题。本书正是用这些实践经验描绘了技术细节。对于那些正在思考大中型项目软件开发技术未来发展方向的人,本书是一个非常好的参考。 第1章引论11.1为什么需要读这本书11.2从本书将会学到什么11.3我们为什么写关于MDA和UML的书31.4什么是模型驱动体系结构51.5OMG简介71.6软件方法的历史,通往MDA之路71.7什么是可执行UML(xUML)101.8本书结构131.9怎样阅读本书15第2章可执行模型驱动体系结构172.1概述172.2MDA背景—软件工程和过程172.3模型驱动体系结构192.4可执行UML222.5过程改进的需要222.6使用可执行模型的MDA方法的原则232.7模型映射352.8MDA过程总结362.9详述域372.10集成PIM382.11建立PIM392.12验证PIM422.13详述系统构建过程432.14结论44第3章MDA在典型项目中的应用453.1概述453.2初始阶段463.3营造阶段503.4构建阶段663.5移交阶段673.6需求变更的影响683.7变更对设计决策的影响683.8MDA和其他生命周期过程68第4章用例建模704.1用例介绍704.2目标704.3识别参与者和用例704.4用例图714.5建立用例文档724.6管理大的或者复杂的用例模型744.7用例建模的有效使用804.8...

图书目录

第1章 引论 1

1.1 为什么需要读这本书 1

1.2 从本书将会学到什么 1

1.3 我们为什么写关于MDA和UML的书 3

1.4 什么是模型驱动体系结构 5

1.5 OMG简介 7

1.6 软件方法的历史,通往MDA之路 7

1.7 什么是可执行UML(xUML) 10

1.8 本书结构 13

1.9 怎样阅读本书 15

第2章 可执行模型驱动体系结构 17

2.1 概述 17

2.2 MDA背景—软件工程和过程 17

2.3 模型驱动体系结构 19

2.4 可执行UML 22

2.5 过程改进的需要 22

2.6 使用可执行模型的MDA方法的原则 23

2.7 模型映射 35

2.8 MDA过程总结 36

2.9 详述域 37

2.10 集成PIM 38

2.11 建立PIM 39

2.12 验证PIM 42

2.13 详述系统构建过程 43

2.14 结论 44

第3章 MDA在典型项目中的应用 45

3.1 概述 45

3.2 初始阶段 46

3.3 营造阶段 50

3.4 构建阶段 66

3.5 移交阶段 67

3.6 需求变更的影响 68

3.7 变更对设计决策的影响 68

3.8 MDA和其他生命周期过程 68

第4章 用例建模 70

4.1 用例介绍 70

4.2 目标 70

4.3 识别参与者和用例 70

4.4 用例图 71

4.5 建立用例文档 72

4.6 管理大的或者复杂的用例模型 74

4.7 用例建模的有效使用 80

4.8 具体和抽象用例 80

4.9 用例层次 80

4.10 详述性能 81

4.11 获取其他类型的需求 82

4.12 结论 83

第5章 使用域进行平台无关建模 84

5.1 概述 84

5.2 系统分解的可选策略 84

5.3 域图 87

5.4 域的类型 88

5.5 组织域图 91

5.6 寻找域的技术 92

5.7 MDA过程:总结 97

5.8 如何进行坏域的分解 99

5.9 结论 100

第6章 对域中的类建模 101

6.1 概述 101

6.2 类图概览 101

6.3 类图的生命周期 102

6.4 类 103

6.5 属性 104

6.6 类的图形表示 105

6.7 类的表格表示 105

6.8 马铃薯图 106

6.9 关联 106

6.10 对象标识 121

6.11 指引属性 122

6.12 冗余属性 123

6.13 规范化 123

6.14 静态和动态类 125

6.15 改善模型效率 125

6.16 属性可见性 125

6.17 对象闪电战 126

6.18 不成熟划分的危险 131

6.19 结论 132

第7章 类的行为和交互 133

7.1 状态无关行为和状态相关行为 133

7.2 操作与状态 134

7.3 对象和类的交互 136

7.4 类协作模型上的域接口 139

7.5 动态建模过程 141

7.6 获取和表达状态相关行为和状态无关行为 145

第8章 操作建模 146

8.1 操作 146

8.2 类操作和对象操作 147

8.3 域操作 149

8.4 桥操作 150

8.5 操作属于哪里 150

8.6 多态操作 150

8.7 操作的域外部可见性 151

8.8 总结 152

第9章 动态建模 153

9.1 概述 153

9.2 定义 153

9.3 状态图 154

9.4 状态转换表 159

9.5 非存在状态 162

9.6 执行语义 162

9.7 控制状态机的复杂度 167

9.8 如何建立不良状态机 169

9.9 UML中其他形式的状态建模 170

9.10 结论 170

第10章 动作规约 171

10.1 我们在什么地方 171

10.2 动作规约语言ASL 171

10.3 ASL的关键特征 174

10.4 一个ASL例子 178

10.5 ASL和平台无关性 178

10.6 为UML而设计的动作语言的使用以及好处 182

10.7 动作语言的更多好处 194

10.8 好的ASL实践指南 197

10.9 其他动作语言 199

10.10 如何建立坏模型 199

10.11 结论 200

第11章 用于建模的模式 201

11.1 概述 201

11.2 规格模式 203

11.3 特性值模式 204

11.4 关联时间帧模式 206

11.5 多值关联模式 208

11.6 兼容性模式 210

11.7 多重分类 214

11.8 动态分类 216

11.9 排序项 218

11.10 资源请求者模式 219

11.11 分配者模式 221

11.12 层次结构模式 222

11.13 实例删除模式 223

11.14 实例创建模式 225

11.15 无序操作 225

11.16 日志模式 228

11.17 设备控制模式 231

11.18 反模式 232

11.19 结论 235

第12章 域的集成 236

12.1 域的接口 236

12.2 契约类型 236

12.3 所需服务 238

12.4 可用服务 240

12.5 简单桥 241

12.6 高级桥 249

12.7 怎样管理域集成—构建集 259

12.8 结论 261

第13章 系统生成 263

13.1 概述 263

13.2 系统实现的传统方法 263

13.3 转换驱动开发 267

13.4 设计流程 272

13.5 对实例化的xUML2模型的转换—设计 274

13.6 代码生成器的生成 283

13.7 测试体系结构 283

13.8 使体系结构多样化—标记 285

13.9 体系结构优化 287

13.10 设计模型的角色 289

13.11 转换方法的开发生命周期 290

13.12 定义体系结构—工具支持 292

13.13 结论 292

第14章 实例研究 294

14.1 概述 294

14.2 系统需求概要 294

14.3 用例 295

14.4 系统中的域 296

14.5 模型的特性 300

14.6 构建集 303

14.7 察看实例的模型 304

14.8 执行实例模型 304

光盘安装向导 307

术语表 308

缩写表 311

索引 313