扫码阅读
手机扫码阅读

聊聊没有35岁焦虑的《人月神话》

359 2024-01-12

鼎叔的第十五篇原创文章讨论了《人月神话》的核心观点和个人启发,指出软件工程效能没有银弹,即不存在一招制敌的方法来实现效能的数量级提升。

文章首先说明了软件工程固有的难度,指出系统级软件产品的复杂性远超写一段代码,需要考虑接口、输入范围、编程风格、设计文档和彻底测试。软件产品向系统产品的转变,复杂度更是成倍增加。

接下来,文章批判了“人月”概念的误导,解释了增加人力并不能有效解决软件项目的进度偏差,因为人力资源并非直接与时间成正比,协作成本随人数平方增长,且新成员需要培训时间。

文章强调,高效的开发团队应该像外科手术团队一样运作,架构师作为团队核心,其他成员各司其职,以降低沟通成本并维持设计的一致性。提倡使用设计规范手册和建立缺陷排查日志。同时,强调技术专家应获得与管理人员相当的薪酬和福利。

在谈论设计质量时,文章指出软件维护过程中的熵(混乱)增加是不可避免的,建议架构师基于变更设计,并准备放弃不满意的原型。推荐在开发前提交测试规格说明和使用已充分调试的组件进行系统测试。

文章将软件工程的困难分为根本困难和次要困难。根本困难包括复杂度、一致性、可变性和不可见性,而次要困难的解决带来了工程效能的提升,但这些解决办法并不解决"做什么"的问题,只是促进了具体实施。

作者认为,尽管没有银弹,但通过诸如选择优秀架构师、购买第三方软件、需求精炼和快速原型工具以及采用增量开发等方法,可以显著提升软件工程效能。文章最后提到,软件工程的核心价值在于找到软件概念的本质和拥抱敏捷的态度,而非仅仅熟悉新技术。

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

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

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