人月神话阅读笔记01

                                                                    《人月神话》阅读笔记

  当我捧起《人月神话》,马上就被深深的吸引了。书中很多细微之处都对我的思维造成了冲击。
  保持设计的概念完整。无论对小软件还是大软件,都必须由一个设计师主导,最多两个人讨论来共同完成软件的整体设计。作为一个软件,一个系统,必须有一个清晰明确的概念模型,大家都在这个框架下工作,所有的创新发展都必须与基本的概念相吻合。具体的实现人员可以细化概念,但只有总设计者才有否定与发展基本概念的权力。需要注意的一点是,即使是总设计师一直是同一个人,他脑海中所认为理所当然的规则或者概念,很可能由于没有明确的文档化,而没有成为所有开发者共同的概念。在其他开发者编码的时候,就可能会生成与概念相抵触的东东(模块,功能,算法),导致整体结构的恶化。这个时候总设计师一定要即时发现,做出更正。
  概念的完整性,对于很多小规模软件,由于开发人员不多,开发经理一般都能控制住所有的代码,概念完整性在组织层面就维持住了。但要注意以后的Bug修改,功能扩展的时候,也要时刻留意与最初的设计是否概念上相容。对于大规模的软件系统,则必须通过树状组织结构,层层控制,总设计师还是一到两人,每一层都有对下层的绝对把握能力。我以前参加过一个15人左右的项目组,就是分为两层。感觉整体概念完整性的控制效果还不错。我没有更多人数项目的具体实践经验,希望以后能有机会参与比较大的项目。

  这本书的第二章讲述了人月神话的关系,完成工作的人数和时间是不能进行简单的互换的。因为新加入的人对原有的项目不了解,需要花时间培训,读后感交流,同时新人也有可能对原有的设计有不同的意见,这些都会导致任务的进度大打折扣。“向进度落后的项目中增加人手,只会使进度更加落后”,是这本书作者布鲁克斯得到的结论。
  我觉得开发一个软件,要有合理的时间进度安排,项目开发的人员少而精,团队开发之前要提前交流,开发的时候要持续的沟通,合理的分配任务工作。所有只有在一个团队沟通了解,通力协作和努力下,才能更好的完善项目。

原文地址:https://www.cnblogs.com/Lizhichengweidashen/p/14331253.html