Whether you’re taking a road trip in your car, performing a household chore, or working on a freelance writing assignment, your timeline is at the mercy of random factors. Unplanned events, unexpected developments, and confounding setbacks potentially affect the amount of time you need to do the job, whether it’s painting a room or picking up a friend at the airport.
Unfortunately, taking this example into the business world, clients, customers, and end-users take a dim view of lateness. If you give people an expectation and fail to live up to it, it looks bad on you, and you may wind up losing work or customers.
Enter Story points in Agile. In the context of software development, you need to present a realistic timeline. And how do you offer a realistic timeline? You break down the project into stories, estimate the time required, and assign a number to reflect its relative difficulty.
In other words, you need story points. So that’s why we’re here today.
Story points are a crucial part of Agile methodology. In fact, you can’t use Agile without them! So let’s look at story points in Agile, what they are, where you use them, and how to make good estimates.
Agile Stories: A Refresher
Before we talk about story points in Agile, let’s remind ourselves what stories are in the Agile context.
A story is a simple, general explanation of a specific software feature. Stories are created from the customer or end-user’s perspective and show how the particular software feature will benefit the customer.
Here’s an example of a story: “I manage a small accounting team at work, and I need a way for us to easily share spreadsheets in real-time while being able to communicate with each other simultaneously.”
So, What Are Story Points in Agile?
Building off the definition of an Agile story, story points are metrics used in Agile product development and management to guess how difficult it will be to implement a user story. Put another way, it’s a numeric value that helps the development team understand how challenging the story is.
Story points in Agile are abstract measurements that developers use instead of hours. Points are relative values, so a story with a value of four is twice as hard as a story with a value of two. The actual numbers don’t matter — you could assign values between 1,000,000 and 5,000,000 if you want. Instead, you want to give the team an idea of the story’s relative difficulty. Story points tell you how much effort a given story will take to resolve.
Why Should Teams Use Story Points in Agile?
Story points in Agile benefit development teams and product owners alike.
For development teams:
- The team gets a better grasp of what’s required of them, making it easier to develop a sound implementation strategy.
- The team won’t over plan, so they have a better chance of finishing an increment.
- The team knows how much to plan in a sprint, thereby letting them work at a sustainable pace.
- The team can create a reasonable estimate without having to commit to a specific timeframe.
For product owners:
- They can better assess an item’s return on investment (ROI) or the value for the money.
- Owners can better understand the technical risk associated with their more oversized items.
- They can better forecast the product’s longer-term delivery.
However, team members should be careful to avoid some common pitfalls.
- Don’t give story points to small tasks that the team can easily estimate timewise.
- Story point creation is a team effort, not a one-person show. Make sure the team stays engaged, and everyone contributes.
- Don’t average story points.
- Don’t let one variable influence the entire process — story points measure the whole picture (e.g., risk, complexity, uncertainty).
Where Do You Use Story Points in Agile?
Teams use story points in the Agile software application development process. Story point estimates usually occur during product backlog grooming sessions, conducted by the development and testing teams as they review the product backlog. It’s absolutely critical that the people performing the story point estimations are the people who are responsible for doing the work. The team’s Scrum Master, product owner, engineering leads, or management have no say here unless they’re doing coding too. Since they are most likely not doing coding, these parties need to sit back and let the professionals who actually do the work decide the relative difficulty of each story point.
If there are any significant differences between the estimated development time and the product owner’s expected time, everyone should get together and try to clear up any misunderstandings.
How Do You Make a Story Point Estimate?
So now that we’ve established what story points in Agile are, why they’re important, and who creates them, we need to know how to make these estimates in the first place!
When making a story point estimation during story mapping, developers must consider three factors:
- Complexity. How hard will it be to develop this feature?
- Risk. This includes random changes, dependency on third parties, vague demands, and other uncertainties.
- Repetition. How familiar are team members with the feature, and how monotonous will the required tasks be?
Here’s how a typical estimation meeting unfolds:
- The Scrum Master initiates and moderates the meeting. The Scrum Master is also responsible for creating and maintaining the project’s burndown chart.
- The product owner briefly overviews the single Product Backlog Item (PBI) that the team is estimating. Then, the group asks questions and discusses risks and assumptions.
- The team decides on a story point estimation matrix, establishing baselines of what constitutes minimal risk, repetition, and complexity.
- Each development team member compares the PBI size relative to the PBI calibration and picks an estimate. Only development team members can estimate.
- Team members call out their estimates simultaneously. The product owner can ask why members chose specific numbers and discuss the matter further. Note that this is also the phase where team members often use Planning Poker, a means of expressing an estimate by holding up a card with the corresponding number.
- Members with exceptionally high or low estimates explain their rationale. The product owner can clarify certain points and negotiate the expectations, thereby reducing the substantial point gaps.
- Repeat the process until the team reaches a consensus.
How Do You Calculate Story Points in Agile?
You may wonder exactly how team members are supposed to calculate story points, considering the values are abstract and not reliant on actual time units. There are several methods available.
- T-Shirt Sizing. This scale follows t-shirt sizes, Extra-Small, Small, Medium, Large, Extra-Large, 2XXL, etc.
- The Linear Sequence. The classic 1,2,3,4,5, etc.
- The Doubling Sequence. Double each digit in succession: 1,2,4,8,16
- The Fibonacci Sequence. Each successive digit is the sum of the two previous numbers: 1,2,3,5,8,13,21
Whichever point system you use, the team should remember to ask these questions:
- How complex is the work?
- How much work will this take?
- What are the team’s technical abilities?
- What are the project’s risks?
- What parts of the project are we unsure about?
- What must be in place before the team can start/finish?
- What could possibly go wrong?
Remember that the points measure a relative ratio. The actual number used is irrelevant. What matters is that each digit multiplies the difficulty. A “1” story point is the easiest task, and this value should be consistent across all projects. The “2” story point equals double the “1” story point’s effort. 3 story points are triple the “1” story point, etc.
Are you a professional who is aspiring to be a Certified ScrumMaster? Then check out the CSM Certification Training Course now.
Does the Notion of Becoming a Scrum Master Interest You?
Scrum Masters are in high demand these days. Burning Glass predicts that the profession will experience an almost 38 percent increase in demand over the next ten years. As long as there are Scrum teams to manage, there will be a need for qualified Scrum Masters.
If this career intrigues you, Simplilearn can help you take those crucial first steps. Their Certified ScrumMaster® (CSM) Certification two-day training course provides you with an overview of the Scrum framework for Agile Project Management, preparing you for a career as a Certified ScrumMaster.
This certification course focuses on providing you with an improved understanding of Scrum methodologies and their implementation. It helps you become a Certified ScrumMaster, a designation offered by Scrum Alliance to practitioners who have successfully completed a CSM course and demonstrate their understanding by passing the exam. The course cost covers the CSM exam fee and a two-year membership in the Scrum Alliance.
If you have the drive, ambition, and interest in tackling a career that’s challenging, fun, and rewarding, check out our course offerings in not only Scrum Master certification but also other aspects of Agile and Scrum. Check us out today!