3153 字
约 10 分钟
14
S21-A14 · 技术预算的申报:怎么证明这笔钱该花

预算季报了个数字,回来被砍了一半。复盘时会发现一个规律:被砍的往往不是最贵的项目,而是最没有结构的项目——数字有了,拆解没有;理由有了,后果没有;一次性和持续混在一起,评审只能凭印象砍一刀。

申报预算的实质不是要钱,是让评审在有限时间里能把你的支出和别人的支出放在同一把尺子上比较。这篇给的是这把尺子的结构,以及它在什么情况下不适用。


1. 三种性质的预算,论证方式完全不同

性质 典型项 论证依据 为什么容易被砍
维持现状 存量机器、许可续费、值班人力 停掉的后果 没有故事,看起来"不花也行"
消除风险 容灾、备份、隔离、升级 概率 × 影响 × 时长 后果没发生过,难以验证
获取能力 新平台、新链路、新工具 验证点与信号 收益在远期,本期只看到支出

把三种混在一张表里报,是申报失败的头号原因:评审看到的是一个总数,只能按比例砍,而按比例砍永远先砍最"说不出话"的那几项——恰好是维持现状。

// 一张表分三段报,别混成一个总数
维持  C_keep   论证:停掉后的后果与替代成本
风险  C_risk   论证:不投时的失效时间(见第 3 节)
能力  C_new    论证:多久能看到第一个信号(见第 4 节)
─── 三段各自单独一行合计,评审可以对段砍,而不是对总数砍

2. 维持性支出最容易被砍,因为它没有故事

维持性支出的论证只有一个方向:停掉会怎样。而"会怎样"必须写成可核对的算式,不是"业务会受影响"。

说法 砍掉之后的实际后果 是否可验证
"这是线上机器,不能停" 停掉当天全站不可用 可验证,但像威胁
"许可到期就不能升级" 到期后无法打补丁,漏洞暴露窗口无限延长 可验证
"值班总得有人" 故障响应从分钟级退化到小时级 可验证,需给出历史数据
"业务会受影响" 不可验证 不可用
// 维持性支出的算式:三行写完,别写成段落
停掉项:ITEM
直接后果:SERVICE 在 T 时间内不可用 / 无法满足 CONTRACT 条款
替代路径:备用方案是 ALT,成本 C_alt(通常高于维持成本)
结论:维持成本 C_keep < 替代成本 C_alt,差额为 D
─── 若 C_keep ≈ C_alt,这项就该被砍,而不是被辩护

最后一行是最有用的自查:维持性支出如果算下来不比替代方案便宜,它维持的其实是习惯,不是能力。

"去年花了多少"是最弱也最常用的依据。它只能说明历史规模,不能说明合理规模;把它当前置论证,等于把过去的判断当成今年的标准,而约束条件每年都在变。正确用法是作参照:去年 C,今年 C + Δ,Δ 的每一块对应上面三段中的一类,能说清就可以。


3. 消除风险的投入:必须给出失效时间

风险类预算最容易被当成"以防万一"砍掉,因为它没有发生。破解办法是给出不投的话什么时候会出事——一个时间点,而不是一种可能性。

风险项 概率量级 最坏影响 失效时间(不投) 依据
容量触顶 高 限流,核心接口不可用 约 N 个月,按当前增速 容量趋势线
单点依赖 中 依赖方故障即全站不可用 下一次依赖方变更时 变更记录
备份不可恢复 中 数据永久丢失 下一次真实恢复演练时 演练记录
版本停止维护 高 无法打安全补丁 官方 EOL 日期 官方公告
// 风险预算表:每个风险必须能填满五行,填不满的不进预算
risk:
  item: RISK_ITEM
  probability: "high|medium|low"      // 量级即可,不给假精确的小数
  impact: "受影响的 SERVICE / 条款 / 数据范围"
  failure_by: "DATE 或事件触发条件"    // 这是关键字段,缺它等于没论证
  cost: C_risk
  fallback: "不投时的降级方案与它的成本"

写上"失效时间"还有一个副作用:它会逼你承认有些风险本期不打算处理。这不是弱点,是把"没做的事"也纳入视野——评审最怕的从来不是你没做完,而是你不知道自己没做。

概率给量级而非小数,是同一个道理:0.3% 这种数字在评审眼里不是精度,是伪装。风险的真实分布依赖历史样本,样本只有几十次时,任何小数位都是噪声。量级(高/中/低)+ 判断依据(趋势线、变更记录、官方 EOL 日期)已经够用来排序,而预算评审需要的正是排序。

概率写法 评审的反应 后果
"约 0.3%/年" 追问怎么算的 答不上来,整份材料可信度下降
"高:按当前增速 N 个月内触顶" 接受,直接进排序 可讨论
"低:同类系统近年无先例" 接受,降序处理 可讨论

4. 获取能力的投入:必须给出验证点

能力类预算的问题是收益在远期。唯一的解法是把"看到信号的时间"提前,并把停止条件一起写进去。

投入 第一个信号 观察窗口 停止条件
新链路/新平台 有一个真实业务迁上去跑通 1 个季度 窗口内无人迁入则止血
工具链替换 单次构建/发布耗时下降 4 周 耗时无变化则回退
数据能力 有一个决策用它替代了人工统计 1 个季度 无替代案例则缩范围
人力增补 交付吞吐上升可测 2 个季度 吞吐无变化则不加第二个
// 阶段化申报:能力类预算分批给,每批对应一个验证点
第 1 批 C1  → 验证:SIGNAL_1 在 W1 内出现
第 2 批 C2  → 前提:第 1 批验证通过,否则终止,不再申请
─── 一次性要全额,等于要求评审为未验证的假设全额付费

分批申报听起来像自我削弱,实际相反:它把"要不要继续"从一次艰难的决定,变成一次例行检查。


5. 数字要能拆到可核对项,一次性和持续必须分开

拆解项 内容 可核对来源
人力 人月 × 单价,按角色分 人力单价表、排期
机器 规格 × 数量 × 时长 云报价单、账单
许可 节点数/席位 × 单价 × 年限 供应商报价
外部服务 调用量 × 单价,含阶梯 计费文档
迁移与联调 一次性人力 + 停机成本 排期与历史项目
// 报数格式:一行一项,必须带来源
人力   H 人月 × P 元/人月 = C_h        来源:人力单价表 V
机器   2 × SPEC × 12 月 = C_m          来源:QUOTE_ID
许可   3 年 × SEATS = C_l              来源:报价单第 N 页
外部   N 次/月 × U 元 = C_e            来源:计费文档
─── 一次性 = C_h(迁移部分) + C_l       持续 = C_m + C_e + 人力常驻

分清一次性与持续,还有一个连带决策:折扣与预留实例。三年预留通常单价更低,但换来的是锁定——如果规格可能变、用量可能降、供应商可能换,折扣省下的钱会在迁移时被吐回去。判据是:锁定时长 ≤ 你对这项需求有把握的时长,超过就不划算。


6. 超支的来源与处理,比预算数字更影响信任

超支来源 早期信号 处理
流量增长超预期 单位成本不变但总量上升 及时改口径:这是业务增长,不是浪费
依赖涨价 供应商账单单价变化 重算阶梯,评估替代
范围蔓延 项目边界外的需求进入本期 拆出本期,另立申请
隐性项漏报 出现未列入的账单行 补入清单并公开说明
// 超支复盘:三段,20 行以内,先给结论
1. 超了多少,超在哪一项(按第 5 节的拆解口径)
2. 属于哪一类:增长 / 涨价 / 范围 / 漏报
3. 本季度已做的动作 + 下季度是否重复
─── 超支后沉默,比超支本身伤害更大:下次申报会被按最坏情况打折

四个度量:预算达成率(实际/申报)、超支率、单位成本趋势(每千次请求或每活跃用户)、被砍项的回补率(砍掉的项后来是否被迫追加)。第四个最容易被忽略,却最能说明上一轮砍得对不对。

排错:预算被砍之后才发现的六种问题

现象 根因 处理
被按比例统一砍 报了总数,没分段 拆成维持/风险/能力三段
维持项被砍完又来补 没给"停掉的后果"算式 补替代成本比较
风险项被说"没发生过" 没给失效时间 补 failure_by 与依据
能力项被要求"先证明" 没给验证点与窗口 补第一个信号与停止条件
评审问"去年花了多少" 只给了历史,没给结构 历史只作参照,别作依据
年中被迫二次申报 一次性与持续混报 分开报,持续项单列

边界:这些情况正式申报可简化

场景 为什么 做法
预算规模远小于审批成本 走流程消耗的人力更贵 按额度内自主处理,年度汇总说明
支出完全按需结算 没有额度分配问题 只做用量预警与月度说明
组织没有预算制度 申报无接收方 一次性说明 + 记账,别造流程
已有长期编制或框架合同 属于额度内使用 记账,不重复申报
单一项目、无横向比较 排序不构成问题 给结论与代价两段即可

自测

  1. 预算被砍时,为什么被砍的往往不是最贵的项目?
  2. 维持性支出的论证只有哪个方向,"停掉的后果"要写成什么才算可核对?
  3. 风险类预算缺哪个字段就等于没论证?这个字段为什么能逼出"本期不处理"的坦白?
  4. 能力类预算为什么要分批报,分批为什么反而更容易通过?
  5. 三年预留折扣在什么条件下不划算?判据那句话怎么写?
  6. 超支持续沉默的代价是什么,为什么它比超支本身更伤?
S21-A14 · 技术预算的申报:怎么证明这笔钱该花
https://www.clxhxhhr.top/posts/6335/
作者
clxstart
发布于
2024-12-31
许可协议
CC BY-NC-SA 4.0
评论
0 条
还没有评论,先写一条吧。