您的浏览历史

软件架构:组织原则与模式   [绝版]

  • 定价 : ¥35.00
  • 会员价 : ¥70.00
促销活动

基本信息

内容简介回到顶部↑

本书主要描述软件架构与软件组织之间的相互关系,依次介绍了作者根据多年管理经验和研究总结出的软件架构组织的VRAPS 5项原则——构想(Vision)、节奏(Rhythm)、预见(Anticipation)、协作(Partnering)和简化(Simplification),并通过案例分析、模式和反模式展示了如何运用这一模型。本书的主要读者为软件企业的管理人员、开发人员和软件产品的客户等,也可作为大学计算机及相关专业的本科生、研究生和教师的参考用书。
[table width="100%" border="0" cellpadding="0" cellspacing="0"] [tr] [td] [div align="center"][font color="#CC0000"]IT之源推出国内首个面向对象需求分析课程[/font]
[font color="#0000FF"][a href="http://www.iturls.com/UML/UMLtraining.htm" target="_blank"]“用例与UML需求工程”[/a][/font][/div] [/td] [/tr] [/table]

目录回到顶部↑

第1章 无形的帮助
1.1 本书主题
1.1. 1 软件架构愈显重要
1.1.2 对于某些人"他们是受益人"的消息来得太晚了
1.2 原则揭示本质
1.3 实践组织原则:架构师的新任务
1.3.1 节奏
1.3.2 构想
1.3.3 简化与预见
1.3.4 协作
1.4 VRAPS原则在Web领域中的应用
1.5 小结
第2章 VRAPS参考模型:各组成部分的关系
2.1 概述
2.1.1 模型的重要性
2.1.2 VRAFS模型
2.2 应用环境
2.3 软件架构的组织原则
2.4 概念框架
2.4.1 准则

译者序回到顶部↑

与其他制造业一样,软件的生产也需要一流的生产设备、流水线和高素质的生产者与管理者;而作为高度智慧与知识的结晶,软件的生产又有着其独有的内在规律。
跨入21世纪,蓬勃发展的中国民族软件业正面临着前所未有的机遇和挑战。虽然在龙头企业的带领下中国软件业短短几年内获得了长足的进步,实力大增,但是国内软件产业的整体发展水平与美国、欧洲、印度等国家和地区相比仍明显落后,尤其在生产方式、过程控制、组织管理等领域差距更大。多年以来,与其他成熟行业(如建筑、制造业)相比,国内的软件生产和项目开发一直缺乏有效的工程化管理。
究其原因,译者认为根源在于不健全、不规范的市场环境造成软件产业链的资源分布不均衡。在急功近利、片面追求效益的行业风气影响下,国内软件工程的教育、技术和管理水平严重滞后并与软件生产实践相脱节,导致民族软件业长期在低水平上徘徊。与国外高度发达的软件工业化生产相比,我们的软件生产企业大部分还停留在手工作坊时代。这一瓶颈问题如不能得到根本解决,无疑将严重制约民族软件业健康和持续地发展。
可喜的是,近两年来,许多软件企业和有识之士逐步认识到掌握软件生产规律、提升软件工程管理水平的重要性与迫切性。软件架构(Architecture)和框架(Framework)、CMM、统一软件过程(Unified Software Process)、UML、软件模式(Pattern)与反模式(Antipattern)、构件式开发(Component-Based Development)等先进的软件工程理论和方法开始被接受,其普及与应用正方兴未艾。在落后了国外3-5年甚至更长时间之后,人们终于意识到原来还可以这样做软件。
译者从事面向对象技术和软件工程咨询与管理工作多年,有幸接触了各类规模的软件生产企业,也结识了不少业界朋友。译者在与他们的交流切磋中了解到,中国软件企业面临的主要内部问题是管理问题,而不是技术问题,其关键是当代先进的软件生产技术如何与现代化的企业管理方法有机结合,这已经成为很多人的共识。
Ivar Jacobson大师在其里程碑著作《软件重用》(Software Reuse)[Jacobson 97](中文版由机械工业出版社出版)中指出,影响软件产品或项目成败的主要因素包括架构、过程和组织三个方面。其中,软件架构是决定软件产品内在质量的核心因素,合理的开发过程与高效的组织管理则是软件架构乃至软件产品、产品线成功的重要保障。
本书中所说的软件架构及其组织原则的适用范围既包括单一产品架构,又包括产品家庭或产品线上多个产品共享的架构;这里所谓的"组织"既包括一个项目组也包括一个部门、一个企业甚至有多个合作伙伴的联盟。本书的原则无论对于国内只做工程项目或单一产品的企业,还是拥有一个或多个产品线的组织都具有指导或借鉴意义。
同样以架构为中心,《软件重用》提出了面向重用的软件工程业务(RSEB)的概念,而本书则重点介绍与软件架构互动的组织管理原则,笔墨侧重于技术和人文管理的结合部分。译者认为这是此书的一大特色。
在国内我们一般只听说过程序员、高级程序员、系统分析员的认证考试,但很少听说软件架构师这样一个非常重要却易被人忽视的岗位。本书恰恰是专为软件架构师和软件企业的管理者(如高层经理、技术总监、产品经理、事业部经理、部门经理和项目经理等)写的,适合的读者还包括各类开发人员(实施者)、软件产品的客户等。
本书结构严谨,依次介绍了作者依据多年管理实践和研究经验总结出肋软件架构组织的VRAPS 5项原则(模型),即构想(Vision)、节奏(Rhythm)、预见(Anticipation)、协作(Partnering)与简化(Simplification)。针对每项原则,每个主要章节都讨论了度量准则(Criteria)与指导实施的模式和反模式。
本书的价值在于体现了组织管理原则与软件生产技术的有机结合,用高度概括的VRAPS5项原则(含15个度量准则)、16种模式和17种反模式的形式,把宝贵的软件架构组织管理的真知灼见和经验教训系统地奉献给读者。
软件模式即解决软件领域常见问题的最佳方法,而反模式则是针对特定问题应该避免的错误做法,相应地就有软件分析、设计、实现和管理等各个方面的(反)模式。建立并全面有效地利用好模式知识库,是借鉴国外软件业成熟经验、重用其先进思想方法的一条捷径,可以大大加快提升国内软件企业工程管理和技术水平的过程。不久之前机械工业出版社华章公司曾经推出过一本软件设计模式的经典之作(《设计模式--可复用面向对象软件的基础》,ISBN7-111-07575-7)[Gamma94],而本书很可能是国内第一本正式的有关软件管理模式的译著。
本书实例丰富,尤其详细分析了美国Allaire公司(其ColdFusion开发平台在国内有不少用户)、苹果公司、微软公司、著名的电信制造业巨人加拿大Nortel公司(Northern Telecom)以及美国国防部课题研究的一些案例。本书深入阐述了构想、受益人(Stakeholder)、迭代递增式开发(Iterative Incremental Development)等许多国内读者不甚理解的重要概念。相信通过阅读此书,读者一定会加深对这些先进软件工程思想和方法的认识。
原书的三位作者并非业界权威或名流。国内的管理者对于书中所介绍的某些概念和经验教训也许会有似曾相识的感觉,甚至可能认为这"没什么了不起的,平时我们就是这么做的嘛"。但是,能够把这些实践经验系统完整地记录下来并有序地组织成模式,从而将其升华为管理原则和方法论,这种职业精神和创造是难能可贵的。
相信此书的翻译出版,对促进国内软件从业人员掌握现代化软件生产与管理的内在规律和技术大有裨益,一定能引起广泛的共鸣。
非常感谢机械工业出版社华章公司的编辑们向我推荐了这样一本好书,同时也感谢我的家人、同事和朋友们(特别是郭永林和邵荣)给予我一贯的鼓励与支持,能使我顺利地完成这次翻译创作。
因时间仓促和水平局限,难免存在一些疏漏和差错,恳请各位读者批评指正。
E-mail:zhangxun2001@hotmail.com
张 恂
2002年2月于上海

前言回到顶部↑

软件生产除了开发代码外还往往涉及到产品与相关组织整合的问题,而软件架构对于这两种活动都极其重要,如今更是如此。例如,一个普通的商业事务将穿越软件架构的许多层次,其中利用了各种共享平台,包括因特网、客户机浏览器、Web服务器、业务逻辑构件、安全系统和后台数据库,等等。在该环境中,众多的协作者不仅必须对采用哪些核心接口和标准集,而且还要对如何使用这些标准,达成一致意见。协作者还必须对他们的贡献所增加的价值或获得的回报拥有共识。所有这些共识必须在技术的快速更新、合作重组、业务目标和需求变化以及经常发生合并与收够的情况下保持并继续有效。一旦这些共识不复存在,所开发的产品及其架构将会失败,并给开发人员、客户、管理者和发起人(sponsor)带来不小的麻烦。
本书重点介绍了软件架构与组织的相互关系。软件架构作为一种框架,不仅仅定义并规范了开发和实现产品所必需的技术层面互动,而且还包括团体与个人之间的互动。软件架构长期实现这一角色的能力依赖于组织因素。
长期以来,人们注意到软件架构与创建并使用它们的组织结构之间是相互影响的,并深入研究揭示出它们之间广泛而复杂的关系。现实中的架构与目标结构往往大相径庭,它包含了大量隐藏的软件块、怪异的连接、硬编码的“捷径”、遗漏的部分以及其他非常的东西。同样令人吃惊的是一个组织的文化,包括成员、信念、能力和行为。实践中,架构与组织形成一个敏感、易变的矩阵。处理得当,组织和架构将会产生价值;而一旦处理不好,就有可能腐蚀掉企业的精华。
本书的目的是帮助那些对软件架构的成功拥有重要利益的人们理解、应对软件架构与组织所带来的双重挑战。这些受益人随着软件产品在开发和使用过程中跨越更多的组织边界而逐渐形成一个越来越大的独立团体,这一团体包括管理、开发、实现、维护、获得和使用软件架构的人们,其中的每一个人都能够通过更好地理解软件架构与组织的互动而受益。例如,协作技能可以帮助开发人员缩短找到软件架构或平台发布版本变更信息的时间,从而促进他们通过协商来恢复那些对于继续使用这一架构至关重要的软件特性。如果没有这些技能,软件架构师将很快失去其主顾;后者也不得不维护更多的代码,因而大大减少了可开发产品的数量。
本书的基础是我们在美国著名的大型软件开发机构和许多工作组中所从事的5年以上的研究,以及为各类大、中、小型单位设计产品线和实现软件架构的工作。此外,该书还吸收了我们在其他学科尤其是组织开发(organizational development)中的工作经验。我们的研究成果是一个影响软件架构成功的5项组织原则——构想(Vision)、节奏(Rhythm)、预见(Anticipation)、协作(Partnering)、简化(Simplification),我们称其为VRAPS模型。
VRAPS原则提供了一种模型,可以利用它掌握该做些什么以提高你和公司从依赖于软件架构的产品和投资中获取长期价值的能力。VRAPS模型将帮助读者组织并理解个人的观察,并把它与其他人已经成功运用的实践方法和模式联系起来。读者还可以利用这一模型和原则识别长处与短处,交流思想,促进组织内外跨越角色、边界和层次的行动。
读者可以通过以下几条线索阅读本书:
首先通过第1章了解全书概貌,然后阅读第8章中Allaire公司的案例分析,了解该公司是如何运用VRAPS原则从一家小公司发展成为因特网应用开发工具领先供应商的。从第3—7章读者可以了解每一个VRAPS原则的更多内容。在定义、描述了这些原则之后,这些章节还提供了衡量标准以帮助读者评估在本单位运用这些原则的效果。模式、实例和反模式提供了实用的向导,告诉读者为了从这些原则受益该做些什么,不该做些什么。
从第2章中读者可以全面理解VRAPS模型及其外部联系。第9章介绍了如何在现实环境中运用该模型,提供了9种专门的模板、工具和向导,可以帮助读者评估自己单位的状况并与其他组织进行比较。此外,我们还介绍了在一次商业基准测试中这些模板是如何使用的。
最后,请往下阅读,并欢迎访问我们的Web站点:www.VRAPS.com。
David M.Dikel
David Kane
James R.Wilson

评论交流

共有26人开贴评论  62人参与评论  26人参与打分 查看

10人
 38%
用户平均打分
我要写评论 help如何参与评论和打分
11人
 42%
4人
 15%
1人
 3%
0人
 0%

xbase100

专家级评论员
该会员在china-pub购买过此书
评价等级:  
发表于:2010-1-1 18:22:00
经典好书啊,建议大家看
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

human1

五级评论员
该会员在china-pub购买过此书
评价等级:  
发表于:2009-12-16 15:05:00
非常不错的关于体系结构的书
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

liaolj
一级评论员
评价等级:  
发表于:2007-12-12 16:18:00
我想要这本书.
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

programmesky

一级评论员
该会员在china-pub购买过此书
评价等级:  
发表于:2007-4-1 13:44:00
书是好书,立足点不一样!不去讨论具体的技术问题,实际上在软件工程中,关键的不是技术而是人(所以软件工程至今不是科学,因为不可重复),当一名架构师设计的时候,第一考虑的其实不是最新最好的技术,而是如何保证团队成员的工作有序和可管理。强烈推荐阅读!
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

philong
一级评论员
评价等级:  
发表于:2003-2-18 14:17:00
书写的不好,翻译也差。不流畅。不过有部分内容有些价值,比如框架与组织的关系。谁要,我20块卖了。
easy_sell2002@hotmail.com上海。
回复 ( 2条评论-- 点击查看讨论 )
您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得5个)
我要写评论
查看所有评论交流(共26条)