The following is a rough intro to DevOps, and notes I’ve made while compemplating how DevOps works, fits in, adds value to a business.

I’ve had the question posed to me often “Well, what is DevOps, anyway”?

Before doing much research on the topic, as a developer, I automatically think of automated build and deployment processes. And yip, this is part of it. But it’s actually a whole lot more than this.

Business Value

To survive in a market, a business needs to keep up with the demands of the customers. To further it’s position though, it will need to be able to solve problems for it’s customers by providing new offerings.

Actions a business takes to build this agility to solve customer problems adds value to the business. In some form or another Information Technology (IT) is involved to provide this business value.

DevOps offers a way to focus the efforts of IT to add this business value.

It brings manufacturing concepts of improving throughput to both the development and operations of information technology (IT). Lifting their ability to both complete Business As Usual (BAU) work and deliver projects.

The 3 Ways of DevOps

The following 3 Ways are the underpinning principles of DevOps.

  1. The First Way: Systems Thinking
  2. The Second Way: Amplify Feedback Loops
  3. The Third Way: Culture Of Continual Experimentation And Learning

reference: The Three Ways: The Principles Underpinning DevOps

Systems Thinking

Part of the point of systems thinking is to look at The System as a whole. Right from identifying customers problems, through to delivering a new offering. We can view this whole value stream as a pipeline, and our aim to to not allow it to get blocked up or for it to develop any leaks.

A part of this pipeline is IT, think of development (including testing) and operations as one combined operational system, and aim to improve flow by looking at the constraints, and managing the release of work into the system.

Your job is to ensure the fast, predictable, and uninterrupted flow of planned work that delivers value to the business while minimizing the impact and disruption of unplanned work, so you can provide a stable, predictable, and secure IT service.
excert from: The Phoenix Project

The 4 Categories Of Work

  1. Business Projects
  2. IT Projects
  3. Changes (the work of implementing a change)
  4. Unplanned Work a.ka. Anti-Work

question: How do each of the categories of work utilize resources?

Utilization

Wait-Time is the ratio: Utilization / Free Time

If utilization is 90%, then the ratio is 9:1, a job in the queue will have to wait 9 units of time before they get done.
If utilization is 50%, then the ratio is 1:1, a job in the queue will only wait 1 unit of time before being done.

Amplify Feedback Loops

As a software engineer when I see this I automatically think of Extreme Programming, and this is a good start from a development perspective, however taking it further to show if and how much business value is being added. Setting up specific telemetry is a vital step towards this.

Another part of this is the visibility of work, by making work visible, the wait times provide a feedback loop to the throughput of work and can then be investigate and ways can be devised to improve flow at the constraint.

Culture Of Continual Experimentation And Learning

The Third Way shows us how to create a culture that simultaneously fosters experimentation, learning from failure, and understanding that repetition and practice are the prerequisites to master.
excert from: The Phoenix Project

In part, this is an extension of amplifying feedback, as it assists with assessing the actual value being added and if it’s an activity that if continued will add value or if efforts are better spent on another promising activity. It can really only be done with the culture can objectively reflect on failures and successes and take meaningful action that progresses the business.

The 5 Ideals

The following 5 ideals underpin what is required to be created to provide: better value, sooner, safer, and happier.

  • The First Ideal: Locality and Simplicity
  • The Second Ideal: Focus, Flow, and Joy
  • The Third Ideal: Improvement of Daily Work
  • The Fourth Ideal: Psychological Safety
  • The Fifth Ideal: Customer Focus

Resources