At the Agile 2008 conference this year, I had the chance to run into Keith Braithwaite after Ron and Chet’s talk about agile practices. One of the things we talked about was Brian Marick’s examples (a.k.a. “An Example Would be Handy Right About Now”).
I’ve given lots of thought about examples over the past couple of years, but something different happened during my conversation with Keith. The idea that instead of collecting business requirements from the customers, we collect examples. An entire system spec’d out by the programmers and business analysts communicating in examples.
The reason that this really hit home was something J.B. Rainsberger mentioned about the 5 Dysfunctions of a Team, and how some of the agile practices are actual worse to start with if the team hasn’t overcome some of those practices.
Combining those two ideas together – the thought of a collaborative environment where there is enough trust and communication to allow examples to be the defining language of the system – well, that just sounds like exactly what I’d want.