Agilemania
Agilemania, a small group of passionate Lean-Agile-DevOps consultants and trainers, is the most tru... Read more
Agilemania, a small group of passionate Lean-Agile-DevOps consultants and trainers, is the most tru... Read more
Before explaining the Agile spike definition, let us clear the air that despite popular belief, Agile spike and Agile spike story are not the same thing.
An Agile spike is an experimental activity, or, you can say, a prototyping activity, that is meant to reduce risk or gather information needed for more accurate user story estimation.
Sometimes, if a story is too complex, your team may face challenges while estimating the story. Completing the story on due time is another challenge they face. In such a scenario, you can build a spike or experimental activity to figure that story out.
A spike may involve writing a prototype, adding a technical proof of concept, or researching potential solutions to a complex problem.
A spike is time-boxed and may last a few hours, days, or weeks, depending on the scope. The learnings from the spike are then used to create more detailed user stories for future sprints.
An Agile spike story is a user story crafted to encapsulate and track the spike activity described above. So, a spike story would capture the objective and scope of a planned spike that the team wants to undertake.
Let’s take an example of Agile spike to understand the concept better. Suppose a developer team is planning to build a very complex app feature. So, the team decided to do a 2-3 day spike to build a very basic prototype of the feature to prove that the feature they’re working on is viable.
Another example of a spike would be a team’s effort to find a better solution to handle video uploading and transcoding. A developer spends half a day researching existing cloud services, APIs, and open-source tools that could be used to solve this problem in a scalable way.
The key concept of spikes is planning short, focused investigations that can reduce risk and gather just enough information needed to plan the next sprint.
Some teams put spike stories on the product backlog along with user stories. But while refining the product backlog, you may come across uncertainties. In such scenarios, agile spikes can provide more clarity before your development team commits to full implementation. Here are some common situations where spikes are useful:
When your team has to evaluate multiple technical options to find a solution to a potential problem. If they’re unsure which option is best, they can start a short investigation or spike to validate their assumptions and choose the optimal approach.
When working on a user story, if the development team feels the path to story implementaion is unclear, a spike can be useful. With spike, they can experiment with various directions until they reach a conclusion.
When your team is working on a complex, risky feature or user story, a spike is needed. It will help the team experiment with the feature before fully committing to building it.
When a user story is poorly written or hard to estimate, a short investigation through a spike can help the team find the missing puzzle for planning.
Explore training options, gain practical experience, and earn certifications to enhance your skills and credibility in the field.
Register TodayHere are some tips for planning and executing agile spikes:
Define the goals clearly before planning a spike. What specific uncertainty do you want to resolve? For example, a development team that is unfamiliar with APIs and wants to integrate a 3rd party application, their specific target for the spike would be building a mock integration to better understand how to design the full integration.
Next, set a specific duration of the spike. Time-boxing the spike will help you make sure it doesn’t turn into a full implementation. Ideally, 1-3 days are appropriate for a spike.
Have a flexible plan and outline the main investigation activities and approaches. Also, decide what resources, tools, or expertise you’ll need for the spike.
Having the right team of experts is important to run a successful spike. You can assemble a small team of designers, developers, or other members relevant to the specific problem you want to solve.
Anyone from the Scrum team can initiate a spike. If any member of the team feels they are unfamiliar with a concept before starting a specific task, should initiate a spike. Mid-sprint stopping a task to figure out the uncertainties can be frustrating and time-wasting for the team.
So, if the developers working on a user story feel the need to identify risk or choose between multiple potential solutions, they can conduct the technical spike to get clarity.
If a product owner feels the team needs more information to refine the product backlog items, they can initiate a research spike.
Also, a Scrum master can facilitate a spike to reduce project risks and unknowns and gain insights before starting a sprint.
The timing rules of Agile spike aren’t carved in a stone. However, the most common recommendation is to limit the spikes to 1-3 days. For a complex technical investigation, 2-3 days of spikes are enough to gather information.
Make sure to avoid spikes that are longer than 5 days. Because a long-duration spike is a sign that it has evolved into a full-blown implementation rather than an experimental prototype.
Agile spikes are short, focused investigations that provide critical insights for the team. They allow for validating assumptions, gaining knowledge, and reducing risks before committing to full implementations of complex stories.
Keep your spikes short, purposeful, and insightful. Spikes should be time-boxed to a few days and have clearly defined goals around exploring uncertainties. They are not meant to be full production-ready implementations. Various team roles, from developers to product owners, can initiate spikes as needed.
Overall, spikes empower teams to incrementally gain knowledge and make just-in-time decisions. Teams that leverage spikes appropriately will see improved delivery, quality, and business outcomes.
A spike in Scrum is a short, time-boxed experiment or research activity. Spikes are used when the team needs more clarity before committing to a large or complex user story.
A user story is meant to describe features to be built that deliver value to the users. On the contrary, a spike is a research activity or investigation that is organized to provide information and resolve uncertainties related to complex user stories.
The spike technique in Agile refers to a time-boxed research, experimentation, or prototyping activity. Spikes are short, usually 1-3 days. Spike technique is used in Scrum, SAFe and other Agile frameworks.
Agilemania, a small group of passionate Lean-Agile-DevOps consultants and trainers, is the most trusted brand for digital transformations in South and South-East Asia.
WhatsApp UsWe will get back to you soon!
For a detailed enquiry, please write to us at devops@agilemania.com
We will get back to you soon!
For a detailed enquiry, please write to us at devops@agilemania.com