所以你刚刚被The Boss放在了现场.你有15分钟的时间来提出增加一些新功能的信封估计值.你的老板(幸运的是)认识到你无法在那段时间内提供准确的估计,所以期待一些正确的数量级.
问题是你如何在准确到一个数量级的时间范围内做出估计?
请注意,这是一个快速而肮脏的估计,而不是像这样的问题可能会出现的情况
将手指放入嘴中,舔,在空中挥动,并根据过去的经验组成一个数字.然后翻倍.
真的,它的经验非常重要.你想象一下这个任务需要你做什么,而且你知道你需要多长时间才能做到这一点.加倍意外的项目.这也是为什么你从不向初级程序员询问这样的估计.
最好的方法是尝试快速分解所有主要子组件,例如
更新数据模型脚本(2个表中的3个项目)
更改输入屏幕(3个新输入)
检查输入(3个新输入)
更新数据.
显示结果等...
构建单元测试
对每一个进行粗略的猜测,如果你不能想到一个放下至少2个小时,因为即使是最简单的项目也可能需要至少一个小时,但2x将允许不确定性.
至少你会想到你将要做的所有项目,所以它将按照要求的数量级.
回想一下你过去做过的类似任务以及他们花了多长时间.
如果你之前没有做过任何类似的事情,那么尝试将任务分解为子任务,然后进一步减少每个子任务,直到没有留下任何子任务,听起来需要超过1-2天才能以最天真的方式进行原型化办法; 如果你不能将任务估计超过3天,这通常意味着你并不真正知道完成这项任务所涉及的内容; 做一些快速研究.一旦所有东西都被打破了,总计,将结果加倍,并将其作为您的估计值.
如果你不知道如何解决问题就足以完成上述任务,而你的老板正在呼吸你的脖子让你不觉得你可以在那里研究,而是试着让你的老板估计它有多长会带你进行必要的研究,以便对他的问题进行适当的估计.