跳到主要内容

保存的文章

不要估计故事Sprint计划

安德鲁·富卡|LeadingAgile
安德鲁·富卡
读: 不要估计故事Sprint计划

这是关于评估的系列文章的第三部分。第一部分是“不要估计软件缺陷”和第二部分是“不要估算尖峰”。而且,第三部分将是大约估计的故事。

我没有估计冲刺规划故事的忠实粉丝。我不这样做,我也不重新估计在冲刺计划的故事。我估计在一个单独的估算会议的故事和提前通常至少一对夫妇的冲刺,如果不是更多。有几个原因(重新)冲刺规划过程中估计的故事是一种危险的做法:在冲刺的规划,我们在细节的较低水平有关的故事,代码库和系统远远更多的知识比我们当思考我们估计积压的其余部分。不能正确地估计相对少得多的细节,估计其他一些故事冲刺规划这样一个故事。这种做法导致通货膨胀的速度和危险的发布计划。

不同层次的细节

一旦我们得到冲刺的规划,我们可能已经实现了相关的故事,我们正在挖掘到故事细节激增。我们已经考虑过的故事代码的设计。我们挖掘到的任务。我们知道很多更多关于这个故事比我们做的时候,我们估计积压的其余部分。

所以,如果我估计或重新估计在冲刺计划的故事,我不能相对估计其积压的其余部分。我不知道详细的关于故事的其余部分这一水平。现在我想在不同的详细程度,使用两种不同的比我们其他的故事,估计在想。

我们知道我们的估计是错误的。我们知道他们是错误的,当我们在发布计划估计,我们知道他们仍然是错误的,当我们到冲刺的规划。这就是为什么我们有速度 - 经验测量把所有的不正当性考虑在内。

在冲刺的规划中,我们打破了故事分解成任务,估计这些任务,和比较对我们能力的任务估计。这一点,不要点,这让我们在这个冲刺过量使用。无需更改估计。

“那又怎样?“你问。忍受我,我会告诉你你为什么在乎。

更多的知识和技能

如果您正在发行的承诺,如果你有一个发布计划,或者如果你按照我们的其他建议,那么你的释放积压可能估计多星期前。所有这些估计没有什么,我们现在知道的好处。许多这些估计都是可疑的。可能是错误的。如果我们允许估计变化,一旦我们打冲刺规划,将有估计sprint计划的变化。这并不是唯一的错误估计。如果这种情况发生得太频繁(发现错误的估计),我们应该重新考虑积压的整理情况,以及是否应该重新估计剩下的全产品积压。

“那又怎么样?”,你问:“我只是喜欢我的估计是正确的呢。”考虑如何在冲刺计划重新估计可能会影响我们的速度,因此发布计划...

通货膨胀速度

新的估计最有可能会更高,而不是更低。如果估计过大,发展不关注。他们可能不会提及它。如果估计过小,发展十分关注。

想想你在冲刺计划中改变或想要改变估计的频率。把那个号码记在脑子里。斯普林特可能是每一个故事?也许更多?也许20个人中就有一个?还要考虑一下它通常有多大的增长。是从3分到5分吗?从1到2?从5分到8分?也许通常是1.6倍的增长?

考虑一下剩余的产品积压工作。如果我们倾向于在最后一分钟增加5%的故事1.6倍,那么相对于剩余的产品积压工作,你的速度太快了。剩余的积压工作是相对于原始点进行估计的,而不是相对于重新估计的点。

下面是一个例子

例:假设我们通常做约10故事和每冲刺20分,并且在尺寸的分布是一样的东西[1,1,1,2,2,2,3,3,5]。假设这是一个3点的故事,变成了5。如果我们完成了所有这些故事,应该说我们的速度是20还是22?假设我们有留在我们的发布积压400点。我们可以实现22所指出,释放积压的每冲刺?我会说没有,你只能敲出20分积压每个冲刺。

看看它的另一种方式,你认为你在你的积压有400点,但因为你要重新估计他们在飞行中,你真的有440点的事情。你不会在二十二分之四百迭代得到完成。你会在二十二分之四百四十零迭代得到完成。或20分之400。

我们团队的能力来生产,他们的能力,是稳定的或至少不迅速增加。这是我们的手头现金。故事的价格,但是,可以更迅速,由于通货膨胀增加。傻的比喻:我想买那个最初定价在$ 400积压。我不能为它付出全部一次,所以我开始把部分资金各支付期。我可以把每期拨出22 $朝着这个积压,但我已经存够了原来的$ 400的时候,我发现这家店已经上调价格至$ 440游民。

结论

如果我做一个释放的承诺,我想绝对肯定我不会过量使用。我想下承诺及以上提供。我要评估风险,降低风险年初,我把积压的风险缓解的故事(创建选项)和储备缓冲这些风险,我接受,而不是减轻。我要去预测,我不知道,我们需要做的所有的故事。我们有没有想到一些暗物质我们将不得不面对的,所以我保留了一个小缓冲区。这是一个合理和审慎的态度。我绝对不希望通货膨胀的速度消耗那些小缓冲区。我需要他们为我放在一边了。如果我允许速度通货膨胀使用了我的偶然性,那么我运行一个高风险的项目,比我想我。

这是我不估计新发现的缺陷或计划外的尖峰类似的原因。如果你不小心,你会夸大你的速度和下估计您的积压剩余的大小。

下一个>验收标准

@AndrewMFuqua是XP-Atlanta公司在2001年目前的企业转型顾问的创始成员之一,安德鲁以前在类似互联网安全系统,全球倾城,和IBM公司举行管理,产品管理和软件开发职位。安德鲁获得了计算机科学学士和硕士学位,并拥有来自杜克大学的MBA学位。

评论(8)

  1. 乔治·丁维迪
    回复

    The more generalized version of this is not to re-estimate after you start doing the work, since you’re gaining knowledge that can’t be known when you estimate prior to that, and therefore make these estimates no longer comparable with estimates made prior to starting. The worst case is when people want to modify the estimates after the fact. “That story was a lot harder than we expected, so we really should get credit for an 8, not a 3.”

    使用这个更通用的版本可以使它适用于工作与您描述的工作流不同的情况。例如,我发现在sprint计划期间进行任务分解的团队相对较少,在编写故事时选择JIT任务分解。以这种方式工作的团队不会进行任务估计,因为它不再提供价值,只需要时间和精力。一般来说,如果他们遇到的任务足够大,估计任务持续时间似乎会有所帮助,那么他们会将故事分割得更小。处理小故事而不是任务分解需要团队内部更多的协作,但也鼓励限制正在进行的工作,并将精力集中在软件的工作上而不是花费的工作上。

    此外,它并不总是有效的“下承诺并在交付。”在许多企业环境中,这是出现胜任最安全和最简单的方法。在其他环境中,该组织是风险厌恶少,将接受推更难完成更多,更快的折衷处理不确定性。

    这方面的推广是我们的原因估计是预测工作时一定量会做或做多少工作适合在一个给定的时间盒。如果我们还记得我们希望与估计回答这个问题,很容易看到为什么我们不希望以后更改我们的估计。至少,我们不希望改变他们在常规基础上;也有例外,我们宁愿别人做一些事情。

    当我们忘记了什么问题,我们正在努力的回答,很容易陷入考虑作为估计“信用团队”或“生产力的措施。”这导致我们的行为模式不提高生产工作的软件。

    回复
  2. 安德鲁·富卡
    回复

    谢谢你,乔治!我喜欢这样的概括。这是有益的,是字我的意图有更好的方式。

    回复
  3. Iakiv
    回复

    嗨安德鲁!

    我有一些问题:)

    当我第一次从熟悉你的文章的意见(由路JIRA官方文档),我喜欢他们这么多。
    但我还是没能付诸生活。

    我们的团队在6岁的时候就开始了这个项目。这个系统相当复杂和庞大…而且在前端也相当庞大。

    我会遇到下面的事情,我感到困惑时,我试图只的时候,我们不知道细节点提供的估计:
    1由于庞大的前端、缺少ui/ux设计师、缺少PO资源、优先级可能会意外改变—通常前端开发人员会这样估计:如果我们采用最简单的方式,那么它将是3,如果亚傅体育app更“聪明”—5,如果“最聪明”—8。
    2.由于旧的和复杂的项目,因为我们的是一个新的团队在里面 - 后端家伙可以这样估算:即使100 SP,无穷大或3 SP如果它发生的实施是容易的,否则40SP ...的故事听起来像“从用户的角度来看变化不大”。

    这就是为什么我们经常等待中“1”的情况下,进一步澄清了PO和等待在“2”的情况下开发商至少一些调查,以提供“初始”的估计。之后我们不改变它...

    你对此有何看法?有没有办法不以我们的情况下,“等待”?
    我很想找到一个...

    谢谢

    回复
    • 安德鲁·富卡
      回复

      嗨Iakiv

      >“由于庞大的前端,缺乏的UI / UX设计师参与,缺乏PO资源,......我们常常等待更明确的PO ......”亚傅体育app

      我假设你正在努力解决这个问题。你必须有一个良好的PO和PO小组(http://leadingagile.wpengine.com/2011/03/why-a-product-owner-team/),并具有很好的梳理积压(http://leadingagile.wpengine.com/2014/02/managing-risk-uncertainty-agile-2/)。

      由于旧的和复杂的项目,因为我们的>”是一个新的团队在里面 - 后端家伙可估计这样的...。这就是为什么我们经常......等待至少从开发人员的一些调查......你对此有什么想法?有没有办法不以我们的情况下,“等待”?”

      这就是为什么我们有尖峰,为什么我们识别和年初我组织的种类通常与工作,这是那些需要协调多个团队的工作,需要一定的预见性实现尖峰。如果你的环境是不同的,在这里我的建议可能并不适用于您。在我的背景,我有别人的技术工作与PO新郎这些故事,识别尖峰,帮助估计,并回答了问题的复杂性。该PO队需要了解它的交货时间为疏导,并根据情况提前新郎2,3,或者更多的冲刺。

      没有什么能够代替对具有合适的岗位合适的人这样做,需要做的工作。

      回复
  4. 托马斯Subera
    回复

    你好,安德鲁,

    我不完全肯定,如果我是在同一条船上与你。如果它只是一个1.6倍增加我真的不关心也是如此队。

    但是,如果这个故事迅速增加,从1到5的第一个冲刺计划阶段说。我同意一个故事,大部分的信息目前还不清楚,但是这就是为什么我们总是在谈论每一个新故事的第一估计之前,所以一切应该是清楚明了的团队。

    但有时会发生,这是任何人的过错。该PO只是认为这是明显,配备了必要的东西B和C,对对方球队感到受骗,因为这个故事的关键信息缺失。这只是一个功能,但好..我真的需要这个东西等工作也为这一点。(复杂性成本*冰*)。而在此情况下,PO没有做错任何事情。还有一个故事..但比团队认为的更为复杂。(没办法削减故事分成较小的)

    现在你说,如果这个故事是继估计将它的行为改变积压..好正确的它应该。由于不是20的速度球队只能在这个冲刺,这将使每个人都怀疑,如果有些事情错了产生16个。

    我必须承认,这不是一个每天问题,在一年多的一个或两个,而是幽冥少我会问你的意见吧。

    提前致谢

    回复
    • 安德鲁·富卡
      回复

      嗨托马斯。感谢您对这个参与。

      之前,我对你的问题的心脏,让我对你的第一句评论。我在后使用的数字只是一个例子,我试图让他们保守。对于任何给定团队的实际数字可能肯定会更糟。但一会儿那些数字贴,这些数字的工作,例如,如果我的数字是保守的人谁做在面对这种情况的承诺将是关闭的释放的持续时间的10%,或更多。+/- 10%往往是可以接受的,但如果你是在不经意间就在10%的晚期标记未来计划,你可能最终会更糟。您需要不可预见的事情(如您的评论的身体的例子),而不是预防的数学错误是+/- 10%。

      现在,我来谈谈你真正的问题:在你的例子中,有一个错误的沟通,一个误解。会发生的。这里是我们不在同一个页面上的地方,你的评论是“因为在这个sprint中,团队的速度不是20,只能产生16个,这会让每个人怀疑是否有什么错误。”你不希望任何人问问题或认为任何事情都是错的。我想我们应该让每个人都怀疑是不是出了什么问题。让我们讨论一下回顾中的失误,并改进我们的流程。让我们减少这种傻事的发生。不要说一切都好。不要更改号码,这样就没有人会问问题了。

      祝你好运!
      安德鲁

      回复
      • 杰夫
        回复

        你好

        但如何实现的要求,这种差距在时间,如果10%的缓冲区不够?我们建议的PO到下一个冲刺下,将其添加为任务?
        宝常常反对这种

        回复
        • 安德鲁·富卡
          回复

          嗨杰夫。我不知道,如果你在写过量使用的冲刺或更大的东西,如发布计划或季度计划周期。我不太担心,在单个/罕见的冲刺短跑水平小超负荷。如果它不发生的时候,我应该在更大的计划足够的储备,以吸收混日子的一个冲刺。

          在事件有人在组织过程中的任何时候意识到他们已经过载,以更大的东西,比如一个季度的规划周期,他们应该有一个关于如何对待它的谈话。我建议做一下它会减少一些范围的最好的事情。他们可以重新谈判的日期,但延长的日期是不是真的在小批量,快速反馈,MVP,或敏捷的精神。他们可以加班的任务,但通常并不好,因为它经常破坏安全和士气和质量。他们可以加人,但后来往往使得项目,而不是在保持团队一起(稳定)的精神,另一个做法我建议。

          为什么你的PO拒绝将未完成的任务,接下来的冲刺?我会拒绝添加未完成的任务到下一个冲刺,而不与任务一起拖未完的故事,或不分裂的故事。我假设PO仍然要完成这些任务。如果是的话,他有什么选择?

          回复

发表评论

您的电子邮件地址不会被公开。必需的地方已做标记*