Definition
Tracer bullet development takes its name from the glowing rounds gunners fire to see where their shots land and adjust aim in real conditions. In software, a tracer bullet is a thin slice of functionality that connects every major layer of the system, from user input through to data storage and back, while doing very little.
The point is not to throw the code away. Unlike a prototype, a tracer bullet is real, production-grade code that simply does not yet cover every case. It establishes the skeleton on which full features are later fleshed out.
Why it matters
How it works
A team using tracer bullets first identifies the riskiest or most uncertain interfaces between components, then builds the minimum code that exercises all of them together. If a request can travel from the user interface through the business logic to the database and produce a visible result, the major architectural assumptions are confirmed.
From there, development is a matter of widening the slice: adding error handling, edge cases, and additional features onto a structure already known to hold together. Because the system is integrated from day one, surprises surface early and incrementally rather than during a painful big-bang assembly at the end.