首页/开发/代码质量与评审速查/技术债分类:代码、设计、测试、环境等
技术债与度量63 条

技术债分类:代码、设计、测试、环境等

债务不止在代码:设计债(结构劣化)、测试债(缺自动化)、文档债、构建与依赖债、环境债、数据债都常见;分类的目的是找准偿还动作,不同债务的偿还手法完全不同。

技术债有哪些类型

债务不只在代码里:设计债(结构劣化、依赖成网)、测试债(缺少自动化、用例脆弱)、文档债、构建与依赖债(版本陈旧)、环境债(构建缓慢、配置漂移)、数据债(口径混乱)都常见。分类的目的是找准偿还动作——不同类型的债务偿还手法完全不同,用重构去还环境债只会白费力气。

基本信息

核心类型代码、设计、测试、依赖、环境、数据、文档
分类目的匹配偿还动作,而不是给历史作者贴标签
常见误区只盯代码债,忽略利息更高的类型
排序依据利息高低与偿还成本之比
产出形式债务清单加影响描述加排期

典型使用场景

  • 接手老系统时做一次债务盘点
  • 排期时区分哪些债务能顺手还、哪些需要专项
  • 汇报时把不同类型的债务换算成实际影响
  • 评审中识别新债务的产生源头
  • 制定季度技术改进目标时平衡各类债务

快速盘点

快速盘点
# 按类型各找三个具体症状,并标注证据
代码债:同一段校验逻辑复制到五个文件,近三个月改过三次
设计债:订单模块直接依赖报表模块,改动互锁
测试债:核心计价逻辑没有自动化用例,只能人工回归
依赖债:主版本落后两个大版本,安全补丁缺失
环境债:构建耗时 25 分钟,本地与线上配置不一致

常见类型与症状

类型症状偿还方向
代码债重复、命名混乱、坏味道密集重构手法加评审约束
设计债依赖成网、边界模糊模块化与端口划分
测试债缺自动化、用例脆弱补特征测试与分层
依赖债版本陈旧、生态脱节小步升级加锁定版本
环境债构建缓慢、配置漂移基础设施即代码
排期靠利息而不是靠讨厌程度:先算每类债务在工单耗时、缺陷与发布节奏上造成的实际成本,再决定投入顺序。
只盯代码债会漏掉利息更高的设计与环境债:构建慢一小时、配置靠手工改,每天都在消耗团队时间,却常被当成理所当然。

易错点

  • 只盯代码债:设计与环境债的利息更高,长期被忽略
  • 分类后不排序:清单越长越没人看,最后整张单子被搁置
  • 把债务当道德问题:指责历史作者而不是找产生机制,新债务继续产生
  • 只记录不量化:没有影响描述,排期时抢不到资源

数据来源与参考

  • 技术债分类的工程综述(Sonar 白皮书、软件工程文献综合)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌