当前位置: 首页 > news >正文

什么是研发 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通过扩展元素符...&#xff0c;好比 rest 参数的逆运算&#xff0c;将一个数组转为用逗号分隔的参数序列 console.log(...[1, 2, 3]) // 1 2 3console.log(1, ...[2, 3, 4], 5) // 1 2 3 4 5[...document.querySelectorAll(div)] // [<div>, …...

【算法】动态规划

一、基础知识 动态规划的基本思想&#xff1a;将待求解问题分解成若干个子问题&#xff0c;如果各个子问题不是独立的&#xff0c;不同的子问题的个数只是多项式量级&#xff0c;为避免大量的重复计算&#xff0c;用一个表记录所有已解决的子问题的答案&#xff0c;而在需要的…...

HNOI2014 世界树

洛谷P3233 [HNOI2014]世界树 题目大意 有一棵 n n n个点的树&#xff0c;每个点有一个编号&#xff0c;有 q q q次操作。对于每次操作&#xff0c;给出 m m m个点并称为议事点&#xff0c;树上各个点由离这个点最近的议事点管理&#xff08;如果有多个议事点离这个点最近&…...

在MyBatis XML文件中处理特殊符号的方法,如“>”、“<”、“>=”、“<=”这些符号XML会报错如何处理

前言 在MyBatis的XML映射文件中&#xff0c;我们经常需要使用特殊符号&#xff0c;比如"大于"、"小于"、"大于等于"、"小于等于"等比较操作符。然而&#xff0c;这些符号在XML中具有特殊的含义&#xff0c;因此需要进行特殊处理&…...

第三章--第一篇:什么是对话系统?

对话系统是一种人机交互的技术,旨在使计算机能够与人类进行自然而流畅的对话。它是人工智能领域的重要研究方向,具有重要的实际应用价值和广泛的普适性。 首先,对话系统的重要性在于它可以提供高效便捷的人机交互方式。传统的人机界面,如图形用户界面(GUI)和命令行界面(…...

项目基础搭建

一、项目创建 1.下载并安装nodejs 下载完成后&#xff0c;查看node版本 winR 快捷键&#xff0c;cmd确定&#xff0c;进入后台黑框 node -v查看npm安装路径 npm root -g安装cnpm镜像 npm install -g cnpm --registryhttps://registry.npm.taobao.org&#xff1a;查看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&#xff0c;出现正在配置您的系统&#xff0c;这可能需要一些时间&#xff0c;然后就出现卡住半个小时第二行的条都没有动的问题&#xff0c;这里提供vs2015以及以前版本的卸载方式 问题产生原因:他需要下载一些东西&#xff0c;然后由于你懂的网络原因…...

JavaScript如何声明和定义函数

JavaScript是一门非常有趣的编程语言&#xff0c;它可以让我们创建各种各样的函数来解决各种各样的问题。在JavaScript中&#xff0c;函数的声明和定义非常重要&#xff0c;因为它们决定了函数的行为和执行过程。 首先&#xff0c;让我们来看看JavaScript中函数的声明。在Java…...

微信小程序 WebSocket 通信 —— 在线聊天

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

VMware快照:简化虚拟化环境管理与数据保护

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

图的最短路径

最短路径算法对图结构没有特殊要求&#xff0c;不要求连通图&#xff0c;且有向图无向图均可。 最短路径算法目标是求得从某顶点出发&#xff0c;沿图的边到达另一顶点所经过的路径中&#xff0c;各边上权值之和最小的一条路径。解决最短路的问题有以下算法&#xff1a;Dijkst…...

RHCE----Shell变量和引用

1.变量的类型及含义 变量类型: 1、自定义变量: 在当前的shell命令行界面设置的变量是局部变量 例子&#xff1a; num1 namezhangsan 2、环境变量全局变量,通过export 导出后的局部变量是全局变量 、bash的初始化文件&#xff1a;/etc/profile&#xff1a;存放一些全局变量…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…...

synchronized 学习

学习源&#xff1a; https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖&#xff0c;也要考虑性能问题&#xff08;场景&#xff09; 2.常见面试问题&#xff1a; sync出…...

【Linux】C语言执行shell指令

在C语言中执行Shell指令 在C语言中&#xff0c;有几种方法可以执行Shell指令&#xff1a; 1. 使用system()函数 这是最简单的方法&#xff0c;包含在stdlib.h头文件中&#xff1a; #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...

无法与IP建立连接,未能下载VSCode服务器

如题&#xff0c;在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈&#xff0c;发现是VSCode版本自动更新惹的祸&#xff01;&#xff01;&#xff01; 在VSCode的帮助->关于这里发现前几天VSCode自动更新了&#xff0c;我的版本号变成了1.100.3 才导致了远程连接出…...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架&#xff0c;相比 MapReduce 具有以下核心优势&#xff1a; 内存计算&#xff1a;数据可常驻内存&#xff0c;迭代计算性能提升 10-100 倍&#xff08;文档段落&#xff1a;3-79…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目&#xff0c;所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量&#xff0c;这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

【Java学习笔记】BigInteger 和 BigDecimal 类

BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点&#xff1a;传参类型必须是类对象 一、BigInteger 1. 作用&#xff1a;适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状&#xff1a;装配工作依赖人工经验&#xff0c;装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书&#xff0c;但在实际执行中&#xff0c;工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...