SlideShare uma empresa Scribd logo
1 de 28
Identifying and Measuring
Testing Debt
Peter Varhol
About me
• International speaker and writer
• Graduate degrees in Math, CS, Psychology
• Technology communicator
• Former university professor, tech journalist
• Cat owner and distance runner
• peter@petervarhol.com
Agenda
• What is testing debt?
• How do we accumulate testing debt?
• Identifying and measuring testing debt
• Ways to remediate testing debt
• Conclusions
Let’s Start With Technical Debt
• We write code
• It has to change later
• Don’t fully understand the problem/feature/requirement
• Have a need to deliver quickly
• Building a prototype
• It is kludgy/performs slowly/doesn’t handle edge cases
• It has to be fixed at some point to be useful
• That is technical debt
What is Testing Debt?
• In an agile project
• Testing often works at a different cadence than development
• When testing is deferred
• Dev used the entire sprint
• Not enough time or no resources
• No tests available
• Tests blocked by other issues
• That is testing debt
What is Testing Debt?
• The effort needed to find and fix the issues that remain in the code
when an application is released
• This is not the same as a groomed bug list
• The difference (in bugs or other issues) between what is expected and
what is delivered
• If we don’t identify and measure testing debt:
• We can’t assess our quality
• We can’t address the debt
Many Things Can Cause Testing Debt
• Poor project definition
• Incomplete preparation
• Lack of domain expertise
• Poor test case definition
• Lack of time
• Inability to automate
Development Can Also Cause Testing Debt
• End of sprint incomplete work
• Code changes and refactorings
• Refactorings are people too
• Incomplete unit tests
• Poor communication on development work
Testing Debt is Composed Of the Need For
• New and redesigned tests
• Retesting
• Regression testing
• Integration testing
• System-level test
• Bug fixes and verification
The Problem With Testing Debt
• Testing debt means something has to be paid back
• Additional testing effort
• Product quality
• With interest
• The longer you wait, the longer it takes
• And the more the interest accrues
• Are these correct assumptions?
Why Do We Have to Pay Back Debt?
• Loss of quality
• Uncertain of fitness for purpose
• Lacking confidence in critical features
• Hasn’t kept pace with business requirements
How Do We Know We Have Testing Debt?
• Unfinished testing tasks
• Uncertainty on the results of testing
• Lack of a clear picture of the state of quality
Identifying Testing Debt
• Indicators
• Tests are blocked
• This is indicative of technical debt in general
• The sprint ends before testing does
• Test results are ambiguous
• Or give incorrect results
• Tracing these back to debt
• In an ideal world, how long will it take?
Measuring Testing Debt
• It’s all about the metrics
• But what should we be measuring?
• Time
• Skills required
• Opportunity lost
Measuring Testing Debt
• Time
• How much time to complete known testing?
• Based on averages from previous tests
• Plus the need to fix defects identified
• Is known testing all there is?
• Do we need to figure out what we don’t know?
Measuring Testing Debt
• Skills required
• Some skills cost more than others
• Some skills are more difficult to acquire
• Skills may also have to be scheduled in
• Cost and time are involved, but are covered above
• Instead, exactly what skills are needed
• Automation
• Database
• Scripting
• Machine learning
• Reporting
Measuring Testing Debt
• Opportunity lost
• Paying back debt means other activities can’t be done
• More features
• Time to market
• Testing debt also requires coordination
• Development
• Documentation
• Product owner/users
What is the Interest on Testing Debt?
• What will you have to pay?
• Studies say each subsequent adds 10 percent interest
• Per sprint
• Testing debt interest can add up quickly
• When will you have to pay it?
Solutions to Testing Debt
• Avoidance
• Control scope
• Reduce testing times
• Removing legacy tests
• Time box testing
Avoidance
• Make sure testing tasks are complete when scheduled
• Make sure the solution is fully understood
• Problems with that
• Not practical
• Not enough time or resources
• May require rework
Control Scope
• Don’t let project goals/features change after initial requirements
• Problems with that
• Agility means adapting
• Projects change
Reduce Testing Times
• Spend less time testing
• Problems with that
• How do we reduce testing times?
• Without affecting quality?
• Automation can help
• But it still requires an investment in time and skills
Removing Legacy Tests
• Getting rid of tests that are no longer necessary
• Problems
• Are they now regression tests?
• Are they really not necessary?
• How do we determine that?
Time-Box Testing
• Strictly limit testing times
• Testing work is a subset of needed work
• Only addresses high-priority debt
Managing and Triaging Testing Debt
• Use planning poker on debt
• Provide a team-based assessment on the cost of addressing it
• Also use planning poker on importance
• How important is it to recover this debt?
• Scheduling a sprint to pay off debt
• These are often called “hardening sprints”
Summary
• Teams have difficult decisions to make about testing debt
• They can ignore it at their peril
• Or
• They can acknowledge it
• Track and measure it
• Decide whether or not to do something about it
Thank you
• Peter Varhol
• peter@petervarhol.com
• @pvarhol
References
• http://it-cisq.org/standards/technical-debt/

Mais conteúdo relacionado

Mais procurados

Code Yellow: Helping operations top-heavy teams the smart way
Code Yellow: Helping operations top-heavy teams the smart wayCode Yellow: Helping operations top-heavy teams the smart way
Code Yellow: Helping operations top-heavy teams the smart wayMichael Kehoe
 
Dare to Explore: Discover ET!
Dare to Explore: Discover ET!Dare to Explore: Discover ET!
Dare to Explore: Discover ET!Raj Indugula
 
Software Dev Process In A Nutshell
Software Dev Process In A NutshellSoftware Dev Process In A Nutshell
Software Dev Process In A NutshellOcean Dong
 
Way to Agile - USTH
Way to Agile - USTHWay to Agile - USTH
Way to Agile - USTHHien Nguyen
 
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...Ho Chi Minh City Software Testing Club
 
Webinar agile-spring-maximum-roi
Webinar agile-spring-maximum-roiWebinar agile-spring-maximum-roi
Webinar agile-spring-maximum-roiCygnet Infotech
 
Scrum_BLR 10th meet up 13 sept-2014 - How to Measure Efficiency or Productivi...
Scrum_BLR 10th meet up 13 sept-2014 - How to Measure Efficiency or Productivi...Scrum_BLR 10th meet up 13 sept-2014 - How to Measure Efficiency or Productivi...
Scrum_BLR 10th meet up 13 sept-2014 - How to Measure Efficiency or Productivi...Scrum Bangalore
 
DevOps By The Numbers
DevOps By The NumbersDevOps By The Numbers
DevOps By The NumbersXebiaLabs
 
Estimation
EstimationEstimation
EstimationDev9Com
 
Spec By Example or How to teach people talk to each other
Spec By Example or How to teach people talk to each otherSpec By Example or How to teach people talk to each other
Spec By Example or How to teach people talk to each otherAndrey Rebrov
 
Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012Dror Helper
 
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
 
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019Peter Gfader
 
Top 10 Agile Metrics
Top 10 Agile MetricsTop 10 Agile Metrics
Top 10 Agile MetricsXBOSoft
 
There and back again, Our journey with QA Reports and metrics
There and back again, Our journey with QA Reports and metricsThere and back again, Our journey with QA Reports and metrics
There and back again, Our journey with QA Reports and metricsZbyszek Mockun
 
State of continuous delivery in 2015 - Minsk 15-5-2015
State of continuous delivery in 2015 - Minsk 15-5-2015State of continuous delivery in 2015 - Minsk 15-5-2015
State of continuous delivery in 2015 - Minsk 15-5-2015Pavel Chunyayev
 
Estimating and planning Agile projects
Estimating and planning Agile projectsEstimating and planning Agile projects
Estimating and planning Agile projectsMurray Robinson
 

Mais procurados (20)

Summer Scrum Public
Summer Scrum PublicSummer Scrum Public
Summer Scrum Public
 
Code Yellow: Helping operations top-heavy teams the smart way
Code Yellow: Helping operations top-heavy teams the smart wayCode Yellow: Helping operations top-heavy teams the smart way
Code Yellow: Helping operations top-heavy teams the smart way
 
Dare to Explore: Discover ET!
Dare to Explore: Discover ET!Dare to Explore: Discover ET!
Dare to Explore: Discover ET!
 
Software Dev Process In A Nutshell
Software Dev Process In A NutshellSoftware Dev Process In A Nutshell
Software Dev Process In A Nutshell
 
Way to Agile - USTH
Way to Agile - USTHWay to Agile - USTH
Way to Agile - USTH
 
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...
The New Agile Testing Quadrants: Bringing Skilled Testers and Developers Toge...
 
Webinar agile-spring-maximum-roi
Webinar agile-spring-maximum-roiWebinar agile-spring-maximum-roi
Webinar agile-spring-maximum-roi
 
Scrum_BLR 10th meet up 13 sept-2014 - How to Measure Efficiency or Productivi...
Scrum_BLR 10th meet up 13 sept-2014 - How to Measure Efficiency or Productivi...Scrum_BLR 10th meet up 13 sept-2014 - How to Measure Efficiency or Productivi...
Scrum_BLR 10th meet up 13 sept-2014 - How to Measure Efficiency or Productivi...
 
DevOps By The Numbers
DevOps By The NumbersDevOps By The Numbers
DevOps By The Numbers
 
Estimation
EstimationEstimation
Estimation
 
Spec By Example or How to teach people talk to each other
Spec By Example or How to teach people talk to each otherSpec By Example or How to teach people talk to each other
Spec By Example or How to teach people talk to each other
 
Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012
 
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...
 
Agile testing
Agile testingAgile testing
Agile testing
 
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019
You Can't Be Agile If Your Testing Practices Suck - Vilnius October 2019
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Development
 
Top 10 Agile Metrics
Top 10 Agile MetricsTop 10 Agile Metrics
Top 10 Agile Metrics
 
There and back again, Our journey with QA Reports and metrics
There and back again, Our journey with QA Reports and metricsThere and back again, Our journey with QA Reports and metrics
There and back again, Our journey with QA Reports and metrics
 
State of continuous delivery in 2015 - Minsk 15-5-2015
State of continuous delivery in 2015 - Minsk 15-5-2015State of continuous delivery in 2015 - Minsk 15-5-2015
State of continuous delivery in 2015 - Minsk 15-5-2015
 
Estimating and planning Agile projects
Estimating and planning Agile projectsEstimating and planning Agile projects
Estimating and planning Agile projects
 

Semelhante a Identifying and measuring testing debt

Introduction to test for non testers
Introduction to test for non testersIntroduction to test for non testers
Introduction to test for non testersMattias Lönnqvist
 
Scoping and Estimating WordPress Projects as an Agency
Scoping and Estimating WordPress Projects as an AgencyScoping and Estimating WordPress Projects as an Agency
Scoping and Estimating WordPress Projects as an AgencyJohn Giaconia
 
Scoping and Estimating WordPress Projects as an Agency
Scoping and Estimating WordPress Projects as an AgencyScoping and Estimating WordPress Projects as an Agency
Scoping and Estimating WordPress Projects as an AgencyKara Hansen
 
Lean Six Sigma-An Execution Engine
Lean Six Sigma-An Execution EngineLean Six Sigma-An Execution Engine
Lean Six Sigma-An Execution EngineMark Cichonski
 
Is Test Planning a lost art in Agile? by Michelle Williams
Is Test Planning a lost art in Agile? by Michelle WilliamsIs Test Planning a lost art in Agile? by Michelle Williams
Is Test Planning a lost art in Agile? by Michelle WilliamsQA or the Highway
 
Kontextdrivna krav - effektiv kravställning för din organisation
Kontextdrivna krav - effektiv kravställning för din organisationKontextdrivna krav - effektiv kravställning för din organisation
Kontextdrivna krav - effektiv kravställning för din organisationADDQ
 
Rescuing and Reviving Troubled Software Projects
Rescuing and Reviving Troubled Software ProjectsRescuing and Reviving Troubled Software Projects
Rescuing and Reviving Troubled Software ProjectsBarry Curry
 
Agile Implementation
Agile ImplementationAgile Implementation
Agile ImplementationOlga Sa
 
IAM - One Year Later
IAM - One Year LaterIAM - One Year Later
IAM - One Year LaterDave Shields
 
Applying TQM and the Toyota Production System in Development of Software Arti...
Applying TQM and the Toyota Production System in Development of Software Arti...Applying TQM and the Toyota Production System in Development of Software Arti...
Applying TQM and the Toyota Production System in Development of Software Arti...Dave Litwiller
 
software testing metrics do's - don'ts-XBOSoft-QAI Webinar
software testing metrics do's - don'ts-XBOSoft-QAI Webinarsoftware testing metrics do's - don'ts-XBOSoft-QAI Webinar
software testing metrics do's - don'ts-XBOSoft-QAI WebinarXBOSoft
 
Software Quality Metrics Do's and Don'ts - XBOSoft-QAI Webinar
Software Quality Metrics Do's and Don'ts - XBOSoft-QAI WebinarSoftware Quality Metrics Do's and Don'ts - XBOSoft-QAI Webinar
Software Quality Metrics Do's and Don'ts - XBOSoft-QAI WebinarXBOSoft
 
Estimates or #NoEstimates by Enes Pelko
Estimates or #NoEstimates by Enes PelkoEstimates or #NoEstimates by Enes Pelko
Estimates or #NoEstimates by Enes PelkoBosnia Agile
 
Project management ,By :Loay Qabaha -An-Najah National University -Nublus_pal...
Project management ,By :Loay Qabaha -An-Najah National University -Nublus_pal...Project management ,By :Loay Qabaha -An-Najah National University -Nublus_pal...
Project management ,By :Loay Qabaha -An-Najah National University -Nublus_pal...Loay Qabaha
 
Are you failing at being agile? #digitallabin
Are you failing at being agile? #digitallabinAre you failing at being agile? #digitallabin
Are you failing at being agile? #digitallabinAntonio Peric-Mazar
 
Building a testing team
Building a testing teamBuilding a testing team
Building a testing teamSQALab
 

Semelhante a Identifying and measuring testing debt (20)

Introduction to test for non testers
Introduction to test for non testersIntroduction to test for non testers
Introduction to test for non testers
 
UNIT IV.ppt
UNIT IV.pptUNIT IV.ppt
UNIT IV.ppt
 
Scoping and Estimating WordPress Projects as an Agency
Scoping and Estimating WordPress Projects as an AgencyScoping and Estimating WordPress Projects as an Agency
Scoping and Estimating WordPress Projects as an Agency
 
Scoping and Estimating WordPress Projects as an Agency
Scoping and Estimating WordPress Projects as an AgencyScoping and Estimating WordPress Projects as an Agency
Scoping and Estimating WordPress Projects as an Agency
 
Lazar Milovic - No estimates
Lazar Milovic - No estimatesLazar Milovic - No estimates
Lazar Milovic - No estimates
 
Lean Six Sigma-An Execution Engine
Lean Six Sigma-An Execution EngineLean Six Sigma-An Execution Engine
Lean Six Sigma-An Execution Engine
 
Is Test Planning a lost art in Agile? by Michelle Williams
Is Test Planning a lost art in Agile? by Michelle WilliamsIs Test Planning a lost art in Agile? by Michelle Williams
Is Test Planning a lost art in Agile? by Michelle Williams
 
Kontextdrivna krav - effektiv kravställning för din organisation
Kontextdrivna krav - effektiv kravställning för din organisationKontextdrivna krav - effektiv kravställning för din organisation
Kontextdrivna krav - effektiv kravställning för din organisation
 
Rescuing and Reviving Troubled Software Projects
Rescuing and Reviving Troubled Software ProjectsRescuing and Reviving Troubled Software Projects
Rescuing and Reviving Troubled Software Projects
 
Agile Implementation
Agile ImplementationAgile Implementation
Agile Implementation
 
Fundamentals of Project Management
Fundamentals of Project ManagementFundamentals of Project Management
Fundamentals of Project Management
 
IAM - One Year Later
IAM - One Year LaterIAM - One Year Later
IAM - One Year Later
 
Applying TQM and the Toyota Production System in Development of Software Arti...
Applying TQM and the Toyota Production System in Development of Software Arti...Applying TQM and the Toyota Production System in Development of Software Arti...
Applying TQM and the Toyota Production System in Development of Software Arti...
 
software testing metrics do's - don'ts-XBOSoft-QAI Webinar
software testing metrics do's - don'ts-XBOSoft-QAI Webinarsoftware testing metrics do's - don'ts-XBOSoft-QAI Webinar
software testing metrics do's - don'ts-XBOSoft-QAI Webinar
 
Software Quality Metrics Do's and Don'ts - XBOSoft-QAI Webinar
Software Quality Metrics Do's and Don'ts - XBOSoft-QAI WebinarSoftware Quality Metrics Do's and Don'ts - XBOSoft-QAI Webinar
Software Quality Metrics Do's and Don'ts - XBOSoft-QAI Webinar
 
Estimates or #NoEstimates by Enes Pelko
Estimates or #NoEstimates by Enes PelkoEstimates or #NoEstimates by Enes Pelko
Estimates or #NoEstimates by Enes Pelko
 
QA Best Practices in Agile World_new
QA Best Practices in Agile World_newQA Best Practices in Agile World_new
QA Best Practices in Agile World_new
 
Project management ,By :Loay Qabaha -An-Najah National University -Nublus_pal...
Project management ,By :Loay Qabaha -An-Najah National University -Nublus_pal...Project management ,By :Loay Qabaha -An-Najah National University -Nublus_pal...
Project management ,By :Loay Qabaha -An-Najah National University -Nublus_pal...
 
Are you failing at being agile? #digitallabin
Are you failing at being agile? #digitallabinAre you failing at being agile? #digitallabin
Are you failing at being agile? #digitallabin
 
Building a testing team
Building a testing teamBuilding a testing team
Building a testing team
 

Mais de Peter Varhol

Not fair! testing AI bias and organizational values
Not fair! testing AI bias and organizational valuesNot fair! testing AI bias and organizational values
Not fair! testing AI bias and organizational valuesPeter Varhol
 
DevOps and the Impostor Syndrome
DevOps and the Impostor SyndromeDevOps and the Impostor Syndrome
DevOps and the Impostor SyndromePeter Varhol
 
Not fair! testing ai bias and organizational values
Not fair! testing ai bias and organizational valuesNot fair! testing ai bias and organizational values
Not fair! testing ai bias and organizational valuesPeter Varhol
 
162 the technologist of the future
162   the technologist of the future162   the technologist of the future
162 the technologist of the futurePeter Varhol
 
Correlation does not mean causation
Correlation does not mean causationCorrelation does not mean causation
Correlation does not mean causationPeter Varhol
 
Digital transformation through devops dod indianapolis
Digital transformation through devops dod indianapolisDigital transformation through devops dod indianapolis
Digital transformation through devops dod indianapolisPeter Varhol
 
Testing for cognitive bias in ai systems
Testing for cognitive bias in ai systemsTesting for cognitive bias in ai systems
Testing for cognitive bias in ai systemsPeter Varhol
 
Making disaster routine
Making disaster routineMaking disaster routine
Making disaster routinePeter Varhol
 
What Aircrews Can Teach Testing Teams
What Aircrews Can Teach Testing TeamsWhat Aircrews Can Teach Testing Teams
What Aircrews Can Teach Testing TeamsPeter Varhol
 
What aircrews can teach devops teams ignite
What aircrews can teach devops teams igniteWhat aircrews can teach devops teams ignite
What aircrews can teach devops teams ignitePeter Varhol
 
Talking to people lightning
Talking to people lightningTalking to people lightning
Talking to people lightningPeter Varhol
 
Using Machine Learning to Optimize DevOps Practices
Using Machine Learning to Optimize DevOps PracticesUsing Machine Learning to Optimize DevOps Practices
Using Machine Learning to Optimize DevOps PracticesPeter Varhol
 
Varhol oracle database_firewall_oct2011
Varhol oracle database_firewall_oct2011Varhol oracle database_firewall_oct2011
Varhol oracle database_firewall_oct2011Peter Varhol
 
Qa test managed_code_varhol
Qa test managed_code_varholQa test managed_code_varhol
Qa test managed_code_varholPeter Varhol
 
Testing a movingtarget_quest_dynatrace
Testing a movingtarget_quest_dynatraceTesting a movingtarget_quest_dynatrace
Testing a movingtarget_quest_dynatracePeter Varhol
 
Talking to people: the forgotten DevOps tool
Talking to people: the forgotten DevOps toolTalking to people: the forgotten DevOps tool
Talking to people: the forgotten DevOps toolPeter Varhol
 
How do we fix testing
How do we fix testingHow do we fix testing
How do we fix testingPeter Varhol
 
Moneyball peter varhol_starwest2012
Moneyball peter varhol_starwest2012Moneyball peter varhol_starwest2012
Moneyball peter varhol_starwest2012Peter Varhol
 

Mais de Peter Varhol (18)

Not fair! testing AI bias and organizational values
Not fair! testing AI bias and organizational valuesNot fair! testing AI bias and organizational values
Not fair! testing AI bias and organizational values
 
DevOps and the Impostor Syndrome
DevOps and the Impostor SyndromeDevOps and the Impostor Syndrome
DevOps and the Impostor Syndrome
 
Not fair! testing ai bias and organizational values
Not fair! testing ai bias and organizational valuesNot fair! testing ai bias and organizational values
Not fair! testing ai bias and organizational values
 
162 the technologist of the future
162   the technologist of the future162   the technologist of the future
162 the technologist of the future
 
Correlation does not mean causation
Correlation does not mean causationCorrelation does not mean causation
Correlation does not mean causation
 
Digital transformation through devops dod indianapolis
Digital transformation through devops dod indianapolisDigital transformation through devops dod indianapolis
Digital transformation through devops dod indianapolis
 
Testing for cognitive bias in ai systems
Testing for cognitive bias in ai systemsTesting for cognitive bias in ai systems
Testing for cognitive bias in ai systems
 
Making disaster routine
Making disaster routineMaking disaster routine
Making disaster routine
 
What Aircrews Can Teach Testing Teams
What Aircrews Can Teach Testing TeamsWhat Aircrews Can Teach Testing Teams
What Aircrews Can Teach Testing Teams
 
What aircrews can teach devops teams ignite
What aircrews can teach devops teams igniteWhat aircrews can teach devops teams ignite
What aircrews can teach devops teams ignite
 
Talking to people lightning
Talking to people lightningTalking to people lightning
Talking to people lightning
 
Using Machine Learning to Optimize DevOps Practices
Using Machine Learning to Optimize DevOps PracticesUsing Machine Learning to Optimize DevOps Practices
Using Machine Learning to Optimize DevOps Practices
 
Varhol oracle database_firewall_oct2011
Varhol oracle database_firewall_oct2011Varhol oracle database_firewall_oct2011
Varhol oracle database_firewall_oct2011
 
Qa test managed_code_varhol
Qa test managed_code_varholQa test managed_code_varhol
Qa test managed_code_varhol
 
Testing a movingtarget_quest_dynatrace
Testing a movingtarget_quest_dynatraceTesting a movingtarget_quest_dynatrace
Testing a movingtarget_quest_dynatrace
 
Talking to people: the forgotten DevOps tool
Talking to people: the forgotten DevOps toolTalking to people: the forgotten DevOps tool
Talking to people: the forgotten DevOps tool
 
How do we fix testing
How do we fix testingHow do we fix testing
How do we fix testing
 
Moneyball peter varhol_starwest2012
Moneyball peter varhol_starwest2012Moneyball peter varhol_starwest2012
Moneyball peter varhol_starwest2012
 

Último

Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
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
 
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
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
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
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
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
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
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
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptrcbcrtm
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
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
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 

Último (20)

Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
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
 
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
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
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
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
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)
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
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
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.ppt
 
Odoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting ServiceOdoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting Service
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
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
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 

Identifying and measuring testing debt

  • 2. About me • International speaker and writer • Graduate degrees in Math, CS, Psychology • Technology communicator • Former university professor, tech journalist • Cat owner and distance runner • peter@petervarhol.com
  • 3. Agenda • What is testing debt? • How do we accumulate testing debt? • Identifying and measuring testing debt • Ways to remediate testing debt • Conclusions
  • 4. Let’s Start With Technical Debt • We write code • It has to change later • Don’t fully understand the problem/feature/requirement • Have a need to deliver quickly • Building a prototype • It is kludgy/performs slowly/doesn’t handle edge cases • It has to be fixed at some point to be useful • That is technical debt
  • 5. What is Testing Debt? • In an agile project • Testing often works at a different cadence than development • When testing is deferred • Dev used the entire sprint • Not enough time or no resources • No tests available • Tests blocked by other issues • That is testing debt
  • 6. What is Testing Debt? • The effort needed to find and fix the issues that remain in the code when an application is released • This is not the same as a groomed bug list • The difference (in bugs or other issues) between what is expected and what is delivered • If we don’t identify and measure testing debt: • We can’t assess our quality • We can’t address the debt
  • 7. Many Things Can Cause Testing Debt • Poor project definition • Incomplete preparation • Lack of domain expertise • Poor test case definition • Lack of time • Inability to automate
  • 8. Development Can Also Cause Testing Debt • End of sprint incomplete work • Code changes and refactorings • Refactorings are people too • Incomplete unit tests • Poor communication on development work
  • 9. Testing Debt is Composed Of the Need For • New and redesigned tests • Retesting • Regression testing • Integration testing • System-level test • Bug fixes and verification
  • 10. The Problem With Testing Debt • Testing debt means something has to be paid back • Additional testing effort • Product quality • With interest • The longer you wait, the longer it takes • And the more the interest accrues • Are these correct assumptions?
  • 11. Why Do We Have to Pay Back Debt? • Loss of quality • Uncertain of fitness for purpose • Lacking confidence in critical features • Hasn’t kept pace with business requirements
  • 12. How Do We Know We Have Testing Debt? • Unfinished testing tasks • Uncertainty on the results of testing • Lack of a clear picture of the state of quality
  • 13. Identifying Testing Debt • Indicators • Tests are blocked • This is indicative of technical debt in general • The sprint ends before testing does • Test results are ambiguous • Or give incorrect results • Tracing these back to debt • In an ideal world, how long will it take?
  • 14. Measuring Testing Debt • It’s all about the metrics • But what should we be measuring? • Time • Skills required • Opportunity lost
  • 15. Measuring Testing Debt • Time • How much time to complete known testing? • Based on averages from previous tests • Plus the need to fix defects identified • Is known testing all there is? • Do we need to figure out what we don’t know?
  • 16. Measuring Testing Debt • Skills required • Some skills cost more than others • Some skills are more difficult to acquire • Skills may also have to be scheduled in • Cost and time are involved, but are covered above • Instead, exactly what skills are needed • Automation • Database • Scripting • Machine learning • Reporting
  • 17. Measuring Testing Debt • Opportunity lost • Paying back debt means other activities can’t be done • More features • Time to market • Testing debt also requires coordination • Development • Documentation • Product owner/users
  • 18. What is the Interest on Testing Debt? • What will you have to pay? • Studies say each subsequent adds 10 percent interest • Per sprint • Testing debt interest can add up quickly • When will you have to pay it?
  • 19. Solutions to Testing Debt • Avoidance • Control scope • Reduce testing times • Removing legacy tests • Time box testing
  • 20. Avoidance • Make sure testing tasks are complete when scheduled • Make sure the solution is fully understood • Problems with that • Not practical • Not enough time or resources • May require rework
  • 21. Control Scope • Don’t let project goals/features change after initial requirements • Problems with that • Agility means adapting • Projects change
  • 22. Reduce Testing Times • Spend less time testing • Problems with that • How do we reduce testing times? • Without affecting quality? • Automation can help • But it still requires an investment in time and skills
  • 23. Removing Legacy Tests • Getting rid of tests that are no longer necessary • Problems • Are they now regression tests? • Are they really not necessary? • How do we determine that?
  • 24. Time-Box Testing • Strictly limit testing times • Testing work is a subset of needed work • Only addresses high-priority debt
  • 25. Managing and Triaging Testing Debt • Use planning poker on debt • Provide a team-based assessment on the cost of addressing it • Also use planning poker on importance • How important is it to recover this debt? • Scheduling a sprint to pay off debt • These are often called “hardening sprints”
  • 26. Summary • Teams have difficult decisions to make about testing debt • They can ignore it at their peril • Or • They can acknowledge it • Track and measure it • Decide whether or not to do something about it
  • 27. Thank you • Peter Varhol • peter@petervarhol.com • @pvarhol