速度不会随着时间而平稳,为什么呢?


11

我已经绘制了我的团队燃尽图及其每次迭代的速度。对我来说,它看起来真的很糟糕(速度波动很大)。我应该寻找什么来诊断这种行为的根本原因?

在此处输入图片说明


10
为什么看起来不好?大多数项目都是从一堆容易解决的问题开始的,然后由于一些最初的假设被证明是错误的,所以后来陷入困境,必须加以纠正才能解决以后的问题。
Blrfl 2013年

1
您的团队每个冲刺成绩为1000分?
布莱恩·奥克利

@BryanOakley看起来更像是100点/冲刺。我把最上面的一行作为“累计值”。
Caleb 2013年

“点”是故意任意的-即使每个sprint等于1000点,这也可能只意味着一个点可能是十个工时或类似的时间。
tdammers

1
@KirkBroadhurst仔细看。键中标记为“ Velocity”的线为纯黑色,与图中的底线相对应。标有“ Acc。密钥中的“值”为灰色,就像图表中的第一行一样。您还可以通过检查得知顶线很可能是底端数据点的总和:当底线接近零(冲刺6、9、15 ...)时,线在几周内是平坦的,当底线接近零时,斜率恒定。底线是平坦的(冲刺3-6、10-13),并且永远不会减少。
Caleb

Answers:


20

在团队开始寻找节奏时,前十个左右的冲刺会出现波动是很正常的。之后,速度在平均值附近波动是完全正常的。尝试绘制最后五个冲刺的运行平均值,您应该会看到它稳定下来。如果不是,则可能是以下某些原因:

  • 团队正在尝试根据最近的速度来调整其故事点估计,而不是保持故事点不变并调整要处理的故事数目。
  • 您没有将故事分解得足够小。
  • 您的故事太多了,而且粒度太大。例如,您有很多20个指针,都不愿意将其更改为13或40。
  • 您有很多“宿醉”的故事并没有一finished而就。

对于“宿醉”故事,您打算做什么?尤其是如果冲刺在至少一部分团队中“完成”,然后他们不得不在冲刺结束前几天将故事拖出冲刺。据我所知,“它平均”。这不是正确的思维方式吗?
Earlz 2013年

就个人而言,“平均”对我来说很好,我的Scrum团队也同意。其他团队则进行一些操作,例如仔细检查完成的故事,添加额外的测试,将故事分解为较小的片段或在故事中拖拉,以避免产生宿醉,这确实与“纯粹的混乱”相符。
Karl Bielefeldt

曾经有一件坏事吗?例如,很多时候,我们只会完全依靠速度来进行承诺。提交将包括许多正在进行的故事,然后根据需要将故事拖到冲刺中(这是计划和预期的)。
Earlz 2013年

如果您的代码在sprint结束时未处于可交付状态,那就很糟糕。Scrum纯粹主义者认为计划将故事拖入sprint原则上是有害的,即使您的代码可以在sprint的末尾交付。我个人认为调整流程以适合您的团队也不错。
Karl Bielefeldt

4

您正在滥用速度作为绩效的指标,好像接受的一些故事点是“好”冲刺,而少于此的任何事物都是“坏”冲刺。

速度(这是一个非常错误的概念)应该用作前瞻性工具,以估计团队在下一个冲刺中可以提交多少个功能,即速度应该用于容量规划。

http://jimhighsmith.com/velocity-is-killing-agility/

这是该文章中的一个引人注目的引文:“问题在于赋予速度的权重并将其转化为生产率度量标准。”

在您的速度看来有明显差异的地方可能存在问题。这并不意味着团队做错了任何事情,而是意味着无法很好地预测团队未来冲刺的能力。不幸的是,这不是我们任何人都可以为您解答的问题。您需要通过回顾来深入探讨该主题。到底发生了什么事?

无论如何,您的图形中缺少最关键的度量。团队在实现其承诺的价值方面做得如何?速度会因为某些冲刺中超出其承诺而波动,而不是因为其他冲刺而有所波动吗,它是否由于未完成故事而波动,还是因为承诺也有所波动而波动?


2

潜在的其他原因:在后面的冲刺中,您还清了较早冲刺的技术债务。

例如,在sprint 3之后您有一个管理演示,需要显示欢乐时光场景。为此,您无需进行错误处理,无需翻译支持,无需进行单元测试即可进行编码。这是一个有效的决定,您只需要了解后果即可。

因此,稍后您将添加所有不错的东西,例如激励处理框架,翻译支持,单元测试框架等等。您的第1个3个sprint中的现有编码尚未使用,因此需要对其进行更新。这种努力会减慢后面的sprint期间的价值创造。


2

对于您的问题,很难说出为什么会有波动,这可能是因为故事卡,团队中的人或产品所有者的能力。因此,根据我的经验,速度会波动,原因是:

  • 您的团队成员可能不是专门的团队成员。为了彼此合作和理解,他们需要长时间合作。如果您的团队经常进出团队,这会使团队充满活力并影响速度。
  • 故事卡太大。因此,团队在计划/估算时无法尽其所能。他们会在冲刺中发现有些事情比他们想象的要难。
  • 我想你在做混乱。在Scrum中,我们必须执行sprint计划第1部分(产品负责人选择要做的事情)和sprint计划第2部分(团队决定他们可以做什么)。因此,情况可能是,在产品所有者选择冲刺卡片之后,团队在sprint计划第2部分中没有进行足够深入的研究,因此他们找不到需要让产品所有者知道的隐藏问题。如果他们一开始发现问题,他们将解决这些问题,或者考虑如何消除风险。这使得估算在开始进行冲刺之前足够正确。
  • 如果故事卡不详细,估计将不准确。最初的估算可能是一个粗略的估算,但是在开始冲刺之前或故事情节卡进入冲刺之前,需要对其进行分解和澄清,以获得几乎正确的估算。这有助于团队的速度更加稳定。
  • 产品负责人可能无法在开始进行sprint之前澄清故事卡的清晰度。这也是非常重要的事情,因为这是团队在两周内工作的目标。如果产品负责人只是选择冲刺卡,而团队尚不了解,则他们无论如何都需要在冲刺过程中了解它们,答案可能是结果比他们所讨论的更多,而且估计是错误的。因此,这显然会影响速度。
  • 等等...

无论如何,我认为只要知道每个冲刺的状况,速度的波动就不重要。速度只是一件事,可以告诉您团队的工作稳定性。如果不稳定,我们必须详细了解每个冲刺有关“发生了什么”。这只是澄清/解决问题的一种方法,因此我们可以对其进行修复。因此,速度只是告诉我们该冲刺中正在发生的事情,我们可以回想一下并进行改进以使其稳定。速度是项目的投影。速度的波动并不意味着团队无法交付产品,它只是可以帮助您考虑未来的计划以及要解决的问题,以使一切顺利。


1

您的速度有噪音(波动)。可能的原因:

  • 故事太大,通常将完成的故事讲到下一个冲刺。
  • 故事没有准确估计。这可能是由于团队经验不足或故事太大。

这种噪声本身并不一定是问题:在恒定平均值附近波动的嘈杂速度仍然可以使您进行准确的发布计划。

但是,如果您滤除了噪声(连续5个冲刺连续滚动平均值),那么20个冲刺之后速度仍然会下降。这使得发布计划很难进行,值得研究:

  • “完成的定义”是否太弱,团队正在堆积以前冲刺的剩余工作?
  • 组织是否在转移混乱和向团队强加非积压工作方面变得更好?
  • 估计后备案底部的大故事(史诗)比顶部的详细故事更乐观?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.