如何估算项目时间
在项目的早期阶段,你会被问到需要多长时间才能完成。这对你来说至关重要。你肯定不想因为承诺不切实际的时间而陷入困境,也不想花费太长时间。
找到正确的平衡需要一些反复试验,但以下几点可能会有所帮助。
说话之前先看看任务
在获得项目范围和所有预期的承诺之前,不要透露任何关于需要多长时间的信息。除非你知道“它”是什么,否则你无法知道需要多长时间。与客户或经理一起仔细检查项目或任务列表,确保你完全理解他们的要求。
一旦你有了期望,就仔细检查一遍,并针对任何你不明白的地方提出问题。这是了解你将要编写什么样的代码的最佳方式。做好笔记,并随时提出更多问题。不断提问,直到你们双方都清楚任务要求为止。
看看你的同事的平均水平
如果你与其他开发人员合作,这能让你了解他们预期的平均开发时间。要特别留意那些经验比较丰富的开发人员。他们熟悉项目和任务,所以通常能给出最准确的时间预估。
记住也要考虑你的技能水平。初级开发人员不可能像经验丰富的开发人员那样快速完成任务清单上的任务。再次强调,要观察其他开发人员,因为他们可以为你提供一些项目中尚未出现的问题的见解。
了解同事的工作内容,并深入了解项目的实际期望,将有助于你思考需要完成哪些工作以及按什么顺序完成。此外,如果你想比同事们做得更好,你就会知道自己还需要付出多少努力。
考虑需要做多少测试
只考虑编写代码所需的时间是不安全的。也应该留出足够的时间来测试。如果项目无法正常运行,提前一周“完成”也毫无意义。这是你在进入QA阶段之前进行一些QA测试的机会。
你的代码本身就说明了一切,客户和经理真正关心的只是它是否能正常工作。你应该花大量的时间来测试和修复你发现的任何错误。不要因为你认为没人会发现错误而忽略它。他们会发现它,而且他们还会找到其他错误。
这是部署时最容易仓促完成的事情之一。测试能帮你节省最多时间,因为没有人能写出完美的代码。总会有漏洞或令人困惑的故障。想想你花了多少时间才发现 bug,并把这些因素考虑进去。
考虑可能发生的随机事件
你的依赖项可能会失控。你的项目可能会停止运行。你的电脑上一切正常,但实际网站上却完全无法正常工作。代码中会发生一些随机事件,需要时间来解决问题。
给自己留点缓冲时间,确保这些事情不会让你迟到。这时你需要谨慎行事。留出缓冲时间和留出时间偷懒是有区别的。
你知道自己最擅长的工作节奏,所以不要放慢速度或加快速度。处理随机事件的一部分就是持续地处理它们。无论项目如何,发生的随机错误通常需要差不多的时间来修复。找到这个时间点,或者直接问问其他开发人员他们是如何处理这些问题的。
估算时间很棘手,而且确实需要一些经验。有时你分配的时间不够,有时你分配的时间太多。在你参与过3个以上的项目之后,你会更容易发现相似之处,并了解你可能会遇到的一些问题。
我曾经有一个项目严重低估了工时,以至于我不得不羞愧地走到经理面前,告诉他发生了什么事。别担心。大多数时候人们都会理解,如果你真的付出了努力,他们不会因此责怪你。(除非你真的搞砸了)
嘿!你应该在 Twitter 上关注我,理由如下:https://twitter.com/FlippedCoding
鏂囩珷鏉ユ簮锛�https://dev.to/flippedcoding/how-to-estimate-time-on-a-project-l7o