Terminology: Spike

Photo by iwona_kellie

Photo by iwona_kellie

Perhaps it shouldn't come as a surprise since I have a bachelor's degree in English, but I find it frustrating when certain words are used incorrectly.  Let's talk about spikes.  I've heard the word used to describe technical stories, development work that won't be tested (including programmers getting a head start on work for the next sprint), and work that is not sized using story points.

Taken from Extreme Programming:

A spike solution is a very simple program to explore potential solutions. Build the spike to only addresses the problem under examination and ignore all other concerns. Most spikes are not good enough to keep, so expect to throw it away. The goal is reducing the risk of a technical problem or increase the reliability of a user story's estimate.

According to Ron Jeffries, "We use the word because we think of a spike has a quick, almost brute-force experiment aimed at learning just one thing. Think of driving a big nail through a board."  I also like the mountain climber analogy--you put a spike in the mountain on your way up; if the spike sticks, then it's ok to go that way.

If your team seems to include "spikes" in every sprint, investigate and see if they are true spikes or indicators of something else that needs to be addressed.

Allison Pollard

I help people discover their agile instincts and develop their coaching abilities. As an agile coach with Improving in Dallas, I enjoy mentoring others to become great Scrum Masters, coaching managers to grow teams that deliver amazing results, and fostering communities that provide sustainability for agile transformations. In my experience, applying agile methods improves delivery, strengthens relationships, and builds trust between business and IT. A big believer in the power of community-based learning, I grew the DFW Scrum user group significantly over the five years I served as an organizer. I am also a Certified Professional Co-Active Coach, a foodie, and proud glasses wearer.