Continuous Delivery

Thierry De Pauw (@tdpauw) has a great presentation on the goal and meaning of continuous delivery.

The essentials:

Continuous Delivery is NOT just tooling. It is a mindset to adopt.

It always is about the mindset and the principles.

The goal of Continuous Delivery is to sustainably minimise the lead time to create positive business impact.

Lead time as a metric (= The amount of time that elapses between when a process starts and when it is completed)

Maximise the flow of the software delivery process.

The ultimate aim is a single-piece flow (meaning 1 item at a time goes through the workflow).

Your Definition of Done is when the feature is in the hands of the users.

Indeed, not only: deliver working software, AND deliver working software in use. In fact, the Definition of Done should include validated learning.

Creating feedback loops at all stages of the pipeline.

Whenever something fails in the pipeline, stop the production line.

Build quality-in.

== lean manufacturing principles.

Creating a culture of improvement.

Apply an improvement kata. Use techniques such as value-stream mapping to make pain-points (bottlenecks) visible and to improve.