Over the years many people have complained about the so-called “religiosity” of some of the proponents of Test Driven Development. The recent brouhaha over TDD has, once again, brought these complaints to the fore. So I thought it would be a good idea to talk about when TDD does not work. I have often compared TDD to double-entry bookkeeping. The act of stating every bit of logic twice, once in a