Making Too Much of TDD
This blog post discusses how a Test-Driven Development approach can coexist with good design requirements when a system wants to evolve. Can we just refactor or do we need to think more about design in the first place? Evolution of code and design could depend on the programming language and design granularity.