作者介绍 Frederick P. Brooks,Jr.曾荣获美国计算机领域最具声望的图灵奖(A.M.Turing Award)桂冠。美国计算机协会(ACM)称赞他"对计算机体系结构、操作系统和软件工程做出了里程碑式的贡献。" Brooks博士是北卡罗莱纳大学Kenan-Flagler商学院的计算机科学教授。他被认为是"IBM 360系统之父",曾担任了360系统的项目经理,以及360操作系统项目设计阶段的经理。凭借在上述项目中的杰出贡献,Brooks博士以及Bob Evans和Erich Bloch在1985年荣获了美国国家技术奖(National Medal of Technology)。Brooks博士早期曾担任IBM 公司Stretch和Harvest计算机的体系结构设计师。s Brooks博士创立了北卡罗莱纳大学的计算机科学系,并在1964~1984年期间担任系主任。他还曾任职于美国国家科技局和国防科学技术委员会。他目前的教学和研究方向是计算机体系结构、分子模型绘图和虚拟环境设计。 作者简介 作者介绍
Frederick P. Brooks,Jr.曾荣获美国计算机领域最具声望的图灵奖(A.M.Turing Award)桂冠。美国计算机协会(ACM)称赞他"对计算机体系结构、操作系统和软件工程做出了里程碑式的贡献。"
Brooks博士是北卡罗莱纳大学Kenan-Flagler商学院的计算机科学教授。他被认为是"IBM 360系统之父",曾担任了360系统的项目经理,以及360操作系统项目设计阶段的经理。凭借在上述项目中的杰出贡献,Brooks博士以及Bob Evans和Erich Bloch在1985年荣获了美国国家技术奖(National Medal of Technology)。Brooks博士早期曾担任IBM 公司Stretch和Harvest计算机的体系结构设计师。 z Brooks博士创立了北卡罗莱纳大学的计算机科学系,并在1964~1984年期间担任系主任。他还曾任职于美国国家科技局和国防科学技术委员会。他目前的教学和研究方向是计算机体系结构、分子模型绘图和虚拟环境设计。
出版于1975年的《人月神话》是软件开发方面的经典作品。1995年版包括了令人感兴趣的新的几章,但原来的随笔依然是这本书的心脏与灵魂。在这本书中,Brooks解决了如何组织和管理大规模编程项目的问题。这些项目要求成百上千的程序员,产生几百万行代码(想想SAP、Oracle数据库引擎、Windows2000)。Brooks简洁、清晰的作品读起来令人愉快。如果你是个程序员,如果你和程序员一起工作,如果你管理程序员,你应该阅读这本书。 --Frank Chance 编辑推荐 一本在软件领域绝无仅有,20余年畅销不衰的必读经典,是软件产业中一部里程碑式的巨著,如果您不想终身埋头代码设计,便一定能从本书中获得收获与乐趣。 目录 n焦油坑 o编程系统产品 o职业的乐趣 o职业的苦恼 n人月神话 o乐观主义 …… 文摘 译者序 这是本书中唯一的一节废话。 我是个书狂,积习甚深,费尽心机在软件工程、系统工程方面积累了一些书。书分为神品、精品和普通三个等级,其中精品、神品又分别分为一品、二品和三品。其中大部分软件工程书都属于精品,神品只有两本,Fred Brooks的这本书就属于神品之列。 软件作为一个行业,一直背着解决错误的问题名声。由于问题决定解决方案,这就意味着我们一直在制造错误解决方案!这方面有大量的证据,其中最著名的是美国政府统计署(GAO)的数据:全球最大的软件消费商--美国军方--每年要花费数十亿美元购买软件,而在其所购软件中,可直接使用的只占2%,另外3%需要做一些修改,其余95%都成了垃圾(Rubbish),不管这些软件是否符合需求规格,一句话,并没有满足他们的需求。面向对象技术并没有给我们带来"神奇的效应",不管现在的厂商如何吹嘘他们面向对象OO(Object-Oriented)工具多么万能,也不管那些OO狂热者是多么毅然的前赴后继,这方面的数据从80年代以来并没有发生大的改观。 这实在是令我们的软件工程专家和从业人员们羞愧,因为它揭示了我们可能一开始就从根本上做错了什么!90年代中期,当Michael Jackson(not the moon-walker)宣布他们的研究结果时,立刻在软件工程届激起了阵阵涟漪。Jackson指出软件行业人员/方法学大师们只是简单地模仿、照搬其他学科的方法,却将最重要的方面--问题域给忽略了。他指出,面向对象方法和结构化方法对问题域的处理没有什么大的区别,却被人们过分地用美好的词汇给美化了: "...You can see the results clearly in many object-oriented modeling descriptions. Often they are accompanied by fine words about modeling the real world. But when you look closely you can see that they are really descriptions of programming objects, pure and simple. Any similarity to real-world objects, living or dead, is purely coincidental..." (...从众多面向对象建模的描述中,你可以很清楚地看到这些恶果。而且它们还经常伴随着有关现实世界建模的非常美好的词汇。然而,仔细看看,你就会发现它们其实是彻头彻尾的编程对象!如果说有任何和现实世界对象相似的地方,不管是活是死,纯属巧合...) 回首软件工程近40年的发展,Jackson哀叹软件行业普遍缺乏专业性,充满了业余人员,"手中有个锤子,看到什么都是钉子",谁都可以开发攸关乎人们生命的软件。