软件技术债务是什么_为什么我爱技术债务

软件技术债务是什么

这不一定是你所期望的一篇文章,我想,标题* ,但我的粉丝的技术债务 。 这有两个原因:一个不好的理由和一个很好的理由。 首先,我将先介绍不良原因,然后解释为什么即使那也不是真正喜欢它的原因。 然后,我将解决“好理由”,您会同意。

我爱技术债务的不良原因

我们会解决这个问题,对吧? 不好的原因是,很多,很有趣,它使我工作,而且作为安全架构师,这总是为我提供参与**项目的理由,该项目可能给我带来一些好处新来看看。 我想这些都不是坏事。 这也可能会令人沮丧,因为总是有很多事情,并不总是那么有趣,有时即使我可能有更好的事情要做,我也需要参与其中。

更糟糕的是,它似乎几乎总是与安全相关,并且始终存在。 那是不好的部分。

众所周知,安全性是经常被遗弃,或在最后加紧,或在其应有的时间的一半内完成,或由半心半意却又不太了解的人完成的部分。 在这一点上我应该很清楚:我并不是说这最后的原因是那些人的错。 人们知道他们需要安全性真是太棒了 。 如果我们(安全人员)或我们(组织)在提供足够的安全资源(无论是人员,培训还是可见性)供需要的人使用时做得还不够好,那么他们正在尝试很棒,我们可以继续努力。 我们称其为肯定。 或至少有希望的理由。 ***

我爱技术债务的好理由

让我们继续讲另一个原因:合法原因。 我很喜欢技术债务的名字。

那是什么意思?

我们都知道技术债务是一件坏事。 当您出于务实的原因做出决策时会发生这种情况,而这些决策很可能会在项目的生命周期中反复出现并给您带来麻烦。 以下是一些与安全性相关的经典示例:

  • 有时无法在可能是公开的API上应用身份验证或授权控制。
  • 将功能汇总在一起,因此以后很难分离出合适的角色。
  • 硬编码角色,不允许那些可能以与最初考虑的方式不同的方式使用您的应用程序的人进行自定义。
  • 对密码协议进行硬编码的密码套件,而不是将其放入配置文件中,以便以后可以更改或选择。

当然,还有很多,但是这些只是跳出我的眼光,这些年来我已经见过。 技术债务意味着做出决策,这意味着以后需要做更多的工作来解决这些问题。 那不是很好,是吗?

前面几段中有两个词应该使我们感到高兴:它们是“决定”和“务实”。 因为,为了使某些东西被称为技术债务,它必须经过有意识的决策,并且必须进行权衡(希望出于理性原因)。 这些原因可能多种多样-缺乏合格的资源; 项目期限; 缺乏足够的需求定义-但是,如果有意识地进行了定义,则可以命名技术债务,如果可以命名技术债务,则可以将其记录在案。

如果有记录,我们就到了一半。 作为安全人员,我知道我不能强迫所有可能的事情都满足我想要的所有要求,但是对于高可用性gal,UX团队,性能人员等来说都是一样。

我们所需要的- 所有我们需要的-是存在关于制定决策原因的文档,因为当我们回到问题上时,就会知道它是经过考虑的。 而且,这些信息的记录甚至可能会被记录到产品文档中。 “该API旨在在受保护的环境中使用,并且不应在公共Internet上公开”,这是大量的文档。 可能不是客户在寻找什么,但至少他们知道如何部署产品,最重要的是,这是他们回到产品经理那里的机会,他说:“我们真的很想部署该产品在这样特定的API。能否请您将其添加为功能提出要求?” 这样的产品经理。 非常。 ****

不过,最好的事情不仅是命名的技术债务是可见的技术债务,而且如果您鼓励开发人员在代码中记录决策, *****那么他们很有可能会记录一些有关将来应该如何做。 如果您真的很幸运,他们甚至可以在代码中添加一些钩子来简化操作(API上的“ auth”参数,该参数在当前版本中未使用,但在新版本中将使API的兼容性变得更加简单;或配置文件中的密码条目,该条目当前仅接受一个选项,但至少已通过代码检查了)。

我知道,通过将技术债务定义为命名的技术债务,我有点不诚实。 但老实说,如果它没有命名,那么您将无法知道它是什么,除非知道它是什么,否则您将无法修复它。 *******我的建议是:当您要进行发布关闭(或在每周一次的谈话中—每周一次的谈话)时,有一个议程项目来记录技术债务。 命名,记录下来,感到骄傲,晚上入睡。


*好吧,除了明显的点击诱饵原因外,我对此感到有点抱歉。

**我差点写了“戳鼻子”。

***在这里和我一起工作。

****如果您是软件工程师/编码人员/黑客,这是一条建议:学会与产品经理像真实的人一样交谈,并善待他们。 当您需要确定功能的优先级或做出棘手的权衡时,它们(至少是更好的)是宝贵的盟友。

*****这样做。 去做就对了。 至少没有映射到代码中的文档不是真正的文档。 ******

******不相信我吗? 与开发人员交谈。 “谁阅读产品文档?” “哦,规格?我略过了。有几个版本发布了。我想。” “我查看了头文件;在那看不到它。”

*******或决定不修复它,这也可能是一个完全适当的决定。

本文最初出现在 安全博客Alice,Eve和Bob上 ,经许可重新发布。

翻译自: https://opensource.com/article/17/10/why-i-love-technical-debt

软件技术债务是什么

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值