第七周读书笔记

这周阅读的书目是传说中的《人月神话》的部分章节,首先终于懂了这个充满玄幻小说色彩的名字是什么意思,人月指的是一个人一个月的工作量;然后对于团队项目开发的效率和构成有了新的认识,果然这本书的见解十分的独特也很精辟。

关于工程量估算方面,对于新手尤其是初学者,往往认为主要时间在于编程的实现,其实恰恰相反,主要时间多应该放在“写代码之前和写代码之后”,这里指的是关于程序架构的合理规划构思、算法实现以及工作的合理划分,最后是所有工作的整合测试,这些往往需要占到一大半的时间,这些我们现在也深有体会,虽然现在的工程量都非常小,但是“一天编程,三天debug”的体验也是刻骨铭心。作者把对时间的不合理估计看作是过度的乐观主义,导致我们在物理戒指和思路上不够完善,最后出现问题是往往也会归咎于这些物理介质,如硬件和人员效率上等,所以管理者也往往会从错误的角度出发来解决这些出现的问题,殊不知让问题变得更加糟糕,比如会在工作不能按时完成时就增加人手,其实适得其反,因为软件编程不像是收割稻谷采摘棉花这种不需要交流可以各自独立的简单工作,软件编程是一个高度依赖于团队沟通协作的项目,而且未完成的工作往往也高度依赖于已完成的工作,所以一个项目中新加进来的人员需要大量的时间去熟悉项目和别人沟通交流然后才能从事一些简单的工作增减效率的目的完全没有实现。所以当任务由于次序的限制不能分解的时候,人手的添加对进度没有帮助。

对于项目量和人手安排上书中也给出了合理地规划方式,并称之为外科手术队伍,主要描述了一个高效的团队应该怎样的组成,包括丰富经验的行业资深者,包括编程者,维护人员等都进行了详细的描述,我觉得更为重要的是书中关于这样的团队应当怎样的工作的描述, 在十个人中,其中七个专业人士在解决问题,系统是三个人的思考的产物,这样在概念上能达到客观的一致,每个团队由“外科医生”(经验资深者)总揽大局,必须了解所有的设计和全部的代码,确保工作概念上的完整性,然后当团队出现问题冲突的时候,要由“外科医生”和副手来进行抉择,避免了大家七嘴八舌的进行讨论,降低效率。总得来说就是,这种不分解问题并对团队进行分级的团队组建使队伍能达到客观的一致性。

posted @ 2018-04-19 21:40  ToumaKazusa3  阅读(165)  评论(1编辑  收藏  举报