July 19, 2021
0 min read

Estimating User story points in Agile

Estimating User Story Points in Agile.png

Many teams struggle with estimating in software development. They have to take into account many factors and make realistic appraisals. Product Owners must make estimations that guide the team’s workflow. Of course, most Product Owners try their utmost to estimate with precision. But often estimates fall short. Teams and Product Owners whose estimates prove untrue should not have to work massive overtime or suffer adversity. Estimates are exactly that, an educated guess about how much time and how many resources a project will need. So how do we make Agile estimates accurate?

User Stories are one tool Agile gives us to keep our estimates accurate. User Stories allow teams to describe the development process in simple terms. Teams write User Stories with plain language written from the end user’s perspective. User Stories describe a feature or function in the software development project. Teams work together to write User Stories. Each member offers their expertise about how long a feature or function will take to create.

Read more in our article about User Stories and difference with Use cases.

What are Story Points?

Software development Teams use Story Points to explain the difficulty of a User Story. Story Points act as a quick shorthand for teams to see how challenging a story’s work will prove.  Teams base their Story Points on several factors. These factors include the complexity, effort and risk involved in a certain story. Agile teams estimate Story Points during User Story Mapping.

User Story Mapping is where teams create dynamic visual plans for the software development project. Agile teams don’t write out a linear list of backlog items Instead, the software development team outlines their User Stories with (virtual or actual) post-it notes or index cards. Story Mapping keeps teams focused on the actual needs of end-users.

How do we calculate Story Points in Agile?

To estimate User Story Points, teams consider the following factors:

  • The Story’s complexity

  • The capacity and ability of the team

  • Risks

  • Uncertain aspects of the User Story

  • Story prerequisites

  • Amount of work need to complete the story

How do Story Points differ from hours?

So how do Story Points differ from estimation in hours? Why choose to estimate Story Points rather than by the hour? In traditional waterfall software development, teams estimated their time to finish a project in time. They would give a rough timeline of hours, days or weeks the project would take to complete. Agile teams have found that Story Points work better to explain the actual effort required to complete the work of a software development project.  Agile teams use Story Points to describe the complexity, effort and technical skill necessary to finish their work. Story Points keep teams focused on value and project completion, not on time spent  (productively or not).

Story Points help teams estimate the velocity at which they will work. This is useful for User Story Mapping and Sprint planning. Agile teams can check the number of Story Points and compare with their velocity so they ensure they do not under- or over- commit themselves.

Read more on the topic in the "What is scrum velocity and how do we calculate it?" article.

Agile teams take three steps to estimate Story Points. They use Fibonacci sequence numbers, the Story Point Estimation Matrix and Planning Poker. 

Step 1: Fibonacci Sequence numbers

 The Fibonnaci sequence is a series of numbers where each number is the sum of the previous two numbers: 0, 1, 1, 2, 3, 5, 8, 13, 21. Many Agile teams modify this to 0.5, 1, 2, 3, 5, 8, 13, 21. Using the Fibonnaci sequence to estimate the User Story Points teams work fast and with great accuracy. They do not average their Story Points. Instead, they discuss the work ahead in depth. Teams use Fibonacci sequence numbers instead of linear 1, 2, 3, 4, 5, 6 sequences when they cannot estimate absolute values with precision.  In determining Story Points it’s helpful to show the difference between values. We can see the difference between 8 and 13 more quickly than the difference between 8 and 9. 

Step 2: Story Point Estimation Matrix

Agile teams use the Story Point estimation matrix to show the complexity, risks, uncertainty and difficulty of the User Story. The matrix allows teams to outline at a glance the concrete reality of a User Story, not only how long the work will take to complete.  Story Point Estimation Matrixes usually take the form of a table.

Step 3: Planning Poker

Teams use Planning Poker to agree on Story Point numbers for items on their Backlog. During the Sprint planning meeting, each team member receives a set of cards with the numbers of the Fibonacci sequence. The team then discusses Backlog items. Each team member then privately selects the number they believe represents the Story’s point value. All team members then reveal their cards to each other. This helps build consensus. It also helps team members to express themselves without influence from other team members. 

If the team agrees immediately, wonderful! If not, they should take a few minutes to discuss their choices so everyone can understand them.  By the end of Planning Poker the team should have their tasks laid out in order of priority. If a task is smaller than 0.5 the team can combine it with another task.

Here at Blocshop we take full advantage of Story Points to prioritize our work. We believe the power of Agile gives us an advantage when it comes to software development. We work fast and under budget because we plan and estimate fluently. If you’d like to learn more about how Blocshop can help you with your software development project, please do get in touch!

Learn more from our insights

Top 15 micro-SaaS ideas for your startup in 2023.png
December 06, 2021

Top 15 micro-SaaS ideas for your startup in 2022

What exactly do we mean by micro SaaS? Micro Saas solutions use a web browser or mobile app interface. Micro SaaS solutions usually come about through the effort of an individual or very small team. It aims to solve precise problems. Micro SaaS projects have small budgets and overhead. Customers use Micro SaaS solutions on a monthly or yearly subscription basis. Micro SaaS projects target a small niche of the consumer market.

Software engineer hourly rates in 2021 (based on experience and location).png
November 22, 2021

Software engineer hourly rates in 2021 (based on experience and location)

Region influences salary more than any other factor. Taxes rates, cost of living, and government benefit programs affect the rates software developers charge. Software developers in the USA  and Canada earn more than software developers in other countries.

The best programming languages for app development in 2022.png
November 15, 2021

The best programming languages for app development in 2022

Software developers usually have three main ways to create an app. They can choose to code a native app, a hybrid app or a progressive web app. Developers create native apps to function on one specific platform, usually either iOS or Android. They create these apps using Swift or Objective C for iOS. For Android they use C++, Kotlin or several other languages. 

Cross-platform mobile app development: Tools & frameworks for 2022.png
November 09, 2021

Cross-platform mobile app development: Tools & frameworks for 2022

The cross-platform development project aims to create apps compatible with several operating systems. Cross-platform apps work on iOS, Android, and Windows. Cross-platform apps look and feel like apps developed specifically for the operating system.

App development cost breakdown in 2022.png
November 08, 2021

App development cost breakdown in 2022

Your business needs an app, but you aren’t sure about the cost of creating an app. Without some figures, you can’t even begin to estimate the potential budget, so let’s get you sorted with the information you need to make your app a reality.

November 04, 2021

Web app development: a detailed guide

The best web apps give a responsive and engaging user experience through a browser instead of a single application. Think of web app development as a super-charged website. Web apps have many features of mobile apps coded for iOS or Android without the need to code for specific platforms. Developers create web apps using HTML, javascript, Python and CSS.

15 useful web app development tools for 2021.png
October 29, 2021

15 useful web app development tools for 2022

Web development vs app development: Choose the best for your business.png
October 19, 2021

Web development vs app development: Choose the best for your business

Outsource web development in 2021 and beyond: benefits & tips.png
October 15, 2021

Outsource web development in 2021 and beyond: benefits & tips

8 IT outsourcing trends in 2022.png
October 11, 2021

8 IT outsourcing trends in 2022

More and more firms choose to outsource their IT operations and functions. IT outsourcing grows each year. The Gartner report announced that firms spent $3.8 billion dollars on IT outsourcing in 2019. They expect that the trend will continue. Companies aiming for digital transformation need partners and tools. They need tools that they cannot build in-house with speed and accuracy. 

In-house development vs outsourcing software development.png
October 01, 2021

In-house development vs outsourcing software development

Every business starting software development must ask themselves what will serve them better, in-house or outsourcing? There is not a simple answer to the question. Making the choice to develop in-house or to outsource will have long-term consequences.

16 Software development project ideas.png
September 17, 2021

16 Software development project ideas

Every startup needs a great idea. Something unique and compelling. Startup businesses succeed when they find a customer need that they can fulfill. Startup businesses and independent software developers constantly search for just such needs.

Software development budget estimation.png
September 16, 2021

Software development budget estimation

An unlimited budget would make many teams very happy. But that approach has pitfalls. If the team works without much oversight or customer input, they may waste money. They might create features that the customers won’t use.

What are the differences between Agile and Waterfall?.png
September 07, 2021

What are the differences between Agile and Waterfall?

These days, most software development teams choose Agile methodology to organize their work. The Agile vs. Waterfall debate still rages, though. Many people question whether Agile works better than Waterfall in all circumstances. Does Agile deliver great ROI? Does Agile help teams work faster? Let’s take a close look at both Agile and Waterfall. We will examine the merits and drawbacks of each approach.

September 06, 2021

Converting Story Points to Hours: Why Doesn't It Work?

In traditional software development, teams would describe the amount of work they had in hours. But Agile software development teams have a better way. Agile teams use Story Points to estimate the work they have ahead of them. Let’s take a closer look at Story Points and hours, and examine the benefits of Story Points.

Scrum vs. Extreme Programming (XP): What's the difference?.png
September 02, 2021

Scrum vs. Extreme Programming (XP): What's the difference?

We've covered the Software Development Life Cycle (SDLC) and the Agile development framework. Now it's time to look at different methodologies and approaches to their implementation. There are several, but we'll focus in this article on just two of them, Scrum and Extreme Programming (XP). We'll look at the differences between them and how they can even be used together for even better results.

The Scrum Sprint cycle explained.png
September 01, 2021

The Scrum Sprint cycle explained

Agile Scrum teams break down large development projects into small bursts of activity, called Sprints. A Sprint in Agile is a short, time-boxed period where a software development team completes work. They choose which items and fixes they will tackle in Sprint Planning Meetings. The Sprint cycle sits at the very center of Agile methodology. 

Use Cases vs. User Stories: relationships and differences.png
August 12, 2021

Use Cases vs. User Stories: relationships and differences

Product Backlog prioritization techniques & tips.png
July 27, 2021

Product Backlog prioritization techniques & tips

Software development project management guide.jpeg
July 26, 2021

Software development project management guide