理想时间与消耗时间

一场美式足球赛是多长时间?你可能会说它有四个15分钟长的小节所以总共是60分钟长。或者你会说大约在三个小时左右。

这两种答案都有自己的正确性。它们之间的区别显示了理想时间与消耗时间之间的差异性。理想时间就是当筛除所有周边活动后做一件事情所需要的时间。而消耗时间则是在时钟(或者是日历)上过去的时间。一场足球赛需要大约三个小时的消耗时间。

两种计量时间长度的方式都能达到它们自己的目的。在一场足球赛中,理想时间是用来给官方去了解每个小节及整场比赛什么时候结束。这当然是一个必要的功能。另一方面,如果你要去看一场比赛,你的配偶问你什么时候回去,这时你说60分钟后回去对你是没有什么好处的。因为,你要三小时后才能回去(还要再加上你在路上的行程)。

去预测一个事情的理想时间几乎总是会比去预测它的消耗时间要容易及精确得多。假设你被要求去估算这个周末要进行的某场足球赛。如果你选择使用理想时间来做你的估算,你能很快几乎不假思索的说出60分钟来。如果你想给出更精确的估算, 你可能会去看看去年的加时赛的数据,crunch some numbers, 然后宣布,根据历史平均值,这周末比赛将会要62.3分钟。

另一方面,假设你选择使用消耗时间来估算。去年有些比赛用掉了21个小时,另一些比赛用掉超过4个小时。

其中的一些差别是来自于随机的事件,比如受伤,另一些差别则归功于不同团队的比赛风格,每支团队收到了多少罚单等等。电视直播的比赛会用掉更长一点的时间,因为有额外的广告时间消耗。天气可能会延长或者缩短一场比赛,取决于参加的团队。要想得到一个跟你不假思索就能得出的理想时间一样精确的估算,你可能需要考虑这里每一个因素。

当然,如果我看一下电视上的节目介绍的话,上面会说这场比赛将在1:00点开始在4:00结束。很明显,电视网络中的某人对消耗时间做了一个预测。那他们知道一些什么是我们所不知道的呢?有好些事情。第一,他们打算根据赛程的发展添加或者删除一些广告。第二,所有的比赛都是车或多或少三个小时左右。如果比赛完成得早一点,电视网就多放一些广告,访谈,或者其它的用来填补时间。如果比赛拖长了,会怎么样呢?对这场比赛感兴趣的观众很可能会继续多看15到30分钟。他们不会仅仅因为预报说比赛会在4点结束就会真的停止观看。对比赛不怎么感兴趣,准备在4点换到这个台来看另一个节目的观众也有可能会等一会儿,如果比赛不会拖太久的话。最后,经过几十年的电视转播,电视网络已经让人们接受了不要期待一个精确的完成时间这一事实。

最后一点区别是非常重要的一点。多年这样以后,大部分球迷都知道一场计划在4点打完的比赛只是一个估计而已。没有人会因为一场比赛进行了4小时15分钟(8%的延迟)而感到意外。他们有可能感到失望或者生气,但是不会感到意外。那为什么我们要为一个估计要12个月完成的软件项目最终用了13个月(相当于8%的延迟)而感到意外呢?哪一个时间更难估算呢?

理想时间与消耗时间

在一个软件项目中,理想时间与消耗时间的差别不是来自于延迟,未完传球或是受伤等,而是来自于我们每天都在经历的日常消耗。不管哪一天,除了我们计划好的在项目上的工作,一个团队成员还需要花时间回邮件,给供应商打客服电话,面试新员工候选人,及开两个会等等。下表中可以看到更多的关于理想时间与消耗时间不相等的原因。

支持已发布产品
培训
生病
写邮件
评审及会议
演示
面试新人
私人事物
任务切换
电话
修复缺陷
特殊项目
管理性实务
此外,在考虑为什么理想时间不等于消耗时间的时候,请注意管理者在每两次干扰之间只有平均5分钟的工作时间(Hobbs 1987)。即使是一个典型的开发人员,被打扰的频率也只是管理者的三分之一而已,每隔15分钟的干扰依然是一个不小的干扰。

当管理者问一个团队成员一个无法回避的问题时麻烦时就来了:“需要多长时间?”。团队成员答道“5天”。然后管理者开始在他的日历按五天倒计时,并且在目标日上标了一个大大的红。可惜开发人员其实真实的意思是想说:如果我只做这一件事情的话需要五天。但是我还有好多别的事,所以很可能我需要两周时间。

在软件项目中,多任务处理也会加大理想时间与消耗时间之间的差别。一个足球球员绝不会被他的教练要求“由于你每场比赛都不是很忙,我想要你同时去参加这场很重要的曲棍球比赛”。一个被要求去做多任务的软件开发人员在两个(或者多个)任务之间切换时会极大的损失效率。

在软件项目中,我们有可能会被要求去估算用户故事或者其它的工作的理想时间。进行理想时间的估算时你的假设是:
◆ 你正在估算的这个故事是你唯一需要做的工作。
◆ 当你正式开始做时,所有的你需要的事情都已经准备好了。
◆ 做的过程中没有任何干扰

 

本文由 Scrum中文网 整理自《敏捷估算与计划》一书及Mike Cohn的博客。

火爆 售票中
Scrum.Org 主办
搜索
近期公开班
scrum alliance csm认证徽章
12月14-15日 (周六、周日)
Scrum Master (CSM) 中文认证课
远程
Lance Zhang 张宁宁 授课
专业Scrum Master (PSM I) 认证徽章
12月19-20日(周四、周五)
专业Scrum Master (PSM I) 认证公开课
远程
Derek Ding 丁志润 授课
Scrum.org专业Scrum产品负责人(PSPO)认证徽章
1月4-5日 (周六、周日)
专业Scrum产品负责人(PSPO)中文认证公开课
远程
Derek Ding 丁志润 授课
领导大规模敏捷Leading SAFe认证徽章
1月11-12日(周六、周日)
Leading SAFe领导大规模敏捷认证课
远程
Scott Wang 王庆付 授课
safe scrum master ssm
2月22-23日(周六、周日)
SAFe ScrumMaster 官方认证公开班
远程
Eric Liao 廖靖斌 授课
大规模敏捷顾问SAFe SPC认证课徽章
2月27-3月2日(周四-周日)
SAFe认证-SPC SAFe认证培训师导师班
上海
Eric Liao & Marsha Xue授课
safe scrum master ssm
8月10-11日
SAFe ScrumMaster 官方认证公开班
Eric Liao 廖靖斌 授课
scrum alliance csm认证徽章
11月09-10日
Scrum Master (CSM) 中文认证课
Lance Zhang 授课
scrum alliance csm认证徽章
10月26-27日
Scrum Master (CSM) 中文认证课
中文远程
Scott Dunn & Eric Liao 授课
领导大规模敏捷Leading SAFe认证徽章
10月19-20日
Leading SAFe领导大规模敏捷认证课
Eric Liao 廖靖斌 授课
Scrum联盟acsm认证徽章
10月19-20日
高级Scrum Master(A-CSM)认证公开课
Jim Wang 王军 授课
0
0
小时
0
分钟
0
由Scrum.org主办的 2024中国Scrum大会 8月17日将在上海开幕
0
0
小时
0
分钟
0
预约回电
留下您的手机号,我们会在第一时间联系您。
热线电话:400-696-6280
预约回电
预约成功,我们会尽快联系您。