The Journey to CD

The Journey to CD

What is the point of Continuous Delivery? Where should you start? How do you know you are making progress?

In this talk, Dan argues that the purpose of Continuous Delivery is to support Business Agility, and that you shouldn't try to boil the ocean, but instead choose one thing to go after.

08145ecb1ce091d9dd3c328ea2a707fb?s=128

Daniel Terhorst-North

February 28, 2017
Tweet

Transcript

  1. THE JOURNEY TO CONTINUOUS DELIVERY Dan North @tastapod

  2. None
  3. WHAT IS THE GOAL OF CONTINUOUS DELIVERY? Release into production

    more often? Automating build and deployment? Standardising processes and tools? The goal of Continuous Delivery is to increase Business Agility
  4. BUSINESS AGILITY “The speed and effectiveness with which we can

    adapt to new information” Reducing time to market is the only game in town Technically lead time OK really technically cost of delay
  5. WHY DOES BUSINESS AGILITY MATTER?

  6. LEARNING REQUIRES FEEDBACK Feedback is invited Feedback is offered Feedback

    is heard Feedback is actioned
  7. BUSINESS AGILITY INVOLVES THE WHOLE ORGANISATION Commercial Management Operations Technology

  8. WHY DOES CONTINUOUS DELIVERY MATTER? It impacts the speed at

    which you can respond to a need It impacts the speed at which you can recover It impacts your level of quality and consistency
  9. WHAT IS SLOWING US DOWN? Hand-offs to other teams •

    Creating environments for dev and testing • Onerous Release/Change governance and sign-off • Security, Audit, Compliance sign-off Manual testing Manual deployment and release processes Manual troubleshooting and recovery
  10. WHERE SHOULD YOU START? “Start where you are” Identify what

    is really slowing you down Pick one thing and go after it! Scale out as you build confidence and trust
  11. WHERE SHOULD YOU START? Turn a problem statement into a

    desired outcome: “It takes ages to get an environment around here!” Goal: Self-serve provisioning of environments “We spend all our time filling in release documents!” Goal: Release docs populated from work tracker and code repo
  12. WHERE SHOULD YOU START? Visualise Stabilise Optimise

  13. VISUALISE Map the value stream Identify where time is being

    lost • The Inactivity Principle: Watch the work product, not the worker Look for where work items leave the team Look for where work items pile up in queues Identify the trouble spots
  14. STABILISE Bring system variance under control • otherwise you can’t

    determine the impact of a change Eliminate or mitigate hand-offs • Stabilising often speeds things up! Simplify and standardise manual processes • Makes them candidates for automation Make cross-cutting “utility” functions self-service
  15. OPTIMISE Define an experiment, or “bet” • What do you

    want to improve? • How will you measure this? Baseline the current state • You may get a surprise! Carry out the experiment Interpret the results Kaizen is first-class work Plan Do Check Adjust
  16. THEN DO IT ALL AGAIN! Visualise Stabilise Optimise

  17. LOTS OF DIMENSIONS TO EXPLORE principles processes tools governance organisation

    FedRAMP by 18F
  18. DON’T BE AFRAID TO ASK FOR HELP We are in

    a Cambrian explosion of tools and methods Not everyone is Google or Netflix Take inspiration from them, but resist web-scale envy • Unless you are web-scale! Start tomorrow—pick one thing—measure it!
  19. THANKS FOR LISTENING! dan@dannorth.net http://dannorth.net @tastapod