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

设计原本——计算机科学巨匠Frederick P.Brooks的反思(经典珍藏)
作者 : (美)Frederick P. Brooks,Jr. 著
译者 : 高博 朱磊 王海鹏 译
出版日期 : 2013-05-04
ISBN : 978-7-111-41626-5
定价 : 79.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 300
开本 : 16
原书名 : The Design of Design: Essays from A Computer Scientist
原出版社: Pearson Education Asia
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

这是一部在研究和教学中将设计领域探索心得和实践经验切磋琢磨、去伪存真、取其精华的反思之作。本书几乎涵盖了有关设计的所有议题:从设计哲学到设计实践,从设计过程到设计灵感,既强调了设计思想的重要性,又对沟通中的种种细节做了细致入微的描述,以及因地制宜做出妥协的具体准则等。特别深入分析了设计模型背后的工程思想,这无疑将对设计界的研究者和实践者具有方向性的指导意义。
本书运用大量图表和案例说话,深入浅出地表达了复杂艰涩的设计思想,意图刺激设计者和设计项目经理,令其深入思考设计的过程,特别是设计复杂系统的过程。本书适合各类设计者、设计项目经理、设计研究人员等。

图书特色

Frederick P. Brooks, Jr. 
著名计算机科学家、软件工程教父、美国两院院士、图灵奖和IEEE计算机先驱奖得主。他在计算机软硬件的架构与设计和软件工程领域有极其深厚的造诣,并取得了举世瞩目的成就。
他是IBM System/360计算机和Operating System/360操作系统的项目经理和总设计师,还是IBM Stretch和Harvest等沿续至今的计算机体系结构的总架构师。他不仅提出了软件工程领域具有深远影响的“没有银弹”的著名论点,而且著有软件工程领域的传世之作《人月神话》,畅销30余年,为软件行业的发展做出了巨大贡献。
此外,他在建筑设计方面也有十分深入的研究,曾参与北卡罗来纳大学的西特森厅的设计,是设计委员会的正式成员。

图灵奖得主、软件工程之父《人月神话》作者Brooks 经典著作,揭秘软件设计本质!
程序员、项目经理和架构师终极修炼必读!

如果说《人月神话》结束了软件工业的神话时代,粉碎了“银弹”的幻想,从此人类进入了理性统治一切的工程时代,那么《设计原本》则再次唤醒了人类心中沉睡多年的激情,引导整个业界突破理性主义的无形牢笼,鼓励以充满大胆创新为本的设计作为软件工程核心动力的全新思维。可以说,不读《人月神话》,则会在幻想中迷失;而不读《设计原本》,则必将在复杂低效的流程中落伍!《设计原本》开启了软件工程全新的“后理性时代”,完成了从破到立的圆满循环,具有划时代的重大里程碑意义,是每位从事软件行业的程序员、项目经理和架构师都应该反复研读的经典著作。
全书以设计理念为核心,从对设计模型的探讨入手,讨论了有关设计的若干重大问题:设计过程的建立、设计协作的规划、设计范本的固化、设计演化的管控,以及设计师的发现和培养。书中各章条分缕析、层层推进,读来却丝毫没有书匠气,因为作者不仅运用了大量的图表和案例,并且灵活地运用苏格拉底提问式教学法,即提出问题,摆出事实,让读者自己去思考和取舍,而非教条式地给出现成答案。同时,作者的观点也十分鲜明:反对理性模型的僵化条框,拥抱基于实践的随机应变;质疑一切从头做起而不问前人工作的愚昧自大,主张从前人的失败中把握其选择的脉络,站到巨人的肩膀上而取得设计改进。Brooks每提出一个论点,就举出至少一个例子,将理论扎实地建立在实践的基础之上。他的素材丰富多彩:从CPU体系结构到厨房改造装修,从任务控制、指令尺寸到管理委员会人数,万事万物无不可视为设计案例。本书浓缩了设计百科,又把握了设计脉搏,真无愧“设计原本”之名!

译者简介

高  博 资深软件开发工程师、架构师和项目经理,毕业于上海交通大学计算机系,在微软、惠普和盛大等国内外知名企业从事软件开发相关的工作近10年,积累了丰富的经验。对程序设计语言、软件测试方法学、软件架构设计、软件项目管理和云计算等技术方向和领域有浓厚的兴趣,并致力于这些方面的研究和实践。他热衷于分享,近年来翻译了《C++:99个常见编程错误》、《微软的软件测试之道》、《源码中国》、《研究之美》等多本经典著作,在业界颇有影响力。
朱  磊 资深软件开发工程师,毕业于上海交通大学软件工程系,现就职于EMC上海卓越研发中心,担任软件开发工程师。业余时间潜心于技术的钻研,非常喜欢与人分享和交流,担任上海交通大学饮水思源论坛Java版版主已4年有余。曾参与过数本软件开发类著作的翻译。
王海鹏 资深软件开发工程师、架构师、咨询顾问和培训讲师,毕业于华东师范大学,有近20年软件行业从业经验,经验十分丰富。专注于软件架构及其方法学的研究,致力于提高软件开发的效率和品质。翻译经验颇丰,已为国内软件行业从业者们奉上了近20本经典著作,主题涵盖敏捷方法学、需求工程、UML建模和测试等多个领域。

图书前言

我写这本书的目的,意在督促设计师和设计项目经理们去努力思考设计活动的过程(process),特别是复杂系统的设计过程。本书是站在工程师的角度来思考的,不仅注重实用(utility)与效益(effectiveness),也兼顾效率(efficiency)和优雅(elegance)。1
谁应该读这本书
《人月神话》一书的目标读者是“职业程序员、职业经理人,尤其是管理程序员的职业经理人”。在该书中,我讨论了团队在开发软件时,获得概念完整性(conceptual integrity)的必要、困难和方法。
而本书的读者范围则扩大了很多,它融入了我35年以来取得的经验和教训。设计经验让我确信,不同设计领域的设计过程包含一些不变的因素。因此本书的目标读者是:
1)各种类型的设计师。设计如果只走系统化路线,而摒除了直觉,就只能得到亦步亦趋的抄袭品和仿冒品。然而,如果只跟着直觉走,而不讲系统化,则产品只会是瑕疵满盈的空中楼阁。如何将直觉和系统化的方法融合在一起?如何在设计师生涯中成长?如何在一个设计团队中发挥作用?
虽然本书涉及的领域甚广,但我期望的读者却是侧重于计算机软件和硬件的设计师—我自身的定位决定了面对这个读者群体我能够论述的内容最为具体。因此,在这些领域的例子中,有时会涉及技术细节。其他读者完全可以跳过这些细节,不影响理解。
2)设计项目经理。为了避免灾难,项目经理在设计他的设计过程中,就必须结合理论与口口相传的实践经验,而不能仅仅去抄袭某个过度简化的学术模型,也不能拿到一个过程,就生搬硬套,而对理论依据或别人的经验不闻不问。
3)设计研究人员。对设计过程的研究已经日渐成熟。这是好事,但并不是事事都好。发表出来的研究论文关注的主题越来越狭窄,而对于大局问题的讨论则越来越少。或许是出于对精确性,以及对“设计成为一门科学”的期望,想要在科学研究之外发表一些东西变得很困难。我建议设计思想家和研究人员,即使社会科学方法论的帮助不大,也应该重新关注起大局问题。我充分相信,他们也会质疑我的论述是否普遍适用,以及我的观点是否真的成立。我希望将他们的一些研究成果带给实践者,谨以此为他们的学科提供一些帮助。
为什么要再写一本讨论设计的书
创造事物令人愉悦,从中可以获得极大的满足感。J. R. R. Tolkien说,上帝赐予人类次级造物(subcreation)的能力作为礼物,正是为了让我们感受愉悦。2 毕竟,“千山上的牲畜也是我的……我就算饿了,也不用告诉你。”3 设计本身就是快乐的。
无论是思想上还是实践上,设计过程都没有得到透彻的理解。原因并不在于缺少研究。许多设计师对于自己的设计过程都进行过反思。而研究的动机之一在于,无论在哪个设计领域中,最佳实践和一般实践之间,以及一般实践和较差实践之间的水准差距过大。大部分设计成本都耗费在返工,亦即纠正错误上,而且往往会占到设计总成本的1/3。平庸的设计肯定浪费了地球资源、破坏了环境,也拖累了国际竞争力。设计很重要,设计的教育也很重要。
所以,按照推理,设计过程的系统化,应该会提升设计实践的平均水平,而结果也的确如此。德国机械工程设计师,显然是最早采用这一规划的群体。4
随着计算机的问世,以及此后人工智能的出现,设计过程的研究受到了很大鼓舞。最初人们希望,人工智能技术不仅可以承担许多例行设计的苦役,甚至还能够创作出高超的设计,而这本来属于人类去探索的领域。5 这个希望迟迟没有变成现实,我认为也不可能实现。设计研究形成了一门学科,有其专门的学术会议、期刊和许多研究项目。
既然已经有了这么多深入研究和系统著述,为什么还要再写一本书呢?
首先,第二次世界大战以降,设计过程有了长足的演进,但对于所发生的变化,人们却很少讨论。针对复杂的人造产品,团队设计日益成为常态,而团队常常分散在各地。设计师也与产品的运用和实现日益分离——基本上,设计师不再亲自动手构建他们设计的东西。各种类型的设计师的注意力已被计算机模型而非图纸所吸引。正规设计过程的教学方兴未艾,而且经常是雇主主动请求的。
其次,尚有大量的未解之谜。一旦尝试着去教学生怎样做好设计,我们在理解上的差异就会突显出来。Nigel Cross是设计研究的一位先驱,他追根溯源,发现设计过程研究分成四个演化阶段。
1)理想设计过程的规矩(prescription)。
2)设计问题本质的描述(description)。
3)设计活动实际的观察(observation)。
4)设计基础概念的反思(reflection)。6
60年来,我涉足过五个设计领域:计算机体系结构、软件、房屋、图书以及组织。其中,有些我担任总设计师,有些则担任团队中的协作者。7 我对设计过程的兴趣由来已久,1956年我的学位论文题目就是“The analytic design of automatic data processing systems”8。或许,现在是进行深度反思的时候了。
本书属于什么类型
令我震惊的是,这些设计过程多么相似啊!思维过程、人与人的互动、迭代、约束、劳作—统统都有很高的相似度。本书中各个章节所反思的,就是这些设计活动背后看上去不变的设计过程。
计算机和软件体系结构的历史很短,对它们的设计过程的反思也不多,但是建筑设计和机械设计已经有悠久而辉煌的传统。在这些领域中,设计理论和设计理论家比比皆是。
我是一名职业设计师,但我所从事的领域中,对设计的反思差强人意;而在那些有着长期而深入反思的领域,我只是一名业余设计师。所以,我尝试从历史较早的设计理论中汲取一些经验教训,并应用到计算机和软件的设计中去。
我相信,并不存在所谓的“设计科学”,把这个作为目标是误入歧途。只有坚持怀疑论(liberating skepticism),解放了思想,我才可能根据直觉和经验进行探讨—不仅是我的,包括其他设计师的经验。在本书写作过程中,有很多人慷慨地与我分享了他们对于设计的洞见。9
所以我提供的既不是一本教科书,也不是一本讲究自圆其说的专著,而是一些表达观点的主题篇章。虽然我尝试着去补充一些实用的、相关话题的注释和参考文献,但我仍建议读者先从头到尾阅读每个章节而忽略它们,然后再回过头来探索这些话题。因此我将补充内容分离出来,附在每章的末尾。
某些案例研究中,提供了一些具体的例子供章节论述参考。选择这些例子的原因,不在于它们有多重要,而是因为它们所道出的某些经验是我得出结论和观点的基础。我特别喜欢的,是房屋功能设计的那些经验,而任何领域的设计师都可以参考。
我以总设计师的身份完成了三所房屋的功能设计(设计了详细的楼层平面图、照明、电气和管道)。将房屋功能的设计过程与复杂计算机硬件和软件的设计过程进行比较和对比,给我很多启发,使我提出了设计过程的“本质”。所以我把这些用作案例,相当详细地描述了这些过程。
回顾起来,许多案例研究都具有一个引人注目的共同特点:大胆的设计决策总是对优秀结果的产出做出了巨大贡献,而无论它是由谁做出的。这些大胆的决定有时是出于远见卓识,有时是因为孤注一掷。设计师总是在冒险下注,要以额外的投入换取更好的回报。
致谢
本书的标题,借自40多年前Gordon Glegg的一部著作。他是一个富于创新精神的机械设计师、一位翩翩君子,也是大受欢迎的剑桥讲师。1975年,我有幸与他共进午餐,感受到了他对设计的热情,而他的著作标题也完美地点化了我进行的尝试。所以,我心怀感激与尊敬之情,复用了这一标题。10
我感谢Ivan Sutherland对我的鼓励。1997年,他建议我将一套讲义扩充成书。十余年后,他又对书的草稿提出了犀利的批评,这让全书的品质有了大幅进步。在这趟智力之旅中,我真是受益良多。
如果没有北卡罗来纳大学教堂山分校,以及系主任Stephen Weiss和Jan Prins赞助的三个研究项目,本书不可能得以完成。在剑桥大学和伦敦大学学院,我分别受到了Peter Robinson和Mel Slater以及他们系主任和同事的亲切接待。
美国国家科学基金会(National Science Foundation,NSF)的计算机与信息科学工程理事会(Computer and Information Science and Engineering Directorate)的设计科学项目由副理事长Peter A. Freeman发起,该项目为本书的完成和相关网站的准备提供了最有力的资助。有了这笔资助以后,我得以访谈了许多设计师,并在过去几年里主要将心血集中在写作这些文章上。
许多真正的设计师与我分享了他们的洞见,这让我深深地受益。我在书末的致谢名单中列出了受访者和审阅者。有几本书内容丰富,而且影响深远,我把它们列在第28章“推荐读物”中。
我的妻子Nancy是部分创作的共同设计者,还有我的孩子Kenneth P. Brooks、Roger E. Brooks和Barbara B. La Dine,他们一直支持和鼓励着我。Roger对我的手稿进行了彻底的审阅,对每章都提出了几十项改进建议,涵盖从基本概念到标点符号等诸多内容。
感谢来自北卡罗来纳大学的Timothy Quigg、Whitney Vaughan、Darlene Freedman、Audrey Rabelais,以及David Lines给予我的强大行政支持。Peter Gordon是Addison-Wesley的出版合伙人,他给予了我难能可贵的鼓励。Addison-Wesley的全方位服务产品经理Julie Nahil,以及文稿校订编辑Barbara Wood,都展现了无与伦比的专业技能和耐心。
John H. Van Vleck,诺贝尔物理奖获得者,我在哈佛大学工程和应用科学学院Aiken实验室读研究生时,他是院长。Van Vleck非常注重把工程实践建立在更加坚实的科学基础之上。他领导了美国工程教育从设计向应用科学迁移,这种迁移有些矫枉过正,出现了一些反对的声音,设计的教学从彼时至今争议不断。我非常感谢在哈佛遇到的三位老师—Philippe E. Le Corbeiller、Harry R. Mimno,以及我的导师Howard H. Aiken,他们从未丧失对设计及其教学重要性的洞见。
感谢并赞美伟大的造物主,是他仁慈地赐予我们财产、每日所需,以及次级创作的乐趣。
北卡罗来纳州教堂山市
2009年11月
注释和参考文献
1. 本书封面图片的题注源自Smethurst(1967),《The Pictorial History of Salisbury Cathedral》,后面还有一段“是故,除了圣保罗大教堂外,索尔兹伯里大教堂(Salisbury Cathedral)是唯一室内结构由一个人(或一个两人团队)打造的英国大教堂,且为一气呵成之作。”
2. Tolkien(1964),“On Fairy Stories”,见《Tree and Leaf》,54。
3. 圣经《诗篇》,50:10和50:12,新世界译本,做了强调变化。
4. Pahl and Beitz(1984)的1.2.2节中,追溯了这段1928年开始的历史。他们原创的著作Konstructionslehre历经七版,可能是系统化方面最重要的资料, 我将针对设计过程的研究单独提取出来,以示与任意特定领域的设计规则的区别,设计规则可能要早上几千年。
5. 主要的专著是Herbert Simon的《The Sciences of the Artificial》(1969,1981,1996),影响深远。
6. Cross(1983),《Developments in Design Methodology》。
7. 我将自己的设计经验整理成表,作为附加材料放在网站上,见http://www.cs. unc. edu/~brooks/DesignofDesign。
8. Brooks(1956),《The analytic design of automatic data processing systems》哈佛大学博士论文。
9. 这么说来,我并没有对设计方法论者的目标做出什么贡献。如维基百科http://en.wikipedia.org/wiki/Design_methods(2012年9月访问)的内容所示:
困难在于,要把个人的经验、观念体系和看法变换成某种共享的、可理解的,最重要的在于可传播的知识领域。Victor Margolin给出了三个为什么这件事如此困难的理由,其中一个理由是:
个人对于设计论述的如果太过注重于叙述本身的表面形式,其结果只能是个人观点,而非至关重要的、由多数人达成的价值共识。
对此,我只能低头伏法,承认“罪名成立”。
10. Glegg (1969),《The Design of Design》。

上架指导

计算机\软件工程

封底文字

如果说《人月神话》结束了软件工业的神话时代,粉碎了“银弹”的幻想,从此人类进入了理性统治一切的工程时代,那么《设计原本》则再次唤醒了人类心中沉睡多年的激情,引导整个业界突破理性主义的无形牢笼,鼓励以充满大胆创新为本的设计作为软件工程核心动力的全新思维。可以说,不读《人月神话》,则会在幻想中迷失;而不读《设计原本》,则必将在复杂低效的流程中落伍!《设计原本》开启了软件工程全新的“后理性时代”,完成了从破到立的圆满循环,具有划时代的重大里程碑意义,是每位从事软件行业的程序员、项目经理和架构师都应该反复研读的经典著作。
全书以设计理念为核心,从对设计模型的探讨入手,讨论了设计若干重大问题:设计过程的建立、设计协作的规划、设计范本的固化、设计演化的管控,以及设计师的发现和培养。书中各章条分缕析、层层推进,读来却丝毫没有书匠气,因为作者不仅运用了大量的图表和案例,并且灵活地运用苏格拉底提问式教学法,即提出问题,摆出事实,让读者自己去思考和取舍,而非教条式地给出现成答案。同时,作者的观点也十分鲜明:他反对理性模型的僵化框框,拥抱基于实践的随机应变;他质疑一切从头做起而不问前人工作的愚昧自大,主张从前人的失败中把握其选择的脉络,站到巨人的肩膀上而取得设计改进。Brooks每提出一个论点,就举出至少一个例子,将理论扎实地建立在实践的基础之上,他的素材丰富多彩:从CPU体系结构到厨房改造装修,从任务控制、指令尺寸到管理委员会人数,万事万物无不可视为设计案例。本书浓缩了设计百科,又把握了设计脉搏,真无愧“设计原本”之名!

作者简介

(美)Frederick P. Brooks,Jr. 著:暂无简介

译者简介

高博 朱磊 王海鹏 译:暂无简介

译者序

路漫漫其修远兮,吾将上下而求索。
—屈原(战国),《离骚》
设计是人类理性活动的集中体现,但同时又正是设计,融合了人类感性认识所蕴涵的人性光辉。理性与感性、科学与艺术、流程与个性、范例与创新……这一对对看似充满矛盾的实体,却正是设计师们每天需要面对的课题。设计也是任何人类生产活动中位于最开始阶段、且必不可少的核心环节,指导着后续活动的方向和选择,也在很大程度上影响着项目和产品的整体成败。众所周知,良好的设计能够让研发过程事半功倍,而设计阶段的变更也是成本较低的。反过来,如果设计中存在缺陷,到了实现完成以后才发现设计问题,那将往往导致灾难性的后果。可是,现代化的产品高度复杂,设计过程已无可能理想化地“一次成型”,也无可能单兵作战,团队成员甚至可能分散在世界各地。这么一来,那在现实中该如何把握设计的命脉,又怎能在团队协作中凝聚集体智慧的同时避免官僚主义、克服沟通的困难呢?软件工程之父、图灵奖和IEEE先锋奖获得者Frederick P. Brooks Jr.在出版了经典设计作品《人月神话》时隔35年后,又为我们带来了这本关于设计的重量级反思之作《设计原本》,为设计中的若干重要问题揭示了答案。
设计理念(design concept)是作者开篇就提出的,也是全书中一以贯之的灵魂。任何设计若无一个理念在胸,也就谈不上取舍的基本依据。设计理念高度抽象,但同时又体现在所有依据这种理念设计出来的产品中。围绕着设计理念,设计对话才得以展开:是否需要?是否足够?是否经济?是否可变?而设计结果,也正是在这些决策一一落实的过程中,逐渐形成。
作者把笔墨的重心放在了两处:一处是模型的建设,一处是设计师的培养。设计模型的建立,乃是设计本身遵循怎样的规律初生、演化和积淀的探索,正是从该意义上,本书英文版书名“The Design of Design”的原意“设计的设计”得以充分地体现。设计本身是如何设计出来的,思维本身是如何思考成型的?这部分内容至关重要,因为它打破了常见的、几乎是直觉上条件反射的理性模型(rational model),这是具有革命性的洞见,它将设计师从理想王国带入了现实世界。Brooks用大量的实例来指出,设计决不是纯思维的产物,而从一开始就是个解决问题的工具。设计师必须面对现实中的问题,采用设计的手段解决之,并在随后的实现和应用中接受批判和考验,一轮轮地改进原始的设计,使之一方面能够以更普适、简洁、经济的方式解决问题,另一方面也在更高的意义上体现设计理念。也正是从这样的观点出发,Brooks指出在现实世界中各种客观条件和约束都在持续变化,以僵死的理性模型去套用,一定不能成功。只有从一开始就拥抱变化,从设计的源头上引入灵活性的模型,才反而能控制变化,用设计来引导团队发挥协作的力量,向正确的方向推进。
但是,不言而喻,任何设计都是人的创作,作者对于设计师的发掘和培养用心极其良苦。他不仅身体力行地处处展示自己如何学习设计、反思设计、不遗余力地提高设计水准,并且专门用了一个部分来阐述设计师在设计中无可取代的地位,以及应该如何用与传统教育完全不同的教学过程来锻造成功的设计师。Brooks认为,最关键的是要走出课堂,走出理想作业的误区,要走入企业、走入工作室,真正地拿出设计作品、接受用户的批判,并在批判中反省设计决策过程,逐步地成长起来。而在设计师走上工作岗位以后,Brooks更加强调,要放手给予设计师以权力和自由,使他们敢于决策、敢于负责。尤其是对于一流的设计师而言,更应该倾整个企业的资源,为其量身定做管理团队,并阻止他们分心在无关紧要的事务上。只有这样,才能让设计的价值得到最大程度的发挥。Brooks的这些振聋发聩的忠告,实在值得现代企业认真反思和采纳!可以说,设计师是任何想要拿出有创新力、竞争力产品的企业所必须严格挑选并倍加珍惜的最宝贵的资源,他们的一举一动都关乎企业的命运。而只有少部分的企业能够让他们专注于设计事业,并通过强大的支持给予他们足够的行动空间。而也正是这样的企业能够持续输出创新设计,在激烈的市场竞争中找到出路,立于不败之地。
本书采用了大量的图表和案例,细致入微地阐述了设计的方方面面,其中一个重要的特色就是从头到尾地展示若干不同种类的设计:从对象上看,包括了建筑设计、硬件体系结构设计、系统软件设计、图书设计和组织机构设计;从过程上看,包括了例行设计、改造设计和原创设计。Brooks不厌其烦地在所有这些设计描述中都强调了设计理念,并展示了最原汁原味的设计思路。也就是说,他并不是告诉读者一个设计结果,而主要是告诉读者在设计过程中遇到过哪些问题,这些问题有过哪些讨论,形成过哪些中间结果,最终为什么要作出如此的取舍决策,这些决策有哪些优点和不足,是否有过设计决策中的失误,这些失误是如何被纠偏并体现在设计改进中的,等等。可以看出,Brooks是个十分善于使用记录工具,十分重视从历史中学习的人。他的这些案例研究章节不仅是珍贵的学习资源,更是无价的史料。我们每一名设计师都需要从这一点一滴的细节中透射出来的极端认真负责,视设计为生命的工作和生活态度中汲取正能量,并应用到自己的设计实践中去。
本书的翻译工作同样涉及了太多设计,从术语表的统一,到翻译风格的同化,再到字句的斟酌,其中的酸甜苦辣一言难尽。但是,设计的成果毕竟仍然要接受读者的批判和检验。我想在此首先要感谢我的同事、EMC中国工程院的朱磊同志,他与我一起重译了全书的大部分章节。还有王海鹏同志,他参与了很多章节的评审。机械工业出版社华章分社的杨福川和高婧雅编辑为本书的出版付出了极大的心血,他们统读了全稿并提出了几百条修改意见。培生公司的李乐强版权经理也为全书的再版工作提供了大力的支持,没有他们的努力,全书的修订工作就不可能成为现实。承多年好友、SAP美国资深工程师劳佳兄在百忙中抽出宝贵时间为本书悉心打造封面设计,在此特别鸣谢。本书成稿的过程中,VMware中国的濮天晖总监、汤瑞欣总监、林应经理、田大鹏经理,SAP中国的范德成,微软亚洲工程院的王楠,IBM中国的唐文蔚,阿尔卡特中国的彭辉,上海交通大学的沈备军教授、张尧弼教授和梁阿磊教授都曾给予宝贵意见,在此一并致谢。当然,由于本人能力所限,缺点错误仍在所难免,这些应由我本人负责。值得一提的是,家父高学栋博士也通读了全稿,并给予了不少有关文法和表达的中肯意见。我也想借此机会向在工作和生活上给了我莫大支持的父母和家人表达内心最深处的敬意和谢意,希望本书的出版能给你们带来快乐。
2013年3月
于VMware上海办公室

图书目录

译者序
前言
第一部分  设计之模型
第1章  设计的疑问 3
1.1  培根的结论对吗 3
1.2  什么是设计 3
1.3  何为实在?设计理念 5
1.4  对设计过程的思考 7
1.5  设计面面观 8
1.6  注释和参考文献 8
第2章  工程师怎样进行设计思维—理性模型 10
2.1  模型概览 10
2.2  该模型的构思从何而来 11
2.3  理性模型有哪些长处 13
2.4  注释和参考文献 13
第3章  理性模型有哪些缺陷 15
3.1  在初始阶段我们并不真正地知道目标是什么 15
3.2  我们通常不知晓设计树的样子—一边设计一边探索 16
3.3  (设计树上的)节点实际上不是设计决策,而是设计暂定方案 17
3.4  效用函数无法以增量方式求值 17
3.5  必要条件及其权重在持续变化 18
3.6  约束在持续变化 19
3.7  对理性模型的其他批评 21
3.8  尽管存在诸多缺陷和批评,理性模型依然顽固存在 22
3.9  那又如何?我们的设计过程模型真的那么事关紧要吗 23
3.10  注释和参考文献 24
第4章  需求、罪念以及合同 28
4.1  一段恐怖往事 28
4.2  殊为不幸,无独有偶 29
4.3  抵制需求膨胀和蠕变 30
4.4  罪念 31
4.5  合同 32
4.6  一种合同模型 32
4.7  注释和参考文献 33
第5章  有哪些更好的设计过程模型 37
5.1  为什么要有一个占主导地位的模型 37
5.2  共同演化模型 38
5.3  Raymond的集市模型 39
5.4  Boehm的螺旋模型 41
5.5  设计过程模型:第2~5章的讨论小结 41
5.6  注释和参考文献 42
第二部分  协作与远程协作
第6章  协作设计 45
6.1  协作在本质上是好的吗 45
6.2  团队设计是现代标准 46
6.3  协作的成本 48
6.4  挑战在于保持概念完整性 49
6.5  如何在团队设计中获得概念完整性 50
6.6  协作何时有帮助 52
6.7  对设计本身而言,协作何时无用 56
6.8  两人团队很神奇 57
6.9  对于计算机科学家意味着什么 58
6.10  注释和参考文献 59
第7章  远程协作 62
7.1  为什么要远程协作 62
7.2  就地取材—IBM System/360计算机系列的分布式开发(1961~1965) 64
7.3  让远程协作有效 65
7.4  远程协作的技术 66
7.5  注释和参考文献 68
第三部分  设计面面观
第8章  设计中的理性主义与实证主义之争 73
8.1  理性主义与实证主义 73
8.2  软件设计 74
8.3  我是一个根深蒂固的实证主义者 74
8.4  其他设计领域中的理性主义、实证主义与正确性验证 75
8.5  注释和参考文献 76
第9章  用户模型—宁错勿淆 79
9.1  定义明确的用户模型和使用模型 79
9.2  团队设计 79
9.3  如果实际情况难以预料,有什么对策 80
9.4  注释和参考文献 82
第10章  英寸、盎司、比特与美元—预算资源 84
10.1  何谓预算资源 84
10.2  钱不是万能的 84
10.3  同一种资源也会有不同风格,甚至有替代品 85
10.4  预算资源并非一成不变 85
10.5  那我们究竟该怎么办 86
10.6  注释和参考文献 87
第11章  约束是友非敌 90
11.1  约束 90
11.2  归结于一点 91
11.3  设计悖论:通用产品比专用产品更难设计 94
11.4  注释和参考文献 96
第12章  技术设计中的美学与风格 99
12.1  技术设计中的美学 99
12.2  揭开逻辑之美的面纱 100
12.3  技术设计中的风格 102
12.4  何谓风格 103
12.5  风格的特点 105
12.6  若要使风格保持一致,请将它写成文档 105
12.7  如何形成良好的风格 106
12.8  注释和参考文献 107
第13章  设计中的范例 110
13.1  全新的设计是罕见的 110
13.2  范例所扮演的角色 110
13.3  计算机和软件设计中的问题 111
13.4  研究范例的设计原理 112
13.5  应该用什么样的方式来改进基于范例的设计 114
13.6  范例—惰性、创新与自满 116
13.7  注释和参考文献 118
第14章  智者千虑,必有一失 120
14.1  错误 120
14.2  曾经最糟糕的计算机语言 121
14.3  JCL何至于此 123
14.4  经验教训 124
14.5  注释和参考文献 124
第15章  设计的分离 126
15.1  设计与使用和实现的分离 126
15.2  为什么分离 127
15.3  分离的结果 127
15.4  补救措施 127
15.5  注释和参考文献 130
第16章  展现设计的演变轨迹和理由 132
16.1  简介 132
16.2  知识网线性化 133
16.3  我们的设计演变轨迹记录 134
16.4  我们研究房屋设计过程的过程 134
16.5  深入设计过程 135
16.6  决策树与设计树 137
16.7  模块化与紧密集成的设计 138
16.8  Compendium和可选工具 139
16.9  DRed:一个诱人的工具 140
16.10  注释和参考文献 141
第四部分  一套计算机科学家梦寐以求的房屋设计系统
第17章  计算机科学家梦寐以求的房屋设计系统—从头脑到电脑 145
17.1  挑战 145
17.2  愿景 145
17.3  输入机构的愿景:从头脑到电脑 148
17.4  指定动词 148
17.5 指定名词 150
17.6  指定文字 151
17.7  指定状语 151
17.8  指定视点和视图 152
17.9  注释和参考文献 155
第18章  计算机科学家梦寐以求的房屋设计系统—从电脑到头脑 157
18.1  双向通道 157
18.2  视觉显示—多个并列显示的窗口 157
18.3  听觉展示 161
18.4  触觉展示 162
18.5  推而广之 162
18.6  可行性 162
18.7  注释和参考文献 162
第五部分  卓越的设计师
第19章  伟大的设计来自伟大的设计师 167
19.1  伟大的设计与产品过程 167
19.2  产品过程—优点和不足 168
19.3  观点碰撞:过程扼杀创新,但又不可避免,如何是好 171
19.4  注释和参考文献 173
第20章  伟大的设计师从哪里来 175
20.1  我们必须教会他们设计 175
20.2  我们必须为伟大设计而招募人才 176
20.3  我们必须有意识地培养他们 177
20.4  我们必须在管理他们时发挥想象力 179
20.5  我们必须积极地保护他们 180
20.6  把自己培养成一名设计师 181
20.7  注释和参考文献 183
第六部分  设计空间之旅:案例研究
第21章  案例研究:海滨小屋“View/360” 187
21.1  亮点和特性 187
21.2  背景介绍 187
21.3  目标 188
21.4  机会 189
21.5  约束条件 189
21.6  设计决定 190
21.7  考虑正面 191
21.8  小屋的尺寸 192
21.9  设想的开始 193
21.10  在设计之后,构建之前的设计改动 194
21.11  在框架和外墙完成和初次入住之后的设计改动 194
21.12  结果评估(在项目验收37年后) 195
21.13  学到的一般经验 198
第22章  案例研究:增加厢房 200
22.1  亮点和特性 200
22.2  背景介绍 201
22.3  目标 203
22.4  约束条件 204
22.5  非约束条件 204
22.6  事件 204
22.7  设计决定和迭代 205
22.8  结果评估—成功与缺憾 209
22.9  学到的一般经验 210
22.10  注释和参考文献 211
第23章  案例研究:厨房重新建模 213
23.1  亮点和特性 213
23.2  背景介绍 213
23.3  目标 214
23.4  机会 215
23.5  约束条件 215
23.6  关键宽度预算的推理 216
23.7  长度预算的推理 218
23.8  其他设计决定 218
23.9  结果评估 220
23.10  满足的其他迫切需求 220
23.11  在设计中使用图纸、CAD、模型、仿真模型和虚拟环境 220
23.12  学到的一般经验 222
23.13  注释和参考文献 223
第24章  案例研究:System/360体系结构 225
24.1  亮点和特性 225
24.2  项目介绍和相关背景 225
24.3  目标 227
24.4  机遇(截至1961年6月) 228
24.5  挑战和限制 228
24.6  最重大的设计决策 229
24.7  里程碑事件 231
24.8  结果评估 232
24.9  学到的一般经验 235
24.10  注释和参考文献 236
第25章  案例研究:IBM Operating System/360操作系统 238
25.1  亮点和特性 238
25.2  项目介绍和相关背景 239
25.3  接受挑战 241
25.4  设计决策 242
25.5  结果评估 244
25.6  设计师团队 246
25.7  学到的一般经验 247
25.8  注释和参考文献 247
第26章  案例研究:《Computer Architecture: Concepts and Evolution》
图书设计 249
26.1  亮点和特性 249
26.2  项目介绍和相关背景 250
26.3  项目目标 251
26.4  机遇 251
26.5  约束 251
26.6  设计决策 251
26.7  结果评估 252
26.8  经验教训 252
第27章  案例研究:联合计算中心组织:三角区大学计算中心 254
27.1  要点和特点 254
27.2  项目介绍和相关背景 255
27.3  目标 256
27.4  机遇 256
27.5  限制 257
27.6  设计决策 258
27.7  备选的董事会投票方案 258
27.8  结果评估 259
27.9  经验教训 260
27.10  注释和参考文献 260
第28章  推荐读物 262
致谢 264
参考文献 268

教学资源推荐
作者: 李龙 李向函 冯海宁 李向平 等编著
作者: Joseph Phillips
参考读物推荐
作者: Ahmad K.Shuja; Jochen Krebs
作者: Glenford J.Myers,Tom Badgett,Todd M. Thomas,Corey Sandler
作者: (美)Cem Kaner,Jack Falk,Hung Q.Nguyen