如何处理技术债

1.什么是技术债

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

2.技术债的类型

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

3.技术债的后果

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

4.技术债的起源

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

5.技术在必须加以管理

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

6.偿还技术债

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

7.手段

  • 熟悉系统的业务

  • 熟悉系统的代码

  • 挖掘系统存在的技术债

  • 找到技术债后,做汇总,做评估,做测试

  • 向上级反馈技术债,争取资源去消灭技术债

  • 上线新方案,统计新方案与旧方案的对比,使得个人的价值得到更多的认可

  • 一边做日常工作,一边做技术债的工作,千万不能忘了日常的工作重心陷入天天抱怨系统的技术债中

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

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

原文链接

如何处理技术债

上次更新: 8/3/2019, 6:28:42 PM