English 中文(简体)
敏捷 - 任务细分 - 估算还是不估算?[关闭]
原标题:
  • 时间:2009-01-08 22:50:32
  •  标签:

这个问题似乎不属于《帮助中心》定义的编程范围。

Closed 5 years ago.

在迭代计划中,我们经常发现自己和这个人处于同样的位置-如果你对编程任务没有经验如何估计

我完全同意在估算前进行原型制作。但对于任何需要一定架构和设计的事物也适用 - 但我不太舒服在超出短期开发周期的范围进行所有这些工作。

基本思想是,您尽可能识别您有把握的任务,并将其估计为正常。对于那些您不确定的领域,应该确定两种类型的任务:调查和实施。

调查任务是工作的简要描述,你对其不确定,例如“调查如何将控件X绑定到数据”。这些会提供估计。

实施任务是传统的草略估算,可能基于分配的故事点,用于估计实施功能所需的时间。

在冲刺期间,当调查任务完成后,开发人员应当处于了解情况更清楚的阶段。可以确定适当的任务,这些任务取代了实施占位符。此外,在这个阶段可能会确定进一步的调查任务,循环继续。

在上面的示例中,我们从7小时的调查任务和14小时的实施任务开始。一旦第一次调查完成,任务1、2和3将被确认并估算某种程度的确定性,其中任务3是另一个调查任务,从中任务4和5将在一个后期被确认。你可以看到,第一个实施估计的特性交付时间为14小时,但实际上至少需要4+7+3+4+2=20个小时。比最初的估计多了三分之一。

将其翻译成中文:alt text http://www.duncangunn.me.uk/myweb/images/estimate.png

欢迎所有的想法 - 我的直觉是这将会成功 - 我是对的还是我错了?

干杯!

问题回答

我们所做的事情。

一些功能涉及新技术。我们无法准确估计它们。 点。

我们制定一个数字。基于几个因素。它的实现感觉有多难?我们是否可以通过某种“部分”或“刚好足够”的实现来完成?

  • 如果它很难,那么就很难。它会很昂贵。

  • 如果有很多部分,其中有好东西的核并加上一些奖励内容,我们就有可能只发布核部分,把其他东西留到以后处理。只有极少数的东西是“全有或者全无”的,无法进行部分发布。在这种情况下,我们必须为“全有”提供足够的时间,这会变得很昂贵。

我们的标准方法是获得能够工作的东西,并在由于意外复杂性而耗尽时间时可能延迟事情到以后的冲刺。

您所称的“调查”,我们称为技术突发冲刺。对于新的事物,我们会估算一个数字来取悦那些觉得必须过度策划事情的经理。然后我们会进行技术突发冲刺。一旦进行突发冲刺,我们就可以根据我们所知道的重新修订估算。

实际上,这个功能的实施花了27个小时 - 您忘记了第一轮7个小时的调查,因此实际上实施时间比预估时间长了近一倍。

你可以有两种选择方式:

  1. Just make the estimate as best you can and potentially experience a blowout in your sprint and a declined project velocity (you should only do this if the feature is both urgent and critical); or
  2. Schedule the investigation for this sprint and leave the implementation for another sprint - without an idea of how long the task will take, the Product Owner does not have enough information to make a decision about in which sprint to schedule it or even whether to do it at all. Only tasks that have been estimated should be included in your sprint.

第一选择意味着您的冲刺和项目估计有些是主观的。第二个选择为您的冲刺提供了更多的可预测性。

在您的例子中,初始调查可能安排在Sprint 1,但是如果不知道任务需要多长时间,产品负责人就无法决定如何安排。如果您估计需要200个小时,产品负责人可能会决定根本不使用该功能,或者将其延迟到产品的第二版中。 估计完成后,产品负责人为Sprint 2安排了任务1、任务2和任务3的调查。在估计任务3之后,任务4和任务5可以在Sprint 3或以后安排。

Estimating feature usually is complex task. After some time your estimation will become better. But good approach can be that you estimate features with the story points. Story point is abstract value (meaning agreed among the team) that express complexity of the problem. You should assign the same complexity (same number of story points) to the features of the similar complexity. Then later on it is enough to estimate only smaller set of features (or looking at the historical data) and you should be able to estimate how much time you need.

类似复杂度的功能需要相似的实现时间和努力。





相关问题
热门标签