Summary: Estimating Projects
Speaker: Nairn Robertson (@nairnski)
“Why things take longer than you think… and what you can do about it.”
Estimating is relatively easy: it is controlling projects that hard.
Nairn Robertson kicked off his workshop by recommending several techniques to keep control of projects, including:
- Establishing a crystal clear scope before the project begins
- Estimating for this scope
- Clarifying project/company/client objectives firmly before commencing work
He also advised chasing down risks and unknowns aggressively throughout the project, noting that good project manager does these two things really well.
Workshop participants were challenged to estimate a range of things, including the length of the River Severn and the year of Alexander the Great’s birth. They were asked to give their answers as a range that gives a 90% change of including the right answer.
Participants worked together and then combined their efforts. The results match Steve McConnell’s research, that shows that people usually only achieve 25% accuracy or less. Even when giving an estimate as a range, people are generally bad at estimating.
You can be more lucky. You can’t be more accurate.
You can improve the certainty of estimates by removing unknowns, making decisions and designing.
Robertson also emphasised the difference between estimates and commitments. Estimates should be objective, unfettered by commercial/client pressures and most accurate estimate you can make. It will be wrong by its very nature. Commitments are based on those estimates. Other factors may come into the commitment.
Making a commitment to a client must be done carefully, as the estimate is always going to be wrong. The estimate will become narrower and more accurate as the project progresses, so it is worth considering strategies to manage client expectations until you reach a point where you know enough to estimate more accurately.
Robertson then led a series of practical exercises that can be used in planning meetings to work with a team to improve the estimating process:
Fingers and Thumbs
Robertson challenged workshop participants to another practice exercise, asking them to estimate the population of various countries individually and as a group, using a technique called ‘fingers and thumbs’.
Each group member put their hands behind their back, and on a cue, all showed their hands with the number of fingers extended reflecting the number of million people in each country. Each group then reflected on the different answers and agreed a number.
Robertson noted that showing your hands to give an estimate before discussing it can be a good way to draw out opinions from quieter members of the team. It also highlights where there is a wide variation perspectives on the estimate under discussion. This is a good thing, as it highlights differences in understanding, which can be a risk that you need to unpick.
Next, groups were asked to rank a selection of animals by weight, then estimate the weight of each when told that one of the animals (the antelope) weighs three units using a selection of number cards.
This technique requires preparation, but promotes discussion. Taking the unit itself out of the equation also makes the estimate more objective, by not focussing on the unit.
The groups were asked to layout cards bearing the names of various vehicles against a number line. By taking it in turns, members of the group were asked to move a card relative to the others, or select a new card and place this on the number line. However, they were not told the basis upon which they were judging the vehicles.
Robertson defined this broadly as wishful thinking. People focus on the most optimistic scenario for a task, and only affects things we estimate ourselves. Anecdotally, people miss predictions but make deadlines.
He stressed the importance of being aware of this when doing an estimate. He suggested doing an estimate, then going back and recalculating assuming everything will go wrong. He also suggested getting a second opinions and treating variations in estimates as a positive insight, as this is the stage when you can do something about any variations and improve your estimate as a result.
To Under Estimate or Over Estimate?
Both have their downsides:
If you under estimate you spend a lot of time in emergency status meetings, dealing with clients, re-estimating, and managing extra resource. This weakens your position with the client and delays other projects.
If you over estimate, work will expand to fill the time available. However, you may not get the business, so this is a risky strategy too.
Robertson concluded with Brook’s Law:
Adding manpower to a late software project makes it later.