Continuous Delivery - An overview of our consulting framework

kuldip , leena

November 22, 2016

Change is painful! However you try, the effects of change only make it tougher before it gets easier/simpler. 

Implementing Continuous Delivery in any organisation is no different.

Continuous Delivery is building a pipeline for software delivery in a way that the production deployments are prioritised according to business needs. It changes the way the team works. The goal is to move IT deployments from being a voodoo thing to a reliable and fast way to solve customers' problems.

Because of the obvious business benefits it brings, CXOs want to move to this way of working.

But - yes, but here as well. The typical question follows, "I understand, but how do I get started?".

Automation is the right and common step for most organisations. The problem with automation without analysing the actual constraint(s) makes it longer to see impacts that most companies have the patience.

Our Framework

Here is our framework you could apply to implement Continuous Delivery in your team.

The framework, extracted from the book Toyota Kata, focusses on problems, solutions and feedback.

CD Implementation Process

Phase 1: Plan

Stage 1: Understand

The first step for any improvement is to understand the current situation.

Observing software delivery, analysing business rationale and asking questions help to understand the current state of IT delivery better.

Asking questions to understand the initiatives the team had tried in the past, understanding what worked and what didn't will help build a good picture of software delivery process and business needs/constraints.

It is recommended not to jump to a solution at this stage.  

Risks

Stage 2: Define

This stage involves defining the current state, the ideal state and identifying the next step for improvement. 

An effective way is to draw the entire value stream, highlight the constraints and prioritise the most immediate constraint to be tackled.

Risks

Phase 2: Do

Stage 1: Deliver

Define potential solutions for the problem that is previously identified. This is where it gets complicated.

As tackling each constraint is a big hairy project, you will need an Understand, Define, Do and Improve stage for every constraint you have identified.  

You can think of it as one Deming Cycle inside another Deming Cycle.

Risks

PHASE 3: CHECK + ACT

Stage 4: Improve

This stage is to analyse results from the experiments, measuring what improved and what needs to be changed.

Apply the changes to improve the next Understand->Define->Do->Improve cycle.

Risks

If you've read this far, only makes sense for you to try this out in your organisation.

We'd love to hear your experiences. Please add them as comments.