The objective of estimating is to improve our understanding by removing some uncertainty so that we can make well informed decisions. It is important to note that from a business perspective we are not necessarily looking for exact measurements, we need measurements that improve our understanding and reduce uncertainty.
Before you decide to do estimating on a project, it may be useful to have the answers to the following questions:
What decision(s) will be affected by the estimating information?
How will the decision(s) be affected?
Do we still think we need the estimates in the light of these answers?
Hint: How to start clarifying why you need to invest in the estimating process.
We need estimates of effort because:
We have no idea how much time and financing is needed to do deliver a working product, the information from the estimating process will hopefully remove enough uncertainty in order to make a decision either for or against the project.
We need estimates of effort because:
The project needs some people who have highly specialised skills and they also have other commitments outside the project. They need to be able to plan their work schedules and we do not believe that we can keep the project on hold for extended periods while waiting for them to finish other work.
Estimate Work Activities / User Scenarios and Acceptance Tests (US&AT) size in story points
For simple US&ATs allow a point range between 1 and 10 or 1 and 5.
For complex & compound US&ATs allow a point range of 10, 20, 30, 50 and 100 points.
The range for compound US&ATs is intentional as we are trying to achieve a range of accuracy that is relevant to the level of understanding and uncertainty. As the project proceeds the level of uncertainty will decrees and the team can then revise estimates if there is any value in doing so.
Simple US&ATs will generally have a shorter planning horizon than complex & compound US&ATs, but not always.
Identify a couple of US&ATs that you can agree on the approximate size and then set the size of the other US&ATs in relation to your reference point.
In this example it is very easy to see the relative difference between cleaning the floor in the town flat and the country house.
If you rate the town flat at 2 points then it is reasonable to rate the country house at 8 points.
With the above example you now have the relative effort of the two jobs, you may not know how long it will take though. That is why we need to understand the production rate (velocity) of the production team(s).
Estimating Projects User Scenarios and Acceptance Tests
In this model the principle control unit is the User Scenario & Acceptance Test. You can and will more than likely do estimates at component product level and project level so that we have an estimated target date for delivery of component products and the project product, there is a much greater margin of error at these levels and this fact must be understood by all stakeholders.
It is important to remember that we are focusing on the products here; in a normal project you will also have to estimate time to do other project related activities such as training and meetings these will be represented in the Work Breakdown Structure for each project.
Determine which estimating techniques are appropriate
As a general rule you will most probably use a mixture of these techniques. It is useful to have the definitions to improve communication and understanding.
Analogous Estimating (Top-down estimating)
This is used to estimate project variables such as cost, scope, effort (duration).
Use Analogous Estimating if:
The project or deliverable is similar to work that you have done recently.
A quick estimate is required and the stakeholders understand that this is a rough estimated and will change.
Do not use Analogous estimating if:
• The project requires more accurate estimates early on in the project, even if project activities are similar to a previous project, as the analogous estimates have a larger variance.
• If project requirements vary considerably from previous projects.
• A totally different team will deliver the project.
Parametric Estimates leverage the historical data of previous projects use that information to estimate project variables for current projects that have similar criteria and will be developed in a similar environment.
Recording lead times and costs for work done can contribute to being able to do parametric estimates on future projects.
Use Parametric Estimating if:
• Historical data is accurate and of good quality
• The historical data has direct relevance to the project requirements being estimated.
Do not use parametric estimating if:
• The environment in which the project is being carried out is different to the environment in which the data was collected.
• High levels of inflation
Three Point Estimating (Expert judgment)
Here you get three people who are familiar with the work to be carried out, and preferably will carry out the work. Each person will give an independent effort estimate. You then take the weighted average.
How to arrive at one estimate from the three?
O = Most optimistic estimate
M = Middle estimate
P = Pessimistic estimate
Estimate = (O + (4 * M) + P)/ 6
This is used to estimate the lowest level requirements and then aggregate the estimates. In the context of Product Based Planning we estimate the level 3 User Scenarios & Acceptance Tests then aggregate those estimates up to the Level 2 component products and then on the Level one project product.