吐槽:低质量代码对业务影响最大


对 39 个专有生产代码库的定量研究结果:开发人员花费更多的时间来解决低质量源代码中的问题。对于类似复杂性的更改,低质量代码的更改实现时间平均要长2倍以上。

代码质量仍然是一个抽象的概念,无法在业务层面上得到重视。
因此,软件公司不断用代码质量来换取上市时间和新功能。
据估计,由此产生的技术债务浪费了多达42%的开发人员的时间。

同时,全球范围内存在着软件开发人员的短缺,这意味着开发人员的生产力是软件企业的关键。

我们的总体任务是使代码质量成为企业关注的问题,而不仅仅是技术方面。

我们的第一个目标是了解代码质量如何影响

  • 1)报告bug缺陷的数量,
  • 2)解决问题的时间,以及
  • 3)按时解决问题的可预测性。

我们使用CodeScene工具,基于源代码分析、版本控制挖掘和来自Jira的问题信息的组合,分析了来自不同领域的39个专有生产代码库。

通过分析30,737个文件中的活动,我们发现低质量的代码包含的bug缺陷是高质量代码的15倍

此外,解决低质量代码中的问题平均需要多花124%的开发时间

最后,研究报告指出,低质量代码中的问题解决涉及更高的不确定性,表现为最大周期时间的9倍。

这项研究提供的证据表明,不能把代码质量作为一个技术问题而忽略。
由于Bug缺陷减少了15倍,开发速度提高了一倍,问题解决的时间也更可预测,高质量代码的商业优势应该是明确无误的。

banq:本论文确定低质量代码带来了困难修改,解决方案有多种:
1. 重构:提升低质量代码的质量,但是这需要阅读低质量源码,每个人思路不同,文档再齐全,如同数学题一样,不会就是不会。


2. 重写:城市每天都在施工,不是今天挖水管,就是今天挖下水道,要么挖爆自来水管,要么捅破燃气管道,这些都是不同的施工队在施工结果,能产生GDP,总比扔几颗导弹在城市里的毁坏重建要温和,把数字经济看成是一种类似铁路建设、高速公路建设的IT信息基建项目,就不会忌惮重写,重写什么前提条件都不需要,只需要印钞机印出的Money,培养了新员工,锻炼了队伍,无偏见地更深入理解了业务。