SlideShare a Scribd company logo
1 of 40
Download to read offline
 
	
  
	
  
	
  
T2	
  
Test	
  Techniques	
  
10/6/16	
  9:45	
  
	
  
	
  
	
  
	
  
	
  
Making	
  the	
  Move	
  to	
  Behavior-­‐Driven	
  
Development	
  
Presented	
  by:	
  	
  
	
  
	
   Kevin	
  Dunne	
   	
  
	
  
QASymphony	
  
	
  
Brought	
  to	
  you	
  by:	
  	
  
	
  	
  
	
  
	
  
	
  
	
  
350	
  Corporate	
  Way,	
  Suite	
  400,	
  Orange	
  Park,	
  FL	
  32073	
  	
  
888-­‐-­‐-­‐268-­‐-­‐-­‐8770	
  ·∙·∙	
  904-­‐-­‐-­‐278-­‐-­‐-­‐0524	
  -­‐	
  info@techwell.com	
  -­‐	
  http://www.starwest.techwell.com/	
  	
  	
  
	
  
	
  	
  
 
	
  
Kevin	
  Dunne	
  
	
  
	
  
As	
  the	
  VP	
  of	
  strategy	
  and	
  business	
  development	
  at	
  QASymphony,	
  Kevin	
  Dunne	
  
ensures	
  their	
  continued	
  commitment	
  to	
  innovation	
  and	
  delivering	
  tools	
  to	
  create	
  
better	
  software.	
  With	
  a	
  deep	
  interest	
  in	
  the	
  emerging	
  trends	
  in	
  software	
  
development	
  and	
  testing,	
  he	
  is	
  dedicated	
  to	
  collaborating	
  with	
  thought	
  leaders	
  in	
  
this	
  space.	
  Kevin	
  comes	
  to	
  QASymphony	
  from	
  Deloitte,	
  where	
  he	
  managed	
  testing	
  
on	
  large	
  government	
  and	
  Fortune	
  500	
  engagements	
  delivering	
  ERP	
  
implementations	
  and	
  custom	
  software	
  development.	
  As	
  one	
  of	
  QASymphony's	
  first	
  
employees,	
  Kevin	
  has	
  seen	
  many	
  sides	
  of	
  the	
  companyÛÓfrom	
  sales	
  and	
  customer	
  
support	
  to	
  marketing	
  and	
  product	
  management.	
  
Making the Move to Behavior-
Driven Development
Kevin Dunne, VP of Business Development, QASymphony
AGENDA
• Understanding typical software development and testing challenges
• Introduce BDD methodologies
• Benefits of implementing test-first methodologies
• Review the state of test-first methodologies in industry
• Investigate keys for successful implementation BDD
• Q&A
Current Problems in
Software Dev & Test
Where We Came From
Traditional development cycles often model the Rational Unified Process:
Source: http://www.psa-software.com/_img/_knowledge_center/rup.jpg
The Broken Game of Telephone
Running the processes in parallel introduces the risk as the requirements get
handed off multiple times and customer expectations change with time:
Source: http://lh5.ggpht.com/_g0-GZzIBNms/SloJ3LOGy3I/AAAAAAAAAK0/FvyLacg_Q28/s800/conversations.pngg
Why QA Breaks Down in Agile
QA kept out of the loop
QA are unable to complete tests when
needed
Dev and QA working on different
cadences
Lack of visibibility or understanding into
when QA is “Done” with testing
The “Old Way” was the Best Way at the Time
We would have obviously chosen a more efficient process, but we were
constrained by many limitations, including:
Environment Creation Code Merges On-Premise Prevalence
Desktop Focus Lack of Collaboration Off-Shore Development
What’s Changed
Many of our prior limitations have been replaced, based on macro trends around
technology and industry:
Containers have simplified the process dramaticallyEnvironment Creation
Git has replaced Subversion as the industry standardCode Merges
Cloud adoption is at an all time high, increased securityOn-Premise Prevalence
Prevalence of Web, Mobile, Internet of thingsDesktop Focus
Increase in teamwork, chat and collaboration technologyLack of Collaboration
Shifts towards rural sourcing, onshoring of laborOff-Shore Development
Introducing Test-First
Methodologies
How the Process Has Adapted
Now that we have freed ourselves of past limitations, the process has been shifted
to one that aligns more with our needs:
Traditional Approach
Test-First Approach
Design Requirements Code Test Deploy
Design (Automated) Test Code Refactor Deploy
TDD vs. ATDD vs. BDD
Test-First methodologies were coined “Test Driven Development”. Less
technically focused versions called Acceptance Test Driven Development (ATDD)
and Behavior Driven Development (BDD) also emerged:
Test Driven Development
(TDD)
Behavior Driven Development (BDD)
Acceptance Test Driven Development
(ATDD)
Unit Test Driven Development
(“Technical TDD”)
What’s the Difference?
ATDD and BDD are similar in that they both try to make TDD more accessible to business users.
The major functional difference comes down to how the tests are structured:
"I think this definition leaves out a key piece, we are focusing on collaboration
and learning. Having worked on a project that was using 'ATDD', in 2005 I
think, we had the same goals then as BDD without the Given When Then
language.“
— Wes Williams
Pros and Cons
ATDD/BDD offer benefits over more Unit Focused/Technical TDD, but also has its
drawbacks:
Pros
• Increased understanding of tests from
business stakeholders
• Increased collaboration early in the cycle
• More focus on customer and business needs
• Higher involvement of business in
development and quality
Cons
• Addition of more tooling in the development/delivery
chain
• Greater time spent defining tests and specifications
• Demands stronger contributors in requirements, dev,
test
• Often increases the automation needs in an
organization
Typical BDD Planning Hierarchy
Sprint 1 Sprint 2 Sprint 3 Sprint 4
Epic: ATM Software
Story : Withdraw Cash Story : Check Balance
Acceptance Test: Overdraft
Epic: Online Banking Portal
User Stories Define the Discrete Units of Work
The user story is the “What” or the high
level ask the business has for the
development team
User Stories often still exist with BDD, as
a framework for adding scenarios. Some
companies would change User Stories to
being called features.
Example:
As a customer,
I want to withdraw cash from an ATM,
so that I don’t have to wait in line at the bank.
Source: https://dannorth.net/introducing-bdd/
Non-BDD – Define with Acceptance Criteria
Acceptance criteria are used to define the
User Story in a detailed manner
While acceptance criteria are easy to write,
they are often vague or incomplete
Additionally, users typically need to write
acceptance tests to validate the criteria pass
Example:
- Cash dispensed in less than 10 seconds
- Cash dispensed matches amount requested
by customer
- American express cards not accepted
- Overdrafted accounts rejected for withdrawal
The BDD Way - Acceptance Tests
Verify the work: Acceptance tests evaluate
the acceptance criteria using the “Given-
When-Then” format.
Example:
Scenario: Overdrawn accounts cannot withdraw
money
Given the account is overdrawn
And the card is valid
When the customer requests cash
Then ensure a rejection message is displayed
And ensure cash is not dispensed
And ensure the card is returned
Source: https://dannorth.net/introducing-bdd/
Acceptance Test Example
Example:
Given the customer has navigated to the
billing page
When the customer clicks on “Update Billing
Information” and clicks “Change Address,”
Then: the customer is presented with a form
to enter a new address.
Example based on Acceptance Criteria:
Benefits of Test-First
Approaches
How Can TDD Help Us?
Test Driven Development brings several major benefits to organization,
most notably:
1. Move Testing Up Front – prevents having to rush testing at the end of the cycle
2. Bake in Automation from Day 1 – protects against getting behind with test and automation
coverage
3. Build More Testable Software – requires developers to think about testability, and create
more robust software
4. Push to Customers When Ready – allows you to push software to customers just in time, as
it is developed
Move Testing Up Front
Moving Testing Up Front removes the risk of having to make compromises at the end of the cycle on quality
or on-time delivery:
Traditional Development Timeline
Ends on: Day 1 Day 3 Day 14 Day 20 Day 21
Design Requirements Code Test Deploy
There is risk in this process that any process, typically Code, will run over and either squeeze
development, or push release dates. TDD removes it!
Defect Costs Increase as Code Matures
0
20
40
60
80
100
120
Design Implementation Testing Maintenance
Phase/Stage of the S/W Development in Which the Defect is Found
Cost of Resolving Defect
Bake in Automation Up Front
In traditional development, automation is often built after the code is developed, which has significant
limitations:
Test development is more costly, since we cannot access the code to make it more testable (more details to
come)
Tests are slower and more brittle, with higher levels of maintenance, if we can only access the UI
Test coverage is incomplete, as we must chose strategically where to build out automation coverage
Moving to TDD flips the process and forces developers to write code to satisfy tests, increasing automation
coverage, speed, and reducing cost
Build for Testability
Source: http://zeroturnaround.com/wp-content/uploads/2015/12/PUZZLE-1-min.png
Moving towards BDD will force your
developers to build an application that
can be tested well at the Unit,
Integration, and UI levels:
UI Tests
Integration Tests
Unit Tests
Building a Complete Testing Strategy
Moving towards BDD will also demand a more complete testing strategy focused
on more than just UI testing:
UI Tests
Integration Tests
Unit Tests
Push Features When They Are Complete
TDD paired with continuous delivery will allow you to push features as they
become ready, if you’d like to:
Old Way
New Way
Code Feature A
Code Feature B
Code Feature C
Test Deploy
Wait
Wait
Code Feature A
Code Feature B
Code Feature C
Write
Tests
Deploy
Deploy
Deploy
State of Test-First in
Industry
State of Test First – Respondent Overview
Most respondents are yet to implement TDD, or just getting started
Learning the Ropes Online
Most people are learning about TDD online, due to lack of good in-person content!
Struggling for Developer Buy-In
The biggest stumbling block continues to be getting developers to write tests
Transition to Agile First, Then TDD
Most organizations move to TDD after mastering Scrum/Kanban Agile approach
How Teams are Doing
BDD
Scope •Define user
story
Define
Tests
•Write
Acceptance
Tests
Code
Features
Build •Build the
latest code
Run
Tests
•Execute
acceptance
tests
Tools Our Customers Are Using
IF PASSED:
Report results
back to User
Story
OR
Refactor
IF FAILED:
Change Code
Benefits to the Organization
Increased team collaboration and morale
Expanded test coverage
Reduced time to execute or maintain regression
Enhanced reusability of testing assets
Organization wide interest in quality
Implementation Models
There are different implementation models with different pros and cons:
Train the Trainer Phased Rollout Big Bang
Dev Dev Dev
QA PO Ops
SMTeam A
Dev Dev Dev
QA PO Ops
SMTeam A
Dev Dev Dev
QA PO Ops
SMTeam A
Dev Dev Dev
QA PO Ops
SMTeam A
Dev Dev Dev
QA PO Ops
SMTeam A
Dev Dev Dev
QA PO Ops
SMTeam A
Increased Risk, Increased Reward
Keys To Success
• Be patient, success will take time
• Do a real assessment of talent BEFORE you embark on a journey towards BDD
• Identify one or multiple champions with strong personalities and rapport
• Define success criteria using metrics that matter to you
• Start smaller where risks are minimized
• Don’t be afraid to ask for help and seek guidance online or from in person consultants
Q&A
THANK YOU
Kevin Dunne
kevindunne@qasymphony.com
www.qasymphony.com

More Related Content

What's hot

소프트웨어 QA 및 테스팅 트렌드
소프트웨어 QA 및 테스팅 트렌드소프트웨어 QA 및 테스팅 트렌드
소프트웨어 QA 및 테스팅 트렌드Ki Bae Kim
 
Udvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBM
Udvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBMUdvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBM
Udvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBMIBM Danmark
 
Evolution of the DevOps Quality Management Office
Evolution of the DevOps Quality Management OfficeEvolution of the DevOps Quality Management Office
Evolution of the DevOps Quality Management OfficeCapgemini
 
Software Outsourcing Practices
Software Outsourcing PracticesSoftware Outsourcing Practices
Software Outsourcing PracticesSoftheme
 
Critical Capabilities to Shifting Left the Right Way
Critical Capabilities to Shifting Left the Right WayCritical Capabilities to Shifting Left the Right Way
Critical Capabilities to Shifting Left the Right WaySmartBear
 
Business Assurance: The Quality Implications of Digital Transformation
Business Assurance: The Quality Implications of Digital TransformationBusiness Assurance: The Quality Implications of Digital Transformation
Business Assurance: The Quality Implications of Digital TransformationCognizant
 
DevOps for the Mobile Enterprise: Test and Deploy
DevOps for the Mobile Enterprise: Test and DeployDevOps for the Mobile Enterprise: Test and Deploy
DevOps for the Mobile Enterprise: Test and DeployRosalind Radcliffe
 
Why DevOps Matters To The CIO
Why DevOps Matters To The CIOWhy DevOps Matters To The CIO
Why DevOps Matters To The CIObenjaminwootton
 
[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap
[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap
[IBM Pulse 2014] #1579 DevOps Technical Strategy and RoadmapDaniel Berg
 
How to Build High-Performing IT Teams - Including New Data on IT Performance ...
How to Build High-Performing IT Teams - Including New Data on IT Performance ...How to Build High-Performing IT Teams - Including New Data on IT Performance ...
How to Build High-Performing IT Teams - Including New Data on IT Performance ...Puppet
 
Don't be a DevOps Failure
Don't be a DevOps FailureDon't be a DevOps Failure
Don't be a DevOps FailureDevOps.com
 
Useful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanUseful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanRoberto Bettazzoni
 
eDevOps in HPSW from buzzword to reality
eDevOps in HPSW from buzzword to realityeDevOps in HPSW from buzzword to reality
eDevOps in HPSW from buzzword to realityAgileSparks
 
IBM DevOps Announcements - June 2014
IBM DevOps Announcements - June 2014IBM DevOps Announcements - June 2014
IBM DevOps Announcements - June 2014IBM Rational software
 
A proposed framework for Agile Roadmap Design and Maintenance
A proposed framework for Agile Roadmap Design and MaintenanceA proposed framework for Agile Roadmap Design and Maintenance
A proposed framework for Agile Roadmap Design and MaintenanceJérôme Kehrli
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development OverviewStewart Rogers
 
Il paradigma DevOps e Continuous Delivery Automation
Il paradigma DevOps e Continuous Delivery Automation Il paradigma DevOps e Continuous Delivery Automation
Il paradigma DevOps e Continuous Delivery Automation HP Enterprise Italia
 
IIT Academy: 204 User stories and acceptance criteria
IIT Academy: 204 User stories and acceptance criteriaIIT Academy: 204 User stories and acceptance criteria
IIT Academy: 204 User stories and acceptance criteriaSteven HK Ma | 馬國豪
 
Enabling Enterprise DevOps at Scale
Enabling Enterprise DevOps at ScaleEnabling Enterprise DevOps at Scale
Enabling Enterprise DevOps at ScaleBob Sokol
 

What's hot (20)

소프트웨어 QA 및 테스팅 트렌드
소프트웨어 QA 및 테스팅 트렌드소프트웨어 QA 및 테스팅 트렌드
소프트웨어 QA 및 테스팅 트렌드
 
Udvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBM
Udvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBMUdvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBM
Udvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBM
 
Evolution of the DevOps Quality Management Office
Evolution of the DevOps Quality Management OfficeEvolution of the DevOps Quality Management Office
Evolution of the DevOps Quality Management Office
 
Dual-Track Agile at Scale
Dual-Track Agile at ScaleDual-Track Agile at Scale
Dual-Track Agile at Scale
 
Software Outsourcing Practices
Software Outsourcing PracticesSoftware Outsourcing Practices
Software Outsourcing Practices
 
Critical Capabilities to Shifting Left the Right Way
Critical Capabilities to Shifting Left the Right WayCritical Capabilities to Shifting Left the Right Way
Critical Capabilities to Shifting Left the Right Way
 
Business Assurance: The Quality Implications of Digital Transformation
Business Assurance: The Quality Implications of Digital TransformationBusiness Assurance: The Quality Implications of Digital Transformation
Business Assurance: The Quality Implications of Digital Transformation
 
DevOps for the Mobile Enterprise: Test and Deploy
DevOps for the Mobile Enterprise: Test and DeployDevOps for the Mobile Enterprise: Test and Deploy
DevOps for the Mobile Enterprise: Test and Deploy
 
Why DevOps Matters To The CIO
Why DevOps Matters To The CIOWhy DevOps Matters To The CIO
Why DevOps Matters To The CIO
 
[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap
[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap
[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap
 
How to Build High-Performing IT Teams - Including New Data on IT Performance ...
How to Build High-Performing IT Teams - Including New Data on IT Performance ...How to Build High-Performing IT Teams - Including New Data on IT Performance ...
How to Build High-Performing IT Teams - Including New Data on IT Performance ...
 
Don't be a DevOps Failure
Don't be a DevOps FailureDon't be a DevOps Failure
Don't be a DevOps Failure
 
Useful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanUseful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and Kanban
 
eDevOps in HPSW from buzzword to reality
eDevOps in HPSW from buzzword to realityeDevOps in HPSW from buzzword to reality
eDevOps in HPSW from buzzword to reality
 
IBM DevOps Announcements - June 2014
IBM DevOps Announcements - June 2014IBM DevOps Announcements - June 2014
IBM DevOps Announcements - June 2014
 
A proposed framework for Agile Roadmap Design and Maintenance
A proposed framework for Agile Roadmap Design and MaintenanceA proposed framework for Agile Roadmap Design and Maintenance
A proposed framework for Agile Roadmap Design and Maintenance
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
 
Il paradigma DevOps e Continuous Delivery Automation
Il paradigma DevOps e Continuous Delivery Automation Il paradigma DevOps e Continuous Delivery Automation
Il paradigma DevOps e Continuous Delivery Automation
 
IIT Academy: 204 User stories and acceptance criteria
IIT Academy: 204 User stories and acceptance criteriaIIT Academy: 204 User stories and acceptance criteria
IIT Academy: 204 User stories and acceptance criteria
 
Enabling Enterprise DevOps at Scale
Enabling Enterprise DevOps at ScaleEnabling Enterprise DevOps at Scale
Enabling Enterprise DevOps at Scale
 

Similar to Making the Move to Behavior-Driven Development

Making the Move to Behavior Driven Development
Making the Move to Behavior Driven DevelopmentMaking the Move to Behavior Driven Development
Making the Move to Behavior Driven DevelopmentQASymphony
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQASymphony
 
Trends in software testing by Eka TechServ
Trends in software testing  by Eka TechServTrends in software testing  by Eka TechServ
Trends in software testing by Eka TechServekatechserv
 
Scaling Test first for the Enterprise
Scaling Test first for the EnterpriseScaling Test first for the Enterprise
Scaling Test first for the EnterpriseQASymphony
 
White paper quality at the speed of digital
White paper   quality at the speed of digitalWhite paper   quality at the speed of digital
White paper quality at the speed of digitalrajni singh
 
Quality at the speed of digital
Quality   at the speed of digitalQuality   at the speed of digital
Quality at the speed of digitalrajni singh
 
IBM Innovate - Uderstanding DevOps
IBM Innovate - Uderstanding DevOpsIBM Innovate - Uderstanding DevOps
IBM Innovate - Uderstanding DevOpsSanjeev Sharma
 
Software Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a TeamSoftware Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a TeamSoftheme
 
Assure TotalView - Analytics for Application Delivery
Assure TotalView - Analytics for Application DeliveryAssure TotalView - Analytics for Application Delivery
Assure TotalView - Analytics for Application DeliveryAssure
 
DevOps 101 - IBM Impact 2014
DevOps 101 - IBM Impact 2014 DevOps 101 - IBM Impact 2014
DevOps 101 - IBM Impact 2014 Sanjeev Sharma
 
Base Logic Inc Solution Offering
Base Logic Inc Solution OfferingBase Logic Inc Solution Offering
Base Logic Inc Solution OfferingMick Knutson
 
Software Quality: A Cross-Organizational Competency
Software Quality: A Cross-Organizational CompetencySoftware Quality: A Cross-Organizational Competency
Software Quality: A Cross-Organizational CompetencyTechWell
 
Making the Switch from HP Quality Center to qTest
Making the Switch from HP Quality Center to qTestMaking the Switch from HP Quality Center to qTest
Making the Switch from HP Quality Center to qTestQASymphony
 
DOES14 - Stephen Elliot - IDC - Delivering DevOps Business Metrics that Matter
DOES14 - Stephen Elliot - IDC - Delivering DevOps Business Metrics that MatterDOES14 - Stephen Elliot - IDC - Delivering DevOps Business Metrics that Matter
DOES14 - Stephen Elliot - IDC - Delivering DevOps Business Metrics that MatterGene Kim
 
Telliant-Pres-_9-2-22 (1).pdf
Telliant-Pres-_9-2-22 (1).pdfTelliant-Pres-_9-2-22 (1).pdf
Telliant-Pres-_9-2-22 (1).pdfSethNarayanan1
 
Microservices in production 15/12/2015
Microservices in production 15/12/2015Microservices in production 15/12/2015
Microservices in production 15/12/2015Damien Daly
 

Similar to Making the Move to Behavior-Driven Development (20)

Making the Move to Behavior Driven Development
Making the Move to Behavior Driven DevelopmentMaking the Move to Behavior Driven Development
Making the Move to Behavior Driven Development
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the Enterprise
 
Trends in software testing by Eka TechServ
Trends in software testing  by Eka TechServTrends in software testing  by Eka TechServ
Trends in software testing by Eka TechServ
 
Scaling Test first for the Enterprise
Scaling Test first for the EnterpriseScaling Test first for the Enterprise
Scaling Test first for the Enterprise
 
White paper quality at the speed of digital
White paper   quality at the speed of digitalWhite paper   quality at the speed of digital
White paper quality at the speed of digital
 
Quality at the speed of digital
Quality   at the speed of digitalQuality   at the speed of digital
Quality at the speed of digital
 
IBM Innovate - Uderstanding DevOps
IBM Innovate - Uderstanding DevOpsIBM Innovate - Uderstanding DevOps
IBM Innovate - Uderstanding DevOps
 
DevOps: Age Of CI/CD
DevOps: Age Of CI/CDDevOps: Age Of CI/CD
DevOps: Age Of CI/CD
 
Software Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a TeamSoftware Outsourcing: Outsource Your Project or Build a Team
Software Outsourcing: Outsource Your Project or Build a Team
 
Assure TotalView - Analytics for Application Delivery
Assure TotalView - Analytics for Application DeliveryAssure TotalView - Analytics for Application Delivery
Assure TotalView - Analytics for Application Delivery
 
DevOps 101 - IBM Impact 2014
DevOps 101 - IBM Impact 2014 DevOps 101 - IBM Impact 2014
DevOps 101 - IBM Impact 2014
 
Base Logic Inc Solution Offering
Base Logic Inc Solution OfferingBase Logic Inc Solution Offering
Base Logic Inc Solution Offering
 
Belgian visual studio launch 2013
Belgian visual studio launch 2013Belgian visual studio launch 2013
Belgian visual studio launch 2013
 
Popular Pitfalls In Sdlc Phases 1
Popular Pitfalls In Sdlc Phases 1Popular Pitfalls In Sdlc Phases 1
Popular Pitfalls In Sdlc Phases 1
 
Q!Digitz
Q!Digitz Q!Digitz
Q!Digitz
 
Software Quality: A Cross-Organizational Competency
Software Quality: A Cross-Organizational CompetencySoftware Quality: A Cross-Organizational Competency
Software Quality: A Cross-Organizational Competency
 
Making the Switch from HP Quality Center to qTest
Making the Switch from HP Quality Center to qTestMaking the Switch from HP Quality Center to qTest
Making the Switch from HP Quality Center to qTest
 
DOES14 - Stephen Elliot - IDC - Delivering DevOps Business Metrics that Matter
DOES14 - Stephen Elliot - IDC - Delivering DevOps Business Metrics that MatterDOES14 - Stephen Elliot - IDC - Delivering DevOps Business Metrics that Matter
DOES14 - Stephen Elliot - IDC - Delivering DevOps Business Metrics that Matter
 
Telliant-Pres-_9-2-22 (1).pdf
Telliant-Pres-_9-2-22 (1).pdfTelliant-Pres-_9-2-22 (1).pdf
Telliant-Pres-_9-2-22 (1).pdf
 
Microservices in production 15/12/2015
Microservices in production 15/12/2015Microservices in production 15/12/2015
Microservices in production 15/12/2015
 

More from TechWell

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and RecoveringTechWell
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization TechWell
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTechWell
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartTechWell
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyTechWell
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTechWell
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowTechWell
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityTechWell
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyTechWell
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTechWell
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipTechWell
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsTechWell
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GameTechWell
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsTechWell
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationTechWell
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessTechWell
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateTechWell
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessTechWell
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTechWell
 

More from TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
 
Ma 15
Ma 15Ma 15
Ma 15
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
 

Recently uploaded

KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsMehedi Hasan Shohan
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
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
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 

Recently uploaded (20)

KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
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
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 

Making the Move to Behavior-Driven Development

  • 1.         T2   Test  Techniques   10/6/16  9:45             Making  the  Move  to  Behavior-­‐Driven   Development   Presented  by:         Kevin  Dunne       QASymphony     Brought  to  you  by:                 350  Corporate  Way,  Suite  400,  Orange  Park,  FL  32073     888-­‐-­‐-­‐268-­‐-­‐-­‐8770  ·∙·∙  904-­‐-­‐-­‐278-­‐-­‐-­‐0524  -­‐  info@techwell.com  -­‐  http://www.starwest.techwell.com/            
  • 2.     Kevin  Dunne       As  the  VP  of  strategy  and  business  development  at  QASymphony,  Kevin  Dunne   ensures  their  continued  commitment  to  innovation  and  delivering  tools  to  create   better  software.  With  a  deep  interest  in  the  emerging  trends  in  software   development  and  testing,  he  is  dedicated  to  collaborating  with  thought  leaders  in   this  space.  Kevin  comes  to  QASymphony  from  Deloitte,  where  he  managed  testing   on  large  government  and  Fortune  500  engagements  delivering  ERP   implementations  and  custom  software  development.  As  one  of  QASymphony's  first   employees,  Kevin  has  seen  many  sides  of  the  companyÛÓfrom  sales  and  customer   support  to  marketing  and  product  management.  
  • 3. Making the Move to Behavior- Driven Development Kevin Dunne, VP of Business Development, QASymphony
  • 4. AGENDA • Understanding typical software development and testing challenges • Introduce BDD methodologies • Benefits of implementing test-first methodologies • Review the state of test-first methodologies in industry • Investigate keys for successful implementation BDD • Q&A
  • 6. Where We Came From Traditional development cycles often model the Rational Unified Process: Source: http://www.psa-software.com/_img/_knowledge_center/rup.jpg
  • 7. The Broken Game of Telephone Running the processes in parallel introduces the risk as the requirements get handed off multiple times and customer expectations change with time: Source: http://lh5.ggpht.com/_g0-GZzIBNms/SloJ3LOGy3I/AAAAAAAAAK0/FvyLacg_Q28/s800/conversations.pngg
  • 8. Why QA Breaks Down in Agile QA kept out of the loop QA are unable to complete tests when needed Dev and QA working on different cadences Lack of visibibility or understanding into when QA is “Done” with testing
  • 9. The “Old Way” was the Best Way at the Time We would have obviously chosen a more efficient process, but we were constrained by many limitations, including: Environment Creation Code Merges On-Premise Prevalence Desktop Focus Lack of Collaboration Off-Shore Development
  • 10. What’s Changed Many of our prior limitations have been replaced, based on macro trends around technology and industry: Containers have simplified the process dramaticallyEnvironment Creation Git has replaced Subversion as the industry standardCode Merges Cloud adoption is at an all time high, increased securityOn-Premise Prevalence Prevalence of Web, Mobile, Internet of thingsDesktop Focus Increase in teamwork, chat and collaboration technologyLack of Collaboration Shifts towards rural sourcing, onshoring of laborOff-Shore Development
  • 12. How the Process Has Adapted Now that we have freed ourselves of past limitations, the process has been shifted to one that aligns more with our needs: Traditional Approach Test-First Approach Design Requirements Code Test Deploy Design (Automated) Test Code Refactor Deploy
  • 13. TDD vs. ATDD vs. BDD Test-First methodologies were coined “Test Driven Development”. Less technically focused versions called Acceptance Test Driven Development (ATDD) and Behavior Driven Development (BDD) also emerged: Test Driven Development (TDD) Behavior Driven Development (BDD) Acceptance Test Driven Development (ATDD) Unit Test Driven Development (“Technical TDD”)
  • 14. What’s the Difference? ATDD and BDD are similar in that they both try to make TDD more accessible to business users. The major functional difference comes down to how the tests are structured: "I think this definition leaves out a key piece, we are focusing on collaboration and learning. Having worked on a project that was using 'ATDD', in 2005 I think, we had the same goals then as BDD without the Given When Then language.“ — Wes Williams
  • 15. Pros and Cons ATDD/BDD offer benefits over more Unit Focused/Technical TDD, but also has its drawbacks: Pros • Increased understanding of tests from business stakeholders • Increased collaboration early in the cycle • More focus on customer and business needs • Higher involvement of business in development and quality Cons • Addition of more tooling in the development/delivery chain • Greater time spent defining tests and specifications • Demands stronger contributors in requirements, dev, test • Often increases the automation needs in an organization
  • 16. Typical BDD Planning Hierarchy Sprint 1 Sprint 2 Sprint 3 Sprint 4 Epic: ATM Software Story : Withdraw Cash Story : Check Balance Acceptance Test: Overdraft Epic: Online Banking Portal
  • 17. User Stories Define the Discrete Units of Work The user story is the “What” or the high level ask the business has for the development team User Stories often still exist with BDD, as a framework for adding scenarios. Some companies would change User Stories to being called features. Example: As a customer, I want to withdraw cash from an ATM, so that I don’t have to wait in line at the bank. Source: https://dannorth.net/introducing-bdd/
  • 18. Non-BDD – Define with Acceptance Criteria Acceptance criteria are used to define the User Story in a detailed manner While acceptance criteria are easy to write, they are often vague or incomplete Additionally, users typically need to write acceptance tests to validate the criteria pass Example: - Cash dispensed in less than 10 seconds - Cash dispensed matches amount requested by customer - American express cards not accepted - Overdrafted accounts rejected for withdrawal
  • 19. The BDD Way - Acceptance Tests Verify the work: Acceptance tests evaluate the acceptance criteria using the “Given- When-Then” format. Example: Scenario: Overdrawn accounts cannot withdraw money Given the account is overdrawn And the card is valid When the customer requests cash Then ensure a rejection message is displayed And ensure cash is not dispensed And ensure the card is returned Source: https://dannorth.net/introducing-bdd/
  • 20. Acceptance Test Example Example: Given the customer has navigated to the billing page When the customer clicks on “Update Billing Information” and clicks “Change Address,” Then: the customer is presented with a form to enter a new address. Example based on Acceptance Criteria:
  • 22. How Can TDD Help Us? Test Driven Development brings several major benefits to organization, most notably: 1. Move Testing Up Front – prevents having to rush testing at the end of the cycle 2. Bake in Automation from Day 1 – protects against getting behind with test and automation coverage 3. Build More Testable Software – requires developers to think about testability, and create more robust software 4. Push to Customers When Ready – allows you to push software to customers just in time, as it is developed
  • 23. Move Testing Up Front Moving Testing Up Front removes the risk of having to make compromises at the end of the cycle on quality or on-time delivery: Traditional Development Timeline Ends on: Day 1 Day 3 Day 14 Day 20 Day 21 Design Requirements Code Test Deploy There is risk in this process that any process, typically Code, will run over and either squeeze development, or push release dates. TDD removes it!
  • 24. Defect Costs Increase as Code Matures 0 20 40 60 80 100 120 Design Implementation Testing Maintenance Phase/Stage of the S/W Development in Which the Defect is Found Cost of Resolving Defect
  • 25. Bake in Automation Up Front In traditional development, automation is often built after the code is developed, which has significant limitations: Test development is more costly, since we cannot access the code to make it more testable (more details to come) Tests are slower and more brittle, with higher levels of maintenance, if we can only access the UI Test coverage is incomplete, as we must chose strategically where to build out automation coverage Moving to TDD flips the process and forces developers to write code to satisfy tests, increasing automation coverage, speed, and reducing cost
  • 26. Build for Testability Source: http://zeroturnaround.com/wp-content/uploads/2015/12/PUZZLE-1-min.png Moving towards BDD will force your developers to build an application that can be tested well at the Unit, Integration, and UI levels:
  • 27. UI Tests Integration Tests Unit Tests Building a Complete Testing Strategy Moving towards BDD will also demand a more complete testing strategy focused on more than just UI testing: UI Tests Integration Tests Unit Tests
  • 28. Push Features When They Are Complete TDD paired with continuous delivery will allow you to push features as they become ready, if you’d like to: Old Way New Way Code Feature A Code Feature B Code Feature C Test Deploy Wait Wait Code Feature A Code Feature B Code Feature C Write Tests Deploy Deploy Deploy
  • 29. State of Test-First in Industry
  • 30. State of Test First – Respondent Overview Most respondents are yet to implement TDD, or just getting started
  • 31. Learning the Ropes Online Most people are learning about TDD online, due to lack of good in-person content!
  • 32. Struggling for Developer Buy-In The biggest stumbling block continues to be getting developers to write tests
  • 33. Transition to Agile First, Then TDD Most organizations move to TDD after mastering Scrum/Kanban Agile approach
  • 34. How Teams are Doing BDD
  • 35. Scope •Define user story Define Tests •Write Acceptance Tests Code Features Build •Build the latest code Run Tests •Execute acceptance tests Tools Our Customers Are Using IF PASSED: Report results back to User Story OR Refactor IF FAILED: Change Code
  • 36. Benefits to the Organization Increased team collaboration and morale Expanded test coverage Reduced time to execute or maintain regression Enhanced reusability of testing assets Organization wide interest in quality
  • 37. Implementation Models There are different implementation models with different pros and cons: Train the Trainer Phased Rollout Big Bang Dev Dev Dev QA PO Ops SMTeam A Dev Dev Dev QA PO Ops SMTeam A Dev Dev Dev QA PO Ops SMTeam A Dev Dev Dev QA PO Ops SMTeam A Dev Dev Dev QA PO Ops SMTeam A Dev Dev Dev QA PO Ops SMTeam A Increased Risk, Increased Reward
  • 38. Keys To Success • Be patient, success will take time • Do a real assessment of talent BEFORE you embark on a journey towards BDD • Identify one or multiple champions with strong personalities and rapport • Define success criteria using metrics that matter to you • Start smaller where risks are minimized • Don’t be afraid to ask for help and seek guidance online or from in person consultants
  • 39. Q&A