Common project estimation practices in mobile software development
In my previous article I was describing the difference in project/product vision between product owner and development team. Realistic estimates were one of the most important topics there. Let me provide you with the list of most common best estimation techniques that exists nowadays. I'll describe four of them and will explain the essence of each one, it’s pros and cons and when it’s the best time to use one.
3-Point technique (PERT) is a quick estimating strategy applied to costs, schedules, and terms. It consists of three project estimates: the pessimistic, the most-likely estimate and the optimistic one. Then there is some simple math, and your assessment is ready. PERT is pretty good for an initial estimate because it is simple and easy-to-implement. However, it is not the best technique to accomplish the very final evaluation.
The base of parametric project management techniques is on the math and its models. They include equations, constants, and parameters. Managers calibrate the constants according to the historical data. Parametric methods are fantastic for the final estimate, but they can be very complicated and non-flexible. So before performing a parametric estimation, you might gather as much data about your future project as possible.
The Delphi Technique is an expertise-based process that involves each team member or a sub-team if the project is significant. It is good-to-use if there is no historical data to rely on, or the company plans vast changes in its structure. Otherwise, it is time-consuming, and it makes no common sense to apply this technique to every project.
The essence of bottom-up WBS estimating is the idea that each team member estimates what he or she will be doing and how long will it take. Then the data is collected, and you gather an overall estimate. This technique is universal enough. Thus you can apply it to every project, but it also takes some time.
Three Levels Of Project Estimate Process
There are also three levels of evaluation in every project, regardless of its size and complexity. The first is an initial high-level estimation. It is needed to give the top stakeholders the possibility to understand the terms and costs approximately and add some requirements or corrections to the estimate if required. Product people understand the timing and scope and think about finding the best project management technique for this particular case. Tech people get overall understanding of effort and timing needed to accomplish the project. Then it’s time for the detailed estimation of functionality. Companies usually finalize this stage according to one of the techniques mentioned above, and the output is the exact number of hours your team needs to accomplish this project. Estimate management. After you made and approved the detailed estimate, there is a need to control the project implementation process and manage forecasts according to the conditions and scope changes, and also the evolution of requirements. Estimate management is essential, especially for the AGILE development practices because the world moves fast and the conditions change rapidly.