美文网首页DevOps/SRE
度量就是为了识别价值流最大瓶颈

度量就是为了识别价值流最大瓶颈

作者: 程序员吾真本 | 来源:发表于2022-04-07 23:20 被阅读0次

要疏通一个车流量拥堵的道路,加宽堵塞点上游的道路,只会加重拥堵;让堵塞点下游的司机换道行驶,对于缓解堵塞点无济于事。只有识别并解决了最大的堵塞点的拥堵,才能改善全局的流速。

在敏捷IT研发交付中,度量的作用,就好比是在识别价值流中最大的堵塞点,以便在“价值准、流速快、质量好”这3个维度中,识别端到端价值流最大瓶颈(以及方向错误),并将其作为下一步改进点进行改进,以最大化改进成效。

原则

有效的度量,需要具备以下原则

  • 全局性价值、流速和质量指标高于局部性指标

  • 指标不要和绩效考核直接挂钩,而主要用于自我提升,否则会变为数字游戏

  • 变化趋势高于绝对值

  • 明确指标所针对的改进目标

  • 指标越多,边际收益递减

  • 当指标无法指导改进时,要果断放弃

  • 为过滤掉一些会让平均值失真的异常值,可以用P50、P80(从小到大排序前80%的数值中最大的那个值,表示80%的情况都不大于该值,符合二八原则)、P90这样的百分位值来替代平均值

角色

在研发团队中,谁来关注度量呢?

SM(ScrumMaster)可以牵头,驱动QA(Quality Analyst)、TL(Tech Lead)、BA(Business Analyst)、Architect进行度量和改进。

QA、TL和BA可以通过度量数据,识别“价值准、流速快、质量好”的瓶颈。

Architect可以通过度量数据,识别价值流中架构问题所导致的瓶颈。

SM从上面所识别的“价值准、流速快、质量好”和架构问题所导致的瓶颈中,识别当前最大瓶颈,并作为下一步改进点进行改进。

时机

度量贯穿整个迭代过程。指标需要尽早、频繁、小批地搜集。

工具

如果工具平台暂不支持自动收集,可以每个迭代用手工进行统计。由于工作量较大,只能手工收集少量的数据。

需要逐步让流水线等工具平台,实现度量数据的自动收集。

输入

已经将需求拆分成能在一个迭代内完成的用户故事,并以用户故事为单位进行度量统计。

步骤

  1. 绘制端到端价值流图

  2. 识别指标:SM召集QA、TL、BA和Architect识别适用的度量指标,选出北极星指标,并做度量收集分工,然后从下个迭代开始持续收集

  3. 迭代收集:SM驱动各角色每个迭代持续收集度量指标,并可视化变化趋势

  4. 分析回顾:SM在每个迭代的回顾会上,向所有团队成员展示本迭代度量指标数据及其变化趋势,邀请大家在价值流图前,识别价值流最大的瓶颈,作为下个迭代的改进点,并讨论对其进行改进的行动项和负责人(下个回顾会改进项负责人简述改进成效);请大家回顾度量指标是否能起到推动改进的目标,从而调整不适用的指标

输出

各个迭代所搜集的指标及其变化趋势

每个迭代回顾会上大家根据度量指标所识别的价值流最大瓶颈,以及相应的改进行动项和负责人

如果条件具备,可以将关键指标通过工具平台制作成仪表盘,并投在电视上,可视化给团队所有成员

方法

度量价值准的指标

  • 业务满意度 = 类似NPS净推荐值(问业务人员:“能在多大程度上解决你的问题”从0到10打分) = 推荐值(9~10分)占比 - 贬损者(0~6分)占比

度量流速快的指标

  • 生产环境业务系统部署频率 = 该业务系统生产环境最近几次部署(即数据中心OPs操作投产上线时点)之间的间隔时长的P80值

  • 生产环境用户故事交货时长 = 该业务系统最近几次投产用户故事交货时长(从提交第一行代码到成功投产上线之间的时长)的P80值

  • 生产环境业务系统严重故障修复时长 = 该业务系统最近几次必须尽快修复的严重故障的修复时长(从故障出现到成功修复或回滚之间的时长)的P80值

  • 迭代变更率 = 迭代内变更(迭代内经过了开卡且已经提交代码库的故事,发生了必须在本迭代完成的变更,且变更总量超过原故事20%的故事点数)的用户故事总点数 / 迭代内全部用户故事点数

  • 迭代完成率 = 迭代内状态为"测试完成"的用户故事总点数 / 迭代内全部用户故事点数

  • 迭代速率 = 迭代内状态为测试完成的用户故事总点数

  • 燃起图/燃尽图

度量质量好的指标

  • 生产环境业务系统发布用户故事的故障率 = 该业务系统最近几次投产的用户故事中无法正常使用的比例的P80值

用户故事

  • 用户故事细粒度验收条件编写比例 = 最近几次迭代编写了细粒度验收条件的用户故事占比的P80值

  • 开卡率 = 最近几个迭代用户故事开卡率的P80值

  • 验卡率 = 最近几个迭代用户故事验卡率的P80值

编码

  • 代码重复率 = sonarqube扫描出的重复代码比例及变化趋势

  • 代码复杂度 = sonarqube扫描出的代码圈复杂度及变化趋势

  • 流水线构建失败修复时长 = 该业务系统流水线最近几次必须尽快修复的严重故障的修复时长(从故障出现到成功修复或回滚之间的时长)的P80值

测试

  • 用户故事SIT测试首次良品率 = 最近几个迭代SIT测试阶段能首次测试通过的用户故事占比的P80值

  • 业务主流程迭代回归测试案例执行率 = 本迭代业务主流程回归测试案例执行(无论是否手工或自动化)占比的P80值

  • 业务主流程迭代回归测试执行时长 = 最近几次迭代业务主流程回归测试案例执行(无论是否手工或自动化)时长的P80值

绘制价值流图

SM可以先按图例,绘制价值流图,然后与BA、QA、TL一起讨论,修改其中瑕疵


价值流图

误区

  • 片面提升局部指标,而忽视全局性指标

  • 指标与个人绩效挂钩,导致数字游戏

  • 将某一指标的绝对值用于团队间横向对比,导致数字游戏

  • 指标过多,且不明确北极星指标,导致收集成本过高,指标无人问津,造成浪费

  • 还在收集已经无法指导改进的指标

  • “交付的需求数越多,则交付的价值数越多。”需求拆分粒度各异,难以用数量衡量价值数

  • “交付质量可以用缺陷密度、缺陷数/案例数、缺陷数/需求数、千行bug率来衡量。”案例数和需求数的拆分粒度各异,难以评判;同样的功能,同样的bug数,代码写得更长的人千行bug率更低。

相关文章

  • 度量就是为了识别价值流最大瓶颈

    要疏通一个车流量拥堵的道路,加宽堵塞点上游的道路,只会加重拥堵;让堵塞点下游的司机换道行驶,对于缓解堵塞点无济于事...

  • 累积流图让价值流动

    什么是累积流图 ?如果说看板方法是将价值可视化,那么累积流图就是辅助看板方法将价值度量化的一种实践工具。使用累积流...

  • 13 设计实施

    对规模敏捷化框架SAFe实施方式进行设计 步骤5:识别价值流和敏捷发布火车 识别价值流和ART的六个主要步骤 1 ...

  • 精益思维五原则

    《精益思想》这本书,提炼了精益思想五原则: 1. 定义价值。质量圈的最外圈就是基于价值的质量。 2. 识别价值流。...

  • 读书:精益思想(五大原则)

    根据客户需求,重新定义价值 识别价值流,重新制定企业活动 使价值流动起来 依靠客户需求拉动价值流 不断改善,追求尽...

  • 2020-12-06

    “挑战困难,突破瓶颈,创造价值”,我想人生最大的意义就是要为自己和他人创造价值。 早安, 有句话说得好,世上无难事...

  • 如何识别度量数据中的改进信号

    度量驱动改进活动中最大的痛点,就是搜集了一堆数据后,发现无法精确地识别哪些数据是改进信号,哪些数据是可以获取经验的...

  • 凤凰项目沙盘 - VP of IT Operations初体验

    作为公司研发管理度量专项负责人,如何体现产品团队端到端全流程的价值流视图、如何让度量体系在未来发挥出其核心作用和价...

  • 精益思想五个原则

    1.精确地定义特定产品的价值流; 2.识别出每种产品的价值流; 3.使价值不间断地流动; 4.让客户从生产者方面拉...

  • 读书:精益思想(导论)

    精益思想概括为五个原则:精确地定义特定产品的价值;识别出每种产品的价值流;使价值流不间断地流动;让客户从生产者的方...

网友评论

    本文标题:度量就是为了识别价值流最大瓶颈

    本文链接:https://www.haomeiwen.com/subject/izcesrtx.html