Behavior-Driven Development

Category: Entertainment

Presentation Description

No description available.


Presentation Transcript


Behavior-Driven Development

Behavior-driven development:

Behavior-driven development In software engineering, behavior-driven development (abbreviated BDD) is a software development process based on test-driven development (TDD). Behavior-driven development combines the general techniques and principles of TDD with ideas from domain-driven design and object-oriented analysis and design to provide software developers and business analysts with shared tools and a shared process to collaborate on software development, with the aim of delivering "software that matters".

Behavior-driven development - History:

Behavior-driven development - History Behavior-driven development was developed by Dan North as a response to the issues encountered teaching test-driven development:

Behavior-driven development - Principles of BDD:

Behavior-driven development - Principles of BDD At its core, behavior-driven development is a specialized version of test-driven development which focuses on behavioral specification of software units.

Behavior-driven development - Principles of BDD:

Behavior-driven development - Principles of BDD Behavior-driven development specifies that tests of any unit of software should be specified in terms of the desired behavior of the unit. Borrowing from agile software development the "desired behavior" in this case consists of the requirements set by the business — that is, the desired behavior that has business value for whatever entity commissioned the software unit under construction. Within BDD practice, this is referred to as BDD being an "outside-in" activity.

Behavior-driven development - Specification as a ubiquitous language:

Behavior-driven development - Specification as a ubiquitous language Behavior-driven development borrows the concept of the ubiquitous language from domain driven design

Behavior-driven development - Specialized tooling support:

Behavior-driven development - Specialized tooling support Much like test-driven design practice, behavior-driven development assumes the use of specialized support tooling in a project. Inasmuch as BDD is, in many respects, a more specific version of TDD, the tooling for BDD is similar to that for TDD, but makes more demands on the developer than basic TDD tooling.

Behavior-driven development - Story versus specification:

Behavior-driven development - Story versus specification A separate subcategory of behavior-driven development is formed by tools that use specifications as an input language rather than user stories

Jasmine (JavaScript framework) - Usage :

Jasmine (JavaScript framework) - Usage Jasmine aims to be easy to read. A simple hello world test looks like the code below, where describe() describes a suite of tests and it() is an individual test specification. The name it() follows the idea of behavior-driven development and serves as the first word in the test name, which should be a complete sentence.

EXtreme Manufacturing:

EXtreme Manufacturing 'eXtreme Manufacturing (XM)' is an iterative and incremental development framework, inspired by Scrum (development)|Scrum and Kanban that features principles of Modular design|Modular Design, Behavior-driven development|BDD and Test driven development|TDD. This framework popularized by Joe Justice and J.J. Sutherland has a rich history with origins that predate the early implementations of Agile software development and exemplify the Japanese Kaizen culture.


RSpec 'RSpec' is a behavior-driven development (BDD) framework for the Ruby (programming language)|Ruby programming language, inspired by JBehave.Ed Gibbs, [ JBehave and RSpec History] (Blog entry) It contains its own mocking framework that is fully integrated into the framework based upon JMock. The framework can be considered a domain-specific language (DSL) and resembles a natural language specification.

Acceptance test-driven development:

Acceptance test-driven development (2009) Bridging the Communication Gap: Specification by Example and Agile Acceptance Testing, Neuri Limited, Behavior-driven development|Behavior Driven Development (BDD),Chelimsky, David, Dave Astels, Zach Dennis, Aslak Hellesøy, Bryan Helmkamp, and Dan North

Specification by example:

Specification by example It is applied in the context of agile software development methods, in particular behavior-driven development

For More Information, Visit::

For More Information, Visit: The Art of Service

authorStream Live Help