Interview with Dan North and Liz Keogh: BDD+DDD

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialise correctly.
Dan North and Liz Keogh, the people behind Behavior-Driven Development, spoke about how BDD complements DDD with Vladimir Gitlevich at OOPSLA 2007.

Dan North: "...only Domain-Driven Design can tell me where I should or shouldn't be focusing my efforts... once I determined that some computer system might help me, I need a way of getting ... from concept to cash, from an idea of some outcome I want to a production software system making or saving me money. The way in which I get to that is Behavior-Driven Development, it's the series of conversations, interactions, ways in which I express my domain desires as functioning software... "

Download mp3

Questions

  1. How do you define Behavior-Driven Development?
  2. How does BDD relate to DDD?
  3. Sometimes I write tests to discover the language I need to express a story, and in this case, I call them "scenarios". Then I even spell out TDD as "Test-Driven Design". I noticed that in BDD you use the word "scenario" as well. Do we use it in the same way?
  4. Eric Evans always emphasizes "the power of concrete example": take a story, break it down into concrete scenarios with numbers and talk through these scenarios to understand the story. You have written a tool called JBehave which formalizes this approach in the language of givens, actions and outcomes. Could you talk about your ideas behind JBehave?
  5. You designed a language around stories and scenarios, the triangle of given, when and then, where stakeholders, domain experts, testers and developers are responsible for some of its vertices. How do you see their responsibilities and interactions?
  6. Let's go back to what you said about BDD being an exercise to remove the word "test". So you removed "test" and replaced it with "should". What difference did it make?
  7. In the beginning of our conversation you said that BDD and DDD are massively complementary. How do they complement each other?


Comments

Thank you

Hello everyone, I agree that Behavior-Driven Development can successfully complement Domain-Driven Design. Thank you for the interview, it is really helpful (though it took several efforts for me to listen to it because I couldnt download it). Frankly speaking I like experimenting with my website. Yesterday I tried adding some widgets to it, so now it is possible not only to enjoy the automatic change of the background, but also to listen to nice music easily directly from the music search or any other music source. Anyways, small things always add up and make a big effect. :)

Nice post you have managed

Nice post you have managed because i am liking this, well its the are of technology and this make new models and invent new product and design for the ease of humanity like your product, its interesting well right now i am doing critical analysis on mcse certificaiton and make my research report on it which opens the horizons of opportunities and success for the welfare of the earth and its people. May someone use my research and make a new theory and a new thing which really desired by people. Please pray for me, May God bless you. Thanks, (Brain Adam)