« Happy New Year | Main | object/embed and Browser Based WYSIWYG HTML Editors »

Agile Development and TDD

While trying to clean out my inbox today I ran across an old article from Scott W. Ambler about things he overhead at the Agile 2005 conference. In particular the section on Test Driven Development is worth repeating:

FOUR TEST-DRIVEN DEVELOPMENT COMMANDMENTS 1. When you write tests last, the tests are bigger because they take poor design issues into account. When you write them first, you typically end up with well-designed, loosely coupled code. 2. Maximum safety comes from having zero or one failing tests at a time. 3. With tests in place, you can come back to the project months later and pick it up quickly because you have solid ground to work from. 4. If you write tests afterward, you sometimes discover that your code isn't testable.

Everything about test driven development just makes sense. I really need to get into the habit of doing it more.