A Next Step Beyond Test Driven Development