Last Tuesday I had the pleasure to speak at the Great Lakes Software Excellence Conference (GLSEC) about behaviour driven development (BDD). The topic of my talk was “Driving Behaviour with Cucumber” and the talk focused on the BDD tool Cucumber , which is a framework for writing and executing high level descriptions of your software’s behaviour.
In the talk I showed how Cucumber can be used to streamline communication and the development cycle—stories in, features out. A beautiful thing about Cucumber as a tool is it reduces the barrier for communicating clearly amongst the entire project team, from non-technical to technical people including the project stakeholders. It can do this because it promotes using a common language to describe the software at all levels, from non-technical people describing the software down to the code that developers write to make it work.
Describing the needs of the software in our every day language lets the team derive stories and scenarios which can be used to identify what features our software needs to have. This is the “stories in” part of “stories in, features out” tag line. Once the development team implements those stories and scenarios we end up with executable features. These features are not only in human readable language, but they are executable against the software itself, so you have ongoing automated regression. Just another way Cucumber helps streamline efficiency in a way that helps us all work better with tools that help us get things done rather than get in our way.
Unfortunately GLSEC didn’t record audio or video of the talks that I’m aware of. However, here’s a download of the slides I used for the talk.
If you’re interested in in this talk, Cucumber, or BDD, feel free to contact us here at Mutually Human. For those local to the area I’ll be doing a follow-up talk, “Driving Behaviour w/Cucumber on the JVM” at GR-JUG’s January 2010 meeting.
In the meantime, happy cuking!