SlideShare a Scribd company logo
Metrics-driven Continuous DELIVERY
Andrew Phillips
Me me me!
• Been on both sides of the Dev…Ops fence
• Done the high-level strategy stuff and also
regularly get my hands dirty
• Open-source contributor
• Regular meetup, conference etc. speaker
and contributor to IT publications
• Co-organizer of DynamicInfraDays
• A bunch of other crazy stuff
The Plan
• Lightning intro to CD
• Re-framing Continuous Delivery
• Metrics, metrics, metrics…and some microservices
• Beyond go-live
Warning
LIGHTNING INTRO TO CD
Lightning Intro
• Ongoing flow of ideas/features/whatever to your
users
• I.e. regular delivery of code to production systems
• Move away from “big bang” releases
Lightning Intro
Lightning Intro
Lightning Intro
Why?
• Faster feedback to developers
• More responsive engagement with customers
• Reduced risk of failures in production
700 deployments / year
10 + deployments / day
50 – 60 deployments /
day
Every 11.6 seconds
• Waterfall  agile: 3 years
• 220 Apps - 1 deployment per month
• “Every manual tester does automation”
• “We don’t log bugs. We fix them.”
• Measures are built in & visible to everyone
• Promote your wins! Educate your peers.
• Everyone can do continuous delivery.
Lightning Intro
Why?
• Faster feedback to developers
• More responsive engagement with customers
• Reduced risk of failures in production
Lightning Intro
Why?
• Faster feedback to developers
• More responsive engagement with customers
• Reduced risk of failures in production
• More engaged/user-focused teams
• “Experimental organization”
Lightning Intro
Why?
• Faster feedback to developers
• More responsive engagement with customers
• Reduced risk of failures in production
• More engaged/user-focused teams
• “Experimental organization”
RE-FRAMING CONTINUOUS DELIVERY
Re-framing CD
• The “classic” CD pipeline
Build/CI/unit testing Functional testing Deployment
Re-framing CD
• The “classic” CD pipeline
Build/CI/unit testing Functional testing Deployment
Source code commit
Re-framing CD
• The “classic” CD pipeline
Build/CI/unit testing Functional testing Deployment
Re-framing CD
• The “classic” CD pipeline
Build/CI/unit testing Functional testing Deployment
Re-framing CD
• The “classic” CD pipeline
Build/CI/unit testing Functional testing Deployment
Re-framing CD
• The “classic” CD pipeline
Build/CI/unit testing Functional testing Deployment
Re-framing CD
Build/CI/unit testing
Functional testing
Canary
Regression testing
A Deployment
B Deployment
Static code analysis
Re-framing CD
• Common conception of a CD pipeline: system for
enabling “commit-to-prod” flow
Re-framing CD
(you)
Re-framing CD
Re-framing CD
“Consignment
47b0e288bfb26772d4a274
cb8d64b66c012e10f2 has
arrived”
Re-framing CD
…
Re-framing CD
Huh?
Re-framing CD
• Need to relate pipeline to the flow of ideas through
the system, not just the flow of commits
• Ideas can be commit-scoped (“change the sort
order of the displayed list”) or much bigger
(“support Japanese as a language in the
application”)
Re-framing CD
Build/CI/unit testing Functional testing Deployment
Re-framing CD
Build/CI/unit
testing
Functional
testing
Deployment
Idea
feature
Team
Team
Service/
repo
Service/
repo
Service/
repo
Build/CI/unit
testing
Functional
testing
Deployment
Build/CI/unit
testing
Functional
testing
Deployment
Re-framing CD
• This is tricky, because teams will work on different
parts of the feature at different speeds
• Can’t always “just put it live and let it wait there”
Re-framing CD
Build/CI/unit
testing
Component
func. tests
Idea
feature
Team
Team
Service/
repo
Service/
repo
Service/
repo
Build/CI/unit
testing
Component
func. tests
Deploy-
ment
Build/CI/unit
testing
Component
func. tests
Integrated
func. tests
Re-framing CD
Build/CI/unit
testing
Component
func. tests
Idea
feature
Team
Team
Service/
repo
Service/
repo
Service/
repo
Build/CI/unit
testing
Component
func. tests
Deploy-
ment
Build/CI/unit
testing
Component
func. tests
Integrated
func. tests
?
Re-framing CD
• No easy answers
• Dark launches
• "So maybe the idea of software projects is wrong.“
– Dave Farley, http://blog.xebialabs.com/2016/04/07/theres-no-c-devops/
Re-framing CD
• Even if the idea of software projects is wrong,
ongoing tweaking only goes so far
Re-framing CD
• Even if the idea of software projects is wrong,
ongoing tweaking only goes so far
Re-framing CD
• Even if the idea of software projects is wrong,
ongoing tweaking only goes so far
Re-framing CD
• You’ll likely have multiple pipeline patterns in your
organization
• Both across teams and within a team, over time
• Think about your approach to tweaking vs.
innovation
METRICS, METRICS, METRICS
…AND SOME MICROSERVICES
Metrics, metrics, metrics
Build/CI/unit
testing
Functional
testing
Deployment
Idea
feature
Team
Team
Service/
repo
Service/
repo
Service/
repo
Build/CI/unit
testing
Functional
testing
Deployment
Build/CI/unit
testing
Functional
testing
Deployment
Metrics, metrics, metrics
Build/CI/unit
testing
Functional
testing
Deployment
Idea
feature
Team
Team
Service/
repo
Service/
repo
Service/
repo
Build/CI/unit
testing
Functional
testing
Deployment
Build/CI/unit
testing
Functional
testing
Deployment
Metrics, metrics, metrics
• Goal of the CD pipeline: get enough data for you to
be confident that you can go live
– …and then actually deploy the candidate if you decide to
go ahead
Metrics, metrics, metrics
• Goal of the CD pipeline: get enough data for you to
be confident that you can go live
• What can we be confident of?
Metrics, metrics, metrics
Metrics, metrics, metrics
Metrics, metrics, metrics
Metrics, metrics, metrics
• Confidence that the new version will be “better” ≠
confidence that we will avoid catastrophic failure
Metrics, metrics, metrics
• Confidence that the new version will be “better” ≠
confidence that we will avoid catastrophic failure
• Determining accurately whether the new version
will be better is hard
Metrics, metrics, metrics
• Confidence that the new version will be “better” ≠
confidence that we will avoid catastrophic failure
• Determining accurately whether the new version
will be better is hard
• Functional and code-level metrics are poor
indicators of catastrophic failure avoidance!
Metrics, metrics, metrics
• Idea: use architectural metrics to look for
indications of catastrophic failure risk
Metrics, metrics, metrics
• Idea: use architectural metrics to look for
indications of catastrophic failure risk
• Trick: don’t need production-equivalent values –
can use deviation from the baseline!
Metrics, metrics, metrics
• Idea: use architectural metrics to look for
indications of catastrophic failure risk
• Trick: don’t need production-equivalent values –
can use deviation from the baseline!
Metrics, metrics, metrics
Build 17 testPurchase OK
testSearch OK
Build # Test Case Status
Test & Monitoring Framework Results
Metrics, metrics, metrics
Build 17 testPurchase OK
testSearch OK
Build 18 testPurchase FAILED
testSearch OK
Build # Test Case Status
Test & Monitoring Framework Results
We identified a regression
Metrics, metrics, metrics
Build 17 testPurchase OK
testSearch OK
Build 18 testPurchase FAILED
testSearch OK
Build 19 testPurchase OK
testSearch OK
Build # Test Case Status
Test & Monitoring Framework Results
Problem solved
Metrics, metrics, metrics
Build 17 testPurchase OK
testSearch OK
Build 18 testPurchase FAILED
testSearch OK
Build 19 testPurchase OK
testSearch OK
Build # Test Case Status # SQL # Exceptions CPU
Test & Monitoring Framework Results Architectural Data
Let’s look behind the scenes
Metrics, metrics, metrics
Build 17 testPurchase OK
testSearch OK
Build 18 testPurchase FAILED
testSearch OK
Build 19 testPurchase OK
testSearch OK
Build # Test Case Status # SQL # Exceptions CPU
12 0 120ms
3 1 68ms
Test & Monitoring Framework Results Architectural Data
Metrics, metrics, metrics
Build 17 testPurchase OK
testSearch OK
Build 18 testPurchase FAILED
testSearch OK
Build 19 testPurchase OK
testSearch OK
Build # Test Case Status # SQL # Exceptions CPU
12 0 120ms
3 1 68ms
12 5 60ms
3 1 68ms
Test & Monitoring Framework Results Architectural Data
Exceptions probably reason for
failed tests
Metrics, metrics, metrics
Build 17 testPurchase OK
testSearch OK
Build 18 testPurchase FAILED
testSearch OK
Build 19 testPurchase OK
testSearch OK
Build # Test Case Status # SQL # Exceptions CPU
12 0 120ms
3 1 68ms
12 5 60ms
3 1 68ms
75 0 230ms
3 1 68ms
Test & Monitoring Framework Results Architectural Data
Problem fixed but now we have an
architectural regression
Problem fixed but now we have an
architectural regression
Metrics, metrics, metrics
12 0 120ms
3 1 68ms
Build 20 testPurchase OK
testSearch OK
Build 17 testPurchase OK
testSearch OK
Build 18 testPurchase FAILED
testSearch OK
Build 19 testPurchase OK
testSearch OK
Build # Test Case Status # SQL # Exceptions CPU
12 0 120ms
3 1 68ms
12 5 60ms
3 1 68ms
75 0 230ms
3 1 68ms
Test & Monitoring Framework Results Architectural Data
Now we have the functional and architectural
confidence
62
What’s commonly measured
# Test Failures
Overall Duration
63
What’s commonly measured
# Test Failures
Overall Duration
What’s out there
# Log Messages
# HTTP 4xx/5xx
Request/Response Size
Page Load/Rendering Time
…
Execution Time per test
# calls to API
# executed SQL statements
# Web Service Calls
# JMS Messages
# Objects Allocated
# Exceptions
879 SQL Queries
8Missing CSS & JS Files
340Calls to GetItemById
Metrics, metrics, metrics
26.7s
execution time
33Calls to the
same web service
171SQL Queries through
LINQ request similar data for
each call
Direct access to DB from frontend logic
Metrics, metrics, metrics
Metrics, metrics, metrics
Metrics, metrics, metrics
Baselining and anomaly
detection
Metrics, metrics, metrics
Architectural metrics
Performance metrics
Metrics, metrics, metrics
• Pipelines are about gathering data to allow you to
make a confident go/no-go decision
• Confidence that the new version will improve is
harder to come back than confidence that it won’t go
bang
• Architectural metrics are very useful to determine if
the new version likely to go bang
• You probably already have the tools you need to
integrate this kind of data into your pipeline
BEYOND Go-LIVE
Beyond go-live
1. “CD: ongoing flow of ideas to your users”
2. “Gaining confidence that the new version is
better than the current one before production is
hard”
Beyond go-live
• Ergo: extend the concept of pipeline beyond
production!
Beyond go-live
User experience
monitoring
Deployment marker
Beyond go-live
• Ergo: extend the concept of pipeline beyond
production!
• OK, but…what to measure then?
Beyond go-live
Beyond go-live
Beyond go-live
• Plenty of technical metrics available, but how do
these relate to user experience?
• Client-side instrumentation?
• Feedback popups?
• Tracking social mentions?
• “Traditional” UX testing?
Beyond go-live
1. “More user-focused teams”
2. “Experimental organization”
Beyond go-live
• This isn’t easy!
• “Our experience at Microsoft is no different: only
about 1/3 of ideas improve the metrics they were
designed to improve [...] at Amazon, for example, it
is a common practice to evaluate every new
feature, yet the success rate is below 50%.”
– http://robotics.stanford.edu/~ronnyk/ExPThinkWeek2009Public.pdf
Beyond go-live
• Requires organizational and cultural change,
more than just technical capabilities
Takeaways
• CD is about “idea-to-users”, not just “commit-to-
prod”
• Depending on the relationship between ideas and
commits, you’re likely to have different pipeline
patterns across teams, and within the same team
over time
• “Tweaking phase” vs. “Innovation phase”
Takeaways (2)
• The automation phase of your CD pipeline is about
gathering metrics to allow you to make an
accurate go/no-go decision
• What kind of confidence are you looking for?
Confidence that things won’t “go bang” is easier to
obtain than confidence that things will improve
• Architectural metrics are a big help in determining
whether things are likely to go bang
Takeaways (3)
• The capability to release quickly and with
confidence that CD provides is the foundation for a
more user-focused approach to building software
• Think about how you would measure user
experience in your production systems
• Moving from a Just Build What We Tell You culture
to an experimental organization requires
significant culture change
Just for fun ;-)
• The “zero-width joiner”
– https://en.wikipedia.org/wiki/Zero-width_joiner
• Unicode character U+200D
• Causes characters to be connected
Just for fun ;-)
Just for fun ;-)
Just for fun ;-)
…add ZWJ…
Just for fun ;-)
…add ZWJ…
Metrics-driven Continuous Delivery
Metrics-driven Continuous Delivery

More Related Content

PPTX
Performance Metrics Driven CI/CD - Introduction to Continuous Innovation and ...
PPTX
DevOps Pipelines and Metrics Driven Feedback Loops
PPTX
DevOps Days Toronto: From 6 Months Waterfall to 1 hour Code Deploys
PPTX
Metrics Driven DevOps - Automate Scalability and Performance Into your Pipeline
PDF
Managers, Future Proof Your Automation
PPTX
DevOps Transformation at Dynatrace and with Dynatrace
PPTX
Boston DevOps Days 2016: Implementing Metrics Driven DevOps - Why and How
PPTX
Release Readiness Validation with Keptn for Austrian Online Banking Software
Performance Metrics Driven CI/CD - Introduction to Continuous Innovation and ...
DevOps Pipelines and Metrics Driven Feedback Loops
DevOps Days Toronto: From 6 Months Waterfall to 1 hour Code Deploys
Metrics Driven DevOps - Automate Scalability and Performance Into your Pipeline
Managers, Future Proof Your Automation
DevOps Transformation at Dynatrace and with Dynatrace
Boston DevOps Days 2016: Implementing Metrics Driven DevOps - Why and How
Release Readiness Validation with Keptn for Austrian Online Banking Software

What's hot (12)

PPTX
How to explain DevOps to your mom
PPTX
A Guide to Event-Driven SRE-inspired DevOps
PPTX
DevOps for AI Apps
PPTX
AWS Summit - Trends in Advanced Monitoring for AWS environments
PPTX
OOP 2016 - Building Software That Eats The World
PDF
Metrics driven dev ops 2017
PPTX
Jenkins Online Meetup - Automated SLI based Build Validation with Keptn
PPTX
Deploy Faster Without Failing Faster - Metrics-Driven - Dynatrace User Groups...
PPTX
Top Java Performance Problems and Metrics To Check in Your Pipeline
PPTX
Continuous Delivery and Automated Operations on k8s with keptn
PPTX
Monitoring as a Self-Service in Atlassian DevOps Toolchain
PPTX
Continuous Testing 2016
How to explain DevOps to your mom
A Guide to Event-Driven SRE-inspired DevOps
DevOps for AI Apps
AWS Summit - Trends in Advanced Monitoring for AWS environments
OOP 2016 - Building Software That Eats The World
Metrics driven dev ops 2017
Jenkins Online Meetup - Automated SLI based Build Validation with Keptn
Deploy Faster Without Failing Faster - Metrics-Driven - Dynatrace User Groups...
Top Java Performance Problems and Metrics To Check in Your Pipeline
Continuous Delivery and Automated Operations on k8s with keptn
Monitoring as a Self-Service in Atlassian DevOps Toolchain
Continuous Testing 2016
Ad

Viewers also liked (12)

PDF
Deployment is the new build
PPTX
Inner-Source: The Lesson of Linux for Enterprises
PDF
Inner Source 101 - GWO2016
PDF
Open source is for life, not just for Christmas
PDF
[Srijan Wednesday Webinars] InnerSource: An Open Source Approach to Community...
PPTX
Inner Source Webinar Series: Open Source Community Development Methods
PDF
Data-Driven DevOps: Improve Velocity and Quality of Software Delivery with Me...
PDF
Inner Source: Enterprise Lessons from the Open Source Community.
PDF
DevOps Metrics - Lies, Damned Lies and Statistics
PDF
Data-Driven DevOps: Mining Machine Data for 'Metrics that Matter' in a DevOps...
PPTX
Metrics to Power DevOps
PDF
DevOps: A Culture Transformation, More than Technology
Deployment is the new build
Inner-Source: The Lesson of Linux for Enterprises
Inner Source 101 - GWO2016
Open source is for life, not just for Christmas
[Srijan Wednesday Webinars] InnerSource: An Open Source Approach to Community...
Inner Source Webinar Series: Open Source Community Development Methods
Data-Driven DevOps: Improve Velocity and Quality of Software Delivery with Me...
Inner Source: Enterprise Lessons from the Open Source Community.
DevOps Metrics - Lies, Damned Lies and Statistics
Data-Driven DevOps: Mining Machine Data for 'Metrics that Matter' in a DevOps...
Metrics to Power DevOps
DevOps: A Culture Transformation, More than Technology
Ad

Similar to Metrics-driven Continuous Delivery (20)

PDF
A Brave New World of Delivering IT
PDF
Continuous, continuous, continuous
PDF
5 Steps on the Way to Continuous Delivery
PDF
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
PDF
A Brave New World of Delivering IT
PDF
Fine-Tuning of Agile Development
PPTX
ContinuousDelivery-101
PPTX
Continuous delivery applied
PPTX
Introduction to continuous delivery
PDF
Agile Software and DevOps Essentials
PDF
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
PPTX
Continuous delivery applied (DC CI User Group)
PPTX
NISI Introductie Continuous Delivery 3.0
PPTX
Continuous delivery applied (RJUG)
PPTX
Continuous Delivery Applied (AgileDC)
PDF
Business Value of CI, CD, & DevOpsSec: Scaling to Billion User Systems Using ...
PDF
ROI & Business Value of CI, CD, DevOps, DevSecOps, & Microservices
PPTX
Tools and practices to use in a Continuous Delivery pipeline
PPTX
Continuous Delivery: why ? where to start ? how to scale ?
PDF
Agile Practices and Cloud Computing in Software Development
A Brave New World of Delivering IT
Continuous, continuous, continuous
5 Steps on the Way to Continuous Delivery
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
A Brave New World of Delivering IT
Fine-Tuning of Agile Development
ContinuousDelivery-101
Continuous delivery applied
Introduction to continuous delivery
Agile Software and DevOps Essentials
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
Continuous delivery applied (DC CI User Group)
NISI Introductie Continuous Delivery 3.0
Continuous delivery applied (RJUG)
Continuous Delivery Applied (AgileDC)
Business Value of CI, CD, & DevOpsSec: Scaling to Billion User Systems Using ...
ROI & Business Value of CI, CD, DevOps, DevSecOps, & Microservices
Tools and practices to use in a Continuous Delivery pipeline
Continuous Delivery: why ? where to start ? how to scale ?
Agile Practices and Cloud Computing in Software Development

More from Andrew Phillips (13)

PDF
Spinnaker Summit 2019: Where are we heading? The Future of Continuous Delivery
PDF
Docker New York City: From GitOps to a scalable CI/CD Pattern for Kubernetes
PDF
Continuous Delivery NYC: From GitOps to an adaptable CI/CD Pattern for Kubern...
PDF
Spinnaker Summit 2018: CI/CD Patterns for Kubernetes with Spinnaker
PDF
OpenDev 2018: "Open CD for Open Infrastructure - Hybrid and Multi-Cloud Deplo...
PDF
New York Kubernetes: CI/CD Patterns for Kubernetes
PDF
nycdevops: "Breaking Down the Prod/Dev Wall"
PPTX
BASE Meetup: "Analysing Scala Puzzlers: Essential and Accidental Complexity i...
PPTX
Scala Up North: "Analysing Scala Puzzlers: Essential and Accidental Complexit...
PPTX
The Multiple Dimensions of Cross-Cloud Computing
PDF
Implementing Continuous Deployment
PDF
Know your cirrus from your cumulus (with notes)
PDF
Know your cirrus from your cumulus
Spinnaker Summit 2019: Where are we heading? The Future of Continuous Delivery
Docker New York City: From GitOps to a scalable CI/CD Pattern for Kubernetes
Continuous Delivery NYC: From GitOps to an adaptable CI/CD Pattern for Kubern...
Spinnaker Summit 2018: CI/CD Patterns for Kubernetes with Spinnaker
OpenDev 2018: "Open CD for Open Infrastructure - Hybrid and Multi-Cloud Deplo...
New York Kubernetes: CI/CD Patterns for Kubernetes
nycdevops: "Breaking Down the Prod/Dev Wall"
BASE Meetup: "Analysing Scala Puzzlers: Essential and Accidental Complexity i...
Scala Up North: "Analysing Scala Puzzlers: Essential and Accidental Complexit...
The Multiple Dimensions of Cross-Cloud Computing
Implementing Continuous Deployment
Know your cirrus from your cumulus (with notes)
Know your cirrus from your cumulus

Recently uploaded (20)

PPT
Teaching material agriculture food technology
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
Empathic Computing: Creating Shared Understanding
PDF
Encapsulation theory and applications.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
Big Data Technologies - Introduction.pptx
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
A Presentation on Artificial Intelligence
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
cuic standard and advanced reporting.pdf
PDF
NewMind AI Monthly Chronicles - July 2025
Teaching material agriculture food technology
Building Integrated photovoltaic BIPV_UPV.pdf
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Diabetes mellitus diagnosis method based random forest with bat algorithm
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Electronic commerce courselecture one. Pdf
Empathic Computing: Creating Shared Understanding
Encapsulation theory and applications.pdf
Spectral efficient network and resource selection model in 5G networks
Big Data Technologies - Introduction.pptx
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
A Presentation on Artificial Intelligence
The Rise and Fall of 3GPP – Time for a Sabbatical?
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Mobile App Security Testing_ A Comprehensive Guide.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
cuic standard and advanced reporting.pdf
NewMind AI Monthly Chronicles - July 2025

Metrics-driven Continuous Delivery