SlideShare a Scribd company logo
1
INTRODUCTION TO
BEHAVIOR DRIVEN
DEVELOPMENT (BDD)
Zile Rehman
@rehmanzile
WHAT IS BDD?
2
An agile development technique that encourages
collaboration between developers, QA, DevOps
and Business Analysts.
TYPICAL
WORKFLOW
3
1
2
3
4
BDD
WORKFLOW
4
1
2
Report
DEMO
TRANS WORLD AIRLINES
5
BDD
STRUCTURE
6
Internal users only care about this!
BDD RESOURCES
BOOK
POPULAR FRAMEWORKS
7
COMMUNITYTUTORIALS
FUTURE MEETUPS
8
• Integrate BDD in CI
• Scenarios in JIRA
• Writing Complex Scenarios
BACKUP SLIDES
9
SCENARIO
10
STEPS
11
LIBRARY
12

More Related Content

PPTX
Enterprise Front-end
PDF
Agile Engineer
PDF
はじめての JFrog Distribution
PDF
はじめての JFrog Pipelines
PDF
9 Software Development Tools Used by Experts | What Tools You Should Use to D...
PPTX
1 course rundown
PPTX
Understanding the DevOps - GDG Madurai
DOCX
Enterprise Front-end
Agile Engineer
はじめての JFrog Distribution
はじめての JFrog Pipelines
9 Software Development Tools Used by Experts | What Tools You Should Use to D...
1 course rundown
Understanding the DevOps - GDG Madurai

Viewers also liked (15)

PPTX
{Educação Física} Handebol
PPTX
Trabalho de Geografia - Apple
PPT
Budaya demokrasi XI
PPTX
Trabalho de Ciências
PDF
Py Vegas - Tales from the crypt
PPTX
Group dynamics
DOCX
Indikator soal basa jawa x
DOCX
SEÇÃO Nº 23
PDF
Laura Campbell Letter to State GOP
DOCX
SEÇÃO Nº 66
DOCX
SEÇÃO Nº 74
DOCX
SEÇÃO Nº 76
PPTX
Penyebab kehilangan Kewarganegaraan RI
PPTX
Rをはじめからていねいに
PDF
ISTEP Exam E-mails Show Dissent and Dysfunction
{Educação Física} Handebol
Trabalho de Geografia - Apple
Budaya demokrasi XI
Trabalho de Ciências
Py Vegas - Tales from the crypt
Group dynamics
Indikator soal basa jawa x
SEÇÃO Nº 23
Laura Campbell Letter to State GOP
SEÇÃO Nº 66
SEÇÃO Nº 74
SEÇÃO Nº 76
Penyebab kehilangan Kewarganegaraan RI
Rをはじめからていねいに
ISTEP Exam E-mails Show Dissent and Dysfunction
Ad

Recently uploaded (20)

PDF
Getting Started with Data Integration: FME Form 101
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
Architecture types and enterprise applications.pdf
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PPT
What is a Computer? Input Devices /output devices
PPTX
cloud_computing_Infrastucture_as_cloud_p
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
August Patch Tuesday
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
Web App vs Mobile App What Should You Build First.pdf
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PPTX
The various Industrial Revolutions .pptx
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PPTX
Modernising the Digital Integration Hub
PDF
Hindi spoken digit analysis for native and non-native speakers
PPTX
observCloud-Native Containerability and monitoring.pptx
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
project resource management chapter-09.pdf
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Getting Started with Data Integration: FME Form 101
OMC Textile Division Presentation 2021.pptx
Architecture types and enterprise applications.pdf
O2C Customer Invoices to Receipt V15A.pptx
What is a Computer? Input Devices /output devices
cloud_computing_Infrastucture_as_cloud_p
Developing a website for English-speaking practice to English as a foreign la...
August Patch Tuesday
WOOl fibre morphology and structure.pdf for textiles
Web App vs Mobile App What Should You Build First.pdf
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
The various Industrial Revolutions .pptx
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
Modernising the Digital Integration Hub
Hindi spoken digit analysis for native and non-native speakers
observCloud-Native Containerability and monitoring.pptx
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
project resource management chapter-09.pdf
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Ad

Intro to BDD

Editor's Notes

  • #2: Hello Everyone and welcome to Introduction to Behavior Driven Development. In this presentation, we will go throgh the basics and a demo of BDD to gain a better understanding. So let’s get started.
  • #3: So what is BDD? It's an agile development technique that encourages collaboration between developers, QA, DevOps and Business Analyst
  • #4: Let's start off with a TYPICAL workflow "without" BDD in the picture. On left side we have key stakeholders working on a new software feature Business Analyst: Product Manager and/or Project Manager Developer QA DevOps So here is the overall Process! Business analyst collects feedback from customers and internal partners and uses business language to convey and document the requirements Engineering capture these requirements in their own structure and start implementing them QA for example Documents requirements into test suite and test case structure Test failure are very cryptic and usually require QA to decipher them This results into what’s called the cost of translation since everyone is using a different language Ultimately the entire team is hoping that they built the right software And the negative feedback can be lenghty and costly (even with smaller releases). Bottom Line Customer expectations get lost in translation Since internal stakeholders use different vocabulary to describe requirements and customer expectations
  • #5: Here is the workflow "with" BDD in the picture. Business Analyst, Developer, QA & DevOps gather to formulate and document requirements into “BDD Scenarios” These Scearios are written in plain English and capture requirements with specific examples So for example, this time when a test scenario by QA fails, developers are already aware of the context and easily understand nature of failures As a result Feedback is quicker Eventhough scenarios are not initially implemented, you can start to keep track of the overall progress of feature Bottom Line We have a common language that everyone can understand to communicate requirements and examples As a result, feedback is quicker and easier to understand More importantly, we can make educated “release” decisions based on common reporting format
  • #7: High-level business rules tend to be relatively stable, and changes to them will be driven by the business rather than by technical constraints. They describe the test requirements (i.e. end user's desired behaviors). Mid-level business flow layer describes the user's journey. Lower-level technical layer outlines the implementation details, such as spark streams, elastic search queries, and how a low-level library is called, tend to change more frequently. It interacts with the system under test
  • #9: Integrate BDD in CI Setting up JUNIT Scenarios in JIRA Defining and associating scenarios with JIRA stroies Reviewing, importing & syncing between git repository Using Baseline for Scenarios Separating data from repository How to store expected results and credentials for each environment