The number of project estimates depends completely on the project type. Some such as a construction project or IT infrastructure may need only one, two if a change is discovered. Software development is extremely complex and all assumptions, details, features, and functions will have impact on the estimate. The more uncertain the requirements the more the risk the project will incur... but that is a different blog.
Essential PM Skill:For all projects whenever there is a change issued, a new estimate should be performed, to determine the impact to the budget and timeline. Every time there is a scope change a new estimate should be performed.
Software Development Life Cycle (SDLC) EstimatingSoftware development projects are going to require multiple estimates at each of the major phases within each iteration. Software development is especially sensitive to even minute changes and assumptions.
- Sizing Estimate
- Initial Estimate,
- Requirements Estimate,
- Design Estimate,
- Change Control/Scope Change Estimates
Agile EstimatingThe Agile SDLC estimation is very different.
- Initial Story, the whole scope and assumptions.
- Detail Features for each sprint.
- Change Controls (Scope, assumptions for the overall program)
My advice for all estimating, don't try to be too sophisticated with any of your estimates, because they are only estimates. But with the above methods as you achieve each of these milestones or complete each sprint, you know more about what is needed for the program/project. Assumptions will change and that is what change controls and subsequent estimates are for.
Remember, the good PM is always planning and will communicate all changes in timing, budget and scope to the other stakeholders. It's all in the planning!
For more information on Program and Project Estimating please feel free to contact Trish!
What do you think? Please share your thoughts on this.
Armada Business Consulting, Inc.
Need help getting from strategy to execution? I can help. For more information contact Trish at firstname.lastname@example.org.