一个曾经与我一起工作过的经验丰富的项目经理声称,他拿到程序员的时间估算以后,先将它乘以π,然后转化下一个时间数量级后,才能得到真正的值。1天转化成3.14周。他过去因为程序员不擅长估算时间而吃尽了苦头。我创建了一个用来翻译程序员时间估算的表格,来尽量缩小估算错误。
时间估算是困难的。每一个程序员都有一个现实的估计区间。低于这个区间的估计意味着(构件,测试,检查代码的)时间开销被低估了。超过这个区间的估计意味着这个任务太大而很难预估。
对于初级开发者来说,这个区间甚至都不存在。他们忽略(构件,测试,检查代码的)时间开销,同时困难的任务他们却又无法预估。我想说一个有经验的开发者应该在0.5至24小时将事情做完。超过24小时,就需要细分。这项工作应该在开发者的头脑中完成,然后总和到60小时。但是即使是有一些有经验的开发者也需要有利用管理时间块来思考。
同样重要的是明白:编程经验不等同于估算经验。一个不被包含在估算流程中的开发者将不会擅长估算。同样,如果实际的时间花费不被测量和用于与估算比较,那么将没有反馈来学习。
最后,每个程序员都应该具备估算的技能。为磨练这个技能,接手每个任务时,先决定你要做什么。然后在开始之前估算任务所需时间。最后测量实际花费时间,并与估算相比较。同样比较你实际完成的与计划完成的。这样你将会既提高你对一个任务包含细节的理解,同样也提高了你的估算技能。
英文原文:Programmer Time Translation Cheatsheet -or- Why Programmers Are Bad at Estimating Times
译文来自:图灵社区
分享到:
相关推荐
程序员不擅长估算时间是软件开发领域的一个普遍现象,这涉及到多个因素。首先,软件开发的复杂性和不确定性使得准确预测时间成为一项挑战。编程任务往往涉及众多未知因素,比如需求的模糊性、技术难题的出现、代码的...
【视频答疑】为什么做程序员头发还这么浓密?!
程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病...
为什么程序员必须写技术博客_以及如何写_博客在面试时的加分可不是一点点,别再犹豫了,快行动起来!
5. **技术债务**:为赶进度,程序员可能选择快速解决眼前问题,留待日后优化,这种“以后再修复”的思维方式会产生技术债务,长远看会增加维护成本。 6. **非程序员经理**:缺乏技术背景的经理可能难以理解开发过程...
好买财富-王晔倞-面对职场变化和转型分岔路,程序员该如何设定目标?
程序员选什么方向好_前端还是后端_在职程序员聊聊软件开发就业方向的选择问题
那么,什么样的人适合成为程序员呢?程序员应具备哪些素质?同时,又有哪些禁忌需要避免呢? 首先,程序员需要耐得住寂寞。编程工作往往需要长时间集中精力,沉浸在代码的世界里,这需要一种静心专注的能力。静不下...
为什么很多程序员喜欢喝咖啡?喝咖啡真的很伤身体吗?除了咖啡之外,还有什么方法可以提神?一个老鸟来为你分享一下真实的心里感受
软件开发通常被认为是相当不错的工作,原因非常多。收入高,福利好(有可能非常好),工作富有挑战性(通常是正面积极的挑战),根据... 程序员最害怕什么?根据对程序员讨论组里一些帖子回复情况的不完全统计,我发现了
计算机专业的人不能老是看程序的书,还要看相关的课外书。
程序员可以用ChatGPT做什么?
程序员工作 必须掌握的技术,还有涉及到的核心技术, 还有程序员的工资待遇
例如,可以采用集中处理杂事、邮件和会议时间的方法,确保程序员在关键的编码时间段内能够不受打扰。此外,团队成员之间也应当相互理解和尊重,避免在工作时间进行不必要的交流和打扰。 在一些公司中,为了保证...
1、有人曾说,做程序员的人,都是疯子,做长了往往入戏太深,成天与代码打交道,话都很少说,所以评论程序员们都是以后连妞都泡不到的人,我听后,我可以这样说,泡妞好比一个方法,他人是学习方法,而程序员呢,是...
程序员应该具备哪些目标?本文告诉你什么样的目标才是程序员的目标
现在社会上有很多程序员,CSDN就是我们程序员的家,那您是否可想过程序员为什么会有不同的水平?你又是哪一类的程序员?“菜鸟”程序员和“大神”程序员差在哪里?真是差在技术上了吗?那不是差在技术上那差在了哪里...