9.2
9.2 指标定义与公式参考
本书中的每一个公式,汇集在一处。每个词条都标明了包含完整讨论(包括其操纵风险和护栏)的主题。把这当作一份快速查阅工具,而不是主题本身的替代品。
流动指标(第2部分)
| 指标 | 公式 | 主题 |
|---|---|---|
| 流动速度 | 单位时间内完成的流动项数量 | 2.3 |
| 流动分布 | (某一流动项类型的已完成条目数)/(总已完成条目数)× 100% | 2.3 |
| 流动时间 | 从一个流动项进入价值流,到它被交付之间的时间 | 2.4 |
| 流动负载 | 价值流中当前活跃或等待中的流动项数量 | 2.4 |
| 利特尔法则 | 流动负载(在制品)= 到达率 × 流动时间(周期时间) | 2.4、2.7 |
| 流动效率 | 主动工作时间 / 总耗用时间 × 100% | 2.5 |
| 周期时间 | 各阶段持续时间之和:编码 + 领取 + 评审 + 测试 + 部署 | 2.6 |
| 利用率 | 到达率 / 服务率 | 2.7 |
| 完全准确率(%C/A) | (下游无需返工即可使用的单位数)/(总单位数)× 100% | 2.8 |
| 累积吞吐良率 | 第1阶段的%C/A × 第2阶段的%C/A × … × 第N阶段的%C/A | 2.8 |
| 节拍时间 | 可用工作时间 / 该时期内的客户需求 | 2.8 |
| 首次评审时间 | 从拉取请求被打开,到评审者第一次实质性回应之间的时间 | 2.9 |
| 部署频率 | 单位时间内成功的生产环境部署次数 | 2.10 |
| 变更交付周期 | 从首次提交,到成功部署至生产环境之间的时间(报告中位数和第90百分位数) | 2.10 |
| 变更失败率 | (导致失败的部署数)/(总部署数)× 100% | 2.10 |
| 故障部署恢复时长 | 从故障被发现,到服务真正恢复之间的时间 | 2.10 |
开发者体验(第3部分)
| 指标 | 公式 | 主题 |
|---|---|---|
| 专注时间 | 根据日历数据,每周不受打断的两小时以上时段的数量和时长 | 3.6 |
| 回收率 | (收到的调查回答数)/(发出的调查邀请数)× 100% | 3.7 |
代码与质量(第4部分)
| 指标 | 公式 | 主题 |
|---|---|---|
| 圈复杂度 | 控制流中的独立路径数(边数 − 节点数 + 2,依据McCabe) | 4.1 |
| 测试覆盖率 | (被测试执行的行数/分支数)/(总行数/分支数)× 100% | 4.2 |
| 变异杀死率 | (被测试套件杀死的变异体数)/(引入的变异体总数)× 100% | 4.2 |
| 代码变动量 | 在一段时期内,每个文件新增 + 修改 + 删除的行数 | 4.3 |
| 热点分数 | 变动量 × 复杂度,按文件排序 | 4.3 |
| 债务背负成本 | 不修复一项条目所估算的持续成本(相关工作变慢、缺陷风险升高) | 4.5 |
产品与业务(第5部分)
| 指标 | 公式 | 主题 |
|---|---|---|
| 逃逸缺陷率 | (按严重程度加权的逃逸缺陷数)/(交付单位或时间单位) | 5.1 |
| 初始采用率 | (至少尝试过一次这项功能的用户数)/(目标受众数)× 100% | 5.2 |
| 留存采用率 | (N周后仍在使用这项功能的用户数)/(最初尝试过它的用户数)× 100% | 5.2 |
| 单位成本 | 总成本(人力 + 基础设施 + 工具)/ 有意义的单位(客户、交易) | 5.4 |
| 投资回报率 | (总收益 − 总拥有成本)/ 总拥有成本,以一个范围呈现 | 5.5 |
可靠性、运营与安全(第6部分)
| 指标 | 公式 | 主题 |
|---|---|---|
| 错误预算 | (1 − 服务水平目标)× 时间窗口(例如,30天的0.1%约为43分钟) | 6.1 |
| 错误预算消耗率 | 已消耗的错误预算 / 分配的错误预算,在一段给定的窗口内 | 6.1 |
| 平均检测时间(MTTD) | 从事件开始,到被检测到之间的时间 | 6.2 |
| 平均确认时间(MTTA) | 从事件通知,到被确认之间的时间 | 6.2 |
| 平均恢复时间(事件,MTTR) | 从确认,到服务真正恢复之间的时间 | 6.2 |
| 待命呼叫分布 | 在一段滚动窗口内,每个个人收到的呼叫次数(而不是团队平均值) | 6.3 |
| 漏洞补救时间 | 从发现,到真正补救之间的时间,按严重程度跟踪 | 6.4 |
使用这些公式的说明
- 始终把一项速度或产出公式与它的护栏配对(主题 1.2):变更失败率与部署频率、交付周期配对;逃逸缺陷率与交付速度配对;错误预算消耗与部署活动配对。
- 对基于时间的公式,使用中位数和百分位数,而不是均值(主题 1.6),除非一个公式明确要求使用均值。
- 每一个公式都需要一个有文档记录的来源系统和收集方法(主题 1.5),与它的数学定义并存;两个团队从不同来源计算同一个公式,产生的数字将无法比较。
- 严重程度加权并没有在上面每一个公式中明确显示, 但在任何出现”按严重程度加权”字样的地方都适用;完整的分类方案请参见相应主题。