人月神话(软件人员必读 20周年经典纪念版)
分類: 图书,计算机/网络,软件工程/开发项目管理,
作者: [美]弗雷德里克布鲁克斯
出 版 社: 清华大学出版社
出版时间: 2002-11-1字数: 213000版次: 1版1次页数: 369印刷时间: 2002/11/01开本:印次:纸张: 胶版纸I S B N : 9787302059325包装: 平装编辑推荐
一本在软件领域绝无仅有,20余年畅销不衰的必读经典。
年轻的软件工程师、吝啬的研究生、懒惰的软件老手常请我标示出迄今为止最好的软件图书。“如果我带着仅有的一本计算机书在沙漠荒岛上,”他们问,“应该是哪本书?”这是个荒谬的问题,但人们坚持要个答案。假如你真的被放逐到这样的小岛(或者你决定躲藏到这样的地方去避免2000年软件崩溃的恐惧!),《人月神话》应该紧随着你。
——Ed Yourdon
内容简介
本书自第一版以来,畅销20余年不衰,是软件领域绝无仅有的必读经典。本文作者为人们管理复杂项目提供了颇具洞察力的见解,既有很多发人深省的观点,也有大量的软件工程实践。本书内容来自布鲁克斯在IBM公司 System/360 家族和OS/360中的项目管理经验。在本书第一次出版20年后的今天,布鲁克斯重新审视了他原先的观点,增加了一些新的想法和建议。既方便了熟悉原有内容的人们,也方便了许多第一次阅读它的读者。
本书新增加的章节包括:原著中一些核心观点的精华;在经过了一个时代以后,Brooks博士对原先观点新的认识;1986年的经典文章《没有银弹》;对1986年所下论断(在10年内不会出现银弹)现在的认识。
本书读者包括:软件开发人员、软件项目经理、系统分析师、理工科专业及技术管理专业师生。
作者简介
作者介绍
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年期间担任系主任。他还曾任职于美国国家科技局和国防科学技术委员会。他目前的教学和研究方向是计算机体系结构、分子模型绘图和虚拟环境设计。
译者简介
本书由UMLChina翻译组成员汪颖(Adams Wang)负责翻译。UMLChina(http://www.umlchina.com/)是中文世界访问量最大的软件工程网站。本书译者汪颖毕业于华中理工大学,从事软件开发以及流程改进方面的工作。
目录
n焦油坑
•编程系统产品
•职业的乐趣
•职业的苦恼
n人月神话
•乐观主义
•人月
•系统测试
•空泛的估算
•重复产生的进度灾难
n外科手术队伍
•问题
•Mills 的建议
•如何运作
•团队的扩建
n贵族专制、民主政治和系统设计
•获得概念的完整性
•贵族专制统治和民主政治
•在等待时,实现人员应该做什么?
n画蛇添足
•结构师的交互准则和机制
•自律——开发第二个系统所带来的后果
n贯彻执行
•文档化的规格说明——手册
•形式化定义
•直接整合
•会议和大会
•多重实现
•电话日志
•产品测试
n为什么巴比伦塔会失败?
•巴比伦塔的管理教训
•大型编程项目中的交流
•项目工作手册
•大型编程项目的组织架构
n胸有成竹
•PORTMAN 的数据
•ARON的数据
•HARR的数据
•OS/360的数据
•CORBATO的数据
n削足适履
•作为成本的程序空间
•规模控制
•空间技能
•数据的表现形式是编程的根本
n提纲挈领
•计算机产品的文档
•大学科系的文档
•软件项目的文档
•为什么要有正式的文档?
n未雨绸缪
•试验性工厂和增大规模
•唯一不变的就是变化本身
•为变更计划系统
•为变更计划组织架构
•前进两步,后退一步
•前进一步,后退一步
n干将莫邪
•目标机器
•辅助机器和数据服务
•高级语言和交互式编程
n整体部分
•剔除 BUG 的设计
•构件单元调试
•系统集成调试
n祸起萧墙
•里程碑还是沉重的负担
•“其他的部分反正会落后”
•地毯的下面
n另外一面
•需要什么样的文档
•流程图
•自文档化 (SELF-DOCUMENTING) 的程序
n没有银弹—软件工程中的根本和次要问题
•介绍
•是否一定那么困难呢?——根本困难
•以往解决次要困难的一些突破
•银弹的希望
•针对概念上根本问题的颇具前途的方法
n再论“没有银弹”
•人狼和其他恐怖传说
•存在着银弹—就在这里!
•含糊的表达将会导致误解
•HAREL 的分析
•JONE 的观点——质量带来生产率
•那么,生产率的情形如何?
•面向对象编程——这颗铜制子弹可以吗?
•重用的情况怎样?
•学习大量的词汇——对软件重用的一个可预见,但还没有被预言的问题
•子弹的本质——形势没有发生改变
n《人月神话》的观点:是或非?
•第一章 焦油坑
•第二章 人月神话
•第三章 外科手术队伍
•第四章 贵族专制、民主政治和系统设计
•第五章 画蛇添足
•第六章 贯彻执行
•第七章 为什么巴比伦塔会失败?
•第八章 胸有成竹
•第九章 削足适履
•第十章 提纲挈领
•第十一章 未雨绸缪
•第十二章 干将莫邪
•第十三章 整体部分
•第十四章 祸起萧墙
•第十五章 另外一面
•原著尾声
n20 年后的人月神话
•为什么会出现二十周年纪念版本
•核心观点:概念完整性和结构师
•开发第二个系统所引起的后果:盲目的功能和频率猜测
•图形 (WIMP) 界面的成功
•没有构建舍弃原型——瀑布模型是错误的!
•增量开发模型更佳——渐进地精化
•人月到底有多少神话色彩?BOEHM 的模型和数据
•人就是一切(或者说,几乎是一切)
•放弃权力的力量
•最令人惊讶的新事物是什么?数百万的计算机
•全新的软件产业——塑料薄膜包装的成品软件
•买来开发——使用塑料包装的成品软件包作为构件
•软件工程的状态和未来
n尾声:令人向往、激
媒体评论
我唯一一本读过一遍以上的书,是Fred Brooks的《人月神话》,实际上我每过一两年都重读一遍。部分原因是这本书文笔很好,部分原因是书中的忠告很有价值,即使是25年以后。当然,现在很多细节上的地方,和我们做事情的方法,都有不同。我们的工作更自动化,计算机的“马力”更强劲,但书中依然有许多好的忠告,我非常推崇这本书。这是我唯一能想起来的你能从中体会到乐趣和思想的计算机科学书籍。
——Brian Kernighan
年轻的软件工程师、吝啬的研究生、懒惰的软件老手常请我标示出迄今为止最好的软件图书。“如果我带着仅有的一本计算机书在沙漠荒岛上,”他们问,“应该是哪本书?”这是个荒谬的问题,但人们坚持要个答案。假如你真的被放逐到这样的小岛(或者你决定躲藏到这样的地方去避免2000年软件崩溃的恐惧!),《人月神话》应该紧随着你。
——Ed Yourdon
二十五年后,我们仍然读这本书,学习它。在业界,大部分书六个月后就无用了,这本书则是空前的。记住,虽然,最终会有书能达到它的水平。
——Jason Bennett
出版于1975年的《人月神话》是软件开发方面的经典作品。1995年版包括了令人感兴趣的新的几章,但原来的随笔依然是这本书的心脏与灵魂。在这本书中,Brooks解决了如何组织和管理大规模编程项目的问题。这些项目要求成百上千的程序员,产生几百万行代码(想想SAP、Oracle数据库引擎、Windows2000)。Brooks简洁、清晰的作品读起来令人愉快。如果你是个程序员,如果你和程序员一起工作,如果你管理程序员,你应该阅读这本书。
——Frank Chance