Assessing test-driven development at IBM
Extreme Programming Explained: Embrace Change