SlideShare a Scribd company logo
Continuous Delivery
Helping your business win by bringing the pain forward
Agenda
• Introduction
• Deployment pipeline
• User disruption
• Anti-patterns
• Adoption
• Tools
• Conclusion
• Q&A
Introduction
Our highest priority is to satisfy the customer through
early and continuous delivery of valuable software.
Agile Manifesto
What is continuous delivery?
Agile methodology for reducing the cost, time and risk of
delivering incremental changes to users.
Inspired by Lean Startup
Deliver the right thing. Frequently.
«You can’t just ask customers what they want
and then try to give that to them.
By the time you get it built, they’ll want
something new.»
So how frequently?
Deliver fast-enough so that a customer didn’t have time
to change their mind.
Goals
- Build the right thing (MVP, eliminate waste)
- Reduce lead time (reduce WiP, eliminate bottlenecks)
- Reduce cost (optimize, automate)
- Reduce risk (resilience built-in, small increments)
Continuously:
Who does continuous delivery?
Let’s rock.
Redefine «Done»
Coded Reviewed Checked-in Built Tested Demoed
Released to end-user.
How long would it take your organization to deploy a
change that involved just one single line of code?
Do you do this on a repeatable, reliable basis?
Mary & Tom Poppendieck
Implementing Lean Software Development
Determine cycle time
Reduce risk of release
« If it hurts, do it more frequently »
How?
By implementing end-to-end automation of
build, deploy, test and release processes.
The Deployment Pipeline
A pull system spanning full product cycle.
- Fully automated (with push button approvals)
- Visible
- Measurable
- Parallelizable
Continuous Delivery
Build only once.
Deploy the same way to every environment.
Fail fast.
Automate everything (almost).
Build quality in.
Keep code always releasable.
Treat every version is a release candidate.
Contradicts with traditional approaches.
Quality goes up.
People care.
Version everything.
Single version. No major/minor/patch increments.
Version control everything.
Code, Configuration, Infrastructure…
Test excessively.
Provide recovery plan.
Measure.
- Small increments
- Deploy components independently
- Leave backward compatibility
Avoid «Big Bang» releases
Avoid branches
- True Continuous Integration - work only in mainline
- No feature branches
- No release branches
«Feature branching is a
poor man’s modular architecture»
Dan Bodart
Build a modular platform of micro-services.
Make no exceptions
Even urgent production fix should pass the same
deployment pipeline.
User disruption
downtime deployments
0
Blue - Green deployment
Deployment is not a Release.
Release is a marketing decision.
Smoke test deployment.
Release only after that.
Feature Toggles
Branch by Abstraction
Multiple versions in a single code base.
Backward compatibility is a key.
State is pain in the ass, but remediable with redundancy
Canary releasing
Release to a subset of users.
Anti-Patterns
Code Freeze ceremony
Deployment rarely / late
Avoid late contact with reality.
Manual environment configuration
Privileged deploy team
Not repeatable process
Slight differences
Manual deployments
Sleep well. Forget 2.00 AM deployments.
Hard to track
Adoption
Forget special «Continuous Delivery» projects
noun
1 a feeling of fear or agitation about something that may happen: the
men set off in fear and trepidation.
2 trembling motion.
Embrace change
trepidation | trep·i·da·tion
Raise confidence that
Change can be safe enough.
Do not be afraid to fail.
Learn what doesn’t work first, then see how to make it better.
Continuously improve
Japanese for "improvement", or "change for the better"
Refers to philosophy or practices that focus upon continuous
improvement of processes in manufacturing, engineering, and business
management.
Kaizen | 改善
Find the right team and start kicking ass.
Tools
Versioning
Build & dependency management
CI + Pipelining
Automation
Infrastructure Script streamlining
Glu Capistrano
DB migrations
ATDD + Living documentation
Monitoring
Micro-services?
Conclusion
Continuous Delivery challenges
your engineering skills.
Are you ready to accept the challenge?
Thank you!

More Related Content

PPTX
Introduction to continuous delivery
PPTX
Pushing the Bottleneck: Predicting and Addressing the Next, Next Thing
PPTX
Scrumban pechakucha
PPT
Continuously Delivering: Compress the time from committed to consumed
PPTX
Practicing Agile through Scrum
PPTX
VisualOps Credentials
PPTX
WinOps Conf 2016 - Gael Colas - Configuration Management Theory: Why Idempote...
PPTX
Continuous Deployment - Case Study at WIX
Introduction to continuous delivery
Pushing the Bottleneck: Predicting and Addressing the Next, Next Thing
Scrumban pechakucha
Continuously Delivering: Compress the time from committed to consumed
Practicing Agile through Scrum
VisualOps Credentials
WinOps Conf 2016 - Gael Colas - Configuration Management Theory: Why Idempote...
Continuous Deployment - Case Study at WIX

What's hot (20)

PPTX
Continuous delivery is not finished
PPTX
Emptying Your Cup an Agile Primer
PPT
DevOps in 2014
PDF
Deliver anything, anywhere, anytime
PDF
To upgrade or not to upgrade that is the Virtual Question_V2.1
PDF
The Bottleneck Game – Jad Harb
PPTX
World Wide Technology Webinar - Software Defined Networking
PPTX
Introduction to Puppet Enterprise 03-31-2016
PDF
What is DevOps?
PPTX
Introduction to Puppet Enterprise- 01/19/2016
PDF
Boston MeetUp 10.10
PDF
NYC MeetUp 10.9
PPTX
DevOps, Agile methods and Continuous Improvement in the Software development ...
PDF
Managing software projects & teams effectively
PPTX
Swimming in the Sea of Feedback - LLKD17
PPTX
Intro to PE 01/15/2016
PPTX
Backend Master | 3.4.1 Deploy - Deploy Automation
PPTX
Kanban for scrummers
Continuous delivery is not finished
Emptying Your Cup an Agile Primer
DevOps in 2014
Deliver anything, anywhere, anytime
To upgrade or not to upgrade that is the Virtual Question_V2.1
The Bottleneck Game – Jad Harb
World Wide Technology Webinar - Software Defined Networking
Introduction to Puppet Enterprise 03-31-2016
What is DevOps?
Introduction to Puppet Enterprise- 01/19/2016
Boston MeetUp 10.10
NYC MeetUp 10.9
DevOps, Agile methods and Continuous Improvement in the Software development ...
Managing software projects & teams effectively
Swimming in the Sea of Feedback - LLKD17
Intro to PE 01/15/2016
Backend Master | 3.4.1 Deploy - Deploy Automation
Kanban for scrummers
Ad

Viewers also liked (7)

PDF
Dart Workshop
PPTX
Whats New in Java 8
PPTX
Архитектура Ленты на Одноклассниках
PDF
Developing Useful APIs
PPTX
Big Data Processing Using Hadoop Infrastructure
PDF
JOOQ and Flyway
PDF
Simplicity
Dart Workshop
Whats New in Java 8
Архитектура Ленты на Одноклассниках
Developing Useful APIs
Big Data Processing Using Hadoop Infrastructure
JOOQ and Flyway
Simplicity
Ad

Similar to Continuous Delivery (20)

PPTX
Continuous Delivery
PPTX
Continuous Delivery (The newest)
PPTX
Continuous Delivery: why ? where to start ? how to scale ?
PPTX
Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...
PDF
Continuous delivery
PDF
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
PPTX
Introducing Continuous Integration Using Vsts
PDF
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
PDF
Andy singleton continuous delivery-fcb - nov 2014
PPTX
DevOps - Understanding Core Concepts
PDF
STAQ Development Manual (Redacted)
PPTX
Harman deepak v - agile on steriod - dev ops led transformation
PDF
Ci tips and_tricks_linards_liepins
PPTX
WinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOps
ODP
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
PPTX
Agile & DevOps - It's all about project success
PPTX
DevOps - Understanding Core Concepts (Old)
PPTX
Development and QA dilemmas in DevOps
PDF
Agility via Software Engineering Practices - Agile Tour Montreal 2015
PPTX
Continuous Delivery
Continuous Delivery (The newest)
Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...
Continuous delivery
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Introducing Continuous Integration Using Vsts
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
Andy singleton continuous delivery-fcb - nov 2014
DevOps - Understanding Core Concepts
STAQ Development Manual (Redacted)
Harman deepak v - agile on steriod - dev ops led transformation
Ci tips and_tricks_linards_liepins
WinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOps
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
Agile & DevOps - It's all about project success
DevOps - Understanding Core Concepts (Old)
Development and QA dilemmas in DevOps
Agility via Software Engineering Practices - Agile Tour Montreal 2015

More from Dmitry Buzdin (20)

PDF
How Payment Cards Really Work?
PDF
Как построить свой фреймворк для автотестов?
PDF
How to grow your own Microservice?
PDF
How to Build Your Own Test Automation Framework?
PDF
Delivery Pipeline for Windows Machines
PDF
Riding Redis @ask.fm
PDF
Rubylight JUG Contest Results Part II
PDF
Rubylight Pattern-Matching Solutions
PDF
Refactoring to Macros with Clojure
PPTX
Poor Man's Functional Programming
PDF
Rubylight programming contest
PPTX
Introduction to DevOps
PDF
Thread Dump Analysis
PDF
Pragmatic Java Test Automation
PDF
Mlocjs buzdin
PDF
Web polyglot programming
PPTX
Code Structural Analysis
PDF
Google Guava
PPT
Jug Intro 20
PDF
Jug intro 18
How Payment Cards Really Work?
Как построить свой фреймворк для автотестов?
How to grow your own Microservice?
How to Build Your Own Test Automation Framework?
Delivery Pipeline for Windows Machines
Riding Redis @ask.fm
Rubylight JUG Contest Results Part II
Rubylight Pattern-Matching Solutions
Refactoring to Macros with Clojure
Poor Man's Functional Programming
Rubylight programming contest
Introduction to DevOps
Thread Dump Analysis
Pragmatic Java Test Automation
Mlocjs buzdin
Web polyglot programming
Code Structural Analysis
Google Guava
Jug Intro 20
Jug intro 18

Recently uploaded (20)

PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Approach and Philosophy of On baking technology
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPT
Teaching material agriculture food technology
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Spectral efficient network and resource selection model in 5G networks
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Network Security Unit 5.pdf for BCA BBA.
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Understanding_Digital_Forensics_Presentation.pptx
Approach and Philosophy of On baking technology
Mobile App Security Testing_ A Comprehensive Guide.pdf
MYSQL Presentation for SQL database connectivity
Review of recent advances in non-invasive hemoglobin estimation
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Teaching material agriculture food technology
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
NewMind AI Weekly Chronicles - August'25 Week I
Digital-Transformation-Roadmap-for-Companies.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Advanced methodologies resolving dimensionality complications for autism neur...
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
CIFDAQ's Market Insight: SEC Turns Pro Crypto

Continuous Delivery

Editor's Notes

  • #10: When business come to you and say you’re releasing too frequently – you’re on the right way.
  • #11: Short Lead time  fasterFeedbackCD is expensive. Leanisabout WASTE not COST. High long-term ROI.Increases motivation, as you get things done faster, less stress
  • #15: Большинство– тормозы. Неэффективность процесса и ОПАСНОСТЬ.
  • #18: The most complex task is push button.
  • #29: Create environment where people get responsible for consequence of their action and they will care (DevOpsphylosophy)
  • #30: - Modules / services / entities / staticcontent
  • #36: Whybranches? Parallelization. Multipleversionsoftheapp.Unability to keepapplicationstableduringdevelopment.Onegoal, extracare. No merges. Oneversion, pushupteamsforsynchronizationBringspainforward, raisesprofessionalismIsolationillusion
  • #37: If people have to use feature branch, something is wrong with your architecture.
  • #60: 3WReduce TTD (Time to detect), TTR (Time to recover)
  • #62: Practice makes perfect. Toyota way.
  • #73: CD is hard. Process flaws become visible.