Spike (software development)

Short description: Software development term

A spike is a product development method originating from extreme programming that uses the simplest possible program to explore potential solutions.[1] It 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 approaches like Scrum or Extreme Programming.

## Uses

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

* 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.
* Spike 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.

To track such work items, in a ticketing system, a new user story can be set up for each spike, for organization purposes.

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

## References

1. ↑ "Spike". http://agiledictionary.com/209/spike/.
2. ↑ "Spikes in Scrum". Archived from the original on 12 July 2018. https://web.archive.org/web/20180712125321/https://scrumalliance.org/learn-about-scrum/agile-atlas/agile-atlas-commentaries/may-2014/spikes-in-scrum-the-exception,-not-the-rule. Retrieved 12 July 2018.

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Spike (software development). Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Software:Spike_(software_development)&oldid=540572"