Dating enough good guide only dating browse vn
You should strive to travel as light as you possibly can, writing on just enough documentation for the situation at hand which is just barely good enough to fulfill it's purpose.
An extreme version of this practice is to wait until you are finished and then write the documentation, the primary advantage being that you are writing about a known and stable thing (the release of the software that you just built).
This is an example of the practice Single Source Information.
As you see in Figure 1, the agile strategy is to defer the creation of all documents as late as possible, creating them just before you need them via a practice called "document late".
With TDD you write a test, either at the customer/acceptance level or the developer level, before writing sufficient functionality to fulfill that test.
The tests are used for two purposes: they specify the requirements/architecture/design and they validate your work.
The basic trade-off is the "security" of having the document against your trust in its accuracy.