首页>参考读物>计算机科学与技术>综合

设计原本——计算机科学巨匠Frederick P.Brooks的思考
作者 : (美) Frederick P. Brooks 著
译者 : InfoQ中文站 王海鹏 高博 译
丛书名 : 计算机科学丛书
出版日期 : 2011-01-10
ISBN : 978-7-111-32557-4
定价 : 55.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 292
开本 : 16
原书名 : The Design of Design: Essays from A Computer Scientist
原出版社: Pearson Education Asia
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

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

图书特色

《人月神话》作者最新力作
计算机科学大师探究设计原本
设计原本
计算机科学巨匠Frederick P. Brooks的思考
The Design of Design
Essays from a Computer Scientist
(美)Frederick P. Brooks, Jr. 著 InfoQ中文站 王海鹏 高博 译

封底:
无论是软件开发、工程还是建筑,有效的设计都是工作的核心。本书将对设计过程进行深入分析,揭示有效和优雅设计的方法。
本书包含了多个行业设计者的特别领悟。作者精确发现了所有设计项目中内在的不变因素,揭示了优秀设计的过程和模式。通过与几十位优秀设计者的对话,以及他自己在几个设计领域的经验,作者指出,大胆的设计决定会产生更好的结果。
作者追踪了设计过程的演进,探讨了协作和分布式设计,阐明了哪些条件造就了真正卓越的设计者。他解释了设计过程的具体细节,包括多种预算约束条件、美学考虑、设计经验主义及工具。同时,他将这些讨论与现实中的案例结合起来,这些案例从房屋建造到IBM的Operating System/360。贯穿全书的成功的关键因素,是每个设计者、设计项目经理和设计研究者都应该知道的。

前:
《人月神话》作者最新力作
如果说《人月神话》是作者刚刚完成若干个改变了全球计算系统格局的重大项目,在人生和事业的巅峰时期的激情之作,那么本书则是作者功成名就之后,在研究和教学中将先前在设计领域中的探索心得和实践经验切磋琢磨、去伪存真、取其精华的反思之作。可以说,比起锐气有余的《人月神话》,本书更多了几分高屋建瓴的大局观以及数十年如一日积淀而成的丰富材料,是设计领域真正的大师之作。
本书几乎涵盖所有有关设计的议题:从设计哲学谈到设计实践,从设计过程到设计灵感,既强调了设计思想的重要性,又对沟通中的种种细节都做了细致入微的描述,并且谈到了因地制宜做出妥协的具体准则。其中,作者特别强调的是设计的概念完整性,这不仅对于设计过程中步骤流转时的信息传递十分关键,并且也是沟通中最需要重点注意的地方。
全书的案例研究是另一大亮点,在进行抽象的模型和思想论述时,作者时时注意运用图表和案例说话,深入浅出地表达复杂艰涩的思想。并通过层次丰富的案例,展示了设计既能治大国,又可烹小鲜的强大力量和无穷魅力。我们能够从作品的字里行间感受到计算机体系结构刚刚诞生的黄金年代充满了怎样的设计思想和工程实践的生机和活力。而作者也十分擅长专业史料的记载和整理,并且以他独有的方式为读者展示出极为清晰的脉络。

后:
计算机科学大师探究设计原本
Frederick P. Brooks, Jr. 
北卡罗来纳大学计算机科学系的Kenan教授。他因领导开发IBM System/360计算机系列以及Operating System/360而荣获美国国家技术奖,并因对计算机体系结构、操作系统和软件工程作出了里程碑式的贡献而获得A. M.图灵奖。他是畅销书《人月神话》的作者。

图书前言

我写这本书是为了刺激设计者和设计项目经理,让他们深入思考设计的过程,特别是设计复杂系统的过程。本书从工程师的视角关注实用性与有效性,同时也关注效率和优雅性1。
谁应该阅读这本书
  《人月神话》的目标读者是“职业程序员、职业经理,特别是管理程序员的职业经理”。在那本书中,我讨论了团队开发软件时,实现概念完整性的必要性、困难和方法。
  本书在相当大的程度上扩大了范围,并添加了我35年来学到的经验。设计经验让我确信,各种不同设计领域的设计过程包含一些不变的因素。因此本书的目标读者是:
  1)各类设计者。排除直觉的系统化设计将得到普普通通的跟随式产品和仿冒产品,没有系统的直觉设计将得到充满缺陷的、不切实际的产品。如何将直觉和系统化方法融合在一起?如何成长为一名设计师?如何在一个设计团队中发挥作用?
  虽然我针对非常多的系统进行了论述,但我期望读者是偏重于计算机软件和硬件的设计者,面对这样的读者我可以提供具体的阐述。因此我在这些领域的某些例子中会涉及技术细节。其他读者可以跳过这些细节。
  2)设计项目经理。要避免灾难,项目经理在设计他的设计过程时,必须融合理论与口口相传的经验,而不是仅仅复制某种过于简化的学术模型,也不能临时设定一个过程,而不参考他人的理论或经验。
  3)设计研究人员。对设计过程的研究已经成熟,这是好事,但并不是一切都好。已发表的研究成果越来越关注更狭窄的主题,大问题讨论得越来越少。对精确的期望和对“设计科学”的期望可能使得科学研究之外的出版物受阻。我建议设计思考者和研究者重新关注这些大问题,即便是在社会科学方法没有太大帮助的时候。我相信他们也会思考我的论述是否具有通用性,我的观点是否正确。我希望为他们的学科领域提供服务,将他们的一些研究结果带给实践者。
为什么要再写一本关于设计的书
  创造东西是一种快乐,是一种极大的满足。J. R. R. Tolkien说上帝给了我们发明创造的能力,作为一件礼物,纯粹是为了让我们快乐2。毕竟,“千山上的牲畜也是我的。……我若是饥饿,我不用告诉你。3”设计本身就是快乐的。
  很多设计者从心理上和实践上都没有对设计过程进行很好的理解。这不是因为缺少研究。许多设计者反思了他们自己的设计过程。研究的动机之一就是,在所有的设计领域,最佳实践和平均实践之间存在着巨大的鸿沟,平均实践和半吊子实践之间也是如此。大部分的设计成本是返工,即纠正错误,这通常达到总成本的1/3。平庸的设计肯定是浪费了世界的资源,破坏了环境,影响了国际竞争力。设计很重要,设计教育也很重要。
  所以,根据推理,系统化设计过程将提升平均实践的水平,而结果也确实如此。德国的机械工程设计者们显然是首先采用了这一规划4。
  随着计算机和之后人工智能(AI)的出现,设计过程的研究受到了极大的刺激。最初人们希望,AI技术不仅能够在过去人类主宰的领域中承担许多例行设计的工作,甚至能够产生杰出的设计5。这种希望迟迟没有实现,而我本人觉得不可能实现。设计研究形成了一门学科,有一些专门的学术会议、期刊和许多研究项目。
  既然已经有了这么多认真的研究和系统的处理,为什么还要再写一本书?
  首先,设计过程自第二次世界大战以来,有了非常大的变化,而人们很少讨论这些变化。对于复杂产品的设计,团队设计越来越成为常态。团队常常在地理上是分散的。设计者越来越脱离产品的使用和实现,通常他们不再亲手打造他们设计的东西。各类设计者现在都陷在计算机模型中,而不是陷在图纸中。正式设计过程的教育越来越广泛,而且通常是雇主强制要求的。
  其次,仍然存在许多误区。当我们试图教学生怎样做好设计时,我们在理解上的差异就变得很明显了。Nigel Cross是设计研究领域的一位先行者,他追踪了设计过程研究变化的4个阶段。
  1)规定(prescription)一个理想的设计过程
  2)描述(description)设计问题的内在本质
  3)观察(observation)设计活动的现实
  4)反思(reflection)设计的基本概念6
  我在我人生的60年时间里涉及了5种设计领域:计算机架构、软件、房屋、图书和组织机构。在每个领域,我都承担过团队中主设计者和协作者的角色7。我对设计过程的兴趣由来已久,我在1956年的论文是“The analytic design of automatic data processing systems(自动化数据处理系统的分解设计)8”。也许现在是时候进行成熟的反思了。
这是一本怎样的书
  现在令我非常吃惊的是,这些过程极为类似!思维的过程、人与人的交互、迭代、约束条件和劳动,都有很大的相似性。本书中反思的东西可能是隐藏在这些设计活动背后不变的设计过程。
  虽然计算机架构、软件架构的历史不长,对它们的设计过程的反思也不多,但建筑设计和机械设计已经有很长的历史和荣耀的过去。在这些领域,设计理论和设计理论家都很多。
  我是一名职业设计师,我所工作的领域中对设计的反思还不多,而在那些得到长期深入反思的领域,我是一名业余设计师。所以我将尝试从历史较长的设计理论中提取一些经验,应用于计算机和软件的设计。
  我相信“设计科学”是一个不可能完成的目标,实际上也是一个具有误导性的目标。这种解放思想的怀疑论让我们能够从直觉和经验的角度进行探讨,包括其他设计者的经验,他们很客气地和我分享了他们的领悟9。
  所以我提供的既不是一本教科书,也不是一本包括一致论证的专著,而是一些观点文章。虽然我试图补充一些有用的参考和注解,探索一些隐秘的小路,但我仍建议读者先从头到尾阅读每篇文章,忽略这些注解和参考,然后再回过头来探索这些小路。所以我将它们藏在每章的末尾。
  某些案例研究提供了一些具体的例子,文章中参考了这些例子。选择这些例子并不是因为它们很重要,而是因为它们体现出了某种经验,我基于这些经验得出了结论和观点。我特别喜欢关于房屋功能设计的那些经验,任何领域的设计者都可以参考它们。
  作为主设计师,我完成了3所房屋的功能设计(详细的平面图设计、照明、电气和管道)。将房屋功能设计过程与复杂计算机硬件和软件的设计过程进行比较和对比,这帮助我提出了设计过程的“精髓”,所以我用它们作为我的案例,并且相当详细地介绍了这些过程。
  通过反思发现,许多案例研究具有惊人的共同特点:最大胆的设计决定,不论是谁做出的,都为优秀的结果作出了巨大的贡献。这些大胆的决定有时是因为远见,有时是因为绝望。它们总是在赌博,要求额外的投入,以期得到好得多的结果。
致谢
  本书的书名借鉴自40多年前Gordon Glegg的一部著作,他是一位富于创新精神的机械设计师、一个有风度的人、一位有吸引力的剑桥讲师。我很荣幸地在1975年与他共进午餐,感受到了他对设计的热情。他的书名准确地概括了我的尝试,所以我怀着感激与尊敬之情,沿用了这一书名。10
  我感谢Ivan Sutherland对我的鼓励,他在1997年建议将一本讲义发展成一本书,并在10多年后对草稿提出了尖锐的批评,促进了巨大的改进。这使我后来的智力发展历程受益良多。
  如果没有北卡罗来纳大学教堂山分校资助的3个研究项目以及系主任Stephen Weiss和Jan Prins的支持,这本书是不可能完成的。我在剑桥大学受到了Peter Robinson的亲切接待,在伦敦大学学院受到了Mel Slater以及他们的系主任和同事的亲切接待。
  美国国家科学基金会(NSF)的计算机与信息科学工程(CISE)理事会的设计科学(Science of Design)项目由助理理事长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的出版合作者,他提供了特别的鼓励。Julie Nahil是Addison-Wesley的全职产品经理,Barbara Wood是文字编辑,他们提供了无比专业的技能,付出了特别的耐心。
  John H. Van Vleck是诺贝尔物理奖获得者,当我在哈佛大学工程和应用学院Aiken的实验室读研究生时,他是那儿的院长。Van Vleck非常注重工程实践要建立在牢固的科学基础之上。他领导了美国工程教育从设计向应用科学的转变,这种转变富有朝气。就像钟摆摆到极点,反作用就会出现,教授设计从那时起一直引起争论。我非常感谢我在哈佛的3位老师,他们从未丧失对设计重要性的深刻理解并教授设计。他们是Philippe E. Le Corbeiller、Harry R. Mimno和我的导师Howard H. Aiken。
注释
  1. 本书的封面图片是基于Smethurst (1967)《The Pictorial History of Salisbury Cathedral》,他说:“……除了圣保罗大教堂之外,索尔兹伯里(Salisbury)大教堂是仅有的一座英国教堂,其所有内部结构都是按照一个人(或一个两人团队)的设计建造的,并且没有中断地完成。”
  2. Tolkien (1964), 《Tree and Leaf》。
  3. 诗篇50:10,12。强调是添加的。
  4. Pahl和Beitz (1984),在1.2.2节中追踪了这段始于1928年的历史。他们自己的书《Konstructionslehre》历经7版,可能是最重要的系统化总结。我在所有领域中区分设计过程的研究和设计规则的研究。这些历史已经很悠久了。
  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(我在2010年1月5日访问了这一网址的内容)。
  我们的挑战是将个人的经验、框架和观点转变成共享的、能理解的知识,最重要的是,转变成可传递的知识。Victor Margolin指出了3点困难,(其中一点是):“……个人设计经验的著作太关注个人叙述,导致了个人的观点,而不是关键的群体共享观点。”
  对此我必须承认,“你说对了”。
  10. Glegg (1969),《The Design of Design》。

上架指导

计算机\软件工程

封底文字

无论是软件开发、工程还是建筑,有效的设计都是工作的核心。本书将对设计过程进行深入分析,揭示进行有效和优雅设计的方法。
 本书包含了多个行业设计者的特别领悟。作者精确发现了所有设计项目中内在的不变因素,揭示了进行优秀设计的过程和模式。通过与几十位优秀设计者的对话,以及他自己在几个设计领域的经验,作者指出,大胆的设计决定会产生更好的结果。
作者追踪了设计过程的演进,探讨了协作和分布式设计,阐明了哪些条件造就了真正卓越的设计者。他探讨了设计过程的具体细节,包括多种预算约束条件、美学考虑、设计经验主义及工具。同时,他将这些讨论与现实中的案例结合起来,这些案例从房屋建造到IBM的Operating System/360。成功的关键因素贯穿全书,每个设计者、设计项目经理和设计研究者都应该知道。

作者简介

(美) Frederick P. Brooks 著:Frederick P. Brooks 北卡罗来纳大学计算机科学系的Kenan教授。他因领导开发IBM System/360计算机家族以及Operating System/360而荣获美国国家技术奖,并因对 计算机体系结构、操作系统和软件工程作出了里程碑式的贡献而获得A. M.图灵奖。他是畅销书《人月神话》的作者。

译者简介

InfoQ中文站 王海鹏 高博 译:暂无简介

译者序

……《诗》有之:“‘高山仰止,景行行止’。虽不能至,然心向往之。”
    —司马迁(西汉),《史记·孔子世家》
  大师之作不仅仅是指一部出自大师笔下的著作,更是特指大师的心血凝结之作。Frederick P. Brooks, Jr.,美国“两院”院士、A.M. 图灵奖和IEEE先驱奖获得者1、软件工程界至今脍炙人口的奠基之作《人月神话》的作者,这位令人高山仰止的大师,在创作了《人月神话》35年之后,才在2010年初推出了本书。如果说《人月神话》是Brooks刚刚完成若干个改变了全球计算系统格局的重大项目,在人生和事业的巅峰时期的激情之作,那么本书则是Brooks功成名就之后,在研究和教学中将先前在设计领域中的探索心得和实践经验切磋琢磨、去伪存真、取其精华的反思之作。可以说,比起锐气有余的《人月神话》,本书更多了几分高屋建瓴的大局观以及数十年如一日积淀而成的丰富材料,是设计领域真正的大师之作。
  本书几乎涵盖了所有有关设计的议题:从设计哲学到设计实践,从设计过程到设计灵感,既强调了设计思想的重要性(第8章),又对沟通中的种种细节做了细致入微的描述(第6、7章),并且也谈到了因地制宜做出妥协的具体准则(第9、10、11章)。其中,Brooks特别强调的是设计的概念完整性(第6章),这不仅对于设计过程中步骤流转时的信息传递十分关键,并且也是沟通中最需要重点注意的地方。使用同一个术语表达不同的概念,或使用不同的术语表达同一个概念,都会给设计带来剧增的成本,甚至灾难性的后果。这一点是贯穿始终的主线之一。另一条主线就是Brooks对于理性模型的批判(第2、3、5章)。由于在现行的软件工程著作和研究论文中,对理性模型导致的直接模型—瀑布模型的推崇可谓甚嚣尘上。Brooks在此处着了重墨,深入分析了理性模型的工程师心理学渊源,解释了它何以根深蒂固,然后剖析了它的实质—以拓展设计树的方式来暴力遍历问题的解空间,最后对它的种种不足提出了针对性的批评,并指出在哪些受限的条件下方可运用理性模型(瀑布模型),而在其他场合中有哪些更好的设计模型,尤其是Boehm提出的螺旋模型。这些对于设计模型的长篇论述,特别是对其背后的工程思想的深入分析,无疑将对设计界的研究者和实践者起到方向性的指导意义。
  全书的案例研究是另一大亮点,这不仅包括专门的案例章节(第21~27章),而且在进行抽象的模型和思想论述时,Brooks也时时注意运用图表和案例说话,深入浅出地表达复杂艰涩的思想。并通过层次丰富的案例,展示了设计既能治大国,又可烹小鲜的强大力量和无穷魅力。比如,为了论述抵制需求蠕变的必要性时,他首先以和美国军方要员的一段对话切入话题(第4章),给读者以直观且深刻的印象。这不仅表明了即使在军事领域,设计的准则和影响仍然适用,也不经意间揭示了作者和美国国防部—全世界最尖端的科研和工程的研发和实践基地—的深入合作关系。Brooks以揶揄的方式对待这些大企业的高管们的案例并非仅此一隅,在讲述僵死、拙劣的规格如何造成最终产品的可笑妥协时,他又举一例,美国联邦航空局的一个令人匪夷所思的系统规格造成了在最终产品中不得不以禁用一个完整系统的部分功能的方式“凑合”成一个虽然符合规格却造成不小浪费的系统,而这些最终都是由纳税人买单(第11章)。要知道,这些都是动辄涉及上百亿美元的大项目,Brooks在其中的谈笑风生绝对是一种举重若轻的大将风度。可是另一方面,Brooks又会在讲述设计中的约束时,在多处提到对自家房屋进行建筑设计和拟订整修方案时遇到的各种困难,并一一指出如何应对:有些约束只要改变一下思路就会消失,有些约束虽然无可避免但可以最小化,有些约束反映了原始设计方案中的方向性错误,等等(第1、3、17、18章)。这种十分贴近读者生活实际的例子不仅一下拉近了作者和读者的思想距离,同时也更说明Brooks热爱设计工作到何种程度,连一般人视作生活小节之处也不愿意放过,而是把它作为设计工程来研究一番2。顺便说一句,Brooks在建筑设计方面也决非业余,他曾经参与他工作至今的北卡罗来纳大学的西特森厅设计,是设计委员会的正式成员3,这在本书中也有提及(第4章)。
  当然,Brooks毕竟是软件工程业界的先驱,正如在他的《人月神话》或任何一本主要文献中一样,我们都能够在他的作品的字里行间感受到计算机体系结构刚刚诞生的黄金年代充满了怎样的设计思想和工程实践的生机和活力。而Brooks也十分擅长专业史料的记载和整理,并且以他独有的方式为读者展示出极为清晰的脉络。比如,他主持设计的System/360系统不仅是当代操作系统在实际意义上的先祖和典范,而且它本身仍然活跃在历史舞台上:Brooks在书中指出,System/360和OS/360上的应用程序至今仍然可以完全兼容地运行在当今的后续体系结构之上,包括晚至2007年发布的64位IBM Z/90机型—一种System/360体系结构的直接后裔机型(第24章)。正是通过这样上承开天辟地之洪荒巨擘,下接耳熟能详之主流系统和应用的史诗式描述,让我们在充分领略软硬件发展史的无限风光的同时,也深切地感受到用心设计会带来数十年前后一贯的、可持续发展的产品,而这些产品及其反过来促进的设计思想和方法论又怎样彻底地改变了我们每一个人生活、工作和沟通的方式。这不也正是包括我们自己在内的一代代设计师和架构师投身于此的原动力吗?
  本书由我、王海鹏与InfoQ中文站的张龙、黄璜共同翻译完成。虽然与几位的合作还是第一次,但是整个过程进行得非常顺利和愉快。在全书的翻译实践中,我本人收获极大。能够逐字逐句地研读本书,已经是充分的精神享受—Brooks的文字无疑是值得一读再读的。再经过整个团队的协作和努力,把它的内容和意义带给中国的千百万读者,这对我们翻译工作者来说,已经是无上的嘉赏和成就了。当然,由于我们的水平所限,缺点和错误在所难免,希望广大读者不吝指正,以便在再版时予以修订。
  在本书的翻译过程中,机械工业出版社和InfoQ中文站给予了我们很大的支持、鼓励和帮助。UMLChina于2010年6月下旬举办了一场“Brooks新作暨《人月神话》35周年讨论会”4,在本书出版前提供了一个与读者交流和讨论的机会。本书译稿成稿之前,多位友人阅读了翻译初稿并给予本人许多可贵的修正意见,尤其是和我一起工作的张龙、黄璜、王海鹏,盛大创新院的郭忠祥院长和刘海平工程师,SAP中国的范德成工程师,MBK Partners私募基金公司的章子琦分析师,富士康中国研发集团的Carl Giardina总监,以及微软总部的米琦工程师,在此一并致谢。当然,家父高学栋博士也通读了全稿并给予了我不少有关文法和表达的中肯意见。我也想借此机会向在工作和生活中给了我莫大支持的父母和家人表达我内心最深处的敬意和谢意,希望本书的出版能给他们带去快乐。

2010年11月
于盛大创新院上海总部
译者简介
  高博 2004年毕业于上海交通大学计算机系,在微软公司和惠普公司有多年项目和管理经验。对程序设计语言、云计算、软件测试方法学、软件架构设计和软件项目管理方向有浓厚兴趣。近年来翻译出版了《C++:99个常见编程错误》、《微软的软件测试之道》等多本书籍。联系方式:feedback@gaobo.org,订阅博客:feed.gaobo.org。
  王海鹏 1994年毕业于华东师范大学。拥有双学士学位。咨询顾问、培训讲师、译者和软件开发者。已翻译20本软件开发书籍,主题涵盖敏捷方法学、需求工程、UML建模和测试。拥有15年软件开发经验,目前主要研究领域是软件架构和方法学,致力于提高软件开发的品质和效率。
张龙 同济大学软件工程硕士,InfoQ中文站Java社区编辑,满江红开放技术研究组织成员。热衷于编程,对新技术有强烈的探索欲,对Java轻量级框架有一定研究。目前对Mac、iPhone/iPad、Android开发、动态语言及算法具有浓厚兴趣。翻译出版了《Dojo构建Ajax应用程序》、《Spring高级程序设计》等书籍。拥有5年的Java EE培训讲师经验。联系方式:zhanglong217@yahoo.com.cn,博客地址:http://blog.csdn.net/ricohzhanglong,新浪微博:http://t.sina.com.cn/fengzhongye,欢迎follow。
  黄璜 2007年毕业于重庆邮电大学。曾在某外包公司工作3年,目前在一家初创公司做开发工作。担任InfoQ中文站社区编辑两年,对于业界新动向和新技术有强烈的兴趣。目前专注于网站架构、分布式以及算法。联系方式:alexhuang1984@gmail.com。
注释
  1. http://www.cs.unc.edu/~brooks/FPB_BIO.CV.04.2007.pdf,最近访问于2010年11月。
  2. http://www.cs.unc.edu/~brooks/DesignofDesign/kitchen_design_notes.pdf,这份扫描件展示了作者把每一个建筑细节都当做设计问题来研究的严谨工作和生活态度。http://www.cs.unc.edu/~ brooks/DesignofDesign/house/start_here.html,他甚至还把详细的设计树数字化并放入网站供读者了解每一个设计细节以及它们在决策中的定位,这种一丝不苟的工作习惯着实令人感动。最近访问于2010年11月。
  3. http://www.cs.unc.edu/~brooks/DesignofDesign/experiences.html,“Buildings”部分,最近访问于2010年11月。
  4. http://www.umlchina.com/Chat/mmm100620.htm,包括讨论会幻灯片与对话的音频与文字记录(会议由王海鹏主持),最近访问于2010年11月。

图书目录

Frederick P. Brooks, Jr. 论设计原本
译者序
前言
作者简介
第一部分  设计之模型
第 1 章  设计之命题 3
培根所言是否正确 3
什么是设计 3
何为真实?设计的概念 4
对于设计过程的思考 6
设计类别 7
注释 7
第 2 章  工程师怎样进行设计思维—理性模型 11
模型概览 11
该模型的构思从何而来 12
理性模型有哪些长处 13
注释 14
第 3 章  理性模型有哪些缺陷 17
我们在初始阶段并不真正地知道目标是什么 17
我们通常不知晓设计树的样子—一边设计一边探索 18
(设计树上的)节点实际上不是设计决策,而是设计暂定方案 19
有用性函数无法以增量方式求值 19
必要条件及其权重在持续变化 20
约束在持续变化 21
对于理性模型的其他批评 23
但是,尽管有这些缺陷和批评,理性模型仍然不屈不挠地存在 24
那又如何?我们的设计过程模型真的那么事关紧要吗 24
注释 26
第 4 章  需求、罪念以及合同 29
一段恐怖往事 29
殊为不幸,无独有偶 30
抵制需求膨胀和蠕变 31
罪念 32
合同 32
一种合同模型 33
注释 34
第 5 章  有哪些更好的设计过程模型 37
为什么要有一个占主导地位的模型 37
共同演化模型 38
Raymond的集市模型 39
Boehm的螺旋模型 40
设计过程模型:第2~5章的讨论小结 41
注释 42
第二部分  协作与远程协作
第 6 章  协作设计 45
协作在本质上是好的吗 45
团队设计是现代标准 46
协作的成本 48
挑战是概念完整性 49
如何在团队设计中获得概念完整性 50
协作何时有帮助 51
协作何时无用—对设计本身 55
两人团队很神奇 56
对于计算机科学家意味着什么 57
注释 57
第 7 章  远程协作 61
为什么要远程协作 61
到那里,做那事—IBM System/360计算机系列的分布式开发,1961~1965 62
让远程协作有效 63
远程协作的技术 64
注释 66
第三部分  设计面面观
第 8 章  设计中的理性主义与经验主义 71
理性主义与经验主义 71
软件设计 72
我是个铁杆的经验主义者 72
其他设计领域中的理性主义、经验主义与正确性 73
注释 74
第 9 章  用户模型—错误胜过含糊 77
明确的用户与用例模型 77
团队设计 77
假如事实不可用该如何是好 78
注释 79
第10章  英寸、盎司、位与美元—预算资源 81
何谓预算资源 81
美元并非万灵丹 81
即便美元也有不同,替代品剖析 82
预算资源是可变的 82
那又如何 83
注释 84
第11章  约束是我们的朋友 87
约束 87
不完全如此 88
设计悖论:通用的产品要比特定用途的产品更难以设计 90
注释 92
第12章  技术设计中的美学与风格 95
技术设计中的美学 95
何谓逻辑美 96
技术设计中的风格 98
何谓风格 99
风格的属性 100
要想获得一致的风格—记录下来 101
如何获得良好的风格 101
注释 102
第13章  设计中的范本 105
很少会有全新的设计 105
范例的角色 105
计算机与软件设计呢 106
学习范本的设计原理 107
如何训练才能改进基于范本的设计 109
范本—懒惰、创意与自满 110
注释 111
第14章  专业设计者缘何犯错 115
错误 115
曾经最糟糕的计算机语言 116
JCL缘何是这样的 117
小结 118
注释 119
第15章  设计的分离 121
设计与使用和实现的分离 121
为什么分离 122
分离的结果 122
补救措施 122
注释 124
第16章  展现设计的演变途径和理由 127
简介 127
知识网线性化 128
我们的设计演变途径记录 128
我们研究房屋设计过程的过程 129
深入设计过程 130
决策树与设计树 132
模块化与紧密集成的设计 132
Compendium和可选工具 133
DRed:一个诱人的工具 135
注释 136
第四部分  一套计算机科学家进行房屋设计的梦想系统
第17章  计算机科学家的建筑设计理想系统—从思维到机器 139
挑战 139
一个设想 139
从思维到机器输入的设想 141
说明动词 142
说明名词 143
说明文字 144
说明助词 144
说明视点和视图 145
注释 147
第18章  计算机科学家的建筑设计理想系统—从机器到思维 149
双向通道 149
视觉显示—多并发窗口 149
声音展示 152
触觉展示 153
泛化 153
可行性 153
注释 153
第五部分  卓越的设计师
第19章  卓越的设计来自卓越的设计师 157
卓越的设计和产品过程 157
产品过程:优点和不足 158
观点碰撞:过程抑制,过程不可避免,如何处理 161
注释 162
第20章  卓越的设计师从哪里来 165
我们必须教他们设计 165
我们必须为卓越设计而招募人才 166
我们必须深思熟虑地培养他们 167
管理他们时必须发挥想像力 168
必须严密地保护他们 169
把自己培养成一名设计师 170
注释 172
第六部分  设计空间之旅:案例研究
第21章  案例研究:海滨小屋“View/360” 177
亮点和特性 177
背景介绍 177
目标 178
机会 179
约束条件 179
设计决定 179
考虑正面 181
小屋的尺寸 182
设想的开始 182
在设计之后,构建之前的设计改动 183
在框架和外墙完成和初次入住之后的设计改动 183
评估(在37年后) 184
学到的一般经验 187
第22章  案例研究:增加厢房 189
亮点和特性 189
背景介绍 189
目标 191
约束条件 192
非约束条件 193
事件 193
设计决定和迭代 193
评估—成功与未解决的缺点 198
学到的一般经验 199
注释 199
第23章  案例研究:厨房重新建模 201
亮点和特性 201
背景介绍 201
目标 202
机会 202
约束条件 203
关键宽度预算的推理 204
长度预算的推理 205
其他设计决定 206
评估 207
满足的其他迫切需求 207
在设计中使用图纸、CAD、模型、仿真模型和虚拟环境 208
学到的一般经验 209
注释 210
第24章  案例研究:System/360体系结构 213
亮点和特性 213
项目介绍和相关背景 213
目标 215
机遇(截至1961年6月) 216
挑战和限制 216
最重大的设计决策 217
里程碑事件 219
结果评估 219
取得的经验教训 222
注释 223
第25章  案例研究:IBM Operating System/360操作系统 225
亮点和特性 225
项目介绍和相关背景 226
接受挑战 228
设计决策 229
结果评估 231
设计师团队 232
取得的经验教训 233
注释 233
第26章  案例研究:《Computer Architecture: Concepts and Evolution》
图书设计 235
亮点和特性 235
项目介绍和相关背景 236
项目目标 236
机遇 237
约束 237
设计决策 237
结果评估 237
经验教训 238
第27章  案例研究:联合计算中心组织:三角区大学计算中心 241
亮点和特性 241
介绍与内容 242
目标 243
机会 243
约束 244
设计决策 244
董事会所考虑的投票方案 244
测量评估 245
经验总结 246
注释 246
第28章  推荐阅读 249
致谢 251
参考文献 255

教学资源推荐
作者: Wanda P. Dann  Stephen Cooper  Randy Pausch 著
作者: 何炎祥 伍春香 王汉飞 编著
作者: (美)Frank R.Giordano  William P.Fox  Steven B. Horton  Maurice D.Weir著
作者: (英)Hilary Glasman-Deal 著
参考读物推荐
作者: [德]比吉特·沃格尔-霍伊泽尔(Birgit Vogel-Heuser) 托马斯·保尔汉森(Thomas Bauernhansl) 迈克尔·腾·洪佩尔(Michael ten Hompel)编
作者: Douglas E.Comer
作者: (美)John D.Musa
作者: (美)南森·马茨(Nathan Marz),詹姆斯·沃伦(James Warren)著