This week's giveaway is in the Android forum.
We're giving away four copies of Android Security Essentials Live Lessons and have Godfrey Nolan on-line!
See this thread for details.
The moose likes Agile and Other Processes and the fly likes BDD Vs FDD/TDD Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Android Security Essentials Live Lessons this week in the Android forum!
JavaRanch » Java Forums » Engineering » Agile and Other Processes
Bookmark "BDD Vs FDD/TDD" Watch "BDD Vs FDD/TDD" New topic
Author

BDD Vs FDD/TDD

Raja Pal
Ranch Hand

Joined: Jul 12, 2004
Posts: 92
Hello Gojko, Can you elaborate on how Behaivour driven development is different from FDD. And well when we say TDD, doesn't the test of correctness and completeness also not include behaviour in it...so is it inherently different?


Java Pal - Your friend in technology and innovation...India.
Gojko Adzic
author
Greenhorn

Joined: Sep 07, 2011
Posts: 9
at the agile testing exchange 2010, Dan North defined BDD as "A second generation, outside-in, pull based, multiple stakeholder, multiple scale, high automation, agile methodology" (see this great video). So part of BDD has to do with test-first ideas of TDD, but it also has a lot to do with focusing on delivering business value, recognising explicitly who the stakeholders are and what needs to be delivered to them and working outside in (from system outputs to inputs) in order to design the right system. It also focuses a lot on communication, finding the right ubiquitous language etc from domain driven design.

My understanding of FDD is that it organises work according to business feature slices and focuses on a highly iterative delivery process for those features. (I don't claim to be an expert on FDD, so this might be completely wrong). In that view, BDD inherits a lot from FDD but takes that further by emphasising high automation on validation as well as communication with business users and modelling the right system with examples. So, to conclude, BDD is in my view a mix of good ideas from FDD, TDD and also DDD. This is where the "second-generation" part of Dan's definition comes in. It's a collection of ideas that have worked well in different contexts, taken from 10 or so years of experience the community now has with various agile techniques and methods.

--
Gojko Adzic
http://gojko.net @gojkoadzic +447765132680


Gojko Adzic
http://gojko.net @gojkoadzic +447765132680
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: BDD Vs FDD/TDD
 
Similar Threads
Private methods in TDD
New Software Development Articles Directory
How To DESIGN Better Software Using FDD in Wellington/New Zealand, November 21-22
How To DELIVER Better Software Using FDD in Wellington/New Zealand, November 23-24
What is FDD?