Test-Driven Development is not about testing
This one little statement is something I end up saying over and over again to anyone that I am trying to introduct to Test-Driven Development. It really needs a new name. I like Behaviour-Driven Development. I have seen this name before, most recently in a post by “Keith Ray on his website”:http://homepage.mac.com/keithray/blog/2006/08/12/#TDDisNotAboutTests. I also like his reason for changing the name:
bq. The problem is mental frameworks. People reject ideas that don’t fit into their mental framework. You say “test” and the listener’s mental framework comes up with … assumptions….[However] if instead you say “Behavior Spec”, the listener’s mental framework will have fewer contradictory assumptions.
I think from now on I may start using the term Behaviour-Driven Design instead. I also like this term because it goes well with the idea of designing objects based on their behaviour. The general idea, as I understand it, is to be always asking yourself the question of why a particular object is doing something or why an object contains that behaviour? Anyway, I am not quite sure where I am going with this so just go and read the blog post.
I’ve noticed you don’t talk often, about EJB, on your site. I’ve seen some links and some postings. Where do EJB’s sit these days with application developement in the java world? Why don’t you use EJB’s in your pet project?
I decided to answer your question in a post instead of a comment. Here is my, more or less, complete answer.