技术债

Posted 骆宏

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了技术债相关的知识,希望对你有一定的参考价值。

1.什么是技术债?

代码写好就提交,意味着欠债的开始。稍微欠点儿技术债的确可以加速开发速度,但前提是事后及时重写代码。如果只借不还,后果很危险。在不准确的代码上所花的每一分钟,都算是技术债的应付利息。不稳固、脆弱的代码实现所引发的债务负担,会使整个工程组织陷入裹足不前的艰难境地!

2.技术债的类型

  • 不合适的设计,比如过度设计、业务发现大变化、抽象能力不足等
  • 缺陷,不说了八阿哥...
  • 手工测试过多
  • 集成和版本管理不善
  • 缺乏平台经验
  • ...

3.技术债的后果

  • 爆发点不可逾期,哪天来个p0,就可以回家了
  • 交付时间延长
  • 缺陷数量可观
  • 开发和支持成本持续上升
  • 产品萎缩
  • 可预测性较低
  • 表现越来越差
  • 挫败感四处弥漫
  • 客户满意度降低
  • ...

4.技术债的起源

  • 如期完工的压力,不说了,每周996都开发不完的任务
  • 试图以错误的方式提高效率,
  • 试图减少测试提高效率,比如单元测试、集成测试、系统测试、白盒测试、黑盒测试不足
  • 债累债
  • 人员技术水平不足
  • 业务不熟悉,设计错误
  • ...

5.技术债必须加以管理

  • 让技术债在业务层面可见
  • 让技术债在技术层面可见
  • 统计技术债所偿还的利息,NO DATA NO BB
  • 向团队成员普及技术债的危害
  • ...

6.偿还技术债

  • 并非所有的技术债都应该偿还,比如:行将就木的产品、一次性原型、短命产品
  • 应用有债就还原则
  • 分期偿还技术债
  • 先偿还高息技术债
  • 一边做有客户价值的工作,一边偿还技术债

7.手段

  • 1.熟悉系统的业务
  • 2.熟悉系统的代码
  • 3.挖掘系统存在的技术债
  • 4.找到技术债后,做汇总,做评估,做测试
  • 5.向上级反馈技术债,争取资源去消灭技术债
  • 6.上线新方案,统计新方案与旧方案的对比,使得个人的价值得到更多的认可
  • 7.一边做日常工作,一边做技术债的工作,千万不能忘了日常的工作重心陷入天天抱怨系统的技术债中

8.解决的技术债越多,收获越多

在工作中,认识了很多风格迥异的同事,有热衷技术的技术宅,有打酱油的A员工,有热衷架构的大牛,从个人的实践来看,解决的技术债越多,个人的架构能力、抽象能力、发现问题的能力越强,自己也从技术债中受益良多...

以上是关于技术债的主要内容,如果未能解决你的问题,请参考以下文章

DevOps之静态代码扫描

技术债务(Technical debt)的产生原因及衡量解决

浅谈对技术债的理解

对于技术债:大家选择逃避,而管理者应该与他共存

混乱的代码是技术债吗

混乱的代码是技术债吗