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

What's hot (20)

PPTX
Continuous delivery is not finished
Miel Donkers
 
PPTX
Emptying Your Cup an Agile Primer
Todd Shelton
 
PPT
DevOps in 2014
David Thompson
 
PDF
Deliver anything, anywhere, anytime
Poornima Durairaj
 
PDF
To upgrade or not to upgrade that is the Virtual Question_V2.1
Alan Stretton
 
PDF
The Bottleneck Game – Jad Harb
Agile Tour Beirut
 
PPTX
World Wide Technology Webinar - Software Defined Networking
World Wide Technology
 
PPTX
Introduction to Puppet Enterprise 03-31-2016
Puppet
 
PDF
What is DevOps?
Mukta Aphale
 
PPTX
Introduction to Puppet Enterprise- 01/19/2016
Puppet
 
PDF
Boston MeetUp 10.10
Solano Labs
 
PDF
NYC MeetUp 10.9
Solano Labs
 
PPTX
DevOps, Agile methods and Continuous Improvement in the Software development ...
Paulo Traça
 
PDF
Managing software projects & teams effectively
Ashutosh Agarwal
 
PPTX
Swimming in the Sea of Feedback - LLKD17
Helen Meek
 
PPTX
Intro to PE 01/15/2016
Puppet
 
PPTX
Backend Master | 3.4.1 Deploy - Deploy Automation
Kyunghun Jeon
 
PPTX
Kanban for scrummers
AgileSparks
 
Continuous delivery is not finished
Miel Donkers
 
Emptying Your Cup an Agile Primer
Todd Shelton
 
DevOps in 2014
David Thompson
 
Deliver anything, anywhere, anytime
Poornima Durairaj
 
To upgrade or not to upgrade that is the Virtual Question_V2.1
Alan Stretton
 
The Bottleneck Game – Jad Harb
Agile Tour Beirut
 
World Wide Technology Webinar - Software Defined Networking
World Wide Technology
 
Introduction to Puppet Enterprise 03-31-2016
Puppet
 
What is DevOps?
Mukta Aphale
 
Introduction to Puppet Enterprise- 01/19/2016
Puppet
 
Boston MeetUp 10.10
Solano Labs
 
NYC MeetUp 10.9
Solano Labs
 
DevOps, Agile methods and Continuous Improvement in the Software development ...
Paulo Traça
 
Managing software projects & teams effectively
Ashutosh Agarwal
 
Swimming in the Sea of Feedback - LLKD17
Helen Meek
 
Intro to PE 01/15/2016
Puppet
 
Backend Master | 3.4.1 Deploy - Deploy Automation
Kyunghun Jeon
 
Kanban for scrummers
AgileSparks
 

Viewers also liked (7)

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

Similar to Continuous Delivery (20)

PPTX
Continuous Delivery
Eduards Sizovs
 
PPTX
Continuous Delivery (The newest)
Eduards Sizovs
 
PDF
Continuous Delivery Distilled
Matt Callanan
 
PPTX
State of continuous delivery in 2015 - Minsk 15-5-2015
Pavel Chunyayev
 
PPTX
Павел Чуняев - State of Continuous Delivery in 2015
ITSpringBY
 
PPTX
Continuous Delivery for Open Source Java projects
Tricode (part of Dept)
 
PPTX
ROOTS2011 Continuous Delivery
Ole Christian Rynning
 
PPTX
Continuous Delivery
Stein Inge Morisbak
 
PPTX
Continuous delivery applied (RJUG)
Mike McGarr
 
PPTX
ContinuousDelivery-101
Kishore Bhatia
 
PPTX
Continuous Delivery Overview
Luca Minudel
 
PDF
Continuous, continuous, continuous
Michele Orselli
 
PDF
The Rationale for Continuous Delivery (The culture and practice of good softw...
C4Media
 
PDF
Discovery delivery agiletour-xian
Qiao Liang
 
PDF
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
DevConFu
 
PPTX
What is Continuous Delivery?
Alan Parkinson
 
PPTX
Dev ops culture and practices
AnkaraCloud
 
PDF
Cloud continuous integration- A distributed approach using distinct services
André Agostinho
 
PDF
Continuous delivery
Leonardo Gamas
 
Continuous Delivery
Eduards Sizovs
 
Continuous Delivery (The newest)
Eduards Sizovs
 
Continuous Delivery Distilled
Matt Callanan
 
State of continuous delivery in 2015 - Minsk 15-5-2015
Pavel Chunyayev
 
Павел Чуняев - State of Continuous Delivery in 2015
ITSpringBY
 
Continuous Delivery for Open Source Java projects
Tricode (part of Dept)
 
ROOTS2011 Continuous Delivery
Ole Christian Rynning
 
Continuous Delivery
Stein Inge Morisbak
 
Continuous delivery applied (RJUG)
Mike McGarr
 
ContinuousDelivery-101
Kishore Bhatia
 
Continuous Delivery Overview
Luca Minudel
 
Continuous, continuous, continuous
Michele Orselli
 
The Rationale for Continuous Delivery (The culture and practice of good softw...
C4Media
 
Discovery delivery agiletour-xian
Qiao Liang
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
DevConFu
 
What is Continuous Delivery?
Alan Parkinson
 
Dev ops culture and practices
AnkaraCloud
 
Cloud continuous integration- A distributed approach using distinct services
André Agostinho
 
Continuous delivery
Leonardo Gamas
 
Ad

More from Dmitry Buzdin (20)

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

Recently uploaded (20)

PPTX
Earn Agentblazer Status with Slack Community Patna.pptx
SanjeetMishra29
 
PPTX
Farrell_Programming Logic and Design slides_10e_ch02_PowerPoint.pptx
bashnahara11
 
PPTX
Using Google Data Studio (Looker Studio) to Create Effective and Easy Data Re...
Orage Technologies
 
PPTX
Machine Learning Benefits Across Industries
SynapseIndia
 
PDF
introduction to computer hardware and sofeware
chauhanshraddha2007
 
PDF
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
PPTX
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
PDF
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
PDF
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
PDF
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
PDF
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PDF
Basics of Electronics for IOT(actuators ,microcontroller etc..)
arnavmanesh
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PDF
Build with AI and GDG Cloud Bydgoszcz- ADK .pdf
jaroslawgajewski1
 
PDF
Generative AI vs Predictive AI-The Ultimate Comparison Guide
Lily Clark
 
PDF
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PPTX
Agentic AI in Healthcare Driving the Next Wave of Digital Transformation
danielle hunter
 
Earn Agentblazer Status with Slack Community Patna.pptx
SanjeetMishra29
 
Farrell_Programming Logic and Design slides_10e_ch02_PowerPoint.pptx
bashnahara11
 
Using Google Data Studio (Looker Studio) to Create Effective and Easy Data Re...
Orage Technologies
 
Machine Learning Benefits Across Industries
SynapseIndia
 
introduction to computer hardware and sofeware
chauhanshraddha2007
 
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
Basics of Electronics for IOT(actuators ,microcontroller etc..)
arnavmanesh
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
Build with AI and GDG Cloud Bydgoszcz- ADK .pdf
jaroslawgajewski1
 
Generative AI vs Predictive AI-The Ultimate Comparison Guide
Lily Clark
 
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
Agentic AI in Healthcare Driving the Next Wave of Digital Transformation
danielle hunter
 

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.