(星标我们,洞见更多!)
在企业发展过程中,许多管理者都正在经历类似的疑惑:为什么给核心业务系统添加新功能所耗费的时间越来越长?为什么软件维护预算正在以惊人的速度增长?如果你也有这类困惑,那很有可能是遭遇了技术债问题。相信我,现在就要采取行动了——否则事情只会变得更糟糕。
大约30年前,开发者沃德·坎宁安首次提出了“技术债”这一术语——可以看出这并不是一个新词。这个术语描述了组织在维护他们依赖的软件时投资不足的情况,就像金融债务一样,置之不理可能会带来短期利益,但从长远来看,还是需要谨慎并确保其得到妥善管理,而且越早越好。并不是所有的技术债都是无意为之。在某些情况下,为了帮助新产品及时上市,抓住增长机会,团队会暂时把已经发现的技术债束之高阁,计划在日后找时间来修复,用速度换取详细的检查、弹性系统、风险管理等。然而,正如所有商业领袖所知:
优先事项会发生变化;只要没有发生重大事件,处理技术债的动力就会消失。
那么,如何在早期察觉到技术债呢?预警信号可能包括:
客户报告故障。如果你注意到客户投诉在增加,即使是非常小的问题,这也可能预示着有更深层的矛盾。
成本上升。技术债可能会使你的预算陷入混乱,运营成本随之上升,与此同时停机响应和补救措施也会产生成本。
延迟和错过最后期限。当你的技术债务水平很高时,对产品的更改可能需要更长的时间,因为时间成本会从新功能的发布和功能升级转移到维护问题上。
开发团队不满。如果你在人才保留方面遇到困难,可能是因为你的团队承受着技术债带来的疲劳,毕竟维护破碎的系统不如从事推动价值的创新工作那么有成就感。
修补错误会产生新问题。你可能会注意到“多米诺效应”,一个问题导致另一个问题,然后是另一个问题...当底层代码充满漏洞时,补丁和修复可能变得无效。
一旦你确定了自己的系统有技术债问题,下一步就是管理它。说起来容易做起来难。技术债之所以会如此普遍的存在,正是因为没有简单的解决方案。为什么?因为软件开发是一个复杂的任务。一个项目通常会持续数年时间,在这个过程中技术会变化,业务需求也会变化。这意味着即使项目计划得很好、管理得当、资金充足,也难免会积累一些技术债。处理技术债的一种常见方法是“贴膏药”——应用于短期修复,却无法解决根本问题。但问题是什么?从根本上说,这是企业在思考软件时存在的一个基本缺陷。普遍的认知是软件是一次性购买(或一次性开发)、然后付费维护的。维护通过补丁和错误修复让系统保持运转,直到下一个大版本问世。这突显了技术团队长期面临的一个问题,那就是他们花了太多时间保持系统运行,而不是足够的时间交付业务价值。远离这种模式的大变革早就应该到来。
组织对软件开发和维护的态度正在改变。随着越来越多的公司积极开展数字化转型,他们开始看到当前被动维护的模式与他们的业务发展需求是多么的不匹配,企业正在寻找方法来弥补这之间的差距。考虑到这一点,与其问“怎样才能摆脱我的技术债务?”,不如问“如果你的系统在设计时就考虑到变化会怎样?”
在开发应用程序时,以变化为出发点,不仅仅专注于构建阶段,而是以最小化维护的心态来处理事情。
在Thoughtworks,越来越多的合作伙伴希望我们提供端到端的服务,该服务将定制的软件开发与交付后的高级支持相结合。这就是我们推出具有进化思维的DAMO™管理服务的原因。这种方法帮助企业从数字资产中获得更好的投资回报,并提供在整个生命周期中更具弹性的软件。最终,这使得技术债更可见,也更容易管理。拥抱变革在技术领域并非总是那么容易。但我们倡导的变革能够帮助企业在快速发展的数字环境中蓬勃发展。现如今,设计软件的方式已经改变,对待维护的方式也必须跟上。
👇点击 “阅读原文” 了解DAMO™ 管理服务的详细信息,为您的关键数字应用提供动力,为业务创造更多可能。