Desenvolvimento baseado em testes, onde o teste que valida as regras de negócio e possíveis erros é escrito antes do código de produção. Desta forma, caso o desenvolvedor insira algum bug no código acidentalmente, existe a garantia que ele será capturado nos testes, em tempo de desenvolvimento.