什么是研发 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@CSDN还将持续分享更多研发效能管理、度量体系搭建的实践经验,以及科学的度量指标管理方法。
关注 LigaAI -新一代智能研发协作平台,欢迎申请试用我们的产品,一起变大变强!
相关文章:

什么是研发 Lead Time?我悟了!
嗨,朋友!你听说过「新型工伤」吗? 我好像「赛博确诊」了😣 那天朋友约我吃饭,我下意识回复了句「好的,那我提一个日程」……还有上次跟一位准妈妈聊天,我好奇宝宝的预产期,结果脱口…...
android 窗口焦点介绍
背景 我们经常会遇到一种Application does not hava focused window的ANR异常,这种异常一般是没有焦点窗口FocusedWindow导致,且这类异常只会发生在key事件的派发,因为key事件是需要找到一个焦点窗口然后再派发,而触摸事件只需要找到当前显示…...

研发工程师玩转Kubernetes——构建、推送自定义镜像
这几节我们都是使用microk8s学习kubernetes,于是镜像库我们也是使用它的插件——registry。 开启镜像库插件 microk8s enable registry模拟开发环境 我们使用Python作为开发语言来进行本系列的演练。 安装Python sudo apt install python3.11安装Pip3 pip3用于…...

[网络安全]DVWA之XSS(Stored)攻击姿势及解题详析合集
[网络安全]DVWA之XSS(Stored)攻击姿势及解题详析合集 XSS(Stored)-low level源代码姿势基于Message板块基于Name板块 XSS(Stored)-medium level源代码姿势双写绕过大小写绕过Xss标签绕过 XSS(Stored)-high level源代码姿势:Xss标签绕过 XSS(S…...
VP记录:Codeforces Round 873 (Div. 2) A~D1
传送门:CF 前题提要:因为本场比赛的D题让我十分难受.刚开始以为 r − l 1 r-l1 r−l1与 r − l r-l r−l应该没什么不同.但是做的时候发现假设是 r − l 1 r-l1 r−l1的话我们可以使用线段树来维护,但是 r − l r-l r−l就让线段树维护的难度大大增加,这导致我十分烦躁,所以…...

【C++】函数提高
欢迎来到博主 Apeiron 的博客,祝您旅程愉快 !时止则止,时行则行。动静不失其时,其道光明。 目录 1、缘起 2、函数默认参数 3、函数占位参数 4、总结 1、缘起 以前学习过了函数的基本用法和功能,现在是时候学习函数…...
【可持续能源:让我们迈向绿色、可持续未来的道路】
作为未来的主要能源来源,可持续能源技术确实有潜力改变我们的世界。随着全球对传统化石燃料的依赖程度逐渐降低,可再生能源已成为许多国家推进能源转型的首选。 从太阳能和风能到地热能和潮汐能,可持续能源技术已经在许多方面取得了重大突破…...

ES6中数组新增了哪些扩展?
一、扩展运算符的应用 ES6通过扩展元素符...,好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列 console.log(...[1, 2, 3]) // 1 2 3console.log(1, ...[2, 3, 4], 5) // 1 2 3 4 5[...document.querySelectorAll(div)] // [<div>, …...

【算法】动态规划
一、基础知识 动态规划的基本思想:将待求解问题分解成若干个子问题,如果各个子问题不是独立的,不同的子问题的个数只是多项式量级,为避免大量的重复计算,用一个表记录所有已解决的子问题的答案,而在需要的…...
HNOI2014 世界树
洛谷P3233 [HNOI2014]世界树 题目大意 有一棵 n n n个点的树,每个点有一个编号,有 q q q次操作。对于每次操作,给出 m m m个点并称为议事点,树上各个点由离这个点最近的议事点管理(如果有多个议事点离这个点最近&…...

在MyBatis XML文件中处理特殊符号的方法,如“>”、“<”、“>=”、“<=”这些符号XML会报错如何处理
前言 在MyBatis的XML映射文件中,我们经常需要使用特殊符号,比如"大于"、"小于"、"大于等于"、"小于等于"等比较操作符。然而,这些符号在XML中具有特殊的含义,因此需要进行特殊处理&…...
第三章--第一篇:什么是对话系统?
对话系统是一种人机交互的技术,旨在使计算机能够与人类进行自然而流畅的对话。它是人工智能领域的重要研究方向,具有重要的实际应用价值和广泛的普适性。 首先,对话系统的重要性在于它可以提供高效便捷的人机交互方式。传统的人机界面,如图形用户界面(GUI)和命令行界面(…...
项目基础搭建
一、项目创建 1.下载并安装nodejs 下载完成后,查看node版本 winR 快捷键,cmd确定,进入后台黑框 node -v查看npm安装路径 npm root -g安装cnpm镜像 npm install -g cnpm --registryhttps://registry.npm.taobao.org:查看npm版…...

PFCdocumentation_FISH Rules and Usage
目录 FISH Scripting FISH Rules and Usage Lines Data Types Reserved Names for Functions and Variables Scope of Variables Functions: Structure, Evaluation, and Calling Scheme Arithmetic: Expressions and Type Conversions Redefining FISH Functions Ex…...

如何完美卸载VS2015(2023年5月份实测有效)
使用控制面板卸载VS2015,出现正在配置您的系统,这可能需要一些时间,然后就出现卡住半个小时第二行的条都没有动的问题,这里提供vs2015以及以前版本的卸载方式 问题产生原因:他需要下载一些东西,然后由于你懂的网络原因…...
JavaScript如何声明和定义函数
JavaScript是一门非常有趣的编程语言,它可以让我们创建各种各样的函数来解决各种各样的问题。在JavaScript中,函数的声明和定义非常重要,因为它们决定了函数的行为和执行过程。 首先,让我们来看看JavaScript中函数的声明。在Java…...

微信小程序 WebSocket 通信 —— 在线聊天
在Node栏目就讲到了Socket通信的内容,使用Node实现Socke通信,还使用两个流行的WebSocket 库,ws 和 socket.io,在小程序中的WebSocket接口和HTML5的WebSocket基本相同,可以实现浏览器与服务器之间的全双工通信。那么本篇…...

VMware快照:简化虚拟化环境管理与数据保护
引言: 在虚拟化环境中,数据保护和灵活性是至关重要的。VMware快照作为一项强大的功能,为虚拟机管理者提供了便利和安全性。本文将介绍VMware快照的使用,以及它为用户带来的几个关键优势。 VMware快照是一项重要的功能,…...

图的最短路径
最短路径算法对图结构没有特殊要求,不要求连通图,且有向图无向图均可。 最短路径算法目标是求得从某顶点出发,沿图的边到达另一顶点所经过的路径中,各边上权值之和最小的一条路径。解决最短路的问题有以下算法:Dijkst…...
RHCE----Shell变量和引用
1.变量的类型及含义 变量类型: 1、自定义变量: 在当前的shell命令行界面设置的变量是局部变量 例子: num1 namezhangsan 2、环境变量全局变量,通过export 导出后的局部变量是全局变量 、bash的初始化文件:/etc/profile:存放一些全局变量…...
内存分配函数malloc kmalloc vmalloc
内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...

CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...

23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...

Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...

前端开发面试题总结-JavaScript篇(一)
文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包(Closure)?闭包有什么应用场景和潜在问题?2.解释 JavaScript 的作用域链(Scope Chain) 二、原型与继承3.原型链是什么?如何实现继承&a…...

在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

什么是Ansible Jinja2
理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具,可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板,允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板,并通…...