对于开发人员来说,软件开发过程从未结束。无论是自然的还是突然的功能需求,它都将成为一笔尚未成形且难以定义的债务。因此,需要制定还款规则。
开发人员过去并不担心。他们创建了一个文件,并根据自己的想法开始编程。然而,对于今天的大多数开发人员来说,他们可以自由地做任何他们想做的事情并且不受阻碍的日子已经一去不复返了。如今,许多软件开发都处于修改、扩展、增强和开发的过程中。开发人员通常会完成以前由他人完成的工作。还有所谓的技术债务。
“技术债务”是指尚未完成的事情。欠下的债务是,人们必须回顾过去,通过修补或填补缺口来纠正错误,这可能是上周、上月甚至几年前就已经完成的。
在计划阶段,这个术语经常被遗忘。利益相关者已经在酝酿新的功能和增加更多的功能,但是如果有人不提升它们,原来增强的功能将永远无法充分发挥其潜力。丢失或损坏的代码将在错误的时间失败,从而给他们带来麻烦。
这个术语中棘手的部分是“债务”,它表示一种义务和契约,有时是道德的,有时是法律的。如果债务人不能偿还债务,他们可能会面临牢狱之灾,但在软件业,技术债务可以说是另一种牢狱之灾。
以下是软件堆栈中技术债务的12个秘密。
1.技术债务并不是天生就坏
2.技术债务确实是无限的
3.并非总是欠着技术债务
4. 没有人真正讨债
5.技术债务有时可能像金融债务一样
6.技术债务可能是政治幻想
7.技术债务有时像皮疹一样消失
8.技术债务很难确定
9.技术债务通常只是表面上的文章
10.技术债务从未清算
11.技术债务不是数字,因此难以衡量或跟踪
12.技术债务可能是一个机会
团队的一些成员说,“技术债务”真的是债务吗?还是这正是某人想要的?你欠用户什么?因此,很难确定技术债务。
有时,“技术债务”栏中的函数只是一篇肤浅的文章。这对经理来说总是个问题。有些问题需要仔细编写大多数当前的软件堆栈,而有些问题可以通过对当前代码库进行一些巧妙的重新打包来消除。挑战在于如何判断什么听起来像是技术问题,并做出实际决策来提供低成本的功能。
作家喜欢技术债务,因为它们能促进主要人物的发展并有令人满意的解决方案。例如,在电影中,尼克·凯奇发誓他一生中必须偷50辆车。偷了49辆车后,他还欠着钱。当他偷了第50辆车时,他的债务被还清了,但他因此被判入狱。
技术债务不一样。可以肯定的是,一旦您开始接受XML文件,就不会再收到任何显式的请求。对这一新功能的技术支持将取代对XML输入的请求。新的代码产生了新的问题,技术债务通过新的代码得以解决。
虽然货币债务可以用数字来衡量,但技术债务无法衡量。当然,敏捷团队会试图计算达到某一点所需的“点数”。聪明的经理将能够以小时为单位估算开发人员的时间。但这些都是猜测,任何事情都有可能发生。
有个笑话说,如果有人欠银行10万美元,他们会有麻烦,但是如果他们欠银行1亿美元,他们可能会有麻烦。一些开发人员可能会谈论技术债务,但这更像是客户和供应商之间的游戏。
如果有人能在其他地方做生意,他们需要得到它。那么最好修复它的代码。然而,如果有人确实需要一个软件栈并且不能容易地迁移,那么技术债务可能确实是一个增加对用户销售的技术机会,但是用户将为新功能支付多少呢?
极牛网精选文章《技术债务的12个秘密》文中所述为作者独立观点,不代表极牛网立场。如若转载请注明出处:https://geeknb.com/4348.html