面向对象项目的解决方案
作者 : Grady Booch
译者 : 邢春丽 冯学民 张丽梅
出版日期 : 2003-08-01
ISBN : 7-111-12309-3
定价 : 39.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 285
开本 : 16开
原书名 : Object Solutions: Managing the Object-Oriented Project
原出版社:
属性分类: 教材
包含CD :
绝版 : 已绝版
图书简介

直接而全面地讨论了面向对象技术管理人员和开发人员所面临的最关键问题囊括了Booch先生参与的世界各地几百个面向对象项目的广博经验通过介绍项目的问题、结论、推荐性做法以及经验性法则等,强调了管理面向对象项目的实践方面给出了很多真实项目的例子,说明了开发面向对象系统的各种方法。
  本书出自对象技术大师Grady Booch之手,为运用对象技术来实现项目的各层次开发人员和管理人员提出了非常实用的建议。凭借其在面向对象软件工程领域广博的经验,Booch先生清晰地说明了如何合理地运用面向对象技术的有关原则,使系统开发更及时而且卓有成效。在本书中,Booch提供了很多从成功的项目中提炼出来的推荐性做法和经验性法则,是一部不可多得的著作。
  本书是享誉软件工程领域的科学家Grady Booch的力作之一,主要从产品、过程、人员、规划等诸方面详细介绍面向对象项目管理的经验和原则。书中列举了作者多年来参与数以百计的面向对象项目所积累的成功和失败经验,呈现给读者许多使面向对象项目成功的推荐性做法和经验性法则。
  本书对于初次接触面向对象项目的读者和在面向对象方面经验丰富的读者都是十分宝贵的资源。读者对象包括项目经理、高级程序设计人员以及希望成为有经验的程序开发人员的新手。

图书特色

Grady Booch是Rational公司的首席科学家,因其在对象方法、软件架构等方面的开拓性工作而享誉国际软件开发界。他是多部软件工程和面向对象开发方面畅销著作的作者,曾任《Object Magazine》、《C++Report
的专栏作家。另外,他还和Ivar Jacobson、Jim Rumbaugh一起担任了Addison-Wesley对象技术丛书的主编。

图书前言

最初采用面向对象技术的人们坚信,面向对象是一种好东西,它让人看到了改善软件开发的某些不良方面的希望。这些基本的努力有些成功了,有些失败了,但总的来说,很多这样的项目开始逐步体验到对象的预期收益:更快的上市时间、优良的质量、更大的适应变化的柔性,以及增强的可重用级别。当然,有些新技术只是在短时间内玩玩而已。在业界,确实有一部分人热衷于追逐软件开发的最新时尚,然而,对于有些成熟技术,真实的业务案例表明它们对实际项目提供了可度量和持续增长的效益。  
  在世界范围的众多应用中,面向对象技术体现了它的价值。我已经看到了面向对象的语言和方法成功地运用到各种不同的问题领域,如证券交易、医疗电子、企业范围的信息管理、空中交通管制、半导体生产、交互式视频游戏、电信网络管理以及天文研究等。实际上,可以说,在每个发达国家和每个可以想到的应用领域,都多多少少涉及到了面向对象技术的一些应用。面向对象将无可争议地成为计算技术主流的一部分。
  人们在应用面向对象技术的项目中积累了丰富的经验并且还在不断地增长,这些经验——无论是正面的,还是反面的——对指导新项目都大有裨益。我从所有这样的项目中得到了一个重要的结论:面向对象对软件开发可能有十分积极的影响,但项目成功需要的不止是面向对象的修饰。程序设计者无须因为对象的缘故而彻底放弃自己的开发原则。同样,管理者必须清楚对象带给传统经验的微妙影响。  
  范围
  在我所接触的几乎每个项目中,往往人员并不多,但是受外部影响却很大,一些常见的问题是总要面对的:如何将开发组织迁移到面向对象的开发上来 应该设法继续控制什么制品 如何组织我的职员 如何度量处于开发中的软件的质量 如何协调程序开发人员的创造性需要和管理的稳定性及可预测性需要之间的矛盾 面向对象能帮助我和我的客户更好地表达他们的真正需要吗 这些都是合理的问题,它们的答案均涉及到面向对象技术的核心——与传统的方法相比,面向对象技术有哪些不同和特殊之处。
  本书通过对推荐性做法提出实用的意见和介绍成功项目所使用的经验性法则来回答上述这些问题以及很多其他相关的问题。
  本书不是理论性的书籍,其目的也不是解释面向对象分析、设计和编程的所有疑难问题。我以前的著作Object-Oriented Analysis and Design Applications,可以满足上述目标:它阐述了所有面向对象事物的理论基础,并给出了面向对象分析和设计统一方法的全面参考。
  本书提供了直接和折中处理管理面向对象项目中所有重要问题的方法。我曾经参与过数以百计的项目,本书总结了其中众多的经验。 目的是解释应该做什么,不应该做什么,以及如何对两者加以区分。  
  读者
  本书的读者包括项目管理者和希望将面向对象技术成功地应用于他们的项目而避免可能发生的常见错误的高级程序设计人员。本书也适用于经验丰富的程序开发人员,可以使他们了解将面向对象的代码转化为实际产品时的很多问题,还有助于理解管理者的做法。希望成为有经验的程序开发人员的学生会进一步理解为什么实际的软件开发不都是有条不紊的,以及工业项目如何处理这种无序状况。
  组织
  我是从管理面向对象项目的各种功能方面来组织本书的。因此,读者可以按照顺序从头至尾阅读本书或有选择地阅读某些章节。为了使书中的内容更易于理解,我的编写风格是提出问题,进行讨论得到其结论,接着提供一些推荐性做法和经验性法则。为了在正文中加以区分,我使用了如下的印刷约定:
  这是一个关于项目管理中某些功能范围的问题,通常以一个提问后跟答案的形式表述。
  这是一条推荐性做法,代表解决给定问题的一般可以接受的方法。
  这是一条经验性法则,代表有关某个特定做法的一些可以度量的方法。
  我按顺序为这些做法和规则编了号,以易于在后面引用。
  为了强化某些经验教训,我列举了一些从大量面向对象项目产品中抽取出来的例子,但为了避免侵权,其细节已经进行了改动。采用以下形式来突出显示这些例子:
  这是一个从某个面向对象项目中抽取出来的例子。

译者简介

邢春丽 冯学民 张丽梅:暂无简介

译者序

面向对象思想的出现可以追溯到20世纪60年代末期,但直到20世纪80年代Smalltalk-80语言之后,这一技术才得到迅猛的发展(一段时间里,先后出现了一批面向对象程序设计语言,如Object-C、C++、Eiffel等),面向对象技术经过不断改进和完善而逐渐走向成熟和实用,成为当前软件开发的主流技术之一。
  目前,面向对象技术已经拓展到业界的各个领域,单就软件开发过程来说,已经涉及面向对象分析、面向对象设计、面向对象编程、面向对象测试等方面。
 面向对象技术在国内真正热起来也就是最近几年的事情,但其在应用方面还处于起步阶段,远没有达到广泛应用和熟练运用的程度,与美国、印度等软件工程应用水平较高的国家相比仍存在着很大的差距。
  面向对象技术引入了一种新的认知和表示世界的方法,其开发思想更符合人们的思维习惯。同时,面向对象技术在对问题领域的刻画、软件重用、适应需求变更等方面较传统开发方式有了长足的进步。
  另一方面,在从传统的方式向面向对象技术转型时,软件开发组织必然要对软件开发过程中的一系列辅助行为——管理、测试、维护等进行适时的改进,以适应这种开发技术在软件开发过程中的成功运用。
  单就管理来说,与传统开发方式相配套的一些方式、方法、规则等等将不再适用,取而代之的应该是一整套从实践中摸索出来的一般性的做法和经验性法则。
  本书是软件工程大师Grady Booch先生的力作之一,书中对软件开发过程涉及到的各种要素——产品、过程、项目、人员等——逐一进行了详尽而透彻的阐述。因为本书主要讨论面向对象项目管理方面的问题,所以,本书的内容是从管理者的角度出发,侧重于如何控制项目走向成功,对软件开发过程中应该完成的工作和需要生成的制品进行了详细说明,并将这些过程中应该注意到的各种问题作者多年来一直致力于软件工程方面的研究和实践,亲身经历过不计其数的软件项目(传统方式的和面向对象的)的开发和管理,因此,在编写此书时作者引入了大量的项目管理实例,总结出了成功的面向对象项目的惯常做法和应该遵循的规则,也适时地给出了一些经验性的法则。由于这些内容来自于大师本人的实践(当然有成功也有失败),并通过大师之手进行了甄选和提炼,因此对管理面向对象项目无疑会大有裨益。
  本书的第1、2、5、6章由邢春丽翻译,第3、4章、前言和词汇表由冯学民 翻译,第7章由张丽梅翻译,全书由冯学民统稿、整理和审校。另外,李丽韫、张欣彤、曹明东、余洁、沈黎敏、张俊刚、孙立刚等也参与了本书初期的部分翻译工作。
  本书的翻译经历了一段较长的时间:一方面是因为我们在翻译过程中力求准确和通顺,另一方面则是因为对书中某些大师欲表达的深邃观点和含义无法理解到位(其中有中西方文化差异的原因,但更主要的在于译者对于书中所涉及技术的认知程度),需反复推敲。即便如此,对于作者某些地方所表达的意义还是难免出现理解上的偏差,故敬请广大读者对翻译不妥之处予以批评、指正。  
  真心希望能够把作者关于面向对象管理的一些思路和观点呈现给大家,以期对国内在面向对象技术方面的进步提供一定帮助。
                                       译 者
                                  2003年3月于北京航空航天大学

图书目录

第1章 首要原则
1.1 好的项目陷入困境时
1.2 确定项目的核心
1.3 理解项目文化
1.4 成功的面向对象项目的5个特性
1.5 管理面向对象项目的问题

第2章 产品和过程
2.1 确定理想的对象
2.2 面向对象的构架
2.3 软件项目的制品
2.4 建立合理的设计过程

第3章 宏过程
3.1 一分钟方法
3.2 概念化
3.3 分析
3.4 设计
3.5 演进
3.6 维护

第4章 微过程
4.1 我行,我的程序也没问题
4.2 确定类和对象
4.3 确定类和对象的语义
4.4 确定类和对象的关系
4.5 实现类和对象

第5章 开发组
5.1 敌视程序员的经理以及为他们工作的程序员
5.2 角色和职责
5.3 资源分配
5.4 技术转型
5.5 为开发人员服务的工具

第6章 管理和规划
6.1 我会在下一个项目中学会需要了解的一切
6.2 管理风险
6.3 制定计划和安排进度
6、4 成本核算和人员调配
6.5 监控、度量和测试
6.6 编写文档
6.7 处于危机的项目

第7章 特殊话题
7.1 特殊的程序设计内容
7.2 以用户为中心的系统
7.3 以数据为中心的系统
7.4 以计算为中心的系统
7.5 分布式系统
7.6 遗留系统
7.7 信息管理系统
7.8 实时系统
7.9 框架
结束语
推荐性做法汇总
经验性法则汇总
词汇表
参考资料

教学资源推荐
作者: (美)Ivar Jacobson, Pan-Wei Ng, Paul E. McMahon, Ian Spence, Svante Lidman 著
作者: Georges G. Merx;Ronald J. Norman
作者: 窦万峰
参考读物推荐
作者: [美] 马特·魏斯费尔德(Matt Weisfeld)著
作者: (美)Ken Howard Barry Rogers 著
作者: Edward Kit