在软件领域,很少能有像《人月神话》一样具有深远影响力和长销不衰的著作。布鲁克斯博士为人们管理复杂项目提供了颇具洞察力的见解,从宏观角度有层次地分析了软件工程的方方面面,不仅逻辑严谨,而且颇具文化底蕴。《人月神话(纪念典藏版)》内容主要来自布鲁克斯博士在IBM公司研发并管理System/360计算机家族和OS/360软件支持包期间的项目管理经验,该项目堪称软件开发项目管理的典范。
《人月神话(纪念典藏版)》英文版一经面世,即引起业内人士的强烈反响,后译为德、法、日、俄、中、韩等多种文字,成为软件开发和管理人员的必读经典。
......(更多)
小弗雷德里克·P.布鲁克斯(Frederick P. Brooks, Jr.1931—2022),图灵奖得主、美国国家科学院院士,对计算机体系结构、操作系统和软件工程做出里程碑式贡献的计算机科学家。
布鲁克斯博士于20世纪60年代初主持与领导了被称为人类从原子能时代进入信息时代的标志的IBM/360系列计算机的开发工作,取得辉煌成功,被认为是“IBM 360系统之父”。布鲁克斯博士创立了北卡罗来纳大学的计算机科学系,并于1965—1985年担任系主任。他还曾任职于美国国家科技局和国防科学技术委员会。
布鲁克斯博士作为硬件和软件的双重专家和出色的教育家始终活跃在计算机舞台上,因其专业成就和对计算机体系结构的卓越贡献而屡获表彰,包括美国国家技术奖、ACM杰出服务奖、ACM Fellow、ACM Newell奖、IEEE McDowell奖、计算机先驱奖、冯·诺伊曼奖、富兰克林学会鲍尔奖、图灵奖等。
......(更多)
目 录
第1章 焦油坑 / 001
编程系统产品 / 003
职业的乐趣 / 005
职业的苦恼 / 006
第2章 人月神话 / 009
乐观主义 / 011
人月 / 013
系统测试 / 016
空泛的估算 / 018
重复产生的进度灾难 / 019
第3章 外科手术队伍 / 025
问题 / 027
Mills的建议 / 029
如何运作 / 032
团队的扩建 / 033
第4章 贵族专制、民主政治和系统设计 / 035
概念的完整性 / 037
获得概念的完整性 / 038
贵族专制统治和民主政治 / 039
在等待时,实现人员应该做什么 / 042
第5章 画蛇添足 / 047
结构师的交互准则和机制 / 049
自律—开发第二个系统所带来的后果 / 050
第6章 贯彻执行 / 055
文档化的规格说明—手册 / 057
形式化定义 / 058
直接整合 / 061
会议和大会 / 061
多重实现 / 063
电话日志 / 064
产品测试 / 064
第7章 为什么巴比伦塔会失败 / 067
巴比伦塔的管理教训 / 069
大型编程项目中的交流 / 070
项目工作手册 / 070
大型编程项目的组织架构 / 074
第8章 胸有成竹 / 079
Portman的数据 / 082
Aron的数据 / 083
Harr的数据 / 084
OS/360的数据 / 085
Corbató的数据 / 086
第9章 削足适履 / 087
作为成本的程序空间 / 089
规模控制 / 090
空间技能 / 092
数据的表现形式是编程的根本 / 093
第10章 提纲挈领 / 095
计算机产品的文档 / 097
大学科系的文档 / 099
软件项目的文档 / 099
为什么要有正式的文档 / 100
第11章 未雨绸缪 / 103
试验性工厂和增大规模 / 105
唯一不变的就是变化本身 / 106
为变更设计系统 / 106
为变更计划组织架构 / 107
前进两步,后退一步 / 109
前进一步,后退一步 / 111
第12章 干将莫邪 / 113
目标机器 / 116
辅助机器和数据服务 / 118
高级语言和交互式编程 / 121
第13章 整体部分 / 125
剔除bug的设计 / 127
构件单元调试 / 129
系统集成调试 / 132
第14章 祸起萧墙 / 137
是里程碑还是沉重的负担 / 139
“其他的部分反正会落后” / 141
地毯的下面 / 142
第15章 另外一面 / 147
需要什么文档 / 150
流程图 / 152
自文档化的程序 / 156
第16章 没有银弹—软件工程中的根本和次要问题 / 163
摘要 / 165
介绍 / 165
根本困难 / 166
以往解决次要困难的一些突破 / 171
银弹的希望 / 172
针对概念上根本问题的颇具前途的方法 / 181
第17章 再论“没有银弹” / 189
人狼和其他恐怖传说 / 191
存在着银弹—就在这里 / 191
含糊的表达将会导致误解 / 192
Harel的分析 / 195
Jones的观点—质量带来生产率 / 201
那么,生产率的情形如何 / 201
面向对象编程—这颗铜质子弹可以吗 / 203
重用的情况怎样 / 205
学习大量的词汇—对软件重用的一个可预见但还没有被预言的问题 / 208
子弹的本质—形势没有发生改变 / 209
第18章 《人月神话》的观点:是与非 / 211
第19章 20年后的《人月神话》 / 235
为什么要出版20周年纪念版本 / 237
核心观点—概念完整性和结构师 / 238
开发第二个系统所引起的后果—盲目的功能和频率猜测 / 240
图形界面的成功 / 243
没有构建舍弃原型—瀑布模型是错误的 / 247
增量开发模型更佳—渐进地精化 / 249
关于信息隐藏,Parnas是正确的,我是错误的 / 254
人月到底有多少神话色彩?Boehm的模型和数据 / 256
人就是一切(或者说,几乎是一切) / 258
放弃权力的力量 / 259
最令人惊讶的新事物是什么?数百万的计算机 / 262
全新的软件产业—塑料薄膜包装的成品软件 / 264
买来开发—使用塑料包装的成品软件包作为构件 / 267
软件工程的状态和未来 / 269
结束语 令人向往、激动人心和充满乐趣的50年 / 271
......(更多)
系统开发的时间安排 1/3 计划 1/6 编码 1/4 构件测试和早期系统测试 1/4 系统测试,所有构件已完成 需要特别指出的是,不为系统测试安排足够的时间简直就是一场灾难
乐观主义 所有的编程人员都是乐观主义者。… “这次她肯定会运行的” “我刚刚找到了最后一个错误” 人月 第二个谬误是在估计和进度安排中使用的工作单位﹣人月。暗示着时间和人员可以相互替换。
......(更多)