《人月神话》阅读笔记02

将近期的对于《人月神话》这本书的阅读感悟做了一下总结:
(一)结构师的交互准则和机制 想要成功,结构师必须:   
● 牢记是开发人员承担创造性和发明性的实施责任,所以结构师只能建议,而不能支配;    
● 时刻准备着为所指定的说明建议一种实现的方法,同样准备接受其他任何能达到目标的方法;    
● 对上述的建议保持低调和不公开;    
● 准备放弃坚持所作的改进建议。
(二)自律——开发第二个系统所带来的后果
在开发第一个系统时,结构师倾向于简练和简洁。他知道自己对正在进行的任务不够了解,所以他会谨慎仔细地工作。
第二个系统是设计师们所设计的最危险的系统(真的吗?)。一种普遍倾向是过分地设计第二个系统,向系统添加很多修饰功能和想法,它们曾经在第一个系统中被小心谨慎地放在次要位置。 结构师如何避免开发第二个系统所引起的后果,从而避免画蛇添足?是的,虽然他无法跳过二次系统。但他可以有意识关注这个系统的特殊危险,运用特别的自我约束准则,来避免那些功能上的过于修饰;根据系统基本理念及目的变更,设计一些功能。
项目经理如何避免开发第二个系统所引起的后果,从而避免画蛇添足?他必须坚持至少拥有开发过两个以上的系统经验的结构师的决定。同时,保持对特殊诱惑的警觉,他可以(通过)不断提出正确的问题,确保原则上的概念和目标在详细设计中得到完整的体现。
 
(三)导致项目延期的主要原因:
首先,我们对估算技术缺乏有效的研究,更加严肃地说,它反映了一种悄无声息,但并不真实的假设——一切都将运作良好。
第二,我们采用的估算技术隐含地假设人和月可以互换,错误地将进度与工作量相互混淆。
第三,由于对自己的估算缺乏信心,软件经理通常不会有耐心持续地进行估算这项工作。
第四,对进度缺少跟踪和监督。其他工程领域中,经过验证的跟踪技术和常规监督程序,在软件工程中常常被认为是无谓的举动。
第五,当意识到进度的偏移时,下意识(以及传统)的反应是增加人力。这就像使用汽油灭火一样,只会使事情更糟。越来越大的火势需要更多的汽油,从而进入了一场注定会导致灾难的循环。

(四)作者关于软件任务的进度安排使用了很多年的经验法则:
1/3计划
1/6编码
1/4构件测试和早期系统测试
1/4系统测试,所有的构件已完成
 
 
 
原文地址:https://www.cnblogs.com/me-tts/p/5596553.html