Thursday, January 1, 2009

Whacking the gopher

I was reading up on Cucumber, and came across a link to this article on requirements management. I can say, with confidence, that in the 8 years I have been writing code for money, not once has a project gotten into trouble because of a piece of technology. One hundred percent of the time it was some form of communication failure that threw a monkey in the wrench.

Before the holidays I dropped this bit of science on my coworkers which was met with a resounding "whatever, dude." Regardless, I think (T|B|D)DD amounts to a developer focused solution to the well known problem of dysfunctional communication in software development. Specs, in the rspec sense of the word, are communication. Pound for pound, a spec that is written in plain language, but is also executable, is the best form of software project communication possible.

Fully spec-ing the project is good not just for the internal team or the bosses or the customers. It is often forgotten that one of the most import people that a developer must establish clear communication with is him or herself in the future

Now go write a spec.