SlideShare a Scribd company logo
SCRUM + BEHAVIOR
DRIVEN DEVELOPMENT
Naveen Kumar Singh
@naveenhome
ABOUT ME
20 Years of experience in Software
Development. Scrum and XP
coach.
Love talking about scaling scrum
and system thinking. PMI-ACP,
PMP
Write to me at naveenhome@gmail.com
Call me on +91 9810547500
Ping me on Twitter @naveenhome
DON’T BLAME WATERFALL. WE HAVE
NEVER PRACTICED IT PROPERLY.
Requirement •Billing
Design •Billing
Development •Assumption
Testing
•Bug
report
Deploy
•Blame
game
IS THIS WORKING?
Specification
Coding
Test cases
Testing
Deploy
Rewor
k
SO WHAT TO DO?
Max 2 suggestions
per team 10
Mins
WHAT WILL COVER HERE?
Impact Mapping Goal Impact
Story MappingDeliverable
s
User
Activities
Feature
s
Specification
by Examples/BDD
User
Stories
Acceptance Criteria
Examples
Test First Source Code
BUT OUR TOPIC SAY SCRUM + BDD
SO WHERE IS SCRUM?
WHAT’S NEEDED TO START SCRUM?
Problem Statement – Traffic jam in Colombo during
pick hours
You as stakeholder - What can you do beside blaming
government?
Simple solution - Are you Okay with Car Pooling?
What stopping you?
GOAL
Let’s develop Car Pool Application
Registratio
n
Share Ride Book Ride Payment Review
CAN START DEVELOPMENT?
Too big to develop and requirement is not yet clear?
So what Next? Refinement
Registratio
n
Share Ride Book Ride Payment Review
PRODUCT BACKLOG REFINEMENT
When we refine? Couple of time before 1st sprint and
then continuous.
Who do that? Product Owner and Development Team
What we do? Understand, Split, Estimate and Order
How to spilt? Is INVEST enough?
SOME SPLITTING TECHNIQUE
Split based on WORKFLOW
Registratio
n
Signup Verification Login
Login
Manage
Profile
Logout
SOME SPLITTING TECHNIQUE
Split based on OPERATION
Share Ride
Publish
New Ride
View and
Confirm
Modify
Ride
Search all
My ride
Delete
Ride
View Only
SOME SPLITTING TECHNIQUE
Split based on RULES
Signup No Rules Only 18+
Only IT
People
Only
Colombo
People
SOME SPLITTING TECHNIQUE
Split based on DATA TYPE
Payment
Return
Favor
Credit Card Cash Card
Account
Transfer
Food
Coupon
TRY SPLITTING 2 PER GROUP
Signup Verification
Manage
Profile
Publish
New Ride
Book Ride Review Credit Card
Search
Ride
10
Mins
SO CAN WE START SPRINT?
We need acceptance criteria.
Not more than 3-4 criteria for a story.
ACCEPTANCE CRITERIA
Feature: Quick Post
As a car owner I want to post my ride with minimum
requirement so that anyone can register for it.
ACCEPTANCE CRITERIA – WHY?
Define
boundaries
Provide values
to feature
Shared
understanding
Help in derive
tests
Help in
knowing when
to stop
ACCEPTANCE CRITERIA
Source:______________ Destination:________________
Time:________________ #Seat available:_____________
Name:_______________ Email:______________________
Phone:_______________
Cancel Submit
Share Your Ride
ACCEPTANCE CRITERIA
Feature: Quick Post
As a car owner I want to post my ride with minimum
requirement so that anyone can register for it.
Data must be searchable
Ensure only valid data getting saved
Cancel should clear data so user can add new ride
Successful submission will redirect user on home page
DISCUSSION OF ACCEPTANCE
CRITERIA
If(user==“new”
{
object = user
}
Else
error
We should encourage
patient to update
vitals
Login -> Click on
“New” and enter test
data and then Result
&%$^&
COLLABORATION OF 3 AMIGOS
Technical
Feasibility
Happy Path
Exceptions, Test
Data, Boundary
Conditions
Developer Business Tester
BUILDING RIGHT OR RIGHT
PRODUCT?
Business Failure
Useless Stuff
Business Success
Technical Debts
Specification By
Example
Build it Right
Build the Right Things
WHAT ARE SPECIFICATIONS BY
EXAMPLE
 Thin Slices of System Behavior
 That Deliver Business Value
 Described as concrete examples
 That are potentially automatable
 To create executable specifications
 Captured in live documentation
SPECIFICATIONS BY
COLLABORATION
WHAT ARE SPECIFICATIONS BY
EXAMPLE
Given_________________
When_________________
Then__________________
Gherkin
Given “Naveen” enter source “Office” and destination “Airport”
and time “5.30pm” with 2 seats available
And he provides his mail id “naveenhome@gmail.com” and
phone number “9810547500”
When Click on “Submit”
Then Display message “Ride Share” with “OK” button
And take “Naveen” to “home” page on click on “OK”
And his ride should be shown on top
ACCEPTANCE CRITERIA
Feature: Quick Post
Successful submission will redirect user on home page
Given “Naveen” enter source “Office” and destination “Airport”
and time “5.30pm” with 2 seats available
And he provides his mail id “naveenhome@gmail.com” and
phone number “9810547500”
When Click on “Submit”
Then Display message “Ride Share” with “OK” button
And take “Naveen” to “home” page on click on “OK”
And his ride should be shown on top
GHERKIN
 Feature – Name of feature
 Scenario – Behavior to be developed
 Given – Pre-conditions
 When – Actions to be performed
 Then – Expected Result
 And – Use for multiple Given, When & Then
 But – Describe exception cases
 Scenario Outline – Define multiple scenarios
 Examples – Multiple Scenarios
 Background – Avoid repeated Given
CAN WE START SPRINT NOW?
 Why not? We have testable specification so let’s start
 Let’s make a rule for team to have examples for every
specification
 If examples not available then specification will not get
picked up for sprint
 Convert examples in test is our first activity
 Write enough code to pass those tests
TEST FIRST
Test
Code
Test Again
Refactor
Pass
Fail
Fail
BEHAVIOR DRIVEN DEVELOPMENT
BDD
Given Scenario
Then Expected
Outcome
When Perform
Action
LET’S GET STARTED
 Write Feature to describe scenario in Gherkin
 Eclipse, Java, Cucumber, Selenium, Junit
 Create Test Runner class file
 Generate Steps file
 Write code to pass test
BDD - CHARACTERISTICS
 A testable story (it should be the smallest unit that fits in an
iteration)
 The title should describe an activity
 The narrative should include a role, a feature, and a benefit
 The scenario title should say what's different
 The scenario should be described in terms of Givens, Events,
and Outcomes
 The givens should define all of, and no more than, the
required context
 The event should describe the feature
BDD - LIFECYCLE
3
5
Your Project Features Scenarios Steps
Your System
Automation
Library
Support Code
Step
Definitions
Technology
Facing
Business
Facing
THANK YOU!
Reach out to me if today session was helpful 
I Facilitate below workshop. naveenhome@gmail.com
Certified Scrum Developer (CSD) Workshop
Product Discovery and Requirement Analysis
Test Driven Development (TDD)
Behavior Driven Development (BDD)
Agile Testing and Test Automation
Agile and Scrum Foundation
DevOps Foundation
Agile Coaching and Facilitation

More Related Content

PDF
Behavior Driven Development (BDD)
PPTX
BDD presentation
PPT
Behavior Driven Development Pros and Cons
PDF
BDD in Action – principles, practices and real-world application
PPTX
Quality Jam: BDD, TDD and ATDD for the Enterprise
PPTX
Acceptance Test Driven Development
ODP
Introduction to BDD
PPTX
ATDD in practice
Behavior Driven Development (BDD)
BDD presentation
Behavior Driven Development Pros and Cons
BDD in Action – principles, practices and real-world application
Quality Jam: BDD, TDD and ATDD for the Enterprise
Acceptance Test Driven Development
Introduction to BDD
ATDD in practice

What's hot (20)

PDF
TDD and BDD and ATDD
PPTX
Journey of atdd
PPTX
Agile Testing and Test Automation
KEY
ATDD in Practice
PPTX
Automated agile testing using Cucumber
PDF
Karate API Testing-Complete Guidance by Testrig
PDF
The WHY behind TDD/BDD and the HOW with RSpec
PDF
Agile Software Development in Practice - A Developer Perspective
PDF
TDD vs. ATDD - What, Why, Which, When & Where
PDF
Agile Software Development Process Practice in Thai Culture
PPTX
Agile testing - Testing From Day 1
PPTX
Test Driven Development presentation delhi meetup
PDF
Hey You Got Your TDD in my SQL DB by Jeff McKenzie
ODP
Extreme Programming
PDF
Behaviour Driven Development: Oltre i limiti del possibile
PPTX
TDD That Was Easy!
PPTX
Teaching Kids Programming
PDF
Atdd half day_new_1_up
PPT
Software Testing with Agile Requirements Practices
PDF
Agile Test Driven Development
TDD and BDD and ATDD
Journey of atdd
Agile Testing and Test Automation
ATDD in Practice
Automated agile testing using Cucumber
Karate API Testing-Complete Guidance by Testrig
The WHY behind TDD/BDD and the HOW with RSpec
Agile Software Development in Practice - A Developer Perspective
TDD vs. ATDD - What, Why, Which, When & Where
Agile Software Development Process Practice in Thai Culture
Agile testing - Testing From Day 1
Test Driven Development presentation delhi meetup
Hey You Got Your TDD in my SQL DB by Jeff McKenzie
Extreme Programming
Behaviour Driven Development: Oltre i limiti del possibile
TDD That Was Easy!
Teaching Kids Programming
Atdd half day_new_1_up
Software Testing with Agile Requirements Practices
Agile Test Driven Development
Ad

Viewers also liked (14)

PDF
Outside In - Behaviour Driven Development (BDD)
PDF
Perl Behavior Driven Development (BDD)
PPTX
Behaviour Driven Development
PPT
Behavior Driven Development Pros and Cons
PDF
Introduction to TDD and BDD
PDF
Bdd and Scrum Team Dynamics
PPTX
Behaviour Driven Development with SpecFlow
PPTX
Behavior driven development for Mobile apps
PPT
Behavior Driven Development by Example
PDF
Cross mobile testautomation mit Xamarin & SpecFlow
PDF
Behavior Driven Development and Automation Testing Using Cucumber
PPTX
Behavior Driven Development
PDF
Behavior Driven Development with Cucumber
PDF
Behaviour-Driven Development, Ruby Style
Outside In - Behaviour Driven Development (BDD)
Perl Behavior Driven Development (BDD)
Behaviour Driven Development
Behavior Driven Development Pros and Cons
Introduction to TDD and BDD
Bdd and Scrum Team Dynamics
Behaviour Driven Development with SpecFlow
Behavior driven development for Mobile apps
Behavior Driven Development by Example
Cross mobile testautomation mit Xamarin & SpecFlow
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development
Behavior Driven Development with Cucumber
Behaviour-Driven Development, Ruby Style
Ad

Similar to Scrum + Behavior Driven Development (BDD) - Colombo (20)

PDF
Workshop: Behavior Driven Development - Deliver value by Naveen Kumar Singh
PDF
Scrum and BDD for Developers with Naveen Kumar
PPTX
Benzne webinar - Velocity, Story Points and Other Mess!
PPTX
Enterprise Devops Presentation @ Magentys Seminar London May 15 2014
PDF
Serverless in production, an experience report (LNUG)
PPTX
Basics of Agile
PDF
The Tester’s Role: Balancing Technical Acumen and User Advocacy
PPTX
Mastering Agile Practices to Build High Performing Teams
PPTX
Gateway to Agile: XP and BDD
PDF
Failure is an Option: Scaling Resilient Feature Delivery
PDF
MVP Design Hacks
PDF
Specification-by-Example: A Cucumber Implementation
PPTX
BDD Selenium for Agile Teams - User Stories
PDF
Serverless in Production, an experience report (cloudXchange)
PDF
Jump Start Agile Testing with Acceptance Test Driven Development
DOC
SwatiKashEx_TeResume
PDF
Test-Driven Developments are Inefficient; Behavior-Driven Developments are a ...
PPSX
Agile, User Stories, Domain Driven Design
PPTX
Scrum plus – why scrum is not enough for successful delivery
DOCX
Resume 2 year
Workshop: Behavior Driven Development - Deliver value by Naveen Kumar Singh
Scrum and BDD for Developers with Naveen Kumar
Benzne webinar - Velocity, Story Points and Other Mess!
Enterprise Devops Presentation @ Magentys Seminar London May 15 2014
Serverless in production, an experience report (LNUG)
Basics of Agile
The Tester’s Role: Balancing Technical Acumen and User Advocacy
Mastering Agile Practices to Build High Performing Teams
Gateway to Agile: XP and BDD
Failure is an Option: Scaling Resilient Feature Delivery
MVP Design Hacks
Specification-by-Example: A Cucumber Implementation
BDD Selenium for Agile Teams - User Stories
Serverless in Production, an experience report (cloudXchange)
Jump Start Agile Testing with Acceptance Test Driven Development
SwatiKashEx_TeResume
Test-Driven Developments are Inefficient; Behavior-Driven Developments are a ...
Agile, User Stories, Domain Driven Design
Scrum plus – why scrum is not enough for successful delivery
Resume 2 year

More from Naveen Kumar Singh (20)

PDF
Is scrum master an agile coach
PDF
Scrum + Kanban - why and why not mix together
PDF
Requirement management in agile software development
PDF
Sprint planning dos and don'ts presentation by Agilemania
PDF
The scrum master
PPTX
ScrumOps - Scrum + Practical DevOps
PPTX
Practical DevOps
PDF
Explore Events of Scrum Framework
PDF
ICAgile Certified Professional - Foundation of DevOps
PPTX
Continuous integration in large programs
PPTX
Role of Manager in LeSS (Large-Scale Scrum)
PPTX
Behavior driven development - Deliver Value by Collaboration
PPTX
LeSS - Moving beyond single team scrum
PPTX
Descaling through LeSS (Large-Scale Scrum)
PPTX
Behavior driven development - cucumber, Junit and java
PPTX
Scrumban – lean software development
PPTX
Practicing Agile through Scrum
PPTX
Business intelligence - Microsoft Technologies
Is scrum master an agile coach
Scrum + Kanban - why and why not mix together
Requirement management in agile software development
Sprint planning dos and don'ts presentation by Agilemania
The scrum master
ScrumOps - Scrum + Practical DevOps
Practical DevOps
Explore Events of Scrum Framework
ICAgile Certified Professional - Foundation of DevOps
Continuous integration in large programs
Role of Manager in LeSS (Large-Scale Scrum)
Behavior driven development - Deliver Value by Collaboration
LeSS - Moving beyond single team scrum
Descaling through LeSS (Large-Scale Scrum)
Behavior driven development - cucumber, Junit and java
Scrumban – lean software development
Practicing Agile through Scrum
Business intelligence - Microsoft Technologies

Recently uploaded (20)

PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Nekopoi APK 2025 free lastest update
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
Transform Your Business with a Software ERP System
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
history of c programming in notes for students .pptx
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
Digital Strategies for Manufacturing Companies
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
ManageIQ - Sprint 268 Review - Slide Deck
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
Odoo POS Development Services by CandidRoot Solutions
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Nekopoi APK 2025 free lastest update
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
VVF-Customer-Presentation2025-Ver1.9.pptx
How to Migrate SBCGlobal Email to Yahoo Easily
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PTS Company Brochure 2025 (1).pdf.......
Transform Your Business with a Software ERP System
Navsoft: AI-Powered Business Solutions & Custom Software Development
history of c programming in notes for students .pptx
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Design an Analysis of Algorithms II-SECS-1021-03
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Digital Strategies for Manufacturing Companies
Upgrade and Innovation Strategies for SAP ERP Customers

Scrum + Behavior Driven Development (BDD) - Colombo

  • 1. SCRUM + BEHAVIOR DRIVEN DEVELOPMENT Naveen Kumar Singh @naveenhome
  • 2. ABOUT ME 20 Years of experience in Software Development. Scrum and XP coach. Love talking about scaling scrum and system thinking. PMI-ACP, PMP Write to me at naveenhome@gmail.com Call me on +91 9810547500 Ping me on Twitter @naveenhome
  • 3. DON’T BLAME WATERFALL. WE HAVE NEVER PRACTICED IT PROPERLY. Requirement •Billing Design •Billing Development •Assumption Testing •Bug report Deploy •Blame game
  • 4. IS THIS WORKING? Specification Coding Test cases Testing Deploy Rewor k
  • 5. SO WHAT TO DO? Max 2 suggestions per team 10 Mins
  • 6. WHAT WILL COVER HERE? Impact Mapping Goal Impact Story MappingDeliverable s User Activities Feature s Specification by Examples/BDD User Stories Acceptance Criteria Examples Test First Source Code
  • 7. BUT OUR TOPIC SAY SCRUM + BDD SO WHERE IS SCRUM?
  • 8. WHAT’S NEEDED TO START SCRUM? Problem Statement – Traffic jam in Colombo during pick hours You as stakeholder - What can you do beside blaming government? Simple solution - Are you Okay with Car Pooling? What stopping you?
  • 9. GOAL Let’s develop Car Pool Application Registratio n Share Ride Book Ride Payment Review
  • 10. CAN START DEVELOPMENT? Too big to develop and requirement is not yet clear? So what Next? Refinement Registratio n Share Ride Book Ride Payment Review
  • 11. PRODUCT BACKLOG REFINEMENT When we refine? Couple of time before 1st sprint and then continuous. Who do that? Product Owner and Development Team What we do? Understand, Split, Estimate and Order How to spilt? Is INVEST enough?
  • 12. SOME SPLITTING TECHNIQUE Split based on WORKFLOW Registratio n Signup Verification Login Login Manage Profile Logout
  • 13. SOME SPLITTING TECHNIQUE Split based on OPERATION Share Ride Publish New Ride View and Confirm Modify Ride Search all My ride Delete Ride View Only
  • 14. SOME SPLITTING TECHNIQUE Split based on RULES Signup No Rules Only 18+ Only IT People Only Colombo People
  • 15. SOME SPLITTING TECHNIQUE Split based on DATA TYPE Payment Return Favor Credit Card Cash Card Account Transfer Food Coupon
  • 16. TRY SPLITTING 2 PER GROUP Signup Verification Manage Profile Publish New Ride Book Ride Review Credit Card Search Ride 10 Mins
  • 17. SO CAN WE START SPRINT? We need acceptance criteria. Not more than 3-4 criteria for a story.
  • 18. ACCEPTANCE CRITERIA Feature: Quick Post As a car owner I want to post my ride with minimum requirement so that anyone can register for it.
  • 19. ACCEPTANCE CRITERIA – WHY? Define boundaries Provide values to feature Shared understanding Help in derive tests Help in knowing when to stop
  • 20. ACCEPTANCE CRITERIA Source:______________ Destination:________________ Time:________________ #Seat available:_____________ Name:_______________ Email:______________________ Phone:_______________ Cancel Submit Share Your Ride
  • 21. ACCEPTANCE CRITERIA Feature: Quick Post As a car owner I want to post my ride with minimum requirement so that anyone can register for it. Data must be searchable Ensure only valid data getting saved Cancel should clear data so user can add new ride Successful submission will redirect user on home page
  • 22. DISCUSSION OF ACCEPTANCE CRITERIA If(user==“new” { object = user } Else error We should encourage patient to update vitals Login -> Click on “New” and enter test data and then Result &%$^&
  • 23. COLLABORATION OF 3 AMIGOS Technical Feasibility Happy Path Exceptions, Test Data, Boundary Conditions Developer Business Tester
  • 24. BUILDING RIGHT OR RIGHT PRODUCT? Business Failure Useless Stuff Business Success Technical Debts Specification By Example Build it Right Build the Right Things
  • 25. WHAT ARE SPECIFICATIONS BY EXAMPLE  Thin Slices of System Behavior  That Deliver Business Value  Described as concrete examples  That are potentially automatable  To create executable specifications  Captured in live documentation
  • 27. WHAT ARE SPECIFICATIONS BY EXAMPLE Given_________________ When_________________ Then__________________ Gherkin Given “Naveen” enter source “Office” and destination “Airport” and time “5.30pm” with 2 seats available And he provides his mail id “naveenhome@gmail.com” and phone number “9810547500” When Click on “Submit” Then Display message “Ride Share” with “OK” button And take “Naveen” to “home” page on click on “OK” And his ride should be shown on top
  • 28. ACCEPTANCE CRITERIA Feature: Quick Post Successful submission will redirect user on home page Given “Naveen” enter source “Office” and destination “Airport” and time “5.30pm” with 2 seats available And he provides his mail id “naveenhome@gmail.com” and phone number “9810547500” When Click on “Submit” Then Display message “Ride Share” with “OK” button And take “Naveen” to “home” page on click on “OK” And his ride should be shown on top
  • 29. GHERKIN  Feature – Name of feature  Scenario – Behavior to be developed  Given – Pre-conditions  When – Actions to be performed  Then – Expected Result  And – Use for multiple Given, When & Then  But – Describe exception cases  Scenario Outline – Define multiple scenarios  Examples – Multiple Scenarios  Background – Avoid repeated Given
  • 30. CAN WE START SPRINT NOW?  Why not? We have testable specification so let’s start  Let’s make a rule for team to have examples for every specification  If examples not available then specification will not get picked up for sprint  Convert examples in test is our first activity  Write enough code to pass those tests
  • 32. BEHAVIOR DRIVEN DEVELOPMENT BDD Given Scenario Then Expected Outcome When Perform Action
  • 33. LET’S GET STARTED  Write Feature to describe scenario in Gherkin  Eclipse, Java, Cucumber, Selenium, Junit  Create Test Runner class file  Generate Steps file  Write code to pass test
  • 34. BDD - CHARACTERISTICS  A testable story (it should be the smallest unit that fits in an iteration)  The title should describe an activity  The narrative should include a role, a feature, and a benefit  The scenario title should say what's different  The scenario should be described in terms of Givens, Events, and Outcomes  The givens should define all of, and no more than, the required context  The event should describe the feature
  • 35. BDD - LIFECYCLE 3 5 Your Project Features Scenarios Steps Your System Automation Library Support Code Step Definitions Technology Facing Business Facing
  • 36. THANK YOU! Reach out to me if today session was helpful  I Facilitate below workshop. naveenhome@gmail.com Certified Scrum Developer (CSD) Workshop Product Discovery and Requirement Analysis Test Driven Development (TDD) Behavior Driven Development (BDD) Agile Testing and Test Automation Agile and Scrum Foundation DevOps Foundation Agile Coaching and Facilitation