Continuous Delivery and the Theory Of Constraints

Continuous Delivery and the Theory Of Constraints

How should you actually implement Continuous Delivery?

Adopting Continuous Delivery takes time. You have a long list of technology and organisational changes to consider. You have to work within the unique circumstances of your organisation. You're constantly surrounded by strange problems, half-baked theories, off the shelf solutions that just don't work, and people telling you they've worked here for 23 years and Amazon is nothing to worry about.

How do you identify and remove the major impediments in your build, testing, and operational activities? How do you avoid spending weeks, months, or years on far-reaching changes that ultimately have no impact on your time to market?

The Theory of Constraints is a management paradigm that describes how to improve throughput in a homogeneous workflow. It can be applied to Continuous Delivery in order to locate, prioritise, and reduce constrained activities until a flow of release candidates to production is achieved.

In this talk, Steve Smith will explain how easy it is for a Continuous Delivery programme to be unsuccessful, how the Theory Of Constraints works, how to apply the Five Focussing Steps to Continuous Delivery, and how to home in on the constrained activities that are your keys to success. It includes tales of glorious failures and ignominious successes when adopting Continuous Delivery.

622051376c3b381ef1c786036011112d?s=128

Steve Smith

May 01, 2019
Tweet

Transcript

  1. 4.

    Implementing Continuous Delivery “We recommend, as ever, you apply the

    Deming Cycle - Plan, Do, Check, Act” Dave Farley and Jez Humble - Continuous Delivery
  2. 5.

    Network Activation Version Control Build Functional Test Integration Test Production

    customers delivery platform test platform test operations
  3. 6.

    Network Activation Lead Time = 34 days Target Lead Time

    = 14 days Build Functional Test Integration Test Production customers delivery platform test platform test operations Version Control
  4. 7.

    Technology Capabilities VERSION CONTROL AUTOMATED INFRASTRUCTURE DEPLOYMENT PIPELINE TRUNK BASED

    DEVELOPMENT CONTINUOUS INTEGRATION EVOLUTIONARY ARCHITECTURE AUTOMATED DATABASE UPDATES TEST DRIVEN DEVELOPMENT AUTOMATED ACCEPTANCE TESTS EXPLORATORY TESTING TELEMETRY INCREMENTAL RELEASES
  5. 8.

    Technology Capabilities VERSION CONTROL AUTOMATED INFRASTRUCTURE DEPLOYMENT PIPELINE TRUNK BASED

    DEVELOPMENT CONTINUOUS INTEGRATION EVOLUTIONARY ARCHITECTURE AUTOMATED DATABASE UPDATES TEST DRIVEN DEVELOPMENT AUTOMATED ACCEPTANCE TESTS EXPLORATORY TESTING TELEMETRY INCREMENTAL RELEASES
  6. 9.

    Organisational Capabilities SMALL BATCH SIZE DEVOLVED DECISION MAKING SHARED INCENTIVES

    BLAMELESS POST-MORTEMS YOU BUILD IT, YOU RUN IT CONTINUOUS CHANGE REVIEWS CHANGE TRACEABILITY EMPOWER EMPLOYEES CROSS-FUNCTIONAL TEAMS CONWAY’S LAW ALIGNMENT
  7. 10.

    Organisational Capabilities SMALL BATCH SIZE DEVOLVED DECISION MAKING SHARED INCENTIVES

    BLAMELESS POST-MORTEMS YOU BUILD IT, YOU RUN IT CONTINUOUS CHANGE REVIEWS CHANGE TRACEABILITY EMPOWER EMPLOYEES CROSS-FUNCTIONAL TEAMS CONWAY’S LAW ALIGNMENT
  8. 11.

    Network Activation Build Functional Test Integration Test Production customers delivery

    platform test platform test operations Lead Time = 31 days Target Lead Time = 14 days Version Control
  9. 12.

    Implementing Continuous Delivery “Proceed by iterative, incremental steps, using rapid

    cycles of experimentation” Jez Humble, Joanne Molesky, and Barry O’Reilly - Lean Enterprise
  10. 14.

    Implementing Continuous Delivery • Visualise deployment throughput to generate insights

    • Identify the activities where a few improvements will yield an immediate impact • Focus on the experiments most likely to speed up those activities
  11. 16.
  12. 17.

    Theory Of Constraints “You should not balance capacity demand. What

    you need to do instead is balance the flow of product with demand from the market” Dr Eli Goldratt - The Goal
  13. 25.

    Network Activation Lead Time = 31 days Target Lead Time

    = 14 days Build Functional Test Integration Test Production customers delivery platform test platform test operations Version Control 15
  14. 26.

    Five Focussing Steps ELEVATE the constraint(s) EXPLOIT the constraint(s) IDENTIFY

    the constraint(s) SUBORDINATE everything to the constraint(s) REPEAT the process
  15. 27.

    Five Focussing Steps ELEVATE the constraint(s) EXPLOIT the constraint(s) IDENTIFY

    the constraint(s) SUBORDINATE everything to the constraint(s) REPEAT the process
  16. 28.

    Five Focussing Steps ELEVATE the constraint(s) EXPLOIT the constraint(s) IDENTIFY

    the constraint(s) SUBORDINATE everything to the constraint(s) REPEAT the process
  17. 29.

    Five Focussing Steps ELEVATE the constraint(s) EXPLOIT the constraint(s) IDENTIFY

    the constraint(s) SUBORDINATE everything to the constraint(s) REPEAT the process
  18. 30.

    Five Focussing Steps ELEVATE the constraint(s) EXPLOIT the constraint(s) IDENTIFY

    the constraint(s) SUBORDINATE everything to the constraint(s) REPEAT the process
  19. 31.

    Five Focussing Steps ELEVATE the constraint(s) EXPLOIT the constraint(s) IDENTIFY

    the constraint(s) SUBORDINATE everything to the constraint(s) REPEAT the process
  20. 33.

    Interval = 21 days Target Interval = 7 days Build

    Integration Test Release Test Production customers delivery testers testers operations Version Control MediaTech
  21. 34.
  22. 35.
  23. 36.

    Technology Capabilities VERSION CONTROL AUTOMATED INFRASTRUCTURE DEPLOYMENT PIPELINE TRUNK BASED

    DEVELOPMENT CONTINUOUS INTEGRATION EVOLUTIONARY ARCHITECTURE AUTOMATED DATABASE UPDATES TEST DRIVEN DEVELOPMENT AUTOMATED ACCEPTANCE TESTS EXPLORATORY TESTING TELEMETRY INCREMENTAL RELEASES
  24. 37.

    Organisational Capabilities SMALL BATCH SIZE DEVOLVED DECISION MAKING SHARED INCENTIVES

    BLAMELESS POST-MORTEMS YOU BUILD IT, YOU RUN IT CONTINUOUS CHANGE REVIEWS CHANGE TRACEABILITY EMPOWER EMPLOYEES CROSS-FUNCTIONAL TEAMS CONWAY’S LAW ALIGNMENT
  25. 38.

    Organisational Capabilities SMALL BATCH SIZE DEVOLVED DECISION MAKING SHARED INCENTIVES

    BLAMELESS POST-MORTEMS YOU BUILD IT, YOU RUN IT CONTINUOUS CHANGE REVIEWS CHANGE TRACEABILITY EMPOWER EMPLOYEES CROSS-FUNCTIONAL TEAMS CONWAY’S LAW ALIGNMENT
  26. 39.
  27. 40.
  28. 41.

    MediaTech Interval = 14 days Target Interval = 14 days

    Lead Time = 14 days Build Integration Test Release Test Production customers delivery testers testers operations Version Control
  29. 42.

    Key Learnings “Automation is good, so long as you know

    exactly where to put the machine” Dr Eli Goldratt - The Goal 1. Implementing Continuous Delivery is hard 2. The Theory Of Constraints will help you identify constrained activities, and select the experiments most likely to succeed 3. You need to balance the flow of release candidates to meet product demand
  30. 43.

    Try It Yourself Find the constrained activity Establish your Target

    Lead Time Run experiments to save constraint time
  31. 44.

    Try It Yourself Find the constrained activity Establish your Target

    Lead Time Run experiments to save constraint time
  32. 45.

    Try It Yourself Find the constrained activity Establish your Target

    Lead Time Run experiments to save constraint time
  33. 46.

    Try It Yourself Find the constrained activity Establish your Target

    Lead Time Run experiments to save constraint time