Estimating Effort for each of the tasks in the Product Backlog is an ongoing process. Conducting this process may occur incrementally over daily 30 minute sessions or a single larger weekly session. Every Requirement that has a chance of being entered into the next Sprint must be given an Estimate and this requires a collective Effort from the Scrum Team. Estimating this effort is the responsibility of the Development Team. Estimating also occurs in three stages, where the accuracy of the estimating increases as requirement details are refined.
Estimating Effort and the Product Owner
The Product Owner may provide clarifications on the Requirements but the end decision is made by the developers doing the actual work. The Scrum Team refine the Estimates at three levels, the Product Roadmap, the Release Plan and also the Sprint Plan. However, estimating effort is possibly one of the most difficult aspects of the development teams responsibility. Estimating involves considering a range of factors which are often partially unknown, and this estimating is then used to make critical business decisions. Inserting pressure for delivering the requirement according to the effort estimation then often occurs. However, estimation is just that: an estimate.
Effort Estimation Techniques
The Fibonacci Sequence is a sequence where each number is equal to the sum of the two preceding ones. This sequence is a good way of estimating because the Fibonacci Sequence increases the distance between the two numbers. This then enables larger pieces of work to carry a lesser degree of Estimate accuracy. Like so:
1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, …
The team can then decide how many Story Points in a Sprint. Estimating effort using estimation poker is also a popular method.
Our Favourite Agile Books