Harman Patil (Editor)

Spike (software development)

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

A spike is a product-testing method that is used to determine how much work will be required to solve or work around a software issue. Typically, a 'spike test' involves gathering additional information or testing for easily reproduced edge-cases. The term is used in agile software development methodologies like Scrum or Extreme Programming.

Uses

A spike in a sprint can be used in a number of ways:

  • As a way to familiarize the team with new hardware or software
  • To analyze a problem thoroughly and assist in properly dividing work among separate team members.
  • Spikes tests can also be used to mitigate future risk, and may uncover additional issues that have escaped notice.
  • A distinction can be made between technical spikes and functional spikes. The technical spike is used more often for evaluating the impact new technology has on the current implementation. A functional spike is used to determine the interaction with a new feature or implementation.

    Following a spike, the results (a new design, a refined workflow, etc.) are shared and discussed with the team.

    References

    Spike (software development) Wikipedia