Agile Estimating Techniques
Mohamed Basheer ~ Agile Coach?? Empowering Teams and Organisation through Coaching
Enterprise Agile Coach | Lean-Agile Transformation Change Agent | Behavioural Coach | Agile Chapter Lead | Continuous Improvement and Innovation Coach | People Transformation and Development Coach | HPA Team Coach
Understanding the different estimating techniques and when to use them is critical for your Agile project success.
There are several estimating techniques to use in Agile, depending on what your estimating goals are. Story points, one option, are a tool used by teams to perform relative estimation. By relative, we mean that when we estimate using story points, we're estimating by comparing the relative effort of user stories as compared to each other. Story points are what we call an arbitrary measure. Which means that an estimate of three or a medium by one team, may mean a completely different thing than an estimate of three or a medium given by another team.
Story points are usually used by Scrum teams, and they express how much effort is required to implement a story or what we call the size of a story. We take three items into consideration when we're coming up with the relative size of a story. Number one, the Level of complexity involved in implementing. Number two, the Level of unknowns or risk. And number three, the Effort required to implement once we're ready to develop.
Ideal Days are a measure that can be used instead of story points. And one reason why teams might want to use Ideal Days is that they can be more intuitive than thinking about estimation and points. Ideal Days are units of time, whereas points are an arbitrary measure. They are used to estimate the relative size of user stories, product backlog items, and projects. Ideal days are how many days it will take a single developer to Build, Test, and Release the functionality described by a user story, under the ideal conditions. Ideal conditions refers to no interruptions, and that all resources are available.
Another estimating method that can be used to estimate user stories in Agile projects is Relative Sizing. With Relative Sizing, we're expressing the overall size of an item. So for example, we could be using Relative Sizing for users' stories or tasks. The Absolute value is not considered and what we mean by that is that, it's a very different method of sizing or estimating than saying that something will take exactly one hour, or three hours, etc. Relative Sizing is a cheap and fast estimation technique, there's not a lot of math involved. There isn't a lot of time involved, either. We really get together the people who are experts on implementation and ask them what the relative complexity is of one story as compared to the others.
Wideband Delphi is another estimation technique, and was developed in the 1940s by RAND Corporations as a forecasting tool. Wideband Delphi is a repeatable process. It's a group estimation technique that is used to estimate effort, and is straightforward to implement. It includes six steps, which are, scheduling an estimation meeting, describing what the team is estimating, tasking members to estimate individually, revealing the individual results, discussing, and repeating.
Planning Poker is another commonly used estimation technique by Agile teams. And it's used to determine user story size, as well as to build consensus among team members. And finally, Affinity Estimation is a technique used to quickly and easily estimate a large number of user stories and story points. This is done by quickly categorizing user stories, and then applying estimates to those categories of stories. The participants of the Affinity Estimation meeting are the Product Owner, the Development Team, and the Scrum Master.
In summary, Story Points, Ideal Days, Relative Sizing, Wideband Delphi, Planning Poker, and Affinity Estimation are all estimating techniques you can use in Agile.