"TDD makes code development take longer."
Yes, it does. 15-30% longer.
"TDD *may* reduce bug counts..."
Real TDD WILL reduce bug counts. Expect about an order of magnitude. 60-90% comparably.
"I don't want to pay up front for testing or make the code take longer to be feature complete."
That is one choice - but it will be a costly one... Defects will not only be more frequent, but they will probably take longer to fix and be more complex as well.
From a financial perspective, (aside from the customer satisfaction) TDD just makes fiscal sense. I think we would need a compelling reason to give management and shareholders why we are NOT using it.
There is a new video posted on Channel 9
of an interview of one of the Microsoft researchers who contributed to a set of case studies
published earlier this year. The case studies were done on 4 teams (3 Microsoft and 1 IBM), and they seem to agree with the statistics and team performance numbers I have been citing for years.
These numbers are motivators for me, and some of the primary reasons I practice TDD, support it, and try to spread the word.
Please take a look at the report
and see for yourself if you agree...