
Tracer code is not disposable: you write it for keeps. It contains
all the error checking, structuring, documentation, and selfchecking
that any piece of production code has. It simply is not
fully functional. However, once you have achieved an end-toend
connection among the components of your system, you can
check how close to the target you are, adjusting if necessary.
Once you’re on target, adding functionality is easy.
Tracer development is consistent with the idea that a project is
never finished: there will always be changes required and
functions to add. It is an incremental approach.