SlideShare a Scribd company logo
SO WE’RE GOING “NO QAS” –
HOW DO WE GET THE DEVS TO DO ENOUGH
TESTING?
Steve Wells
steve.wells@marks-and-spencer.com
July 2017
BACKGROUND
2
AGILE CAMBRIDGE 2016 - “DON’T GO
CHASING WATERFALLS”
3
• Scrum has only 3 roles, PO, SM and developers
• No BA, no QA, no DBA, no other (dedicated) roles – only “T-shaped
people”
• These other roles are common in scrum teams, particularly (manual) QA
• They cause a waterfall…
AGILE CAMBRIDGE 2016 - “DON’T GO
CHASING WATERFALLS”
4
PO
Dev
QA
WHY IS THIS SO BAD? (JUST BECAUSE IT
ISN’T “SCRUM”)
5
Silos
Efficiency
Over-the-wall Thinking
Undue power
of sign-off
Unnecessary delays
(while bugs are triaged)
Stifles Innovation
Just not agile!
Risk
Blocks improvement
Not failing early
Is this the real resource
requirement, every
hour, of every day of
every sprint?
33%
17%
50%
EFFICIENCY?
6
• Is this really how the work is split
every hour of every day of every
sprint?
AGILE CAMBRIDGE 2016 - “DON’T GO
CHASING WATERFALLS”
7
• Do certain people really have a “testing gene” that makes them better at
testing than developers?
• If testers find a bug that customers will never find, do we care? Particularly if
that delays release and stops us getting early feedback?
• Are a couple of QAs going to find (actual, customer impacting) bugs as
quickly as (say) hundreds on a beta program?
• Are dedicated testers going to be able to understand the complexities of the
codebase, and the best way to use testing frameworks?
AGILE CAMBRIDGE 2016 - “DON’T GO
CHASING WATERFALLS”
8
• Spotify DIBBs (Data-Insight-Belief-Bet) philosophy -
https://www.infoq.com/news/2016/07/spotify-good-at-failing
speed of iteration
beats
quality of iteration
AGILE CAMBRIDGE 2016 - “DON’T GO
CHASING WATERFALLS”
9
• Case study based on 3 teams in Sky
• Not having dedicated QAs increased speed of delivery and improved
quality (fewer bugs/rollbacks, improved customer reviews)
• Bugs spotted earlier, so faster fail
SO I GAVE THIS TALK…
10
HOW DO WE GET THE DEVS TO DO
ENOUGH TESTING?
11
WHAT IS “ENOUGH” TESTING? WHAT ARE WE
TRYING TO ACHIEVE?
12
Deliver the
most value
Stability
“Zero” (acceptable
level of) defects
Quickest possible
feedback Speed of delivery
and rollback
Maintainability
Quality Security
WHAT IS “ENOUGH” TESTING? HOW DO WE
ACHIEVE IT?
13
• Many other strategies to improve quality apart from testing…
• Code reviews, walkthroughs
• Design patterns, include proved code
• Pair programming
• Coding standards, linting, etc
• Beta groups
• A/B and multivariate testing
14
Full team
responsibility
15
Empowered Team
Team Success and Failure
Motivated Team
Quality Baked In
Data and Visibility
17
A model for
high-performing
teams
Simon Powers
18
Support what they build
19
Stop all “over the wall thinking”
20
Don’t recruit to roles
RECRUITING TO ROLES
21
• Who would test your app the most realistically?
a) Something with expert knowledge of app testing theory?
b) Someone with initimate knowledge of your products and how the app is
used in the real world?
22
Automate
everything
TESTING AUTOMATION – REVERSE THE
CONE!
23
Manual
Automated
Measure: coverage, areas
of failure, time to run etc,
etc.
TESTING AUTOMATION – “SHIFT LEFT”
24
development test
development and test
25
• Aside: An example of where manual testing is damaging -
https://www.linkedin.com/pulse/manual-testing-always-necessary-fact-
sometimes-bit-dangerous-wells
Confi
g
Objec
t
Endpoint 1
Endpoint 2
26
YES, BUT SOMETIMES, YOU
STILL NEED MANUAL
TESTING…
27
YES, BUT SOMETIMES, YOU
STILL NEED MANUAL
TESTING…
28
YES, BUT SOMETIMES, YOU
STILL NEED MANUAL
TESTING…
29
Play the “shiny new stuff’
card
30
• Team of 8 with 1 tester
• Replace tester with dev
• We get nearly a whole extra person
• We only have to do 1/8 of the testing
each
DO THE MATHS
31
Make it
competitive
32
Cross-
THINGS TO AVOID
33
• Rotating the QA role
• Allowing developers to refuse to test
• The “dev in test” role
• The phrase “dev-complete”
• “We’ll release, then come back and write tests later…”
IF THE PO IS ALSO CAUSING A WATERFALL,
WHY NOT GET RID OF THAT ROLE AS WELL?
34
PO
Dev
QA
IF THE PO IS ALSO CAUSING A WATERFALL,
WHY NOT GET RID OF THAT ROLE AS WELL?
35
PO
Dev
Deliver
Team
36
Quicker, faster,
cheaper, higher
quality deliveries –
really, what’s not
to like?...
steve.wells@marks-and-spencer.com

More Related Content

What's hot

Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Group
suwalki24.pl
 
Scrum Testing Methodology
Scrum Testing MethodologyScrum Testing Methodology
Scrum Testing Methodology
Gaya1985
 
Agile Testing Best Practices
Agile Testing Best PracticesAgile Testing Best Practices
Agile Testing Best Practices
Stephen Ritchie
 
Cypress Automation
Cypress  AutomationCypress  Automation
Cypress Automation
Susantha Pathirana
 
Agile Testing
Agile Testing  Agile Testing
Agile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil KaradeAgile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil Karade
IndicThreads
 
Introducing QA Into an Agile Environment
Introducing QA Into an Agile EnvironmentIntroducing QA Into an Agile Environment
Introducing QA Into an Agile Environment
Joseph Beale
 
Agile testing
Agile testingAgile testing
Agile testing
Yogita patil
 
The Test Pyramid
The Test PyramidThe Test Pyramid
The Test Pyramid
Thiago Ghisi
 
Cypress
CypressCypress
Build CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation SlidesBuild CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation Slides
Amazon Web Services
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile Tester
Declan Whelan
 
Test Automation Frameworks: Assumptions, Concepts & Tools
Test Automation Frameworks: Assumptions, Concepts & ToolsTest Automation Frameworks: Assumptions, Concepts & Tools
Test Automation Frameworks: Assumptions, Concepts & Tools
Amit Rawat
 
How to Optimise Continuous Testing
How to Optimise Continuous TestingHow to Optimise Continuous Testing
How to Optimise Continuous Testing
Sauce Labs
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testing
Directi Group
 
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil TayarCypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Applitools
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with Agile
Ken McCorkell
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
Naveen Kumar Singh
 
Keynote: Testing and Quality in the Scaled Agile Framework for Lean Enterpris...
Keynote: Testing and Quality in the Scaled Agile Framework for Lean Enterpris...Keynote: Testing and Quality in the Scaled Agile Framework for Lean Enterpris...
Keynote: Testing and Quality in the Scaled Agile Framework for Lean Enterpris...
Derk-Jan de Grood
 
Developing a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian BayerDeveloping a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian Bayer
QA or the Highway
 

What's hot (20)

Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Group
 
Scrum Testing Methodology
Scrum Testing MethodologyScrum Testing Methodology
Scrum Testing Methodology
 
Agile Testing Best Practices
Agile Testing Best PracticesAgile Testing Best Practices
Agile Testing Best Practices
 
Cypress Automation
Cypress  AutomationCypress  Automation
Cypress Automation
 
Agile Testing
Agile Testing  Agile Testing
Agile Testing
 
Agile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil KaradeAgile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil Karade
 
Introducing QA Into an Agile Environment
Introducing QA Into an Agile EnvironmentIntroducing QA Into an Agile Environment
Introducing QA Into an Agile Environment
 
Agile testing
Agile testingAgile testing
Agile testing
 
The Test Pyramid
The Test PyramidThe Test Pyramid
The Test Pyramid
 
Cypress
CypressCypress
Cypress
 
Build CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation SlidesBuild CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation Slides
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile Tester
 
Test Automation Frameworks: Assumptions, Concepts & Tools
Test Automation Frameworks: Assumptions, Concepts & ToolsTest Automation Frameworks: Assumptions, Concepts & Tools
Test Automation Frameworks: Assumptions, Concepts & Tools
 
How to Optimise Continuous Testing
How to Optimise Continuous TestingHow to Optimise Continuous Testing
How to Optimise Continuous Testing
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testing
 
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil TayarCypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with Agile
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
 
Keynote: Testing and Quality in the Scaled Agile Framework for Lean Enterpris...
Keynote: Testing and Quality in the Scaled Agile Framework for Lean Enterpris...Keynote: Testing and Quality in the Scaled Agile Framework for Lean Enterpris...
Keynote: Testing and Quality in the Scaled Agile Framework for Lean Enterpris...
 
Developing a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian BayerDeveloping a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian Bayer
 

Similar to So we're going no-QA - how do we get the devs to do enough testing?

A confused tester in agile world finalversion
A confused tester in agile world finalversionA confused tester in agile world finalversion
A confused tester in agile world finalversion
Ashish Kumar
 
Manual Testing in Scrum is Hard (But Not Impossible)
Manual Testing in Scrum is Hard (But Not Impossible)Manual Testing in Scrum is Hard (But Not Impossible)
Manual Testing in Scrum is Hard (But Not Impossible)
Lesley Wallace, CSP, CSM, ICP-ACC, SA
 
Quality Assurance: What is it and what are the Business Benefits?
Quality Assurance: What is it and what are the Business Benefits?Quality Assurance: What is it and what are the Business Benefits?
Quality Assurance: What is it and what are the Business Benefits?
Sparkhound Inc.
 
Quality Assurance - SQLSatBR presentation
Quality Assurance - SQLSatBR presentationQuality Assurance - SQLSatBR presentation
Quality Assurance - SQLSatBR presentation
Lyle Hutson
 
Quality assurance sql sat-br presentation
Quality assurance   sql sat-br presentationQuality assurance   sql sat-br presentation
Quality assurance sql sat-br presentation
Lyle Hutson
 
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA
 
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
Evolve The Adobe Digital Marketing Community
 
You build it, you run it
You build it, you run itYou build it, you run it
You build it, you run it
Skyscanner
 
Waterfalls for agile cambridge
Waterfalls for agile cambridgeWaterfalls for agile cambridge
Waterfalls for agile cambridge
Steve Wells
 
Waterfalls for Agile in a bag
Waterfalls for Agile in a bagWaterfalls for Agile in a bag
Waterfalls for Agile in a bag
Steve Wells
 
Continuous delivery is more than dev ops
Continuous delivery is more than dev opsContinuous delivery is more than dev ops
Continuous delivery is more than dev ops
Agile Montréal
 
Agile Transformation: People, Process and Tools to Make Your Transformation S...
Agile Transformation: People, Process and Tools to Make Your Transformation S...Agile Transformation: People, Process and Tools to Make Your Transformation S...
Agile Transformation: People, Process and Tools to Make Your Transformation S...
QASymphony
 
50500113 spiral-model
50500113 spiral-model50500113 spiral-model
50500113 spiral-model
asidharath
 
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
TechWell
 
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA
 
How to manoeuvre as test/QA responsible in agile teams to get the "right" pro...
How to manoeuvre as test/QA responsible in agile teams to get the "right" pro...How to manoeuvre as test/QA responsible in agile teams to get the "right" pro...
How to manoeuvre as test/QA responsible in agile teams to get the "right" pro...
SQALab
 
Keynote AST 2016
Keynote AST 2016Keynote AST 2016
Keynote AST 2016
Kim Herzig
 
Comprehensive Validation with Laravel 4
Comprehensive Validation with Laravel 4Comprehensive Validation with Laravel 4
Comprehensive Validation with Laravel 4
Kirk Bushell
 
[DevSecOps Live] DevSecOps: Challenges and Opportunities
[DevSecOps Live] DevSecOps: Challenges and Opportunities[DevSecOps Live] DevSecOps: Challenges and Opportunities
[DevSecOps Live] DevSecOps: Challenges and Opportunities
Mohammed A. Imran
 
'Stakeholder Engagement Shortcuts': Ilan Goldstein @ Colombo Agile Conference...
'Stakeholder Engagement Shortcuts': Ilan Goldstein @ Colombo Agile Conference...'Stakeholder Engagement Shortcuts': Ilan Goldstein @ Colombo Agile Conference...
'Stakeholder Engagement Shortcuts': Ilan Goldstein @ Colombo Agile Conference...
ColomboCampsCommunity
 

Similar to So we're going no-QA - how do we get the devs to do enough testing? (20)

A confused tester in agile world finalversion
A confused tester in agile world finalversionA confused tester in agile world finalversion
A confused tester in agile world finalversion
 
Manual Testing in Scrum is Hard (But Not Impossible)
Manual Testing in Scrum is Hard (But Not Impossible)Manual Testing in Scrum is Hard (But Not Impossible)
Manual Testing in Scrum is Hard (But Not Impossible)
 
Quality Assurance: What is it and what are the Business Benefits?
Quality Assurance: What is it and what are the Business Benefits?Quality Assurance: What is it and what are the Business Benefits?
Quality Assurance: What is it and what are the Business Benefits?
 
Quality Assurance - SQLSatBR presentation
Quality Assurance - SQLSatBR presentationQuality Assurance - SQLSatBR presentation
Quality Assurance - SQLSatBR presentation
 
Quality assurance sql sat-br presentation
Quality assurance   sql sat-br presentationQuality assurance   sql sat-br presentation
Quality assurance sql sat-br presentation
 
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612
 
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
 
You build it, you run it
You build it, you run itYou build it, you run it
You build it, you run it
 
Waterfalls for agile cambridge
Waterfalls for agile cambridgeWaterfalls for agile cambridge
Waterfalls for agile cambridge
 
Waterfalls for Agile in a bag
Waterfalls for Agile in a bagWaterfalls for Agile in a bag
Waterfalls for Agile in a bag
 
Continuous delivery is more than dev ops
Continuous delivery is more than dev opsContinuous delivery is more than dev ops
Continuous delivery is more than dev ops
 
Agile Transformation: People, Process and Tools to Make Your Transformation S...
Agile Transformation: People, Process and Tools to Make Your Transformation S...Agile Transformation: People, Process and Tools to Make Your Transformation S...
Agile Transformation: People, Process and Tools to Make Your Transformation S...
 
50500113 spiral-model
50500113 spiral-model50500113 spiral-model
50500113 spiral-model
 
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
 
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612
 
How to manoeuvre as test/QA responsible in agile teams to get the "right" pro...
How to manoeuvre as test/QA responsible in agile teams to get the "right" pro...How to manoeuvre as test/QA responsible in agile teams to get the "right" pro...
How to manoeuvre as test/QA responsible in agile teams to get the "right" pro...
 
Keynote AST 2016
Keynote AST 2016Keynote AST 2016
Keynote AST 2016
 
Comprehensive Validation with Laravel 4
Comprehensive Validation with Laravel 4Comprehensive Validation with Laravel 4
Comprehensive Validation with Laravel 4
 
[DevSecOps Live] DevSecOps: Challenges and Opportunities
[DevSecOps Live] DevSecOps: Challenges and Opportunities[DevSecOps Live] DevSecOps: Challenges and Opportunities
[DevSecOps Live] DevSecOps: Challenges and Opportunities
 
'Stakeholder Engagement Shortcuts': Ilan Goldstein @ Colombo Agile Conference...
'Stakeholder Engagement Shortcuts': Ilan Goldstein @ Colombo Agile Conference...'Stakeholder Engagement Shortcuts': Ilan Goldstein @ Colombo Agile Conference...
'Stakeholder Engagement Shortcuts': Ilan Goldstein @ Colombo Agile Conference...
 

Recently uploaded

May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
lorraineandreiamcidl
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Undress Baby
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 

Recently uploaded (20)

May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 

So we're going no-QA - how do we get the devs to do enough testing?

  • 1. SO WE’RE GOING “NO QAS” – HOW DO WE GET THE DEVS TO DO ENOUGH TESTING? Steve Wells steve.wells@marks-and-spencer.com July 2017
  • 3. AGILE CAMBRIDGE 2016 - “DON’T GO CHASING WATERFALLS” 3 • Scrum has only 3 roles, PO, SM and developers • No BA, no QA, no DBA, no other (dedicated) roles – only “T-shaped people” • These other roles are common in scrum teams, particularly (manual) QA • They cause a waterfall…
  • 4. AGILE CAMBRIDGE 2016 - “DON’T GO CHASING WATERFALLS” 4 PO Dev QA
  • 5. WHY IS THIS SO BAD? (JUST BECAUSE IT ISN’T “SCRUM”) 5 Silos Efficiency Over-the-wall Thinking Undue power of sign-off Unnecessary delays (while bugs are triaged) Stifles Innovation Just not agile! Risk Blocks improvement Not failing early
  • 6. Is this the real resource requirement, every hour, of every day of every sprint? 33% 17% 50% EFFICIENCY? 6 • Is this really how the work is split every hour of every day of every sprint?
  • 7. AGILE CAMBRIDGE 2016 - “DON’T GO CHASING WATERFALLS” 7 • Do certain people really have a “testing gene” that makes them better at testing than developers? • If testers find a bug that customers will never find, do we care? Particularly if that delays release and stops us getting early feedback? • Are a couple of QAs going to find (actual, customer impacting) bugs as quickly as (say) hundreds on a beta program? • Are dedicated testers going to be able to understand the complexities of the codebase, and the best way to use testing frameworks?
  • 8. AGILE CAMBRIDGE 2016 - “DON’T GO CHASING WATERFALLS” 8 • Spotify DIBBs (Data-Insight-Belief-Bet) philosophy - https://www.infoq.com/news/2016/07/spotify-good-at-failing speed of iteration beats quality of iteration
  • 9. AGILE CAMBRIDGE 2016 - “DON’T GO CHASING WATERFALLS” 9 • Case study based on 3 teams in Sky • Not having dedicated QAs increased speed of delivery and improved quality (fewer bugs/rollbacks, improved customer reviews) • Bugs spotted earlier, so faster fail
  • 10. SO I GAVE THIS TALK… 10
  • 11. HOW DO WE GET THE DEVS TO DO ENOUGH TESTING? 11
  • 12. WHAT IS “ENOUGH” TESTING? WHAT ARE WE TRYING TO ACHIEVE? 12 Deliver the most value Stability “Zero” (acceptable level of) defects Quickest possible feedback Speed of delivery and rollback Maintainability Quality Security
  • 13. WHAT IS “ENOUGH” TESTING? HOW DO WE ACHIEVE IT? 13 • Many other strategies to improve quality apart from testing… • Code reviews, walkthroughs • Design patterns, include proved code • Pair programming • Coding standards, linting, etc • Beta groups • A/B and multivariate testing
  • 15. 15
  • 16. Empowered Team Team Success and Failure Motivated Team Quality Baked In Data and Visibility
  • 19. 19 Stop all “over the wall thinking”
  • 21. RECRUITING TO ROLES 21 • Who would test your app the most realistically? a) Something with expert knowledge of app testing theory? b) Someone with initimate knowledge of your products and how the app is used in the real world?
  • 23. TESTING AUTOMATION – REVERSE THE CONE! 23 Manual Automated Measure: coverage, areas of failure, time to run etc, etc.
  • 24. TESTING AUTOMATION – “SHIFT LEFT” 24 development test development and test
  • 25. 25 • Aside: An example of where manual testing is damaging - https://www.linkedin.com/pulse/manual-testing-always-necessary-fact- sometimes-bit-dangerous-wells Confi g Objec t Endpoint 1 Endpoint 2
  • 26. 26 YES, BUT SOMETIMES, YOU STILL NEED MANUAL TESTING…
  • 27. 27 YES, BUT SOMETIMES, YOU STILL NEED MANUAL TESTING…
  • 28. 28 YES, BUT SOMETIMES, YOU STILL NEED MANUAL TESTING…
  • 29. 29 Play the “shiny new stuff’ card
  • 30. 30 • Team of 8 with 1 tester • Replace tester with dev • We get nearly a whole extra person • We only have to do 1/8 of the testing each DO THE MATHS
  • 33. THINGS TO AVOID 33 • Rotating the QA role • Allowing developers to refuse to test • The “dev in test” role • The phrase “dev-complete” • “We’ll release, then come back and write tests later…”
  • 34. IF THE PO IS ALSO CAUSING A WATERFALL, WHY NOT GET RID OF THAT ROLE AS WELL? 34 PO Dev QA
  • 35. IF THE PO IS ALSO CAUSING A WATERFALL, WHY NOT GET RID OF THAT ROLE AS WELL? 35 PO Dev Deliver Team
  • 36. 36 Quicker, faster, cheaper, higher quality deliveries – really, what’s not to like?... steve.wells@marks-and-spencer.com

Editor's Notes

  1. Note: This doesn’t just apply to Scrum! Scrum and agile are *not* the same thing!
  2. So I gave this talk, and got mobbed by angry testers. However, of more interest to me was the question on the next slide, which was asked by Scrum Masters, Pos, etc. etc.
  3. From the original scrum guide – in terms of breakfast, chickens are involved, pigs are committed. Make your teams into pigs (as it were )
  4. You wouldn’t let someone else pack your parachute! Same with software – don’t rely on other teams (integration, e2e, etc.) to do your testing – make it perfect before it leaves the team…
  5. Once you have headcount for “a tester” or “a QA” or any other role such as “front-end developer”, that defines salary ranges, job specs, etc. etc. Only recruit T-shaped people, and don’t define roles apart from “developer” or “engineer”
  6. The case given was software that flies planes, I do *not* actually want humans testing that!
  7. Make it competitive between team members, but keep it light-hearted!
  8. The PO should be embedded in the team and work in collaboration with the team. The team as a whole make the decisions…