人月神话阅读笔记01

第一章焦油坑

焦油坑的来源是作者看动物世界时,那些史前动物进入焦油坑中越是挣扎越是难以自拔,最终只能慢慢沉下去。借以比喻程序员在完不成任务时就要加派人员,但是越加派人员越是让完成目标遥遥无期,因为人们忽略了重要的问题,人和月是不能互换的。增加人手之后人和人之间的交流变得更为复杂,问题也更为复杂。也就是说当工期不能完成是最好的办法并不是增加人手而是,削减功能,或者其他。

第二章人月神话

造成项目之后的最主要的原因是不好的进度安排,其中有两个原因,第一个程序员总是乐观的任务程序会按照预定的方向进行,但是事实并不是这样的。第二个,用人月来记工作量。人们觉得人和月是可以互换的,但实际并不一定如此,只有毫无关联的任务才能互换人和月,当任务需要人的交流,需要人与人的关联时,增加人手并不会使时间减少。书中提出了一种新的任务计划安排,1/3计划,1/6编码,1/4构建测试早起系统测试,1/4系统测试,所有构建已完成。虽然仅仅有1/6的时间在编码,一半的时间在调试,但是这在现实中是正常的,经常有项目要花一半的时间去调试。调试的时间是最容易估计错的。

第三章外科手术队伍

外科手术队伍是只有一个主刀医师,其他的人配合他。作者将这种团队形式引入到软件队伍,为什么要引入?因为在一些大型的项目里可能要有上百个人配合。要是没有章法的一起做,交流都是一个问题。所有每个队伍只有一个主刀医师,交流时只要统一这些主刀医师的意见就可以了,大大减少了交流的成本。

第四章贵族专制、民主政治和系统设计

贵族专制是说概念的完整性必须由一个人或者几个有默契的人来定义。系统的结构师为了控制这些概念必须专制。但是创新并不是结构师自己的,实现人员也有自己的创新。有时这种模式也会遇到问题,当结构师进展缓慢,大量的实现人员只能等待。

第五章画蛇添足

讲的主要是结构师在开发第二个版本时,通常会添加一些毫无用处的功能,让用户体验下降。如何避免画蛇添足,必须坚持有两个系统以上的开发经验结构师决定。对特殊的诱惑保持警觉。在我们编软件是也要保持自律,不能添加一些毫无用处的功能,而掩盖了真正的功能。

第六章贯彻执行

不知道贯彻执行是什么意思,主要是说用手册来描述和规定每个细节。手册中的定义要是精准的。在周会和年度大会上要提出意见,进行修改。

 

posted @ 2016-06-11 16:30  键盘已坏  阅读(130)  评论(0编辑  收藏  举报