我的团队正在跟上Scrum的发展步伐,但是我们大多数人对非敏捷或“伪”敏捷方法更加熟悉。对我们来说,最大的障碍是召开高效的Sprint Planning会议,在会议中我们将积压的项目分解为任务,并估算工时。(我使用的是VS2010 Scrum模板中的术语;如果我在某处使用了错误的单词,则表示歉意。)
当我们试图确定一项任务需要花费多长时间时,我们经常陷入在代码级设计功能的陷阱(表布局,接口等),以便弄清该任务需要多长时间。 。
我很确定这不是进行这种设计的合适位置。我们应该在sprint期间安排这些设计会议的任务。但是,我们在弄清楚如何为任务提出有意义的估算时遇到了麻烦。
有实践习惯/技术/等吗?在不知道您打算如何实现某个功能的情况下做出判断需要花费多长时间的判断?如果设计完成后我们的时间估算值将发生显着变化,那么我们如何才能提前适当地预算Sprint待办事项?
编辑:
请澄清一下,因为一些评论/答案非常有效,但我认为解决的是错误的问题。
我们知道我们正在做的事情是不正确的,我们应该在此设计的sprint中花费时间。从概念上讲,所有开发人员都明白这一点。如果我们开始进入杂草丛生,我们还将招募具有Scrum经验的团队成员,以保持我们的正常运转。
问题在于,如果不经过这个设计过程,我们将很难为任何事情提供具体的时间估算。我们一直在说这样的话:“好吧,如果我们以此方式设计,可能会花费8个小时,但是如果最终不得不以其他方式这样做,那大约需要32个小时,但是一旦开始尝试编写,它可能不会那么糟糕...”。
我还假设一旦我们有了一定的历史速度,这个过程就会变得更好,但是我们正在使用的许多技术和架构模式对我们来说都是新的。但是,如果潜在的错误估计仅是适应此过程的自然组成部分,那么我们将只需要重新调整自身以接受:)