Este documento apresenta as técnicas de Test Driven Development (TDD) e Acceptance Test Driven Development (ATDD), explicando que TDD antecipa o comportamento do código enquanto ATDD antecipa o comportamento do software. O documento também discute como TDD e ATDD ajudam a atender melhor os requisitos, combater a síndrome de Nostradamus e manter o código organizado.