There’s a lot of debate about whether the use of story points or hours should prevail in Agile planning. Unfortunately, despite the debate, there seems to be a bit of confusion as to what story points actually are. If you’re looking for a better understanding of the topic, so that you can choose between team story points or team hours, you’re in the right place. Today we’ll give you a crash course in story points.
Story Points: What are they?
In short, story points are measurement units that help estimate the amount of effort needed to develop a feature. Each story point is assigned a relative value, and these values together give the size of the user story. Once you divide the size of the user story by the team’s velocity, you know the number of iterations this particular project will take. You can take the number of iterations, and the number of weeks a normal iteration takes, to determine the relative length of a project. Story points, therefore, allow you to do more than just estimate the length of the project as with more traditional methods. You can actually calculate it.
How to Assign Story Points
The size of story points are relative to one another, and theiractual value is unimportant. So how do story sizes get values? There are a number of ways, though two of the most popular are:
1. Give the smallest story you work with a value of 1, and then rank the others in comparison to that. If your next story is five times the amount of work of the 1 valued story, give it a 5.
2. Take an averaged sized story, something that isn’t too small or too big, and give it a ranking of 5. Then compare all of your other stories to it, ranking them sizes 1 – 10. Bigger than the averaged size project, but not the largest one either? Give it an 8.
The greater the size, complexity, risk, time, difficulty, and uncertainty associated with a story, the greater it’s value should be. If a story hasn’t been fully defined, that’s fine. Estimate what story point value it should have, and then move on. You can always adjust for this later.
The most important thing about assigning story point size is to remember that the values are relative to one another. A 2 story point story, for example, should be twice the effort of a 1 point story. You rank each story point in comparison to another, in order to give it the right value.
Story Points & Team Velocity
A team’s progress per iteration is known as the team’s velocity, and you use story points to calculate it. For example, say that during an iteration, your team completed 4 stories, each with 4 story points. They would then have a velocity of 16 (4 stories x 4 story points = 16).
Knowing a team’s velocity is helpful in planning. If you know that your team has an average velocity of 16, you can be confident that they will be able to complete 16 story points in the future. It doesn’t matter the difficulty of the projects then – they would be able to complete 2 stories with 8 story points in the same amount of time they would be able to do the 4 stories with 4 story points. Velocity allows you to estimate the amount of effort that will take place during an iteration.
While story points help you to estimate the size of the effort, they also allow you to estimate the length of a project. For example, say you know you have 250 story points in this story, and that your team’s velocity is 25. It will take your team 10 iterations to tackle this project. If your iterations length is three weeks, it will take you 30 weeks to get through the entirety of the project. With this method, you’re actually calculating the length of the project, not just estimating it.
You might be thinking, “This all sounds great in theory, but what happens if I don’t estimate the right value for the story points?” There’s no need to worry – story points self-correct. If you think that you are able to do 15 story points per iteration, but only end up being able to do 10, you can quickly re-do the math and tell when the project should be done. You won’t have to re-estimate each and every piece of the user story.
While there are no direct values associated with story points, they allow you to estimate the amount of effort needed to put into a given project. This effort can then be calculated into the duration of a project. Pretty cool, huh?
Looking for more information like this? Check out other blog posts on this topic by clicking on the buttons below: