Related Courses Trainers Calendar Webinars


Two Days Behaviour Driven Development (BDD) Workshop

Over the past decade, eXtreme Programming practices like User Stories, Test-Driven Development (TDD), Behaviour Driven Developer (BDD), Refactoring, Continuous Integration and Automation have fundamentally changed software development processes and inherently how engineers work.
BDD is practice for efficiently evolving useful code. While its name implies that it’s mostly about development, BDD is primarily about collaboration and delivering business value: it keeps programmers focused on exactly what they need to build and helps them avoid over-engineering.
This workshop offers a comprehensive, hands-on introduction to behaviour driven development via interactive discussions, multimedia content, hands-on exercises and quizzes. We’ll demonstrate the BDD Rhythm. Also explore the foundations of BDD with the help of various patterns, strategies and your programming language specific BDD tools & techniques. Participants will understand how BDD simplifies evolving lean, valuable, useful, fully specified software.
We’ll give a small live demo of BDD and then Participants will get their hands dirty by using these techniques on different problems using their language specific BDD tools. We’ll conclude by highlighting the key benefits, common challenges and different styles of BDD.

Learning Outcomes

  • Understand how the whole team collaborates around scenarios to support development
  • Learn to drive the development (design and implementation) of a User Story using BDD.
  • Collaboratively define scenarios that refine and clarify user stories.
  • Discover improved confidence & increase in development speed by writing behaviour first.
  • Learn various techniques and strategies to write acceptance criteria for your user stories.
  • Practice key techniques to collaborate between business and tech to flush out scenarios, which helps your team deliver business value faster.

Method of Instruction

  • Interactive Dialogues, Programming Exercises, Demos, and Instructional Games

Transfer %

  • Knowledge: 50%, Skill-Building: 50%

Course Level

  • Beginner to Intermediate

Course Prerequisites

  • Required: solid hands-on understanding of the life-cycle of software projects
  • Highly Recommended: some understanding of OO concepts and an OO language

General Requirements:

To ensure a successful class, we require the following facilities:

  • VGA projector (1024×768 minimum) & Projector screen
  • 1 White board & Dry erase markers
  • Cluster seating with 5-6 people on each table
  • 1 Flip chart with the stand and marker pens for each table
  • Notepad and Pen for each participant
  • Ample room for students in terms of room size and set up
  • For Dev trainings: at least one powerful workstation between two programmers

Development Tools


  • Latest Java JDK
  • Latest Standard Eclipse OR IntelliJ Idea
  • JUnit, Mockito, JBehave, FitNesse or Cucumber JVM


  • Latest .Net Framework
  • Latest Visual Studio
  • Latest ReSharper Plugin
  •  SpecFlow’s Visual Studio IDE Integration or FitNesse


  • Latest WebStorm JavaScript IDE
  • Latest Chrome Browser
  • Latest Jasmine Framework
  • Latest JsTestDriver


  • Latest Eclipse CDT OR Visual Studio
  • Latest GTest
  • Latest Visual Studio
  • Latest CLion


  • Latest RubyMine
  • Latest Cucumber


  • Latest PHPStorm
  • Latest PHPUnit, BeHat


  • Latest Flex SDK
  • Latest Flash Builder OR IntelliJ Idea

Target Audience

  • Primary: Product Owners, Business Analysts, Sr. Programmers, Architects, Testers
  • Secondary: Technical Managers, Technical Writers, User Experience Designers

Discovering User Stories

  • Quick introduction to User Story Mapping
  • Crafting INVESTable User Stories
  • Defining SMART Acceptance Criteria

Specifying Scenarios

  • Importance of Scenarios (The Power of Examples)
  • Effective Collaboration techniques to flush out valid Scenario
  • Documenting Scenarios with Gherkin
  • Patterns for Writing meaningful Scenarios
  • Demo of using Gherkin to document an entire Application

Automating Scenarios

  • What Will We Automate & How?
  • Automation Tools
  • Your First Automated Scenario
  • Automating Scenarios: Getting Beyond the Basics
  • Dealing with Obstacles: Randomness, External Systems, etc.

Implementing Behaviour-Driven Development

  • Driving Implementation and Design from Scenarios
  • Creating an Application from Scratch using Scenarios
  • Automation Hazards
  • Safe Automation Practices

Strongly Recommended:

1 or 2 Days of Mentoring via Pair Programming with Developers on your code base

  • To get your team kick-started with the learning from the workshop, we recommend, that our trainer spends a day or two, working with your team on your code base.
  • Each day will be reserved for 4 pair programming sessions. During these sessions, the workshop participants will take specific examples from their projects, where they are finding it difficult to apply any of the practices learned in the workshop. The trainer will then pair with an individual to show how to resolve those challenges.
  • At the end of the day, the 4 volunteers will summarize their learning by showing before and after code from their respective pairing session to the rest of the group.

Pre-Post Programming Assessment

  • The goal of these programming assessments is to identify real and quantifiable measures for the learning achieved through our workshop.


  • Get a quick understanding of your knowledge and skill level with respect to Designing & Programming
  • Establish a baseline against which the effectiveness of the workshop may be measured
  • Customize our workshop based on specific areas identified in this assessment

Pre-Assessment: Before the workshop, we’ll send a problem description, your developers will spend max 4 hours and solve the problem and send us the code. We’ll evaluate the code and send you detailed feedback about the code, including areas for improvement. We can send different types of problems (fresh development, cleaning up existing code and so on.)

Post-Assessment: 2 week after the workshop, we send another problem and evaluate the solution code. A comparison between the Pre and Post Assessment should be able to clearly quantify per-participant level improvement.

Our Most Popular Courses:

Certified Scrum Master (CSM) Certification

Certified Scrum Product Owner (CSPO)

SAFe® Agilist (SA) Certification

Implementing SAFe® 4.6 with SPC Certification

Professional Scrum Master (PSM)

DEVOPS Foundation Certification Course

Team Kanban Practitioner(TKP) Workshop

Mastering Agile SCRUM

Professional Scrum Product Owner (PSPO)

Certified Scrum Developer (CSD)