摘要:时间估算是困难的,每一个程序员都有一个现实的估计区间,低于这个区间的估计意味着(构件,测试,检查代码的)时间开销被低估了,超过这个区间的估计意味着这个任务太大而很难预估。
一个曾经与我一起工作过的经验丰富的项目经理声称,他拿到程序员的时间估算以后,先将它乘以π,然后转化下一个时间数量级后,才能得到真正的值。1天转化成3.14周。他过去因为程序员不擅长估算时间而吃尽了苦头。我创建了一个用来翻译程序员时间估算的表格,来尽量缩小估算错误。
时间估算是困难的。每一个程序员都有一个现实的估计区间。低于这个区间的估计意味着(构件,测试,检查代码的)时间开销被低估了。超过这个区间的估计意味着这个任务太大而很难预估。
对于初级开发者来说,这个区间甚至都不存在。他们忽略(构件,测试,检查代码的)时间开销,同时困难的任务他们却又无法预估。我想说一个有经验的开发者应该在0.5至24小时将事情做完。超过24小时,就需要细分。这项工作应该在开发者的头脑中完成,然后总和到60小时。但是即使是有一些有经验的开发者也需要有利用管理时间块来思考。
同样重要的是明白:编程经验不等同于估算经验。一个不被包含在估算流程中的开发者将不会擅长估算。同样,如果实际的时间花费不被测量和用于与估算比较,那么将没有反馈来学习。
最后,每个程序员都应该具备估算的技能。为磨练这个技能,接手每个任务时,先决定你要做什么。然后在开始之前估算任务所需时间。最后测量实际花费时间,并与估算相比较。同样比较你实际完成的与计划完成的。这样你将会既提高你对一个任务包含细节的理解,同样也提高了你的估算技能。
英文原文:Programmer Time Translation Cheatsheet -or- Why Programmers Are Bad at Estimating Times
译文来自:图灵社区
分享到:
相关推荐
为什么程序员不擅长估算时间
【视频答疑】为什么做程序员头发还这么浓密?!
ChatGPT火遍全球, 为啥程序员还要继续学习C#?
程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病...
为什么程序员必须写技术博客_以及如何写_博客在面试时的加分可不是一点点,别再犹豫了,快行动起来!
程序员面试什么最重要?.pdf,这是一份不错的文件
35丨技术进阶之道:你和这个星球最顶级的程序员差几个等级?.pdf
1.开会 2.回复所有的电子邮件 3.衡量生产能力 5.“以后再修复”思维模式即“技术债务” 6.非程序员经理 7.程序员经理 8.技术过硬但有些强势的程序员
做程序员在面试的时候要怎么样去讲项目更快为你找到工作?
程序员选什么方向好_前端还是后端_在职程序员聊聊软件开发就业方向的选择问题
为什么每个程序员都应该学习 C 语言? 从事C语言开发必备图书
最伟大的计算机程序员是如何诞生的,教你如何成为一名伟大的程序员
为什么很多程序员喜欢喝咖啡?喝咖啡真的很伤身体吗?除了咖啡之外,还有什么方法可以提神?一个老鸟来为你分享一下真实的心里感受
软件开发通常被认为是相当不错的工作,原因非常多。收入高,福利好(有可能非常好),工作富有挑战性(通常是正面积极的挑战),根据... 程序员最害怕什么?根据对程序员讨论组里一些帖子回复情况的不完全统计,我发现了
计算机专业的人不能老是看程序的书,还要看相关的课外书。
他过去因为程序员不擅长估算时间而吃尽了苦头。我创建了一个用来翻译程序员时间估算的表格,来尽量缩小估算错误。 估算时间 程序员所想象的 程序员所忘记的 实际时间 30秒 ...
程序员可以用ChatGPT做什么?