扫码阅读
手机扫码阅读

聊聊Fred Brooks的《人月神话》

275 2024-01-30
《人月神话》摘要

《人月神话》摘要

《人月神话》是Fred P. Brooks的经典著作,其核心观点质疑软件工程是否存在能显著提高效能的“银弹”解决方案,并得出结论认为并不存在可以使研发效能成指数级提升的单一工具。

软件工程的固有难度

软件产品的开发较硬件产品和简单任务更为复杂,涉及定义接口、处理输入范围、编程风格、设计文档和测试。系统级产品更是复杂,考虑交互程序的集合,接口规范,性能和系统资源限制。

“人月”概念的误导

项目资源和进度常使用“人月”衡量,但实际上增加人手并不能有效追赶进度。这是因为人数增多导致交流成本上升,新人培训耗时,以及项目进度偏差通常是逐日累积的。

有效的开发团队构建

高效团队类似手术团队,由架构师(主刀医生)领导,成员各司其职,通过简单直接的交流减少交接成本。设计规范和缺陷排查日志对降低沟通成本和维持团队纪律至关重要。

软件设计的质量

软件设计过程中应注重减少熵,而在维护阶段则要应对熵的增加。架构师应基于变更设计可弃用的原型产品,以适应用户满意度。系统测试应使用已调试的组件以节约时间,同时应声明已知BUG,聚焦新问题。

根本与次要困难

软件工程的困难可分为根本和次要困难。根本困难源自软件的复杂性、一致性、可变性和不可见性;次要困难涉及具体实现的技术,尽管可以提高特定任务的效能,却无法解决根本问题。

提升工程效能的策略

尽管没有银弹,但可以通过招募优秀架构师、购买第三方软件、引入需求精炼工具和进行增量开发来提升效能。

工程师的35岁悖论

对于工程师35岁后学习新技术的担忧,并非核心问题。重要的是能够把握软件概念的本质,拥抱敏捷实践,这需要长期思考和经验积累。

想要了解更多,点击 查看原文

《无测试组织-测试团队的敏捷转型》主题探讨。从打造测试的组织敏捷,到敏捷测试技术的丰富实践,从一线团队的视角来聊聊我们是怎么做的。面向未来,拥抱敏捷原则,走向高效能组织。

81 篇文章
浏览 26.7K
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设 白皮书上线