技术债预算申请审批流程可以拆成六个前后衔接的环节:建台账、定预算池、填申请单、分级审批、分配执行、季度复盘。前置条件是有一份按业务影响排序的技术债台账,否则申请缺少标的,审批也容易变成凭印象拍板。下面按流程顺序给出每个环节的输入、动作、输出和可用模板,适用于希望把技术债投入从临时争取转为年度固定机制的研发组织。
要点总览(TL;DR)
- 先建技术债台账并按业务影响与修复成本分级,让预算申请有可引用、可排序的标的,避免审批凭印象拍板。
- 预算池按研发人力固定比例预留或年度专项额度形成,再按季度切分并保留机动额度,额度规模与台账需求对应。
- 申请单统一引用台账条目,说明现状影响、处理方案、工期人力、验收标准和不处理后果;审批按金额与影响范围分级,技术、业务、财务各看各的重点。
- 批准后拆成季度或迭代额度分配表,按额度使用率、债务项关闭数、计划偏差跟踪,季度复盘并设定触发条件做滚动调整。
- 上线前核对台账、申请单、审批权限表、分配表、复盘模板是否齐备,审批角色指定到人,先选一个部门或业务线试运行一个季度。
先建台账:让技术债预算有可申请的标的
预算申请的第一个动作是建立技术债台账。台账的作用是把分散在架构、代码、运维和测试中的债务项统一登记,形成可排序、可引用、可追踪的清单。没有台账,申请单只能描述零散问题,审批人难以比较优先级,也无法判断额度是否够用。
台账建议至少包含以下字段,字段设计以“能支撑排序和预算估算”为标准,不必追求一次穷尽。
| 字段 | 填写要求 | 用途 |
|---|---|---|
| 债务项名称 | 简短、可识别,避免使用“优化一下”这类模糊表述 | 作为申请单和审批记录的引用标识 |
| 所属系统或模块 | 定位到具体服务、模块或技术组件 | 判断影响范围与责任团队 |
| 形成原因 | 如赶工期妥协、技术选型过时、需求变更累积 | 区分可预防债务与历史遗留债务 |
| 影响范围 | 涉及的业务功能、用户量、上下游依赖 | 支撑业务影响评估 |
| 风险等级 | 按故障概率与后果严重度综合评定 | 决定处理紧迫性 |
| 预估修复工作量 | 以人天或人周为单位,注明估算依据 | 支撑预算额度测算 |
| 建议处理窗口 | 如本季度、下两个季度、观察即可 | 与预算切分节奏对齐 |
台账条目需要分级,否则清单会越积越长、无法决策。常用做法是按“业务影响”和“修复成本”两个维度做二维分级:业务影响高且修复成本可控的列为必须处理;业务影响中等或成本较高的列为计划处理;影响有限、成本很高的列为观察,定期复查即可。分级结果不是永久标签,业务变化或系统演进后应重新评估。
台账要指定维护责任人,通常由技术负责人或架构负责人牵头,各团队负责人提交本团队条目。更新节奏建议每季度刷新一次,与预算复盘同步进行;出现重大故障或架构调整时可临时增补。台账条目在进入申请流程前应完成一次分级确认,避免申请单引用未评估的条目。
台账和后续的申请单、审批记录如果分散在个人表格里,追溯成本会很高。在ONES中,可以把债务项登记为工作项,用字段承载系统、风险等级、工作量估算等信息,申请单和审批意见作为关联记录留存,季度复盘时直接按状态和额度汇总,减少重复整理。
预算池怎么定:额度来源与年度切分
预算池回答的是“钱和人从哪里来”。常见来源有两种:一是按研发人力固定比例预留,即在年度研发排期中划出一定比例的人力用于技术债处理;二是按年度专项额度申请,由研发管理者在年度预算中单列一笔技术债投入。两种方式可以并用,比例预留保证基本盘,专项额度应对集中治理。
具体比例没有统一标准,需要结合组织的债务存量、系统稳定性和业务节奏确定。可行的做法是先按上一年度的故障处理投入、紧急修复工时做一次盘点,再据此提出下一年度的预留比例,经审批后写入年度研发计划。比例一旦确定,应在季度层面保持相对稳定,避免业务紧张时被随意挤占。
年度额度建议按季度或半年度切分,并保留一定比例的机动额度。切分的作用是让预算与迭代节奏对齐,机动额度用于应对突发的高优先级债务,例如线上稳定性问题暴露出的架构缺陷。机动额度不宜过大,否则会削弱计划性;也不宜为零,否则遇到突发债务只能临时挤占其他投入。
预算池规模要与台账规模对应。制定额度时,用台账中“必须处理”和“计划处理”条目的工作量合计作为参考下限,再结合团队实际可投入人力做上限约束。额度明显小于台账需求时,应在审批阶段明确取舍规则,而不是让申请单在队列中无限等待;额度明显大于需求时,说明台账登记不充分,需要补充识别。
申请单怎么写:统一表单与必填信息
申请单是把台账条目转化为预算决策的依据。统一表单的价值在于让不同团队提交的材料可比,审批人不必每次重新理解格式。建议包含以下字段,并说明每项信息的用途。
| 字段 | 填写内容 | 用途 |
|---|---|---|
| 债务项引用 | 台账中的条目编号与名称 | 建立申请与台账的关联,避免重复登记 |
| 现状与影响描述 | 当前问题表现、受影响的业务和用户、已发生的事件 | 支撑业务影响判断 |
| 处理方案 | 拟采取的技术方案概述、范围边界 | 供技术负责人评估合理性 |
| 预计工期与人力 | 总工作量、计划投入人数与时间窗口 | 支撑额度测算与排期 |
| 验收标准 | 可核验的完成标志,如故障率下降、构建时长缩短、依赖版本升级完成 | 作为执行完成和复盘依据 |
| 不处理的后果 | 风险演变趋势、可能影响的业务节点 | 支撑优先级决策 |
申请单应通过引用台账条目建立关联,而不是重新填写一遍债务信息。这样台账更新后申请单自动对应最新状态,也避免同一债务项被多个团队重复申请。若一个申请覆盖多个台账条目,应逐条列出并说明合并处理的理由。
附件要求按债务类型区分:影响面较大的债务项附上影响范围数据,如受影响的接口调用量、用户数;有过历史故障的附上故障记录和处理经过;涉及架构调整的附上简要方案说明。附件的作用是让审批人不必依赖口头补充即可做出判断,数量以够用为准。
审批怎么分级:角色、权限与决策规则
审批分级的目标是让决策落在合适的层级:小额度、影响有限的申请由团队或部门快速决策,大额度、跨系统的申请上升到更高层级。分级维度建议同时考虑金额区间和影响范围,单一维度容易漏判。
| 审批层级 | 适用情形(示例口径) | 审批角色 | 关注重点 |
|---|---|---|---|
| 团队级 | 额度较小、影响限于单一模块 | 团队技术负责人 | 方案合理性与工作量估算 |
| 部门级 | 额度中等、影响多个模块或涉及跨团队协作 | 部门技术负责人、业务负责人 | 优先级排序、与业务排期的冲突 |
| 公司级 | 额度较大、影响核心系统或涉及架构级调整 | 技术负责人、业务负责人、财务 | 投入产出、年度额度平衡 |
表中的金额区间需要结合组织研发投入规模自行设定,不宜照搬外部数值。设定时可以先统计过去一年技术债相关投入的分布,取几个自然分界点作为阈值,试运行一个季度后再调整。
各角色的评估重点不同:技术负责人看方案是否解决根因、工作量估算是否可信;业务负责人看债务对业务目标的影响程度、处理窗口是否与业务节奏冲突;财务确认额度是否在预算池内、是否需要调剂。三方意见不一致时,由最高审批层级做最终决策并记录理由。
审批时限需要明确,例如团队级三个工作日内、部门级五个工作日内给出结论。超时未处理的申请自动升级到上一层级,避免长期悬置。审批结论应记录为通过、有条件通过、驳回三种状态之一,并附上意见。驳回的申请允许在补充材料或调整方案后复议,复议次数和间隔应有约定,防止反复提交消耗审批资源。
批准之后:额度分配、执行跟踪与滚动调整
批准额度不等于自动执行。需要把批准额度拆到季度或迭代,形成额度分配表,明确每个债务项在哪个时间窗口投入多少人力和时间。分配表至少包含债务项、批准额度、计划季度、责任团队、当前状态几个字段,作为执行跟踪的基线。
执行跟踪建议关注三个指标:额度使用率,即已投入额度与批准额度的比值;债务项关闭数,即按验收标准完成并关闭的条目数量;计划偏差,即实际投入时间与计划时间的差异。指标按季度统计即可,频率过高会增加管理成本,过低则难以及时发现执行停滞。
季度复盘是滚动调整的载体。复盘内容包括:未执行或执行不足的原因,是排期冲突、人力不足还是方案变更;额度是否需要在债务项之间调剂;台账是否需要根据新的业务变化重排优先级。复盘结论应形成记录,作为下一季度分配的依据。
滚动调整需要设定触发条件,避免随意变更。常见触发条件包括:连续两个季度执行率明显偏低、出现影响核心业务的高优先级突发债务、业务目标发生重大调整。触发调整时,按原审批层级重新确认调剂方案,小额调剂可由部门级审批,涉及预算池总量变化的回到公司级审批。调整记录与原始审批记录一并留存,保证预算流向可追溯。
角色分工与各环节交付物
流程能否运转,取决于每个环节是否有人负责、有明确产出。下表汇总各角色的职责边界和对应交付物,可作为责任矩阵使用。
| 角色 | 主要职责 | 对应环节 | 交付物 |
|---|---|---|---|
| 技术负责人 | 牵头台账建设与分级,评估技术方案与工作量 | 台账、申请、审批 | 台账、技术评估意见 |
| 业务负责人 | 评估债务对业务的影响与处理优先级 | 审批、复盘 | 优先级意见、复盘结论 |
| 财务 | 确认额度来源与预算池平衡 | 预算池、审批 | 额度确认记录 |
| 研发团队 | 登记债务项、提交申请、执行处理并反馈进度 | 台账、申请、执行 | 申请单、执行记录 |
| 流程管理者 | 维护流程文档、汇总季度数据、组织复盘 | 全流程 | 分配表、复盘记录、流程文档 |
跨角色交接时需要确认方式。台账移交时确认条目完整性和分级结果;申请提交后确认审批人已收到并明确时限;批准后确认责任团队已知悉额度与时间窗口;复盘结论确认后同步给下一季度的执行方。确认动作可以通过审批记录、会议纪要或工作项状态变更完成,关键是留下可查的痕迹。
一个完整示例:从台账条目到季度复盘
以下为演示情景,用于说明流程如何串联,数值仅作示意。
某订单服务使用的核心依赖库版本已停止维护,近半年出现过两次因该依赖导致的服务异常。技术负责人在季度台账刷新时将其登记为债务项,影响范围标注为订单创建与查询链路,风险等级定为高,预估修复工作量十五人天,建议处理窗口为本季度,分级结果为必须处理。
研发团队据此填写申请单,引用该台账条目,描述两次异常的影响时长与受影响订单量,处理方案为升级依赖并补充回归测试,验收标准为依赖升级完成且连续一个月无相关异常,不处理的后果标注为后续安全补丁无法获取。附件附上异常处理记录和依赖影响面统计。
申请金额落在部门级区间,审批路径为部门技术负责人评估方案与工作量,业务负责人确认处理窗口不与大促排期冲突,财务确认额度在当季预算池内。三方在两个工作日内给出通过结论,审批记录中注明处理窗口安排在大促之后。
批准后,流程管理者将该债务项写入季度额度分配表,安排在大促结束后的第一个迭代执行。执行过程中研发团队按周更新状态,季度末统计额度使用率为百分之百,债务项按验收标准关闭。季度复盘时确认该条目已关闭,同时发现另一条观察类债务因业务量增长影响面扩大,决定在下季度重新分级并纳入计划处理,相应调剂了部分机动额度,调剂方案经部门级审批后生效。
流程上线前的完成检查
流程设计完成后,用以下清单逐项核对,确认具备运行条件再正式发布。
- 台账字段表已定稿,分级规则有书面说明,维护责任人和刷新节奏已明确。
- 预算池来源与年度切分口径已获批准,机动额度比例已确定。
- 申请单模板已发布,字段说明和附件要求清晰,与台账的关联方式已约定。
- 分级审批权限表已确定,金额区间和影响范围口径与组织实际匹配。
- 各审批层级的角色已指定到人,审批时限和超时升级规则已写入流程文档。
- 额度分配表和季度复盘模板已准备,跟踪指标口径统一。
- 滚动调整的触发条件和调整审批口径已明确。
- 首个季度试运行范围已划定,建议选择一个部门或一条业务线先行,观察申请数量、审批周期、执行率和复盘产出四项指标。
- 流程文档已发布,相关角色完成一次集中说明,明确各自在流程中的动作和交付物。
试运行一个季度后,根据审批周期是否过长、执行率是否达到预期、复盘是否产生有效调整,决定是否扩大范围或修订阈值。流程的价值在于持续运转,首版设计不必追求完备,能在下一个预算周期稳定执行即可。
常见问题
技术债台账和缺陷管理中的 Bug 清单需要分开维护吗?
建议分开维护,但允许相互引用。已确认的功能 Bug 按缺陷管理流程处理,关注复现、修复和验证;技术债台账登记的是架构、依赖、代码结构等长期问题,关注影响范围、风险等级和修复工作量。两者边界清晰,才能让预算申请指向真正需要专项投入的债务项。若某个 Bug 暴露出深层债务,可以在缺陷关闭后把根因登记为台账条目,进入预算流程。
预算池比例预留和专项额度申请,哪种方式更适合刚开始做技术债治理的团队?
起步阶段可以先采用比例预留,在年度研发排期中划出固定比例人力,规则简单、执行阻力小;同时把台账中影响较大的条目整理成专项申请,争取一笔集中治理额度。两种方式并用时,要明确专项额度覆盖哪些条目,避免与比例预留的日常投入重复计算。等流程稳定、台账数据积累后,再根据实际执行情况调整比例和专项额度的配比。
审批通过后执行率一直偏低,应该先改流程还是先调额度?
先查原因再决定。常见原因有三类:排期被业务需求挤占、人力估算偏差、方案在执行中变更。排期冲突需要在复盘时由业务负责人确认处理窗口;估算偏差要修正台账中的工作量口径;方案变更则回到技术负责人重新评估。连续两个季度执行率明显偏低时,可以触发滚动调整,按原审批层级重新确认调剂方案。直接削减额度会掩盖问题,也不利于下一轮预算申请。
分级审批的金额阈值怎么定才不至于形同虚设?
阈值要结合组织研发投入规模设定,不宜照搬外部数值。可行做法是统计过去一年技术债相关投入的分布,取几个自然分界点作为团队级、部门级、公司级的阈值,试运行一个季度后根据审批周期和申请数量再调整。阈值过低会让大量小额申请涌向高层,过高则团队级审批失去约束力。影响范围作为第二维度同时使用,跨核心系统的申请即使金额不大也应上升一级。
季度复盘发现台账条目需要重排优先级,调整记录怎么留?
复盘结论应形成书面记录,写明哪些条目调整了分级、调整依据是什么、涉及多少额度调剂。额度调剂按调整审批口径执行:小额调剂由部门级确认,涉及预算池总量变化的回到公司级审批。调整记录与原始审批记录一并留存,下一季度分配时以最新记录为准。这样预算流向可追溯,也便于年度总结时说明额度实际用在了哪里。
