The first step in Agile estimation is the writing of the user stories, that are a short description of the functionality.
The user story is usually structured as: “As a <role>, I want <goal/desire> so that <benefit>“. It defines the main agent (the end user, the business user,…), their need and the benefit on producing that feature. Each story is firstly estimated by Agile team in terms of day of work unit or points.
Estimating is not an easy task, and to keep the process manageable:
- Stories estimation should be in the range 1-10 points.
- New stories should be estimated in relative terms: We needed 5 points to do XYZ, and we estimate XYZ to do a similar job.
- Take into account the implication of the Cone of Uncertainty (wikipedia):
- Estimates (e.g. on duration, costs or quality) are inherently very vague at the beginning of a project.
- Estimates and project plans based on estimations need to be redone on a regular basis.
- Uncertainties can be built into estimates and should be visible in project plans.
- Assumptions that later prove to be mistakes are major factors in uncertainty.
- Include bugs fixing in your forecasts.