What is spike in scrum?
Spike is nothing but an experiment that provides the developers to evaluate the functional increment. spike story will not deliver any business value in the current sprint , however it will help business delivery in the coming sprint .
A Spike is created when the team does not know all the details and need to investigate or explore . The result of a spike is an estimate for the original user story so that the sprint can move forward.
Benefits of spike in scrum :
- Minimize the uncertainty and risks in the project or product.
- Break down the epics into smaller stories/spikes.
- Provide the right solution to a requirement or a problem.
- Make the decision making easier.
- Get the technical research results during the time boxing .
- Provide collective ownership and shared responsibilities
When to use spike in scrum?
The user story which is nothing but a functional increment, it is the client requirement which is tough to understand. Further it is tricky to predict the complete story.
Therefore, it is hard for the scrum master to visualize and work on the end products that the client wants. It needs a lot of research in terms of technical feasibility, functional feasibility, and user acceptance.
The product owner and scrum master are responsible for completing the projects and delivering them within the required time frame. Thus to build a story which in turn is complex and large, is typically broken into small stories which are understandable and less complex. For this we use “spikes” in scrum.
- Whenever the uncertainties and the risks exist
- When the user story is very large or complex
- During the necessity to break down the user story
- Whenever time-boxing is required
- At the time of researching requirements
Who will use the spike in scrum?
The developers are the owners of the extreme programming who use the spike. They work on a spike story to determine the best approach to solve/implement a new technology in the upcoming sprint.
Types of spikes:
- Technical spikes
- Functional spikes.
What is a technical spike?
A technical spike is a type of user story that helps you to identify and evaluate options to reduce risk of selecting a technical approach. technical spikes are most likely the architecture decision process, the design decision process, but in spike we go beyond research to build the minimum solutions that are functional enough to address the criteria.
Examples of technical spike:
- Determining the build vs buy decision.
- Determine the load impact of a function.
- Evaluating a new technology.
- Determine the current usage pattern.
- Determining the potential performance of a new users story.
What is a functional spike?
Functional spikes are used to address the overall solution behavior to meet the customer needs.These functional spikes are used to regulate the total solution behavior.
Examples of Functional spike:
- Make the users story simple and break down the complex parts.
- Determine the risk factors and the uncertainties.
- Evaluate the prototypes, proof of concepts and wire frames.
- Evaluate the user interface mock-ups.
In conclusion, spikes are user stories used in scrum projects or scrum products decided by the product owner and given to the developers. These user stories are broken down into smaller user stories from large stories.Spikes give permanent trust, visibility, and predictability to the product roadmap.
Visit Knolway to access more resources