人月神话阅读笔记1

发布时间 2023-04-18 18:57:46作者: 小趴菜且能喝66

第一章:需求的难题

本章主要讲述了软件开发中需求的难题,探讨了需求不明确、需求变更等问题对项目开发带来的影响和挑战。弗雷德里克·布鲁克斯指出,需求是软件工程中一个不可避免的难题,但其重要性却常常被忽略。

在项目开发前必须要明确所有关键的需求,并且发现需求变化的风险。如果没有做到这些,开发过程中就会出现各种问题,导致项目延期、超支、质量差等情况。因此,为了避免这些问题的出现,弗雷德里克·布鲁克斯敦促读者在项目开始前要花时间对需求进行彻底的分析、作出透彻的计划,并提倡在项目生命周期中积极处理变化的需求。

第二章:人月神话

在第二章中,弗雷德里克·布鲁克斯提出了一个重要的概念——“人月神话”。所谓“人月神话”,就是在软件项目开发中,增加人力并不能减少项目开发时间。

弗雷德里克·布鲁克斯说,将人力作为衡量项目的唯一标准,是一种非常错误的想法。他指出,在软件开发中,添加更多的人力,不能实现项目的快速完成。项目的进展取决于开发团队内人员之间的协作和合作,而不是仅仅增加人手数量。添加新成员会导致团队的成本上升,团队沟通效率低,进度变得不可控。

第三章:工期的延误

这一章讨论开发项目中出现工期延误后的解决方法。弗雷德里克·布鲁克斯认为延误是软件开发项目中常见的问题,但其原因和解决方法并不简单。强调过早加入新程序员会导致团队沟通的效率下降,并强调应该选择经验丰富成熟的程序员。同时建议用进度追踪系统来提高进度的预测精度。

另外,本章还讨论了如何合理地安排时间表、如何确保时效性、如何避免延误、如何在延误的情况下妥善处理。

第四章:两极分化

在本章中,作者弗雷德里克·布鲁克斯强调了开发团队内可能出现的“两极分化”现象。他指出,一群优秀的程序员的能量和效率是要远优于一群平凡常人的。这就是所谓的“两极分化”。

避免这种情况的方法包括,不停地优化团队的人员构成,增加特别优秀或有经验的成员;平衡不同区域的速度和人员构成。

第五章:程序员的艺术

本章中,弗雷德里克·布鲁克斯讨论了程序员的艺术,即写出优秀的程序。他指出,程序员的技能和技巧可以通过日积月累的实践获得,是需要不断提高的过程。

本章详细讨论了编写良好程序的标准和程式码书写的规则,以及程序员的工作态度和动机,阐述了优秀程序员所具备的核心素质,希望读者在阅读后提高程序员的意识并学习良好的ODFS(Orthogonal Design for Simplicity)进行程序设计。

第六章:软件工具

本章主要探讨了软件工具的使用。软件工具是帮助程序员提高工作效率的重要手段和辅助工具。作者弗雷德里克·布鲁克斯指出,良好的软件工具可以使程序员更高效地完成工作,保证程序质量的同时节省时间和精力。

同时,作者还讨论了如何评估不同的软件工具、如何选择合适的软件工具、如何合理地使用软件工具,并提出了合理利用软件工具的一些技巧和方法。

总而言之,《人月神话》的前六章从不同角度对软件开发过程中面临的问题进行了深入的探讨和总结。对于正在从事软件开发项目管理的读者,本书提供了重要的思维借鉴和指导,有助于他们更好地应对软件开发中的各种挑战