Behavior Driven Development

Clean Code, Episode 35

By Robert C. Martin

69 minSep 2015

Programming is one thing. Writing programs that meet the needs of the business is another. How do the business people and the programmers communicate?

Answer: badly.

In this episode we're going to introduce the concept of Acceptance Testing and Behavior Driven Development (BDD) as a means to enhance that communication.

First we'll look at the problem itself; the problem of communication between business people and technical people.

Then we'll discuss some of the more successful solutions to this problem, including the tables developed by David Parnas; and the Fit Framework developed by Ward Cunningham.

In fact, we'll have a surprise visit from Ward, and hear some of that history from the horse's mouth.

Then we'll look at FitNesse, and some of the ways we've used acceptance testing and BDD to specify it.

Then we'll get into the guts of BDD and walk through some examples.

Finally, we'll talk about the Acceptance Test Rule. This is the rule that tells us the best form to present Acceptance tests in; and whether BDD is appropriate for your team.

And that will end part 1 of our series on Acceptance Testing.

Have fun. This one's a hoot. You'll meet a new character in here -- one you'll recognize!