Enterprise Behavior-Driven Development (BDD)

Behavior-Driven Development (BDD) can be defined as agile software development technique where developers, testers and business users of a software development project collaborate to define the requirements of a product and their acceptance criteria. In this article, Adam Craven presents some of those core fundamentals and practical tips on how to scale BDD at the enterprise level.

The first part of the article defines Behavior-Driven Development (BDD) and discusses the mindset needed and the core fundamentals to be understood in order to successfully apply BDD at any scale. It explores particularly the different definitions of the word “behavior” and how it should be interpreted in the context of BDD. Adam Craven then presents the benefits of BDD and what behavior specifications are. The article provides also an overview of the Gherkin language that is used by open source BDD tools like Cucumber, SpecFlow or JBehave.

The article provides then many important best practices with examples on how to format your behavior specifications. One of his conclusion is that “At the end of the day, the developers and/or testers must be able to successfully implement the Behaviour Specifications as automated tests. If they cannot do so because of reasons related to the technical tool that enables the execution of the specifications (e.g. Cucumber, SpecFlow, etc), then either the style of writing the Behaviour Specifications must be altered or the tool must be changed.”

Read the complete article on http://www.methodsandtools.com/archive/entreprisebdd.php