【转】解决技术负债的花费:每行代码3.61美金
in 软件工程 - Hits()
来自CAST软件的Jonathan Bloom发表了一系列的博文,总结了他们公司发布的有关技术债务的报告。要点包括:
CAST估计现在公司要解决技术负债的花费是每行代码3.61美元。
在所调研的系统中,35%的技术债务已经严重影响了系统的支持和维护,它们可能导致安全、性能问题甚至威胁到正常运行。
在程序质量方面(structural quality,译者注:CAST定义了五大程序质量特征 - 稳定性、性能、安全、可移交性以及可修改性),外包软件和自行开发的软件没什么差别。离岸开发和本地开发也没很大区别。
在调研中,Java EE的应用程序最多,它们在性能方面表现糟糕,综合技术负债名列前茅。[PS:OMG,这证实了我多年的怀疑。]
在程序质量方面,成熟的开发方法比如敏捷和瀑布无疑优于其他自定义的方法,其中瀑布在“可移交性”和“可修改性”这两项上高居榜首。[PS:传统的瀑布既然高于敏捷,这有点出乎意料,为什么?]
COBOL应用程序在安全性上夺冠,而.NET则垫底。
系统模块化(Modularity of systems )可能影响质量和性能。[PS:嘿嘿]
政府系统在可维护性方面表现得最差。
代码发布越频繁,技术债台越高筑。
这是CAST第二年发布这项报告了。本年度的数据来自160家各行各业的公司。总共有745个系统参与调研,覆盖的代码量大概有365,000,000行之多。
Gartner的分析员同样披露了组织中不断滋长的技术债务问题。David Norton发表文章,把这一问题比作一颗定时炸弹,一段时期的风平浪静却会在某一刻突然爆发,给相关组织以重创。
CAST以及其他一些技术负债方面的专家都认为组织应该将技术债务纳入它们的主体预算中。2010年的时候,InfoQ就介绍过Israel Gat提出的用金钱来计算技术债务的方法。