Why Test-Driven Development?

Alex Bunardzic answers the question: why test-drive development?