SlideShare a Scribd company logo
1 of 36
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

What's hot

Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test AutomationNaveen Kumar Singh
 
ATDD in Practice
ATDD in PracticeATDD in Practice
ATDD in PracticeSteven Mak
 
Automated agile testing using Cucumber
Automated agile testing using CucumberAutomated agile testing using Cucumber
Automated agile testing using CucumberNaveen Kumar Singh
 
Karate API Testing-Complete Guidance by Testrig
Karate API Testing-Complete Guidance by TestrigKarate API Testing-Complete Guidance by Testrig
Karate API Testing-Complete Guidance by TestrigPritiFGaikwad
 
The WHY behind TDD/BDD and the HOW with RSpec
The WHY behind TDD/BDD and the HOW with RSpecThe WHY behind TDD/BDD and the HOW with RSpec
The WHY behind TDD/BDD and the HOW with RSpecBen Mabey
 
Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveWee Witthawaskul
 
TDD vs. ATDD - What, Why, Which, When & Where
TDD vs. ATDD - What, Why, Which, When & WhereTDD vs. ATDD - What, Why, Which, When & Where
TDD vs. ATDD - What, Why, Which, When & WhereDaniel Davis
 
Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureWee Witthawaskul
 
Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Kaizenko
 
Test Driven Development presentation delhi meetup
Test Driven Development presentation delhi meetupTest Driven Development presentation delhi meetup
Test Driven Development presentation delhi meetupNaveen Kumar Singh
 
Hey You Got Your TDD in my SQL DB by Jeff McKenzie
Hey You Got Your TDD in my SQL DB by Jeff McKenzieHey You Got Your TDD in my SQL DB by Jeff McKenzie
Hey You Got Your TDD in my SQL DB by Jeff McKenzieQA or the Highway
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme ProgrammingKnoldus Inc.
 
Behaviour Driven Development: Oltre i limiti del possibile
Behaviour Driven Development: Oltre i limiti del possibileBehaviour Driven Development: Oltre i limiti del possibile
Behaviour Driven Development: Oltre i limiti del possibileIosif Itkin
 
TDD That Was Easy!
TDD   That Was Easy!TDD   That Was Easy!
TDD That Was Easy!Kaizenko
 
Teaching Kids Programming
Teaching Kids ProgrammingTeaching Kids Programming
Teaching Kids ProgrammingLynn Langit
 
Software Testing with Agile Requirements Practices
Software Testing with Agile Requirements Practices Software Testing with Agile Requirements Practices
Software Testing with Agile Requirements Practices A B M Moniruzzaman
 
Agile Test Driven Development
Agile Test Driven DevelopmentAgile Test Driven Development
Agile Test Driven DevelopmentViraf Karai
 

What's hot (20)

TDD and BDD and ATDD
TDD and BDD and ATDDTDD and BDD and ATDD
TDD and BDD and ATDD
 
Journey of atdd
Journey of atddJourney of atdd
Journey of atdd
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
 
ATDD in Practice
ATDD in PracticeATDD in Practice
ATDD in Practice
 
Automated agile testing using Cucumber
Automated agile testing using CucumberAutomated agile testing using Cucumber
Automated agile testing using Cucumber
 
Karate API Testing-Complete Guidance by Testrig
Karate API Testing-Complete Guidance by TestrigKarate API Testing-Complete Guidance by Testrig
Karate API Testing-Complete Guidance by Testrig
 
The WHY behind TDD/BDD and the HOW with RSpec
The WHY behind TDD/BDD and the HOW with RSpecThe WHY behind TDD/BDD and the HOW with RSpec
The WHY behind TDD/BDD and the HOW with RSpec
 
Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer Perspective
 
TDD vs. ATDD - What, Why, Which, When & Where
TDD vs. ATDD - What, Why, Which, When & WhereTDD vs. ATDD - What, Why, Which, When & Where
TDD vs. ATDD - What, Why, Which, When & Where
 
Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai Culture
 
Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Agile testing - Testing From Day 1
Agile testing - Testing From Day 1
 
Test Driven Development presentation delhi meetup
Test Driven Development presentation delhi meetupTest Driven Development presentation delhi meetup
Test Driven Development presentation delhi meetup
 
Hey You Got Your TDD in my SQL DB by Jeff McKenzie
Hey You Got Your TDD in my SQL DB by Jeff McKenzieHey You Got Your TDD in my SQL DB by Jeff McKenzie
Hey You Got Your TDD in my SQL DB by Jeff McKenzie
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Behaviour Driven Development: Oltre i limiti del possibile
Behaviour Driven Development: Oltre i limiti del possibileBehaviour Driven Development: Oltre i limiti del possibile
Behaviour Driven Development: Oltre i limiti del possibile
 
TDD That Was Easy!
TDD   That Was Easy!TDD   That Was Easy!
TDD That Was Easy!
 
Teaching Kids Programming
Teaching Kids ProgrammingTeaching Kids Programming
Teaching Kids Programming
 
Atdd half day_new_1_up
Atdd half day_new_1_upAtdd half day_new_1_up
Atdd half day_new_1_up
 
Software Testing with Agile Requirements Practices
Software Testing with Agile Requirements Practices Software Testing with Agile Requirements Practices
Software Testing with Agile Requirements Practices
 
Agile Test Driven Development
Agile Test Driven DevelopmentAgile Test Driven Development
Agile Test Driven Development
 

Viewers also liked

Outside In - Behaviour Driven Development (BDD)
Outside In - Behaviour Driven Development (BDD)Outside In - Behaviour Driven Development (BDD)
Outside In - Behaviour Driven Development (BDD)Naresh Jain
 
Perl Behavior Driven Development (BDD)
Perl Behavior Driven Development (BDD)Perl Behavior Driven Development (BDD)
Perl Behavior Driven Development (BDD)Tudor Constantin
 
Behaviour Driven Development
Behaviour Driven DevelopmentBehaviour Driven Development
Behaviour Driven DevelopmentRichard Ruiter
 
Behavior Driven Development Pros and Cons
Behavior Driven Development Pros and ConsBehavior Driven Development Pros and Cons
Behavior Driven Development Pros and Consextentconf Tsoy
 
Behaviour Driven Development with SpecFlow
Behaviour Driven Development with SpecFlowBehaviour Driven Development with SpecFlow
Behaviour Driven Development with SpecFlowPascal Laurin
 
Behavior driven development for Mobile apps
Behavior driven development for Mobile appsBehavior driven development for Mobile apps
Behavior driven development for Mobile appsGeert van der Cruijsen
 
Behavior Driven Development by Example
Behavior Driven Development by ExampleBehavior Driven Development by Example
Behavior Driven Development by ExampleNalin Goonawardana
 
Cross mobile testautomation mit Xamarin & SpecFlow
Cross mobile testautomation mit Xamarin & SpecFlowCross mobile testautomation mit Xamarin & SpecFlow
Cross mobile testautomation mit Xamarin & SpecFlowChristian Hassa
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberKMS Technology
 
Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven DevelopmentLiz Keogh
 
Behavior Driven Development with Cucumber
Behavior Driven Development with CucumberBehavior Driven Development with Cucumber
Behavior Driven Development with CucumberBrandon Keepers
 
Behaviour-Driven Development, Ruby Style
Behaviour-Driven Development, Ruby StyleBehaviour-Driven Development, Ruby Style
Behaviour-Driven Development, Ruby StyleOpenFest team
 

Viewers also liked (14)

Outside In - Behaviour Driven Development (BDD)
Outside In - Behaviour Driven Development (BDD)Outside In - Behaviour Driven Development (BDD)
Outside In - Behaviour Driven Development (BDD)
 
Perl Behavior Driven Development (BDD)
Perl Behavior Driven Development (BDD)Perl Behavior Driven Development (BDD)
Perl Behavior Driven Development (BDD)
 
Behaviour Driven Development
Behaviour Driven DevelopmentBehaviour Driven Development
Behaviour Driven Development
 
Behavior Driven Development Pros and Cons
Behavior Driven Development Pros and ConsBehavior Driven Development Pros and Cons
Behavior Driven Development Pros and Cons
 
Introduction to TDD and BDD
Introduction to TDD and BDDIntroduction to TDD and BDD
Introduction to TDD and BDD
 
Bdd and Scrum Team Dynamics
Bdd and Scrum Team DynamicsBdd and Scrum Team Dynamics
Bdd and Scrum Team Dynamics
 
Behaviour Driven Development with SpecFlow
Behaviour Driven Development with SpecFlowBehaviour Driven Development with SpecFlow
Behaviour Driven Development with SpecFlow
 
Behavior driven development for Mobile apps
Behavior driven development for Mobile appsBehavior driven development for Mobile apps
Behavior driven development for Mobile apps
 
Behavior Driven Development by Example
Behavior Driven Development by ExampleBehavior Driven Development by Example
Behavior Driven Development by Example
 
Cross mobile testautomation mit Xamarin & SpecFlow
Cross mobile testautomation mit Xamarin & SpecFlowCross mobile testautomation mit Xamarin & SpecFlow
Cross mobile testautomation mit Xamarin & SpecFlow
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using Cucumber
 
Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven Development
 
Behavior Driven Development with Cucumber
Behavior Driven Development with CucumberBehavior Driven Development with Cucumber
Behavior Driven Development with Cucumber
 
Behaviour-Driven Development, Ruby Style
Behaviour-Driven Development, Ruby StyleBehaviour-Driven Development, Ruby Style
Behaviour-Driven Development, Ruby Style
 

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

Workshop: Behavior Driven Development - Deliver value by Naveen Kumar Singh
Workshop: Behavior Driven Development - Deliver value by Naveen Kumar SinghWorkshop: Behavior Driven Development - Deliver value by Naveen Kumar Singh
Workshop: Behavior Driven Development - Deliver value by Naveen Kumar SinghAgile ME
 
Scrum and BDD for Developers with Naveen Kumar
Scrum and BDD for Developers with Naveen Kumar Scrum and BDD for Developers with Naveen Kumar
Scrum and BDD for Developers with Naveen Kumar Agile ME
 
Benzne webinar - Velocity, Story Points and Other Mess!
Benzne webinar - Velocity, Story Points and Other Mess!Benzne webinar - Velocity, Story Points and Other Mess!
Benzne webinar - Velocity, Story Points and Other Mess!SwatiKapoor43
 
Enterprise Devops Presentation @ Magentys Seminar London May 15 2014
Enterprise Devops Presentation @ Magentys Seminar London May 15 2014Enterprise Devops Presentation @ Magentys Seminar London May 15 2014
Enterprise Devops Presentation @ Magentys Seminar London May 15 2014Jwooldridge
 
Serverless in production, an experience report (LNUG)
Serverless in production, an experience report (LNUG)Serverless in production, an experience report (LNUG)
Serverless in production, an experience report (LNUG)Yan Cui
 
The Tester’s Role: Balancing Technical Acumen and User Advocacy
The Tester’s Role: Balancing Technical Acumen and User AdvocacyThe Tester’s Role: Balancing Technical Acumen and User Advocacy
The Tester’s Role: Balancing Technical Acumen and User AdvocacyTechWell
 
Mastering Agile Practices to Build High Performing Teams
Mastering Agile Practices to Build High Performing TeamsMastering Agile Practices to Build High Performing Teams
Mastering Agile Practices to Build High Performing TeamsAgileThought
 
Failure is an Option: Scaling Resilient Feature Delivery
Failure is an Option: Scaling Resilient Feature DeliveryFailure is an Option: Scaling Resilient Feature Delivery
Failure is an Option: Scaling Resilient Feature DeliveryOptimizely
 
MVP Design Hacks
MVP Design HacksMVP Design Hacks
MVP Design HacksNaresh Jain
 
Specification-by-Example: A Cucumber Implementation
Specification-by-Example: A Cucumber ImplementationSpecification-by-Example: A Cucumber Implementation
Specification-by-Example: A Cucumber ImplementationTechWell
 
BDD Selenium for Agile Teams - User Stories
BDD Selenium for Agile Teams - User StoriesBDD Selenium for Agile Teams - User Stories
BDD Selenium for Agile Teams - User StoriesSauce Labs
 
Serverless in Production, an experience report (cloudXchange)
Serverless in Production, an experience report (cloudXchange)Serverless in Production, an experience report (cloudXchange)
Serverless in Production, an experience report (cloudXchange)Yan Cui
 
Jump Start Agile Testing with Acceptance Test Driven Development
Jump Start Agile Testing with Acceptance Test Driven DevelopmentJump Start Agile Testing with Acceptance Test Driven Development
Jump Start Agile Testing with Acceptance Test Driven DevelopmentTechWell
 
SwatiKashEx_TeResume
SwatiKashEx_TeResumeSwatiKashEx_TeResume
SwatiKashEx_TeResumeSwati Kumari
 
Test-Driven Developments are Inefficient; Behavior-Driven Developments are a ...
Test-Driven Developments are Inefficient; Behavior-Driven Developments are a ...Test-Driven Developments are Inefficient; Behavior-Driven Developments are a ...
Test-Driven Developments are Inefficient; Behavior-Driven Developments are a ...Abdelkrim Boujraf
 
Agile, User Stories, Domain Driven Design
Agile, User Stories, Domain Driven DesignAgile, User Stories, Domain Driven Design
Agile, User Stories, Domain Driven DesignAraf Karsh Hamid
 
Scrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful deliveryScrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful deliveryNaveen Kumar Singh
 

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

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

More from Naveen Kumar Singh

Is scrum master an agile coach
Is scrum master an agile coachIs scrum master an agile coach
Is scrum master an agile coachNaveen Kumar Singh
 
Scrum + Kanban - why and why not mix together
Scrum + Kanban - why and why not mix togetherScrum + Kanban - why and why not mix together
Scrum + Kanban - why and why not mix togetherNaveen Kumar Singh
 
Requirement management in agile software development
Requirement management in agile software developmentRequirement management in agile software development
Requirement management in agile software developmentNaveen Kumar Singh
 
Sprint planning dos and don'ts presentation by Agilemania
Sprint planning   dos and don'ts presentation by AgilemaniaSprint planning   dos and don'ts presentation by Agilemania
Sprint planning dos and don'ts presentation by AgilemaniaNaveen Kumar Singh
 
ScrumOps - Scrum + Practical DevOps
ScrumOps - Scrum + Practical DevOpsScrumOps - Scrum + Practical DevOps
ScrumOps - Scrum + Practical DevOpsNaveen Kumar Singh
 
Explore Events of Scrum Framework
Explore Events of Scrum FrameworkExplore Events of Scrum Framework
Explore Events of Scrum FrameworkNaveen Kumar Singh
 
ICAgile Certified Professional - Foundation of DevOps
ICAgile Certified Professional - Foundation of DevOps ICAgile Certified Professional - Foundation of DevOps
ICAgile Certified Professional - Foundation of DevOps Naveen Kumar Singh
 
Continuous integration in large programs
Continuous integration in large programsContinuous integration in large programs
Continuous integration in large programsNaveen Kumar Singh
 
Role of Manager in LeSS (Large-Scale Scrum)
Role of Manager in LeSS (Large-Scale Scrum)Role of Manager in LeSS (Large-Scale Scrum)
Role of Manager in LeSS (Large-Scale Scrum)Naveen Kumar Singh
 
Behavior driven development - Deliver Value by Collaboration
Behavior driven development - Deliver Value by CollaborationBehavior driven development - Deliver Value by Collaboration
Behavior driven development - Deliver Value by CollaborationNaveen Kumar Singh
 
LeSS - Moving beyond single team scrum
LeSS - Moving beyond single team scrumLeSS - Moving beyond single team scrum
LeSS - Moving beyond single team scrumNaveen Kumar Singh
 
Descaling through LeSS (Large-Scale Scrum)
Descaling through LeSS (Large-Scale Scrum)Descaling through LeSS (Large-Scale Scrum)
Descaling through LeSS (Large-Scale Scrum)Naveen Kumar Singh
 
Behavior driven development - cucumber, Junit and java
Behavior driven development - cucumber, Junit and javaBehavior driven development - cucumber, Junit and java
Behavior driven development - cucumber, Junit and javaNaveen Kumar Singh
 
Scrumban – lean software development
Scrumban – lean software developmentScrumban – lean software development
Scrumban – lean software developmentNaveen Kumar Singh
 
Practicing Agile through Scrum
Practicing Agile through ScrumPracticing Agile through Scrum
Practicing Agile through ScrumNaveen Kumar Singh
 
Business intelligence - Microsoft Technologies
Business intelligence - Microsoft TechnologiesBusiness intelligence - Microsoft Technologies
Business intelligence - Microsoft TechnologiesNaveen Kumar Singh
 

More from Naveen Kumar Singh (20)

Is scrum master an agile coach
Is scrum master an agile coachIs scrum master an agile coach
Is scrum master an agile coach
 
Scrum + Kanban - why and why not mix together
Scrum + Kanban - why and why not mix togetherScrum + Kanban - why and why not mix together
Scrum + Kanban - why and why not mix together
 
Requirement management in agile software development
Requirement management in agile software developmentRequirement management in agile software development
Requirement management in agile software development
 
Sprint planning dos and don'ts presentation by Agilemania
Sprint planning   dos and don'ts presentation by AgilemaniaSprint planning   dos and don'ts presentation by Agilemania
Sprint planning dos and don'ts presentation by Agilemania
 
The scrum master
The scrum master The scrum master
The scrum master
 
ScrumOps - Scrum + Practical DevOps
ScrumOps - Scrum + Practical DevOpsScrumOps - Scrum + Practical DevOps
ScrumOps - Scrum + Practical DevOps
 
Practical DevOps
Practical DevOpsPractical DevOps
Practical DevOps
 
Explore Events of Scrum Framework
Explore Events of Scrum FrameworkExplore Events of Scrum Framework
Explore Events of Scrum Framework
 
ICAgile Certified Professional - Foundation of DevOps
ICAgile Certified Professional - Foundation of DevOps ICAgile Certified Professional - Foundation of DevOps
ICAgile Certified Professional - Foundation of DevOps
 
Continuous integration in large programs
Continuous integration in large programsContinuous integration in large programs
Continuous integration in large programs
 
Role of Manager in LeSS (Large-Scale Scrum)
Role of Manager in LeSS (Large-Scale Scrum)Role of Manager in LeSS (Large-Scale Scrum)
Role of Manager in LeSS (Large-Scale Scrum)
 
Behavior driven development - Deliver Value by Collaboration
Behavior driven development - Deliver Value by CollaborationBehavior driven development - Deliver Value by Collaboration
Behavior driven development - Deliver Value by Collaboration
 
SPS
SPSSPS
SPS
 
PSE
PSEPSE
PSE
 
LeSS - Moving beyond single team scrum
LeSS - Moving beyond single team scrumLeSS - Moving beyond single team scrum
LeSS - Moving beyond single team scrum
 
Descaling through LeSS (Large-Scale Scrum)
Descaling through LeSS (Large-Scale Scrum)Descaling through LeSS (Large-Scale Scrum)
Descaling through LeSS (Large-Scale Scrum)
 
Behavior driven development - cucumber, Junit and java
Behavior driven development - cucumber, Junit and javaBehavior driven development - cucumber, Junit and java
Behavior driven development - cucumber, Junit and java
 
Scrumban – lean software development
Scrumban – lean software developmentScrumban – lean software development
Scrumban – lean software development
 
Practicing Agile through Scrum
Practicing Agile through ScrumPracticing Agile through Scrum
Practicing Agile through Scrum
 
Business intelligence - Microsoft Technologies
Business intelligence - Microsoft TechnologiesBusiness intelligence - Microsoft Technologies
Business intelligence - Microsoft Technologies
 

Recently uploaded

What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 

Recently uploaded (20)

What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 

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