Click the button to start reading
Let’s talk about agile spikes – what they are and how you can use them to make better project decisions.
Before agile methodology, most teams took a pretty linear approach to project management. Gather resources. Design. Build. Test. Deliver. However, one major problem with traditional project management is that without regular iterations, the final product is built without user feedback.
In agile methodology, a user story sets out to solve this. But what happens when the approach to the user story isn’t immediately clear? That’s where an agile spike comes in.
Are you considering using agile project management for your next project? Today, we’re getting into user stories and agile spikes so you can understand how they’re a vital part of integrating customer feedback into your development process.
But first… what is Agile Project Management?
The agile methodology is used by startups and smaller companies who need to remain agile in their work. Agile project management is about breaking project life cycles into smaller iterations or sprints. It’s most commonly used during software development, but many other types of businesses use this model for their projects.
At the core, agile project management is about collaboration. Scrum Masters oversee the project and make sure the team follows agile principles. Additionally, they break the project into sprints and develop processes on an ongoing basis.
Agile project management incorporates regular feedback, testing, and response to changes. It helps teams stay agile and adapt easily as they embark on the next sprint.
For a more detailed overview, you can check out our Beginners’ Guide to Agile Project Management
Understanding User Stories and Agile Spikes
A key component of agile project management is ongoing customer feedback. That feedback is to guide the next steps in the project. The key terms here are user story and agile spike.
What is a user story? A user story is a small unit of work in an agile workflow created through user feedback.
What is an agile spike? Sometimes, there’s no clear fix for a user story, making it impossible to estimate how much effort or time would go into building it out. A “spike story” in agile means the time the team takes to better understand the story or break it into tasks. Sometimes called “timeboxed investigations,” you can think of an agile spike story as a user story that requires more information.
The key to a spike story in agile is that it intends to address one specific question. And the outcome of a spike is not to answer that question, but to better break down the features into stories and estimate how long they will take.
The agile team can then use that information to get smarter about what features they should be developing over the course of the project.
You should use them sparingly as they aren’t directly delivering user value and can distract from the core project if they’re not selected strategically.
Some key benefits of agile spikes are that they bring clarity when a team is uncertain on a particular solution. Rather than overestimating the impact or time a task will require, it allows the team time to explore the possibilities and gather necessary information to make an informed decision.
Why is it called an agile spike? Because, like a spike, it allows you to get a deeper understanding or clarity. It gives teams the information they need to navigate uncertainty and make better decisions.
Agile Spike Stories: Types and When to Use Them
When should you use an agile spike story?
There are four main times when it makes sense to use an agile spike story.
- When deciding between multiple possibilities and more research is required to determine the best one.
- When additional learning is required to understand whether the potential solution will produce the desired results
- When there’s uncertainty about how to address the problem.
- When work still needs to be done in order to estimate user stories.
What are the different types of agile spikes?
There are two main types of agile spikes: technical spikes and functional spikes.
- Technical spikes are when the research focuses on technical alternatives, such as whether to build or buy, effect of new technologies, etc.
- Functional spikes, on the other hand, determine how new features will match business needs. It might answer questions like how to divide or organize work, where there are risks or challenges, etc.
An agile spike example
To better understand the concept, let’s get into an agile spike example.
Let’s say a software development team is working on a project to build a new feature for an e-commerce website. One of the user stories involves a third-party payment system that takes user payments. That said, the team isn’t exactly sure which gateway to use.
In this case, the team might decide to create an agile spike to investigate and make an informed decision about the payment gateway. They allocate a limited amount of time for this spike, and use the time to research payment systems, evaluate integration requirements, analyze the costs, and investigate the security and compliance of each option.
At the end of the spike, the team has a clear understanding of the available payment systems. Based on this information, they can make a better decision about which payment gateway to choose for the user story so they can get on with development.
Final thoughts
Agile spikes are an important part of agile project management because they help teams navigate uncertainty and get the information they need to move ahead!
Next time you’re stuck deciding between multiple possibilities or need more information, consider this: would the time it takes to do an agile spike help your team move ahead with confidence? If the answer is yes – give it a go!