首页>参考读物>计算机科学与技术>软件工程及软件方法学

UML 和统一过程:实用面向对象的分析和设计
作者 : Jim Arlow, Ila Neustadt
译者 : 方贵宾 李侃 张罡
出版日期 : 2003-02-01
ISBN : 7-111-11183-4
定价 : 39.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 319
开本 : 16开
原书名 : UML and The Unified Process: Practical Object-Oriented Analysis & Design
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书是使用UML(统一建模语言)进行OO(面向对象)分析和设计的复杂过程的绝佳指南。它描述了OO分析和设计过程如何适应同统一过程(UP)所定义的软件开发过程,并讨论了UML和统一过程中大量可以立即应用的实践技术。随着阅读的深入,读者将学会OO分析和设计技术、UML语法和统一过程的相关内容。同时,本书从OO分析师和设计师的角度提供了UML和统一过程可理解的、精确简洁的概述。本书内容丰富,结构合理,适于计算机及相关专业的学生及从业人员使用。

  本书主要内容:
  ◆章节导航图、详细的图解和页边注解使读者可以快速找到需要的内容。
  ◆每一章的概要总结方便读者进行温习,而全面的索引则方便将本书作为参考书。 一个简单的电子商务系统的完整可用的示例。

  配套网站主要内容:
  指向开源和专有软件的超级链接。http://www.umlandtheunifiedprocess.com

图书特色

Jim Arlow自1990年开始从事编程和面向对象系统的设计工作,在此期间,为Mannesmann和British Airways等公司创建对象模型。在欧洲,他是受人尊重的OO顾问,他编写了在伦敦、法兰克福和苏黎土定期举办的很多培训课程的教程,并讲授这些培训课程。Jim经常在诸如ObjectWorld会议上进行讲演,也是City University和British Computer Society的特邀演讲人。lIa Neustadt为British Airways公司的IT部门工作了18年,在此期间,她经历了IT开发生命期的所有过程。她推出了BA的数据质量方法论,并分析和形式化公司的方法来开发业务和系统构架。

图书前言

本书的目标是帮助你使用UML(统一建模语言,Unified Modeling Language)和统一过程(Unified Process,UP),学习面向对象的分析和设计(Object-Oriented Analysis and Design,OOA&D)过程。
UML 为 OO 建模提供了可视化建模语法,UP提供了软件工程框架,告诉我们如何执行 OO 分析和设计。
我们尽量直接和实用地展示UML和UP。
约定
为了帮助你导航本书,我们在每章都提供了一幅 UML 活动图以便你概览该章。这些图表示阅读活动以及应该阅读的章节顺序。示例显示在图 0-1 中。
本书中大多数图是 UML 图。灰色的注释不是 UML 语法的组成部分。
我们在页边提供了注释以突出重要信息。示例显示在页边。
如何阅读本书
如此多的书,如此少的时间!我们设计本书以便你根据需要以几种不同的方式(除了一章接一章地)阅读它。
快速浏览
如果你想纵览整本书或特定章节,请选择快速浏览。这也是“管理概述”。
选择一章。
阅读章节导航图以便你知道处在何处。
通过看图和阅读页边注释,通览该章。
阅读“我们已经学习的内容”。
回溯到任何你感兴趣的章节并阅读它。
快速浏览是阅读本书快速和高效的方法。你会惊奇地发现你能如此快速地获得知识!注意,如果你开始能够明确地知道你想要什么信息,快速阅读最有效。例如,“我想了解如何进行用例建模”。
图  0-1
参考
如果你需要了解UML的特定部分或者想要学习特定的技术,我们提供了详细的索引和内容目录,应该能够帮助你快速和高效地定位你所需的信息。
复习
如果你想尽可能快速和高效地更新你的UML知识,请阅读每章的“我们已经学习的内容”。当你不了解某些东西的时候,回溯并且阅读相应的章节。
趣味
如果你有几分钟剩余时间,你可能拾起本书,随机地打开它。我们尽力保证每一页都有有趣的东西。即使你已经非常了解UML,你仍可以发现值得学习的新东西。

作者简介

Jim Arlow, Ila Neustadt:暂无简介

译者简介

方贵宾 李侃 张罡:暂无简介

译者序

信息技术革命给人类社会带来了深刻的变化,半导体工业每十八个月提速一倍,互联网越来越廉价可用,软件给人们的生活、学习和工作提供了越来越多、越来越方便的服务。但软件产业本身并没有像人们想像的那样高速发展,软件产品的生产并不像其他工业产品生产那样容易和高效。随着人类几十年来在软件领域实践的逐步深入,出现一些很好的方法论,如 RUP,一些很好的可视化建模语言,如UML,它们集成了软件工业的最好实践,给软件生产和管理带来了前所未有的活力。
UML汲取了近十年来在可视化建模领域出现的所有方法的优点,它使涉及软件开发各阶段的人员能够有效沟通,也使项目的其他利益相关人(如客户)能够可视化地理解他们所期望的系统和行为。关于它的一些历史,作者在文中颇有论述。
UP能够有效地指导和帮助软件公司组织和管理软件生产。根据UP指南,你能够把管理学知识引入到软件生产中,分配恰当的职位和职务(角色),并且赋予他们恰当的职责和义务,确定合适的工作阶段及其有效的成果(制品),设置恰当的里程碑及其应该满足的条件。它使软件开发有章可循。关于UP的历史,作者在文中亦有论述。
UML本身非常复杂,如果研究它的规范,你会发现它几乎包罗万象。现在,市场上也有很多关于UML的书籍,如《UML用户指南》和《UML参考手册》,它们确实是弥足珍贵的技术资料,但如果把UML和UP有效地结合起来讨论面向对象的分析和设计的话,我觉得本书是不可多得的有用书籍。它让我们看到在软件生产的各个阶段,如何能够有的放矢地使用UML和UP进行面向对象的分析和设计。
本书的组织结构颇具特色。每章都提供一幅用UML活动图编写的章节导航图,它使你能够快速地了解每章各节之间的联系以便灵活科学地决定阅读顺序。加上详细的图表和页边注解,使你能够快速地获得你所需要的知识。每章的概括性总结使得你能够很好地回顾该章内容。另外,目录和索引可以帮助你迅速地找到你所需要的知识点。
本书主要由方贵宾翻译,李侃参与了本书第14、15、16、17、18章的翻译工作,张罡参与了本书第19、20、21、22、23章以及附录的翻译工作。鉴于我们的水平有限,加之时间仓促,错误在所难免,敬请读者批评指正。
我们的Email是:umlandup@hotmail.com 。


译 者
2002年8月6日于上海

图书目录

第一部分 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

教学资源推荐
作者: 刘振安 董兰芳 刘燕君
作者: [美]保罗·阿曼(Paul Ammann);杰夫·奥法特(Jeff Offutt) 著
作者: 毋国庆
作者: [美]罗杰·S.普莱斯曼(Roger S. Pressman),[美]布鲁斯·R. 马克西姆(Bruce R. Maxim) 著
参考读物推荐
作者: [加] 克雷格·拉尔曼(Craig Larman)[荷]巴斯·沃代(Bas Vodde) 著
作者: Stephen Withall