敏捷开发框架Scrum工件-冲刺/迭代燃尽图(下篇)

要想使复杂的系统不再那么让我们出乎意外,最主要的途径就是加强学习,提高对复杂性挑战的理解、尊重和利用能力

《系统之美》

前言,在本文中,我们将从以下几点了解有关燃尽图的详细内容(下篇为主题4-6):

  1. 燃尽图是什么?
  2. 冲刺燃尽图如何产生?表达了什么信息?
  3. 如何去解读燃尽图?
  4. 我们参考燃尽图做决策的场景
  5. 根据燃尽图解读团队绩效并制定行动列表
  6. 使用用户故事点作为燃尽图度量单位的缺点

(延续上篇主题1-3 敏捷开发框架Scrum工件-冲刺/迭代燃尽图(上篇)

4. 我们参考燃尽图进行决策的场景

情景1:产品负责人要求添加一个故事,因为它是高度优先的,并且此故事的功能对于在此sprint结束前交付至关重要。

在这种情景下,团队需要查看当前的燃尽图和实际线。 截至特定日期,它们还有多少富余的工作时间。 可能有3种选项:

  1. 团队可以直接同意将故事添加到当前的sprint中

如果实际线结束于理想线或能力线以下,则意味着有富余时间可用于在冲刺时间内完成更多工作。
留意测试人员个人能力(工作时间),即使整个团队富余很多工作时间,如果单个测试人员级别也没有太多富余工作时间,在这种情况下,可以参考下面的选项2。
因此,先要看燃尽的情况,如果说可以提交更多故事,考虑其他限制因素再做出决定。

  1. 团队可以要求PO取消一些低优先级的故事,这意味着从当前的sprint中移除并将其放回待办事项

如果团队发现燃尽实际线接近能力线或理想线,则团队检查已提交但尚未开始开发的相似大小故事,请产品负责人同意减少这些故事中的任何( 一个或多个),替换为新的关键故事。
留意冲刺中剩余的时间,新故事所需的技能以及这些熟练的团队成员的富余时间。

  1. 团队认为在sprint范围内添加新故事是有风险的,建议不要更改范围。 

如果团队离冲刺结束只有两到三天,实际线非常稳定,有些故事已完成,有些在进行中。 在这种情况下,接受新故事可能会有风险,团队可以向产品负责人解释并建议到下一个冲刺将优先完成新故事,并尽快将其部署。
不过即使是冲刺的最后几天,如果当前的所有故事都已完成并被验收,实际线已经触地。 团队可以快速估算并提交新故事。

情景2:其中一位团队成员需要连续几天请急诊病假。

在这种情况下,请查看燃尽图并分析实际线终点的位置。 如果终点在理想线以下很远,可以接受计划外的请假。在个人级别上,还要查看该成员有待处理的工作总小时数,以及冲刺剩余的总天数。查看同一技能的其他成员是否具有足够的富余时间来弥补差距。
如果团队认为有可能不能完成所有已提交的故事,团队就应立即通知PO,达成共识,例如确定优先级较低的故事等。

情景3:在sprint测试团队的第二周,提出了太多的bug,需要在sprint持续时间内解决。

如果测试人员在测试用户故事时发现太多缺陷,这让开发看起来不够成熟,但还是会发生。查看实线和能力线的差异。团队多大程度上能够轻松修复缺陷以及正在进行的开发工作,测试人员需要重新测试重要的修复以及已完成的待测试的工作。
为了完成所有修复,工作燃尽图应具有足够的富余工作时间,这意味着实际线的末端应比能力线的末端低得多。如果不是,在进行下一个冲刺时,在能力规划期间保留足够的缓冲区需要重点考虑。
查看关于缺陷关闭的完成(DOD)定义,如果说所有P1和P2的缺陷必须关闭才能认为故事完成。查看P1 / P2错误的数量,评估修复它们的额外时间以及燃尽图中可用的富余时间。
考虑与产品负责人沟通,应对最坏的情况,确定优先级最低和最关键的用户故事。
燃尽图是决定现在是否应该与产品负责人沟通的第一步。或者需要进一步细化可能的其他约束。
工作中可能还有许多其他情况,燃尽图有助于针对不同情况做出决策。

5. 根据燃尽图解读团队绩效并制定行动列表

冲刺燃尽图的实际线有很多趋势。这里解释sprint燃尽图的一些典型异常情况,并解释造成这种情况的原因和纠正措施。

笔直的实际线

可能团队在冲刺燃尽图中已经遇到了几天的笔直的实际线。 可能是由于以下一个或多个原因

  1. 团队没有每天更新剩余的任务时间
  2. 团队还未创建所有任务,因此无法更改剩余时间
  3. 任务工作量被低估,因此剩余时间没有变化
  4. 用户故事受到某些障碍的阻碍,而这些障碍尚未解决,因此团队无法继续进行
  5. 诸如开发服务器之类的环境问题无法进行编码或无法进行测试的测试环境

如何解决这些问题?

  1. 确保每个团队成员每天更新他们工作的剩余时间。
  2. 在执行用户故事任务期间,花时间来尽可能准确地创建和估算任务。
  3. 尝试尽快解决障碍,如果某些故事被阻止,请不要等待其解决,开始处理其他故事,如果所有故事都被阻止并且可能需要几天才能解决,请通知产品负责人并采取相应行动。
  4. 在开始sprint之前,请先解决所有依赖项,然后提交故事,在解决依赖之前,只处理独立的故事。
  5. 解决所有环境问题,在开始冲刺之前检查可用性和可访问性。

实际线在冲刺的最后日期之前早已触地

如果实际线比理想线早得多地接触地面(Y轴),表示以下其中一个或多个原因

  1. 团队努力工作,每天根据产能消耗更多时间
  2. 团队投入的比实际能力要少
  3. 团队对任务工作量的估计过高

解决方案

  1. 如果团队愿意努力工作,是一件好事,但更好的是用商定的时间来完成工作。每天加班可能会导致其他负面影响。根据团队可以执行的最佳优化工作量来计划能力。
  2. 如果团队投入比实际能力要少,那是因为在大多数情况下由于需求量不足,产品负责人在计划时可能没有足够的故事准备投入。经常进行定期梳理,以使待办事项保持健康(参考 敏捷Scrum开发7大事件之1:产品待办列表优先级排序  理解Scrum 度量和关键绩效指标)。
  3. 合理的估算,使其尽可能准确

实际线有突然出现的尖峰

如果发现实际燃尽线突然上升,则意味着

  1. 范围变更(范围在sprint持续时间内增加),PO可能要求在当前sprint中添加一个或几个故事。
  2. 或者团队已重新估计任务,增加了剩余的工作量。

解决方案

  1. 使Sprint计划更成熟,使待办事项保持健康,在Sprint计划期间,通过按优先级分配尽可能多的待办事项条目,充分利用团队能力。
  2. 彻底进行任务分解,创建所有可能的任务,估算和分配。 因此无需在冲刺期间重新估算。

第一天的理想线和能力线差异太大

如果理想线和能力线距离很远,表示团队尚未充分投入其实际能力。 因为

  1. 没有足够的用户故事在准备就绪状态下(DoR),因此团队最终完成了Sprint计划
  2. 或团队没有信心充分利用全部能力,只能利用部分能力。

如何解决这种情况,以便将来冲刺

  1. 再次进行连续待办事项梳理,以准备好足够的条目的健康的待办事项。
  2. 详细了解涵盖所有方面的细节需求。 只在sprint计划期间提交用户故事。 让每个团队成员为他们创建,估算和分配任务。 如此不断计划,直到利用了最大团队能力。

实际线持续超出理想线右侧并扩大了差异

此状态非常危险,并且明确表明团队将无法在sprint结束之前完成所有已提交的工作项目。 造成这种情况的原因有很多,例如

  1. 团队在按预期工作,但是他们没有更新剩余时间。
  2. 团队实际上没有在工作。
  3. 团队的前进被阻挡或妨碍。
  4. 团队发现估计的工作时间太短,需要做更多的工作,但并没有重新估计任务的时间,也没有更新剩余的时间,只是在努力减少剩余的时间。

如何解决这种情况,以便当前冲刺和未来的冲刺

  1. 请每天更新剩余时间,这可能会带来一些高峰,它将描述真实的情况。
  2. 其它情况的解决方案因团队而异,需要进行分析并采取最合适的纠正措施。

笔直和突然下降的实际线

这是可能遇到的典型情况,其背后的原因可能是这些原因之一

  1. 通常发生在团队使用故事点作为燃尽的Y轴时。
  2. 剩余工作的更新没有定期发生。
  3. 剩余工作的更新只在冲刺的最后日期进行。

如何处理这些?

  1. 开始任务分解,并在燃尽的Y轴上使用任务时间。
  2. 每天更新剩余时间。

下一节将讨论为什么不应该将故事点用作Sprint燃尽图的Y轴。

6. 使用用户故事点作为燃尽图度量单位的缺点

燃尽图的目的是跟踪剩余的工作量,每天都必须参考它,团队将制定当天要执行工作的策略。因此,每天都必须有“燃烧”。
如果用故事点,不是每天都能完成一个故事,即使团队已经在处理它并完成了一些工作。因此,即使部分工作已经完成,用故事点的燃尽图也不会有任何变化。一个任意故事点的故事,就说5SP可以是完成或未完成,它不会以5到3到2到1的速度燃烧。故事完成后,故事点将直接减少5。因此,看到锯齿形的燃尽,而不是每一天的实际剩余工作量。
当产品负责人验证并验收该故事时,该故事被视为已完成。很多时候开发和测试完成的故事没有及时得到产品负责人的验证,因为产品负责人和开发团队还没有像一个团队那样工作,PO优先处理其他活动,这延迟了故事验收的时间,结果在Sprint燃尽图上可见。
注意,本文仅讨论冲刺燃尽图。当然可以使用故事点来绘制史诗(Epic)和版本(Release)的燃尽图。
下面提到了三个样本冲刺燃尽图,以参考和比较冲刺燃尽在基于小时和故事点之间的差异。

参看 敏捷开发框架Scrum工件-冲刺/迭代燃尽图(上篇)

END

希望能在评论区学习到大家的经验和想法~

如果对相关内容感兴趣可以关注我的公众号:捷伴行Agile。会有更多更及时的内容与君分享。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

error: Content is protected !!