我认为弗兰克(Frank)和恩卡塔(Encaita)的答案几乎涵盖了这一点,但还需要考虑其他一些事项:
为什么要使用故事点
评估故事点的目的是为您的应用程序开发功能提供相对的复杂性。一种简单的思考方式是在即将进行的sprint中获取一个故事,例如url更改。您知道这在复杂性方面很简单,并且已经明确定义了接受标准,因此整个团队都同意,即使进行测试,它也是1(使用Fibo量表)。
下一个要估计的故事是聚合一组用户数据并将其可视化在前端。现在,作为开发人员,您立即知道,这比更改URL更复杂。您讨论了故事和验收标准,并且遇到了很多问题,并且看到了一些可行的解决方案。其他开发人员和质量检查人员也认为这很复杂。所以大家都同意这是一个34点的故事。值得注意的是,Fibo量表还允许您表明您对模拟的信心程度-数字之间的差异越大,表明您对估计的信心就越小
此时,您的Scrum管理员应该跳起来,说这是一个单一的故事,太大了,需要分解成更简单,更简单的故事。您可以通过执行所谓的SPIKES来解决此问题-这只是预留时间来调查某些事情。因此,对于本示例,您和其他开发人员都同意,您需要4个小时来讨论和研究可能的技术解决方案。
简而言之,您可以将这个大故事分解为另外四个分别为5、8、8和13分的故事。不记得这些估计都是关于相对复杂性的-他们不必将原始估计加起来,而且您现在拥有更多信息可以做出更准确的估计。
然后,您会以团队的方式同意,对于本次冲刺,您将致力于完成13点故事,一个8点故事以及您已经确定的1点网址更改。这样一共22分。在下一个Sprint中,您将获得27分,在接下来的Sprint中,您将获得18分。经过3个冲刺,您就可以开始对自己的速度有所信心(速度是您的团队可以在一个冲刺中完成的工作量)。要获得速度,请取先前冲刺的平均值。因此,在此示例中,平均值为(22 + 27 + 18)/ 3 = 22.3,因此将其四舍五入到Fibo标度的最接近值21。
现在,对于下一个冲刺,目标是完成21分。
不要为获得正确的故事点估计而烦恼-这不是一门精确的科学。您知道url更改要比汇总数据复杂得多,因此只需对它进行评分即可。
另外,以团队形式讨论这些事情是件好事。在冲刺审阅期间回顾一下您的估计,并讨论您是否对它们感到满意,然后将其输入到下一个冲刺计划会议中。
整个团队的估算
整个团队必须就每个故事达成一致的估计。一项功能要等到正式生产后才能完成。仅仅编写代码是绝不可能完成的。以我的经验,Scrum团队在团队合作中效率更高。以我现在与之合作的团队为例。当我加入时,他们参加所有的sprint会议并计划扑克,但是在sprint期间,过程是1. BA /产品所有者将需求定义为具有接受标准和接受测试的故事2.他们将这些需求交给开发人员,然后由开发人员编写代码3.开发人员将代码合并到开发分支中,以进行质量检查以进行测试4.对质量检查进行测试,然后他们开始提出问题,并且测试失败,因此重新投入开发。
这里缺少什么?前面没有足够的讨论,每个团队成员都只看到自己的任务。现在,BA / PO,开发人员和QA聚在一起,然后编写任何代码以详细讨论需求并预先提出问题,然后在整个sprint中继续进行讨论。这样效率更高,并能带来质量更高的解决方案。
计划扑克对这一过程有帮助,因为它迫使团队讨论该功能,并作为一个团队就该功能的交付复杂程度达成一致。在传统的软件开发中,项目经理负责项目的交付,但是任何有这种方法经验的人都知道它是行不通的,因为在很多情况下,人们不承担应用程序交付中的责任。在Agile中,您不需要项目经理,因为团队将整体负责交付应用程序。
按时估计任务
我认为与估计任务时间的团队以及仅做故事要点的团队合作是“不做时间估计”!他们实际上只是浪费时间。它们不像故事点那样准确,因为它们特定于个人而不是团队,并且每个人都会有不同的时间估算观念(如火如荼)。
故事情节接受事物(即需求)并一直在变化,因此您确实需要一个指标来说明团队可以在冲刺中完成什么。
一旦了解了速度,就可以及时测量可交付成果,因为您知道在每个冲刺中可以完成的工作,例如,每两周就知道可以交付哪些功能。您的Scrum负责人和产品所有者应该进行估算会议,以期展望未来的冲刺,然后您就可以了解未来几个月将完成的工作量。这样,产品所有者就可以在最终应用程序中包括哪些功能做出优先级决定。
我曾经让开发人员要求我们估计任务的时间以进行计划,但是我实际上不同意这种方法(实际上,我强烈不同意这种方法),因为它不准确,例如,这将花费我4个小时才真正意味着:一个开发人员可能只在任务本身上花时间,其他人则可能会花一些时间来做杯茶!
时间估算总是交给其他人报告,这也过分强调了提供功能的各个要素而不是整个团队的努力。
估计不是最大的问题
顺便说一句,弄清楚估计并不是我认为团队必须解决的最大问题。最重要的是,作为一个团队一起工作,以在整个sprint中完成任务,这样您就不必在最后一天交出所有内容进行测试。您希望在整个2周的冲刺中看到稳定的功能。我上面解释的团队动态是其中很大一部分。故事点估计将帮助您对此进行计划,因为您将看到哪些大故事需要分解为较小的故事,并可以定期进行测试。