过程模式(上册)
基本信息
- 原书名: Process Patterns : Building Large-Scale Systems Using Object Technology
- 原出版社: Cambridge University Press
- 作者: Scott W.Ambler [作译者介绍]
- 译者: 王海鹏
- 丛书名: 软件工程经典系列
- 出版社:人民邮电出版社
- ISBN:7115137188
- 上架时间:2005-10-13
- 出版日期:2005 年9月
- 开本:16开
- 页码:427
- 版次:1-1
- 所属分类:
计算机 > 软件工程及软件方法学 > 软件过程
编辑推荐
本书由享有国际声誉的开发者和指导者Scott W.Ambler编写,描述了如何使用对象技术,将过程模式应用于大规模的关键业务应用系统的开发。通过丰富的图表,本书向我们展现了面向对象软件过程,将它分解为几个组成阶段,同时也描述了所有必要的跨项目任务。
内容简介回到顶部↑
本书与《过程模式(下册)》一起,为软件开发经理提供了系统完整的过程模式系统,这两本书描述了如何使用对象技术开发大规模的、关键业务应用程序,解释了这些过程模式如何相互配合。这些过程模式经过了顶级的面向对象技术人员和教师的实践的验证。
本书描述了软件开发生命周期的前半部分,作者通过一组成熟的过程模式,描述了面向对象开发初始阶段和构建阶段的工作。本书提供了许多的图表,有助于读者理解书中的内容。
本书是一本软件开发的优秀书籍,适合于软件开发人员、项目管理人员阅读参考,对相关专业研究人员也有很好的参考价值。
本书描述了软件开发生命周期的前半部分,作者通过一组成熟的过程模式,描述了面向对象开发初始阶段和构建阶段的工作。本书提供了许多的图表,有助于读者理解书中的内容。
本书是一本软件开发的优秀书籍,适合于软件开发人员、项目管理人员阅读参考,对相关专业研究人员也有很好的参考价值。
作译者回到顶部↑
本书提供作译者介绍
Scott Ambler是Amby软件公司的一名高级面向对象顾问,公司位于加拿大安大略的Sharon (http://www.ambysoft.com)。您可以通过电子函件联系他,地址是:scott@ambysoft.com。
Scott Ambler是一个多才多艺的人,他经常变换角色来满足他的客户的需要。例如,他常常作为面向对象指导者、面向对象培训者、面向对象过程专家、面向对象开发者以及Computing Canada(Plesman出版公司)的专栏作家。Scott从1991年开始成为一名面向对象顾问。Scott Ambler已经完成了多本著作:The Object Primer(Sigs Books C.. << 查看详细
Scott Ambler是一个多才多艺的人,他经常变换角色来满足他的客户的需要。例如,他常常作为面向对象指导者、面向对象培训者、面向对象过程专家、面向对象开发者以及Computing Canada(Plesman出版公司)的专栏作家。Scott从1991年开始成为一名面向对象顾问。Scott Ambler已经完成了多本著作:The Object Primer(Sigs Books C.. << 查看详细
目录回到顶部↑
第1章 面向对象软件过程 1
1.1 我对本书读者所做的假定 2
1.2 什么是过程模式 3
1.3 软件开发方式 5
1.3.1 串行式开发 6
1.3.2 迭代式开发 8
1.3.3 增量式开发 11
1.3.4 并行式开发 13
1.3.5 无设计开发 15
1.3.6 开发方式的比较与对照 17
1.4 面向对象软件过程 18
1.4.1 总体串行式 20
1.4.2 局部迭代式 23
1.4.3 提交增量式的发行版 30
1.4.4 用一点胶水把它粘成一个整体 32
1.5 比较oosp与其他软件过程 36
1.5.1 “传统的”迭代式oo开发 36
1.5.2 soma 37
1.5.3 对象化软件过程 37
1.5.4 open过程 39
1.1 我对本书读者所做的假定 2
1.2 什么是过程模式 3
1.3 软件开发方式 5
1.3.1 串行式开发 6
1.3.2 迭代式开发 8
1.3.3 增量式开发 11
1.3.4 并行式开发 13
1.3.5 无设计开发 15
1.3.6 开发方式的比较与对照 17
1.4 面向对象软件过程 18
1.4.1 总体串行式 20
1.4.2 局部迭代式 23
1.4.3 提交增量式的发行版 30
1.4.4 用一点胶水把它粘成一个整体 32
1.5 比较oosp与其他软件过程 36
1.5.1 “传统的”迭代式oo开发 36
1.5.2 soma 37
1.5.3 对象化软件过程 37
1.5.4 open过程 39
前言回到顶部↑
组织已经经历了试点项目阶段,正在使用面向对象技术创建大规划的、关键的业务应用。不幸的是他们发现,成功地应用于小型概念验证项目的过程在真实的项目开发中可伸缩性却不太好。今天的组织需要一组经过验证的技术,用以管理大规模面向对象软件开发项目的复杂性,即需要一组过程模式。一个过程模式描述了一组开发面向对象软件所需的通用的技术、措施和任务。从很多方面来看,过程模式是可复用的构建块,您的组织可以利用它们来剪裁出一个成熟的软件过程。但是平心而论,只有一组过程模式是不够的,您必须有一种描述过程模式的模式语言,构成一个一致的整体,从而形成一个完整的软件过程。这就是《过程模式(上册)》和它的姊妹篇《过程模式(下册)》希望提供的东西。
在这两本书中所介绍的面向对象软件过程(OOSP)是一组过程模式,推动中型和大型的组织。这些组织需要开发软件以支持他们的业务主线。尽管OOSP可以很容易地进行修改,以适应上架销售软件的开发,但我还是向您建议使用统一软件过程(Unified Software Process)。统一嗽件过程是由业界领先的商用开发工具供应商提出的。不存在适合所有项目的“均码”过程,OOSP是开发面向对象软件的几种方法之一。
我把OOSP描述为一组经过实践证明的过程模式,它们不是象牙塔里从没构建过软件的人提出来的理论冥想。OOSP提供了一个框架,关注了以下问题:
●如何成功地使用对象技术提交大规模的应用。
●如何开发真正易于维护和增强的应用。
●如何管理这些项目。
●如何确保您的开发工作是高质量的。
破除业界的错误观念
这两本书积极地向一些面向对象开发的错误观念发起了进攻。首先,相信面向对象的开发是一个纯粹的迭代过程,这种想法是最受质疑的。尽管这对于使用对象技术的小型试点项目来说可能是正确的,对于大规模的关键应用却不是这样。对于这些关键应用来说,面向对象开发过程在宏观上是串行的,而在微观上是迭代的,随着时间的推进提交一些增量版本。在本书写成之时,统一软件实际上正是基于这一概念,尽管他们还是声称那是一个增量的过程。这一点很有趣。好吧,我想,古老的错误观念是很难完全消失的。
其次,这两本书也反对另一种错误观念,即当您使用面向对象技术时就可以少做一些测试工作。事实刚好相反,您需要进行更多的测试。我的一个基本信念是,测试和质量保证应该贯穿整个开发过程,而不只是在开发过程的末尾出现。许多有经验的软件工程师都认同这一点。进一步来说,增量开发的事实是您需要进行更多次的回归测试,而不是一次性的“大爆炸式”开发。
第三,这两本书也反对这种错误观念,即我们在创建一个应用时只需要考虑开发问题。实际情况是,对维护和支持问题的考虑的重要性并不低于考虑开发问题的重要性。OOSP明确地把维护和技术支持作为项目生命周期的一部分,从而把它放在了开发过程所涉及的每一个人的面前。在计算机界有一句名言:一个好的开发者知道,开发要做的事比编程更多:一个了不起的开发者知道,开发要做的事比开发更多。
第四,我希望这两本书能破除这一错误观念,即过程只会得到一些废奴。我的经验告诉我,灵活地应用过程模式将提升开发者的开发效率。我的经验还告诉我,如果不灵活地应用过程模式,如果组织对废纸的追求过度的话,就会降低开发的效率。OOSP模式语言中的过程模式已经经过了实践的检验,证明了它们是可行的,您如何实现它们将决定您有多成功。时时不忘最终目标的组织将能够成功地应用过程模式。最终目的就是开发、维护和支持软件,满足用户群体的需要。那些为了过程而采用过程的组织可能会失败。
面向对象软件开发过程(OOSP)
那么这两本书的范围是什么呢?首先,它们是按照面向对象开发的4个串行的阶段来组织的,这4个阶段是:初始阶段、构建阶段、提交阶段、维护和技术支持阶段。其次,每个阶段又被进一步划分为迭代进行的子阶段。因此这两本书包含以下章节:
过程模式(上册入
● OOSP简介。
●初始阶段。
●确定和验证初始需求。
●确定初始管理文档。
●项目可行性分析。
在这两本书中所介绍的面向对象软件过程(OOSP)是一组过程模式,推动中型和大型的组织。这些组织需要开发软件以支持他们的业务主线。尽管OOSP可以很容易地进行修改,以适应上架销售软件的开发,但我还是向您建议使用统一软件过程(Unified Software Process)。统一嗽件过程是由业界领先的商用开发工具供应商提出的。不存在适合所有项目的“均码”过程,OOSP是开发面向对象软件的几种方法之一。
我把OOSP描述为一组经过实践证明的过程模式,它们不是象牙塔里从没构建过软件的人提出来的理论冥想。OOSP提供了一个框架,关注了以下问题:
●如何成功地使用对象技术提交大规模的应用。
●如何开发真正易于维护和增强的应用。
●如何管理这些项目。
●如何确保您的开发工作是高质量的。
破除业界的错误观念
这两本书积极地向一些面向对象开发的错误观念发起了进攻。首先,相信面向对象的开发是一个纯粹的迭代过程,这种想法是最受质疑的。尽管这对于使用对象技术的小型试点项目来说可能是正确的,对于大规模的关键应用却不是这样。对于这些关键应用来说,面向对象开发过程在宏观上是串行的,而在微观上是迭代的,随着时间的推进提交一些增量版本。在本书写成之时,统一软件实际上正是基于这一概念,尽管他们还是声称那是一个增量的过程。这一点很有趣。好吧,我想,古老的错误观念是很难完全消失的。
其次,这两本书也反对另一种错误观念,即当您使用面向对象技术时就可以少做一些测试工作。事实刚好相反,您需要进行更多的测试。我的一个基本信念是,测试和质量保证应该贯穿整个开发过程,而不只是在开发过程的末尾出现。许多有经验的软件工程师都认同这一点。进一步来说,增量开发的事实是您需要进行更多次的回归测试,而不是一次性的“大爆炸式”开发。
第三,这两本书也反对这种错误观念,即我们在创建一个应用时只需要考虑开发问题。实际情况是,对维护和支持问题的考虑的重要性并不低于考虑开发问题的重要性。OOSP明确地把维护和技术支持作为项目生命周期的一部分,从而把它放在了开发过程所涉及的每一个人的面前。在计算机界有一句名言:一个好的开发者知道,开发要做的事比编程更多:一个了不起的开发者知道,开发要做的事比开发更多。
第四,我希望这两本书能破除这一错误观念,即过程只会得到一些废奴。我的经验告诉我,灵活地应用过程模式将提升开发者的开发效率。我的经验还告诉我,如果不灵活地应用过程模式,如果组织对废纸的追求过度的话,就会降低开发的效率。OOSP模式语言中的过程模式已经经过了实践的检验,证明了它们是可行的,您如何实现它们将决定您有多成功。时时不忘最终目标的组织将能够成功地应用过程模式。最终目的就是开发、维护和支持软件,满足用户群体的需要。那些为了过程而采用过程的组织可能会失败。
面向对象软件开发过程(OOSP)
那么这两本书的范围是什么呢?首先,它们是按照面向对象开发的4个串行的阶段来组织的,这4个阶段是:初始阶段、构建阶段、提交阶段、维护和技术支持阶段。其次,每个阶段又被进一步划分为迭代进行的子阶段。因此这两本书包含以下章节:
过程模式(上册入
● OOSP简介。
●初始阶段。
●确定和验证初始需求。
●确定初始管理文档。
●项目可行性分析。
序言回到顶部↑
5年前,当Java、因特网和电子商务还是刚萌芽的理念,面向对象开发是学院象牙塔和超级程序员的领地。今天面向对象开发已经是提交有竞争力、尖端商业应用的现实解决方案,这些应用支持整个业务运营。
潜心于对象技术的软件工程师已经进入了一个新的时期——他们已经开发了小型的部门试点项目(有些成功了,有些没有),现在他们已经准备好转向开发大型分布式的关键任务项目。然而,从试点项目转入真实世界的工作是完全不一样的,这要求可靠的、可重复的开发过程及更好的项目管理。
因此本书正逢其时。Scott Ambler在《过程模式》一书中汇集了至理名言、实战故事和对想要开发大型面向对象应用的软件工程师及管理人员的实践建议。
在他的书The Object Primer和Building Object Applications that Work中,以及他在《软件开发》杂志上的文章与专栏中,Scott向读者介绍了面向对象开发的基本概念和高级技术。Building Object Applications that Work获得了1997年度《软件开发》杂志Jolt生产率奖。现在,通过《过程模式(上册)》和《过程模式(下册)》,Scott展示了一个完整的过程框架,该框架包含了从人员管理问题到编码、维护的所有一切,这些都是他帮助财富500强企业建造和布署用于关键任务的对象应用程序的经验总结。他的面向对象软件过程(OOSP)考虑了整个软件开发生命周期,并迫使开发者的思维要从被分配任务扩展到最终产品——满足用户需求的、适应变化的业务需求的、可维护的、可伸缩的高质量应用程序。
正如大多数推广过程的作者一样,Scott 提醒读者他的方法不是“银弹”;相反,他用“模式”来表述其理念,软件开发团队可以将这些模式融入特定的项目和团队文化之中。似乎没有团队会遵循本书所建议的每个细节,其实他们真应该试试。这些是对所有涉及大规模面向对象开发项目的人都有意义的,并且是实用、经过测试、明智的解决方案。由于强调了遵循SEI的CMM认证要求,过程模式也能够帮助团队获得更加成熟的开发过程。
本书的篇幅和深度也证明了面向对象开发的复杂度,大型面向对象开发涉及计划、资源和数以年计的工作。正如Scott所写的,大多数软件工程师和经理都低估了这种复杂程度。这些模式非常有助于今天的开发团队管理这种复杂的、工作得聪明并走向更高水平的面向对象应用程序。
Barbara Hanscome
《软件开发》杂志主编
潜心于对象技术的软件工程师已经进入了一个新的时期——他们已经开发了小型的部门试点项目(有些成功了,有些没有),现在他们已经准备好转向开发大型分布式的关键任务项目。然而,从试点项目转入真实世界的工作是完全不一样的,这要求可靠的、可重复的开发过程及更好的项目管理。
因此本书正逢其时。Scott Ambler在《过程模式》一书中汇集了至理名言、实战故事和对想要开发大型面向对象应用的软件工程师及管理人员的实践建议。
在他的书The Object Primer和Building Object Applications that Work中,以及他在《软件开发》杂志上的文章与专栏中,Scott向读者介绍了面向对象开发的基本概念和高级技术。Building Object Applications that Work获得了1997年度《软件开发》杂志Jolt生产率奖。现在,通过《过程模式(上册)》和《过程模式(下册)》,Scott展示了一个完整的过程框架,该框架包含了从人员管理问题到编码、维护的所有一切,这些都是他帮助财富500强企业建造和布署用于关键任务的对象应用程序的经验总结。他的面向对象软件过程(OOSP)考虑了整个软件开发生命周期,并迫使开发者的思维要从被分配任务扩展到最终产品——满足用户需求的、适应变化的业务需求的、可维护的、可伸缩的高质量应用程序。
正如大多数推广过程的作者一样,Scott 提醒读者他的方法不是“银弹”;相反,他用“模式”来表述其理念,软件开发团队可以将这些模式融入特定的项目和团队文化之中。似乎没有团队会遵循本书所建议的每个细节,其实他们真应该试试。这些是对所有涉及大规模面向对象开发项目的人都有意义的,并且是实用、经过测试、明智的解决方案。由于强调了遵循SEI的CMM认证要求,过程模式也能够帮助团队获得更加成熟的开发过程。
本书的篇幅和深度也证明了面向对象开发的复杂度,大型面向对象开发涉及计划、资源和数以年计的工作。正如Scott所写的,大多数软件工程师和经理都低估了这种复杂程度。这些模式非常有助于今天的开发团队管理这种复杂的、工作得聪明并走向更高水平的面向对象应用程序。
Barbara Hanscome
《软件开发》杂志主编

点击看大图




加载中...
