When estimating an “easy task” is not that easy
Project planning for web development is complex at the best of times, and there are often hidden costs. In this piece we look at some of these costs that can often make or break project profitability and workflows.
Estimating is an art and probably one of the hardest tasks for a project manager. There are many tools out there to help with estimation, but there is no recipe to determine how much a task or a project is really going to take. That is a skill that is learned with time, work and experience, but there are many variables involved that can affect an estimate, and there can be unforeseen events that change the flow.
Usually, the next challenging task after making the estimates is communicating them to the client. They expect to get tasks accomplished in the least time possible, and very often they have an idea that small things should be accomplished in a matter of minutes. However, there are many factors that need to be considered when it comes to estimates:
- How much communication between the project manager and the development team need to be involved?
- How much communication between the project manager and the client need to to be involved?
- Does the change need to be applied directly in production (not recommended) or needs to follow the development workflow (local instance > development instance > staging instance > production instance) and approval?
Therefore, even though a small task will require at least half and hour to be ready. Here is an example with hypotheticals:
- Project manager to review and understand request from client: 5 minutes.
- Project manager to coordinate task with developer: 5 minutes/each.
- Developer to implement tasks in local instance: 5 minutes.
- Developer to move change to development instance: 2 minutes.
- Project manager to review implemented task in development: 2 minutes.
- Developer to move changes to staging: 2 minutes.
- Project manager to communicate client changes in staging for approval to move to production: 2 minutes.
- Developer to move changes to production: 2 minutes.
- Project manager to review changes in production and communicate to client: 5 minutes.
Total time: 35 minutes
This example excludes some things that can affect the estimate:
- There is no room for mistakes.
- Communication has to be clear enough to avoid questions or misunderstandings.
- No other factors impact the delivery.
So, educating clients may help them understand that there are many moving parts and variables in software development, and very rarely are easy tasks that can be done in a couple of minutes.