Story Points: Flexible Estimations in an Agile Workflow

Sometimes, making accurate, time-based estimations is an exercise in futility. This is because a complex and advanced workflow has so many moving parts, and so many variables in play. Consequently, the accuracy of any time-specific projections you may make is very limited. 

One way of getting around this issue within an Agile project management framework is to use what are known as ‘story points’. This article will explore the process of working with story points, and how this approach could be beneficial to you.

Story Points: Flexible Estimations in an Agile Workflow

What’s wrong with time-based estimates?

Projections are an important part of running any business, and this is especially true of software development. 

However, they’re only valuable if they’re accurate, and it’s often impossible for a time-based estimate to be truly accurate. This can become especially problematic when release dates are on the horizon, or when rigid milestones in the development cycle have been set. 

The problem with time-based estimates is that their accuracy is at the mercy of too many variables and context-dependent factors. Many elements of the design process depend on other elements, meaning that one small delay can cause the entire project to grind to a halt, and all estimates to go out the window. 

One approach would be to keep revising your estimates as you progress through the design process, but this isn’t helpful when you need a bigger picture view of things. This is where story points (complexity points) come in.

What are story points?

Story points are units of time, but they’re less concrete than days, weeks or months. They are simply a loose estimate, and they can vary considerably in terms of their accuracy.

When estimating the duration of a project, using story points can allow for flexibility that conventional units of time can’t. Not only does it provide this flexibility, but it greatly simplifies the process of making estimations. 

Story points have values which are relative to one another, but not to any traditional unit of time. These values are approximate and determined by three main factors:

  • Risk: To what extent is there risk involved? In this context, risks may include reliance on a third party delivery, or any other uncertain factors.
  • Complexity: How difficult is this particular story to achieve? How many steps are involved, and how long might each take?
  • Repetition: How repetitive are the tasks required to complete the story? Monotonous tasks that can’t be automated may take longer to complete.

By incorporating the above factors, story points can actually produce more accurate estimations than time-based estimation. They do this by looking at the overall level of effort involved. 

Once assigned a value, which is informed by a baseline user story, story points can be used as guidelines for which stories will take the longest to complete. Often, team members will be asked to assign the value to their own tasks, based on the levels of complexity and effort they anticipate. 

Through this process, tasks are essentially boiled down to a few distinct categories of complexity.

Advantages of using story points

When used as part of an Agile methodology, in harmony with other elements such as Agile spikes, story points can be a powerful tool. Here are some of the ways in which companies can benefit:

  • Making estimations is quicker and easier
  • Story points are easily comprehended by customers
  • They’re more flexible, so developers are under less pressure
  • Their accuracy is informed by the team’s experience
  • No need to keep adjusting time-based estimates
  • They can produce a more accurate, more practical timeline
  • Can be used to prioritise backlogs and refocus attentions
  • Avoid disappointment of missed time targets
  • Encourages the sharing of experience between team members

Summary

There are no certainties in the world of software development, yet estimating timeframes and development processes remains crucial. Story points factor in the relative complexity of the task at hand, rather than simply assigning it a straightforward time value, which is likely to need revising throughout development. 

For these reasons, as well as the others mentioned above, more and more companies are employing story points. It’s well worth having a think about how such an approach could benefit you and your business.