SlideShare a Scribd company logo
1 of 31
Download to read offline
What is quality, and how
do we build it in?
@maryamumar | @jezhumble | #DeliveryConf
Agenda
● Introduce Thought Machine
● How to get started with improving quality
● Selecting metrics
● Evolving metrics based on what we learn
@jezhumble
@maryamumar
TLDR
● Quality is subjective - what to focus on depends on many factors
● Start by creating a vision, selecting some metrics, and measuring
● What you measure will evolve, and will determine what teams work on
@jezhumble
@maryamumar
Please fix
Quality!
Clients are unhappy
Issues are found late
Releases are delayed
Team feels stressed
Common mistakes we have observed
● Stop work and build a comprehensive automated test suite
● Add new process and approvals to try and prevent escaped defects
● Create a new “quality” function which sits downstream of development
● Underinvestment in infrastructure and tools
@jezhumble
@maryamumar
Create a Plan
But where do you start?*
*Leading Quality - Ronald Cummings-John, Owais Peer
Vision Statement
As an <engineering team/customer>
When <there are any changes to production code>
Then <every merge to the codebase is releasable>
And <there are no known regressions in the system>
@maryamumar
Assuring Quality enables teams to drive
for customer satisfaction at a sustainable
pace.
Who are your Stakeholders?
● CEO/CTO
● Tech leads
● Testing team
● Incident Management
● Release Management
Questions to ask:
● How do you know quality was bad?
● Escaped defects?
● What’s your code coverage like?
● Do you have the right processes in place?
@maryamumar
Software Delivery Performance
@jezhumble https://cloud.google.com/devops/state-of-devops/
How to get better
https://bit.ly/dora-bfd@jezhumble
Areas to Improve
Releases Product Quality Process Quality
@maryamumar
Releases
- Create visibility landscape for releases
- Monitor issues found post-release vs pre-release
- How good is your regression cycle?
- Release notes
- Changes
- Known issues; when to expect fixes
- How easy is it to create deployables?
- How quickly can you deploy?
@jezhumble
@maryamumar
Product Quality
@jezhumble
@maryamumar
MTTG Build FailuresBuild Time Deploy Time
Average Time
in Status
PR Review PR commit rate
per Sprint
%age of Flaky
Tests
Ticket
Fluctuation
from QA to Dev
Test Coverage
Product Quality (contd.)
@jezhumble
@maryamumar
Defects found
in Sprint vs
Escaped
Defects
Team FeedbackDefects found
via Automation
via Exploratory
testing per
Feature
Bug resolution
time per
Severity level
Time from check-in to deployed in test environment
SATs vs Defects per Team
High trust culture
Westrum, “A Typology of Organizational Cultures” | http://bmj.co/1BRGh5q
how organizations process information
Psychological safety
“Wherever there is fear, you will get wrong figures”
— W Edwards Deming
@jezhumble
@maryamumar
https://rework.withgoogle.com/blog/five-keys-to-a-successful-google-team/
Culture of psychological safety
● Predicts software delivery performance
and organizational performance
● Implement by adopting continuous
delivery and lean product management
practices
@jezhumble
2018 State of DevOps Report: cloud.google.com/devops
SDO Performance
Trust
Software
Delivery
Performance
Availability
Organizational
Performance
Voice
Westrum organizational culture
Autonomy
Retrospectives
Climate for Learning
@jezhumble
How to make metrics safe
● Teams involved in creating vision
● Consult with teams when deciding what to measure
● Testing team makes quality visible
● Let teams set their own targets
● Regular retrospectives on what is being measured
@jezhumble
Conclusion
● Quality is subjective - what to focus on depends on many factors
● Start by creating a vision, selecting some metrics, and measuring
● What you measure will evolve, and will determine what teams work on
© 2020 Google LLC & Thought Machine Group Ltd
Parking lot
Continuous testing
● Continuously reviewing and improving test suites to better find defects and keep complexity and cost
under control
● Allowing testers to work alongside developers throughout the software development and delivery
process
● Performing manual test activities such as exploratory testing, usability testing, and acceptance testing
throughout the delivery process
● Having developers practice test-driven development by writing unit tests before writing production
code for all changes to the codebase
● Being able to get feedback from automated tests in less than ten minutes both on local workstations
and from a CI server
2018 State of DevOps Report | cloud.google.com/devops
Continuous delivery
The ability to get changes—features,
configuration changes, bug fixes,
experiments—into production or into the hands of
users safely and quickly in a sustainable way.
2018 State of DevOps Report | cloud.google.com/devops
Technical debt quadrant
https://martinfowler.com/bliki/TechnicalDebtQuadrant.html

More Related Content

What's hot

Continuous Quality: What DevOps Means for QA
Continuous Quality: What DevOps Means for QAContinuous Quality: What DevOps Means for QA
Continuous Quality: What DevOps Means for QA
Jeff Sussna
 
Improving the Quality of Incoming Code
Improving the Quality of Incoming CodeImproving the Quality of Incoming Code
Improving the Quality of Incoming Code
Naresh Jain
 

What's hot (20)

Continuous Everything
Continuous EverythingContinuous Everything
Continuous Everything
 
The Three Pillars Approach to an Agile Testing Strategy
The Three Pillars Approach to an Agile Testing StrategyThe Three Pillars Approach to an Agile Testing Strategy
The Three Pillars Approach to an Agile Testing Strategy
 
Continuous Quality: What DevOps Means for QA
Continuous Quality: What DevOps Means for QAContinuous Quality: What DevOps Means for QA
Continuous Quality: What DevOps Means for QA
 
An introduction to DevOps
An introduction to DevOpsAn introduction to DevOps
An introduction to DevOps
 
ClickSoftware Agile Tranistion by Meny Duek
ClickSoftware Agile Tranistion by Meny DuekClickSoftware Agile Tranistion by Meny Duek
ClickSoftware Agile Tranistion by Meny Duek
 
Lemi Orhan Ergin - Code Your Agility: Tips for Boosting Technical Agility in ...
Lemi Orhan Ergin - Code Your Agility: Tips for Boosting Technical Agility in ...Lemi Orhan Ergin - Code Your Agility: Tips for Boosting Technical Agility in ...
Lemi Orhan Ergin - Code Your Agility: Tips for Boosting Technical Agility in ...
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CD
 
Starting and Scaling DevOps in the Enterprise
Starting and Scaling DevOps in the EnterpriseStarting and Scaling DevOps in the Enterprise
Starting and Scaling DevOps in the Enterprise
 
Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019
Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019
Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019
 
Our Journey: from Waterfall to Agile to DevOps
Our Journey: from Waterfall to Agile to DevOpsOur Journey: from Waterfall to Agile to DevOps
Our Journey: from Waterfall to Agile to DevOps
 
QA Best Practices in Digital Marketing [whitepaper]
QA Best Practices in Digital Marketing [whitepaper]QA Best Practices in Digital Marketing [whitepaper]
QA Best Practices in Digital Marketing [whitepaper]
 
Improving the Quality of Incoming Code
Improving the Quality of Incoming CodeImproving the Quality of Incoming Code
Improving the Quality of Incoming Code
 
Augury's Journey Towards CD by Assaf Mizrachi
Augury's Journey Towards CD by Assaf Mizrachi Augury's Journey Towards CD by Assaf Mizrachi
Augury's Journey Towards CD by Assaf Mizrachi
 
Taking Your Product Development to the Next Level with Full Stack
Taking Your Product Development to the Next Level with Full StackTaking Your Product Development to the Next Level with Full Stack
Taking Your Product Development to the Next Level with Full Stack
 
Quality Assurance to Test Engineering – Insights From our Journey by Oksana S...
Quality Assurance to Test Engineering – Insights From our Journey by Oksana S...Quality Assurance to Test Engineering – Insights From our Journey by Oksana S...
Quality Assurance to Test Engineering – Insights From our Journey by Oksana S...
 
from 0 to continuous delivery in 30 minutes
from 0 to continuous delivery in 30 minutesfrom 0 to continuous delivery in 30 minutes
from 0 to continuous delivery in 30 minutes
 
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
 
The digital shakeout in quality assurance and testing by Shiva Agolla and Sat...
The digital shakeout in quality assurance and testing by Shiva Agolla and Sat...The digital shakeout in quality assurance and testing by Shiva Agolla and Sat...
The digital shakeout in quality assurance and testing by Shiva Agolla and Sat...
 
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
DOES15 - Sherry Chang - Intel’s Journey to Large Scale DevOps Transformation
 
Yuriy Chapran: Cyber Shield - від запуску до перших клієнтів
Yuriy Chapran: Cyber Shield - від запуску до перших клієнтівYuriy Chapran: Cyber Shield - від запуску до перших клієнтів
Yuriy Chapran: Cyber Shield - від запуску до перших клієнтів
 

Similar to What is quality, and how do we build it in

Deepti Debnath_Citi Corp-2015
Deepti Debnath_Citi Corp-2015 Deepti Debnath_Citi Corp-2015
Deepti Debnath_Citi Corp-2015
deepti Debnath
 

Similar to What is quality, and how do we build it in (20)

Quality Assurance vs. Quality Control, Future of Software Quality
Quality Assurance vs. Quality Control, Future of Software Quality Quality Assurance vs. Quality Control, Future of Software Quality
Quality Assurance vs. Quality Control, Future of Software Quality
 
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
 
How to build confidence in your release cycle
How to build confidence in your release cycleHow to build confidence in your release cycle
How to build confidence in your release cycle
 
Quality Testing and Agile at Salesforce
Quality Testing and Agile at Salesforce Quality Testing and Agile at Salesforce
Quality Testing and Agile at Salesforce
 
Top 10 Agile Metrics
Top 10 Agile MetricsTop 10 Agile Metrics
Top 10 Agile Metrics
 
Rhonda Software Quality Assurance Services
Rhonda Software Quality Assurance ServicesRhonda Software Quality Assurance Services
Rhonda Software Quality Assurance Services
 
QA Role in Agile Teams
QA Role in Agile Teams QA Role in Agile Teams
QA Role in Agile Teams
 
Deepti Debnath_Citi Corp-2015
Deepti Debnath_Citi Corp-2015 Deepti Debnath_Citi Corp-2015
Deepti Debnath_Citi Corp-2015
 
Process Guidelines V2
Process Guidelines V2Process Guidelines V2
Process Guidelines V2
 
QA Role In Agile Teams - by Michael Hall
QA Role In Agile Teams - by Michael HallQA Role In Agile Teams - by Michael Hall
QA Role In Agile Teams - by Michael Hall
 
Agile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated TestingAgile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated Testing
 
QA in an agile world Tom Churchwell
QA in an agile world Tom ChurchwellQA in an agile world Tom Churchwell
QA in an agile world Tom Churchwell
 
Slow Down to Speed Up - Leveraging Quality to Enable Productivity and Speed w...
Slow Down to Speed Up - Leveraging Quality to Enable Productivity and Speed w...Slow Down to Speed Up - Leveraging Quality to Enable Productivity and Speed w...
Slow Down to Speed Up - Leveraging Quality to Enable Productivity and Speed w...
 
Best Practices for a Repeatable Shift-Left Commitment
Best Practices for a Repeatable Shift-Left CommitmentBest Practices for a Repeatable Shift-Left Commitment
Best Practices for a Repeatable Shift-Left Commitment
 
Testing in a continuous delivery environment
Testing in a continuous delivery environmentTesting in a continuous delivery environment
Testing in a continuous delivery environment
 
Agile Simplified
Agile SimplifiedAgile Simplified
Agile Simplified
 
Jeff Sing - Quarterly Service Delivery Reviews.pdf
Jeff Sing - Quarterly Service Delivery Reviews.pdfJeff Sing - Quarterly Service Delivery Reviews.pdf
Jeff Sing - Quarterly Service Delivery Reviews.pdf
 
stfbegn.ppt
stfbegn.pptstfbegn.ppt
stfbegn.ppt
 
Software testing for beginners
Software testing for beginners Software testing for beginners
Software testing for beginners
 
Applying Quality to the Project and Product Management Process
Applying Quality to the Project and Product Management ProcessApplying Quality to the Project and Product Management Process
Applying Quality to the Project and Product Management Process
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 

What is quality, and how do we build it in

  • 1. What is quality, and how do we build it in? @maryamumar | @jezhumble | #DeliveryConf
  • 2. Agenda ● Introduce Thought Machine ● How to get started with improving quality ● Selecting metrics ● Evolving metrics based on what we learn @jezhumble @maryamumar
  • 3. TLDR ● Quality is subjective - what to focus on depends on many factors ● Start by creating a vision, selecting some metrics, and measuring ● What you measure will evolve, and will determine what teams work on @jezhumble @maryamumar
  • 4. Please fix Quality! Clients are unhappy Issues are found late Releases are delayed Team feels stressed
  • 5.
  • 6. Common mistakes we have observed ● Stop work and build a comprehensive automated test suite ● Add new process and approvals to try and prevent escaped defects ● Create a new “quality” function which sits downstream of development ● Underinvestment in infrastructure and tools @jezhumble @maryamumar
  • 7. Create a Plan But where do you start?* *Leading Quality - Ronald Cummings-John, Owais Peer
  • 8. Vision Statement As an <engineering team/customer> When <there are any changes to production code> Then <every merge to the codebase is releasable> And <there are no known regressions in the system> @maryamumar
  • 9. Assuring Quality enables teams to drive for customer satisfaction at a sustainable pace.
  • 10. Who are your Stakeholders? ● CEO/CTO ● Tech leads ● Testing team ● Incident Management ● Release Management Questions to ask: ● How do you know quality was bad? ● Escaped defects? ● What’s your code coverage like? ● Do you have the right processes in place? @maryamumar
  • 11. Software Delivery Performance @jezhumble https://cloud.google.com/devops/state-of-devops/
  • 12. How to get better https://bit.ly/dora-bfd@jezhumble
  • 13. Areas to Improve Releases Product Quality Process Quality @maryamumar
  • 14. Releases - Create visibility landscape for releases - Monitor issues found post-release vs pre-release - How good is your regression cycle? - Release notes - Changes - Known issues; when to expect fixes - How easy is it to create deployables? - How quickly can you deploy? @jezhumble @maryamumar
  • 15.
  • 16. Product Quality @jezhumble @maryamumar MTTG Build FailuresBuild Time Deploy Time Average Time in Status PR Review PR commit rate per Sprint %age of Flaky Tests Ticket Fluctuation from QA to Dev Test Coverage
  • 17. Product Quality (contd.) @jezhumble @maryamumar Defects found in Sprint vs Escaped Defects Team FeedbackDefects found via Automation via Exploratory testing per Feature Bug resolution time per Severity level
  • 18.
  • 19.
  • 20. Time from check-in to deployed in test environment
  • 21. SATs vs Defects per Team
  • 22. High trust culture Westrum, “A Typology of Organizational Cultures” | http://bmj.co/1BRGh5q how organizations process information
  • 23. Psychological safety “Wherever there is fear, you will get wrong figures” — W Edwards Deming @jezhumble @maryamumar
  • 24. https://rework.withgoogle.com/blog/five-keys-to-a-successful-google-team/ Culture of psychological safety ● Predicts software delivery performance and organizational performance ● Implement by adopting continuous delivery and lean product management practices @jezhumble
  • 25. 2018 State of DevOps Report: cloud.google.com/devops SDO Performance Trust Software Delivery Performance Availability Organizational Performance Voice Westrum organizational culture Autonomy Retrospectives Climate for Learning @jezhumble
  • 26. How to make metrics safe ● Teams involved in creating vision ● Consult with teams when deciding what to measure ● Testing team makes quality visible ● Let teams set their own targets ● Regular retrospectives on what is being measured @jezhumble
  • 27. Conclusion ● Quality is subjective - what to focus on depends on many factors ● Start by creating a vision, selecting some metrics, and measuring ● What you measure will evolve, and will determine what teams work on © 2020 Google LLC & Thought Machine Group Ltd
  • 29. Continuous testing ● Continuously reviewing and improving test suites to better find defects and keep complexity and cost under control ● Allowing testers to work alongside developers throughout the software development and delivery process ● Performing manual test activities such as exploratory testing, usability testing, and acceptance testing throughout the delivery process ● Having developers practice test-driven development by writing unit tests before writing production code for all changes to the codebase ● Being able to get feedback from automated tests in less than ten minutes both on local workstations and from a CI server 2018 State of DevOps Report | cloud.google.com/devops
  • 30. Continuous delivery The ability to get changes—features, configuration changes, bug fixes, experiments—into production or into the hands of users safely and quickly in a sustainable way. 2018 State of DevOps Report | cloud.google.com/devops