Agile Spikes Deliver Knowledge So Teams Can Deliver Products

Agile projects are, at their heart, undertaken to develop new functionality. In other words, we want to finish a project with more capabilities than when we began the project.

At the same time, teams and agile organizations also undertake a project to become smarter–to finish each project smarter than when they began.

Most work during a sprint will be directly related to building new features, and that is as it should be. It is also important, however, that Scrum teams plan for and allocate time for getting smarter. That's where spikes come in.

Agile Spike Definition

What is a spike? In agile projects, a spike refers to a time-boxed research activity that helps teams make better decisions & deliver better products. A concept adapted from Extreme Programming (XP), spikes give teams technical and functional information they need to make decisions about the best approach to certain user stories. Teams can then use this information to provide a more accurate estimate and/or deliver the most effective solution.

Agile Spike Example

As an example of a spike, suppose a team is trying to decide between competing design approaches. The product owner may decide to use a spike to invest another 40 (or 4 or 400) hours into the investigation. Or the development team may be making a build vs. buy decision involving a new component. Their Scrum Master might suggest that a good first step toward making that decision would be a spike into the different options available for purchase, their features, and their costs.

Because spikes are time-boxed, the investment is fixed. After the predetermined number of hours, a decision is made. But that decision may be to invest more hours in gaining more knowledge.

Spikes & Backlogs

Some agile software development teams opt to put a spike story on the product backlog along with user stories. Other teams take the approach that a spike is really part of some other product backlog item and will only expose spikes as sprint backlog items.

Either way, it is important to acknowledge the importance of learning in a successful project. Spike results can give teams the information they need to move their product development effort forward successfully.
 


Get Your Free Poster

Get Your Free Poster

Enter your email address to get a copy of our free poster.

48

Posted:

Mike Cohn

About the Author

Mike Cohn specializes in helping companies adopt and improve their use of agile processes and techniques to build extremely high-performance teams. He is the author of User Stories Applied for Agile Software Development, Agile Estimating and Planning, and Succeeding with Agile as well as the Better User Stories video course. Mike is a founding member of the Agile Alliance and Scrum Alliance and can be reached at hello@mountaingoatsoftware.com. If you want to succeed with agile, you can also have Mike email you a short tip each week.