Skip to main content

Command Palette

Search for a command to run...

Agile, Continuous Delivery and the Three Ways

Updated
4 min read
Agile, Continuous Delivery and the Three Ways

We will first look into the theory and principles which formed the basis for the current DevOps practices and behaviors.

These are derived from manufacturing, high-reliability organizations and high trust management models

The Manufacturing Value Stream

One of the most basic concepts in Lean is that of the value stream. Per Karen Martin and Mike Osterling, it is the sequence of activities an organization undertakes to deliver upon a customer request. OR
the sequence of activities required to design, produce and deliver a good or service to a customer including the dual flow of information and material

In the manufacturing world, the value stream is clearly visible. The focus is on creating a fast and predictable lead time by creating a smooth work flow using techniques like

  • small batch sizes

  • reduce work in process

  • prevent defects from being passed to downstream

The Technology Value Stream

In DevOps, technology value stream is the process required to convert a business hypothesis into a technology-enabled service or feature that delivers value to the customer.

The input is the business objective, idea which is accepted and added to the committed backlog of work. The dev teams follow agile or some other iterative process will likely convert it to user stories and feature specification.which is then implemented in code to the app or service. The code is then checked into a version control repository where the change is integrated and tested with the rest of the software system.
Since value is created when the app or service is running in production, we should ensure that the deployments are also performed without issues.

Focus on Deployment Lead Time

As described above, the value stream begins when any engineer(Dev, QA etc.) checks a change into the VCS and ends when the changes is running successfully in production, providing value to customer and is generating useful feedback and telemetry.

The first phase of work is similar to Lean Product Development whose process time could be varied.
The second phase which involves testing, deployment and operations is similar to Lean Manufacturing.

Instead of large batches of work processed sequentially, the goal is to have testing, deployment and ops happening at same time as with design/development. It is possible when work is done in small batches.

Lead Time vs Processing Time

There are two measures in Lean Manufacturing: Lead Time and Processing Time
Lead Time starts when request is made and ends when it is fulfilled
Processing Time begins only when the work is started and ignores waiting in the queue time
Achieving shorter lead time almost always requires reducing the wait-in-queue time.

The DevOps Ideal: Deployment Lead Times of Minutes

The deployment lead times in companies where DevOps practices are not adopted the lead times require months.

But in the devops environment, devs receive fast, constant feedback on their work, enabling them to quickly and independently implement, integrate and validate their code and deploy it in production.

Observing "%C/A" as a Measure of Rework

The third key metric or measure is percent complete and accurate which helps in measuring the quality of the output of each step in the value stream.

According to Karen Martin and Mike Osterling the percent complete and accurate can be obtained by asking downstream customers what percentage of the time they receive the work that is 'usable as is'

The Three Ways: The Principles Underpinning DevOps

The First Way enables fast left-to-right flow of work from Dev to Ops to the customer. In order to maximise flow:

  • Make work visible

  • Reduce batch sizes and work intervals

  • Build in quality by preventing defects from being passed to downstream centers

  • constantly optimize for global goals

The Second Way enables fast and constant flow of feedback from right to left all stages of our value stream. It needs faster detection and recovery helping to create work systems where problems are found and fixed before a disaster occurs.

The Third Way enables a generative high-trust culture that supports a dynamic, disciplined and scientific approach to experimentation and risk-taking, thus creating organizational learning from our successes and failures, helping the organization win in the marketplace.

More from this blog

The Continuous Journey

24 posts