写点什么

什么是研发 Lead Time?我悟了!

作者:LigaAI
  • 2023-05-19
    广东
  • 本文字数:1810 字

    阅读完需:约 6 分钟

什么是研发 Lead Time?我悟了!

嗨,朋友!你听说过「新型工伤」吗?


我好像「赛博确诊」了😣


那天朋友约我吃饭,我下意识回复了句「好的,那我提一个日程」……还有上次跟一位准妈妈聊天,我好奇宝宝的预产期,结果脱口而出「宝宝预计什么时候发布呀?」



小编观察到,这种生活语言系统被职场黑话污染的「新型工伤」辐射范围还不小。就比如昨天,我只是抱怨了一句「外卖等了好久」,就被拉着科普了一中午「什么是 Lead Time」😓


简单地说,用「餐品已送达」的时间减去你下单的时间——更准确的说法是「商家已确认订单」的时间——得到的时间差,就是商家的 Lead Time。因为点外卖需要提前下单,所以 Lead Time 也被翻译成了提前期或前置时间……


01 什么是 Lead Time?


和 Cycle Time 一样,Lead Time 也是精益生产的专业术语。Lead Time(交付时间)是指企业从接受客户订单开始,到成功向客户交付货物结束,中间所间隔的全部时间。


在软件开发语境中,研发团队的 Lead Time 是需求从被确认(即产品经理采纳需求)到上线交付所需的时间,也就是「From Idea To Launch 」的时间。


以 LigaAI【看板视图】中的研发需求为例,单一用户故事的 Lead Time 可以通过计算完成状态与创建状态的时间差值得出。而有统计结果表明,研发团队的整体交付时间通常符合韦伯分布,因此建议选用 85% 分位数进行分析,而不是平均值。



之前介绍 Cycle Time 的文章中,我们曾讨论过,Cycle Time 是指技术团队从头到尾完成一单位研发工作所需的平均时间。那么,Lead Time 和 Cycle Time 二者有怎样的关系或区别呢?

02 Lead Time vs Cycle Time


这个问题,让我们从「一个需求的一生(敏捷开发版)」说起。


一个创意/想法/反馈被提出后,要先通过产品愿景和目标的价值匹配等处理,由产品负责人确认是否可以接纳其成为待开发需求。


已采纳的研发需求会被记录在产品待办列表(Product Backlog)中,经过需求分析、需求拆分、需求评审、优先级排序、工作量估算等一系列步骤,变成一个个清晰明确的小粒度、高优先级的用户故事。这个过程会剥离出当前优先级/价值较低的需求,继续接受待办列表细化的考验。


在迭代计划会议上,Scrum 团队讨论符合 DoR(Definition of Ready)要求的用户故事,并结合优先级、工作量等,将其规划进迭代待办列表(Sprint Backlog)中,投入迭代开发。


当需求顺利通过开发、测试、部署,被成功发布到生产环境后,Lead Time 和 Cycle Time 的计时就按下终止键。



也就是说,Lead Time 包括了用户故事的准备时间、在积压列表中的等待时间和研发团队实现需求的周期时间(即 Cycle Time)。



敏捷联盟(Agile Alliance)还指出,Lead Time 和 Cycle Time 分别代表了不同角色的度量视角。前者从「用户视角」出发,衡量了需求从被确认到被满足的时间,而后者从「开发者视角」出发,衡量的是研发需求/用户故事从开始开发到成功交付的间隔时间。


总结一下。Lead Time 和 Cycle Time 都是用于度量研发速率的有效指标。Lead Time 以 PBI 的创建为起点,体现了研发团队响应需求的能力,而 Cycle Time 以需求进入迭代开发为起点,反映的是研发团队交付价值的能力。在数值关系上,Lead Time 包含了 Cycle Time。

03 Lead Time 的重要性


DORA(DevOps Research and Assessment)研究表明,速度和稳定性是影响研发效能的两大重要维度。其中,变更前置时间(Lead Time for Changes)正是影响研发效能的四大关键因素之一。


Lead Time 和 Cycle Time 作为研发速率的两大度量指标,在提升组织敏捷性和适应性方面卓有成效。结合行业标杆参考值,技术管理者可以快速定位效能瓶颈和潜在风险;利用行业可复制经验和新兴技术,能将组织效能提升落到实处,持续学习、持续改进。


像适当减少 WIP 数量、缩小需求颗粒度、持续集成、自动化测试、自动化部署、提高代码质量、打造和维护「高信任、低指责」的组织文化等等都是提升研发交付速率的常见有效手段。

# LigaAI 总结


研发团队的 Lead Time(交付时间)是需求从被确认到被满足的间隔时间,体现了研发团队快速响应需求的能力,是度量研发速率的重要指标之一。


单一研发工作的 Lead Time 可以通过计算完成状态与创建状态的时间差值得出,而研发团队整体的交付时间应取 85% 分位数展开分析。


最后,我想问问朋友们,我这种「新型工伤」有没有成熟的解决方案啊?


LigaAI@InfoQ 还将持续分享更多研发效能管理、度量体系搭建的实践经验,以及科学的度量指标管理方法。


关注 LigaAI-智能研发协作平台,欢迎申请试用我们的产品,一起变大变强!

发布于: 刚刚阅读数: 4
用户头像

LigaAI

关注

新一代智能研发协作平台 2021-02-23 加入

AI赋能工作场景,想要做最懂开发者的智能研发管理平台~

评论

发布
暂无评论
什么是研发 Lead Time?我悟了!_DevOps_LigaAI_InfoQ写作社区