精益看板分析:吞吐率

基于PMBoK、Prince2、CMMI等传统项目管理的公司对吞吐率(Throughput) 的了解相对较少。但是,我确信随着精益概念的不断延伸,吞吐率将受到更多的关注。

吞吐率 是指在一段确定的时间内(如周、月、季度)已交付的工作项的数量.

我们所讲的已交付实际上指已经完成并可能已经交付给顾客。即,在这个过程之后收到了钱。

为了理解吞吐率的概念,我们假设在过去的五周中,某个团队在每周分别交付了4、6、4、2、3个故事。对于已经开始但尚未结束的故事不计入其中。

这五周的平均吞吐率约为 (4+6+4+2+3)/5 = 4 个故事/周。标准偏差约为1个故事/周。

吞吐率基于团队交付能力的真实数据。吞吐率的变化(Throughput variability) 反映了故事大小、复杂性、紧急程度和人员技能等因素的影响。

吞吐率可用于做计划。 继续上面的例子,团队可以在不对单个故事进行任何详细估算的情况下,估算他们的吞吐率(交付率, delivery rate)为 4±1 个故事/周。

然而,在看板方法中,吞吐率主要用于记录团队性能(performance)。逻辑上,目标是为了对吞吐率进行持续改善。

吞吐率是团队在某一确定时间段内(例如周、月)交付工作项数量的能力,以此来保持团队在可承受的负荷下开展工作。


吞吐率不是速率(velocity)

吞吐率类似于敏捷中的速率(velocity)数据,但是它们并不相同。
极限编程(eXtreme Programming)和Scrum中所度量的速率,展示了团队在每个迭代或sprint中可以完成工作的多少,通常以故事点来计。

回到前面例子中的团队,假设最后两周中交付了五个用户故事,故事点数分别为3、4、1、5和3。

那么2周的冲刺(Sprint)中可以完成的故事点总数是 3 + 4 + 1 + 5 + 3 = 16。也就是说团队每个冲刺的速率是16个故事点。

故事复杂度、故事大小、变更、团队技能水平等因素也会造成速率的变化。

敏捷团队使用平均速率来估算在未来的冲刺中能够交付多少功能。然而,他们仍然必须要估算每个单独的用户故事才能确定sprint backlog(范围)。

因此,虽然速率与速度相关,但本质上是一个团队在一段固定的时间内(迭代或冲刺)可以承受的负载,通常以故事点数来计。


吞吐率和资源估算

吞吐率可以用于估算资源。
根据里特定律(Little’s Law
如果一个团队保持稳定的工作步伐,那么某一特定工作类型或服务分类的平均交付时间(delivery time ,即前置时间、lead time)可以认为是一个常量。

交付率(吞吐率)是为了满足客户可接受的最后交付期限所需要达到的目标速率。

基于此,我们计算出期间需要处理的工作项数量。
例如,若一个故事的前置时间是0.25周、目标交付率是20个故事/周。则, 
WIP = 20 * 0.25 = 5 个故事。

若每个人只能处理一个单独的故事,那么我们至少需要5个人才能按时完成任务。出于安全考虑(这里没有精确的公式),我们最好组建一个6人团队来开展工作。:-)

里特定律和吞吐率让我们能够估算开展一项工作所需的资源。

总之,吞吐率易于收集。由于吞吐率能够使你一直专注于团队的性能(performance),因此它是一种有价值的度量。此外,在故事或需求被拆分为相当小的尺寸的前提下,了解团队吞吐率能够减少估算故事或需求所需的工作量。 再者,根据里特定律,吞吐率让我们能够估算在客户期望时间内完成一项指定任务所需的资源。

时间: 2025-01-10 19:34:23

精益看板分析:吞吐率的相关文章

精益看板分析:流动效率

流动效率 是度量组织精益程度的指标. 对于ITC公司来说: 根据<Zsolt Fabok, Lean Agile Scotland, Sep 2012, Lean Kanban France, Oct 2012>报告,流动效率为2% 流动效率在5%至15%认为正常 流动效率>40%就很好了! 恰如<This is Lean>中所述,造成低流动效率的主要原因有三: 前置时间长(Long Lead time). 产品或者服务因等待时间过长会产生的更多客户需求,这些新产生的需求都需

批处理的高吞吐率和高延迟的解释

在很多系统中都允许用户设置单条消息处理模式或者批处理模式.例如,在storm中,用户可以通过core和Trident两种API编写,区别是前者是一个tuple一个tuple地处理,而后者是多个tuple组成一个batch,然后一个batch一个batch地处理. 由于这两种处理模式的不同,导致二者在性能上的表现也不同,例如吞吐率和延迟.下面引用一个典型的测试结果,详情:https://github.com/ptgoetz/storm-benchmark. 测试环境:5 nodes on AWS,

吞吐率、吞吐量、TPS、性能测试

内容参考: 构建高性能WEB站点.pdf 一.吞吐率 我们一般使用单位时间内服务器处理的请求数来描述其并发处理能力.称之为吞吐率(Throughput),单位是 "req/s".吞吐率特指Web服务器单位时间内处理的请求数. 比如Apache 的 mod_status 模块提供的如下统计 另一种描述,吞吐率是,单位时间内网络上传输的数据量,也可以指单位时间内处理客户请求数量.它是衡量网络性能的重要指标.通常情况下,吞吐率"字节数/秒"来衡量.当然你也可以用"

精益看板管理和敏捷软件开发 (转)

最近看了InfoQ上关于精益看板在软件开发上的一些实践和应用的文章,敏捷软件开发借鉴了很多TPS精益生产的思想,虽然没有完全提到看板的概念,但是看板在敏捷软件开发实践中是很有必要进行的.具体InfoQ的一些文章请参考: 将看板应用于软件开发:从敏捷到精益http://www.infoq.com/cn/articles/hiranabe-lean-agile-kanban 用“看板图”实现敏捷项目的可视化http://www.infoq.com/cn/articles/agile-kanban-b

吞吐率问题

某指令流水线由5段组成,各段所需要的时间如下图所示. --> Δt -->3Δt-->Δt--> 2Δt-->Δ t--> 连续输入10条指令时的吞吐率为( ). A.10/70Δt B.10/49Δt C.10/35Δt D.10/30Δt 分析: 要解此题,必须首先了解吞吐率的概念.教程上的解释是:吞吐率是指单位时间里流水线处理机流出的结果数.对指令而言,就是单位时间里执行的指令数.如果流水线的子过程所用的时间不一样,则吞吐率p应为最长子过程的倒数,即: p=1/m

LoadRunner学习常用术语--点击率,吞吐率,资源利用率

点击率:每秒钟客户端向服务器端发起的http请求个数(不是片面的指鼠标点击次数,例如,点击一个按钮服务器返回一个页面且包含3个图片,那么向服务器发送的请求数为4) 吞吐量:累计时间内的全部数据量(Throughput) 吞吐率:每秒钟服务器的吞吐量(吞吐量/时间)吞吐率,是衡量服务器处理速度和性能的重要指标,也是反映网络性能的重要指标 资源利用率,是指对不同的系统资源的使用程度,包括数据库服务器,web服务器,网络,硬件(CPU,硬盘,内存),是测试性能和分析服务器性能的重要指标 TPS:tra

指令——流水线和吞吐率

解析: (1)吞吐率有个公式:指令条数除以流水线时间 (2)流水线时间计算有个公式:一条指令所需时间+(指令条数-1)*时间最长的指令的一段7+(8-1)*3 流水线: 流水线是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术.各种部件同时处理是针对不同指令而言的,它们可同时为多条指令的不同部分进行工作,以提高各部件的利用率和指令的平均执行速度.概念我们说那么多,我们现在深入去理解,光有概念都是一些比较抽象的东西,我们看图:我们有三个步骤. 然后我们来看一下一般情况下我们的指令是一条一

深入浅出计算机组成原理:Superscalar和VLIW-如何让CPU的吞吐率超过1?(第26讲)

一.引子 到今天为止,专栏已经过半了.过去的20多讲里,我给你讲的内容,很多都是围绕着怎么提升CPU的性能这个问题展开的.我们先回顾一下第4讲,不知道你是否还记得这个公式: 程序的CPU执行时间 = 指令数 × CPI × Clock Cycle Time 这个公式里,有一个叫CPI的指标.我们知道,CPI的倒数,又叫作IPC(Instruction Per Clock),也就是一个时钟周期里面能够执行的指令数,代表了CPU的吞吐率.那么,这个指标,放在我们前面几节反复优化流水线架构的CPU里,

指令流水线的吞吐率

假设一个四段流水线,取指段的时间为t,译码段的时间为t,取数段的时间为3t,执行段的时间为t. 为了便于计算假设取指和译码段总是连续执行的,每隔一段的时间(取最长一段的时间,例如上面的取数3t)下一条指令执行 一条指令之后每隔一段的时间(取最长一段的时间,例如上面的取数3t),就会执行完一条指令. 流水线时间计算公式: 一条指令所需时间 + (指令条数-1) * 时间最长的指令的一段(例如上面的取数3t) 吞吐率公式: 指令条数 / 流水线时间