What is DevOps?

Completed

The contraction of "Dev" and "Ops" refers to replacing siloed Development and Operations. The idea is to create multidisciplinary teams that now work together with shared and efficient practices and tools. Essential DevOps practices include agile planning, continuous integration, continuous delivery, and monitoring of applications. DevOps is a constant journey.

Collaboration DevOps cycle with plan, build, continuous integration, deploy, operate, and continuous feedback.

Understand your cycle time

Let us start with a basic assumption about software development. We will describe it with the OODA (Observe, Orient, Decide, Act) loop. Originally designed to keep fighter pilots from being shot out of the sky, the OODA loop is an excellent way to think about staying ahead of your competitors. You start with observing business, market, needs, current user behavior, and available telemetry data. Then you orient with the enumeration of options for what you can deliver, perhaps with experiments. Next, you decide what to pursue, and you act by delivering working software to real users. You can see all occurring in some cycle time.

Observe, orient, decide, and act as cycle.

Become data-informed

We recommend you use data to inform what to do in your next cycle. Many experience reports tell us that roughly one-third of the deployments will have negative business results. Approximately one-third will have positive results, and one-third will make no difference. Fail fast on effects that do not advance the business and double down on outcomes that support the business. Sometimes the approach is called pivot or persevere.

Strive for validated learning

How quickly you can fail fast or double down is determined by your cycle time. Also, in how long that loop takes, or in lean terms. Your cycle time determines how quickly you can gather feedback to determine what happens in the next loop. The feedback that you collect with each cycle should be factual, actionable data. We call it validated learning.

Strive for validated learning. Good, indifferent, and bad.

Shorten your cycle time

When you adopt DevOps practices:

  • You shorten your cycle time by working in smaller batches.
  • Using more automation.
  • Hardening your release pipeline.
  • Improving your telemetry.
  • Deploying more frequently.

Validated learning versus deployment frequency. Good, indifferent, and bad cycle.

Optimize validated learning

The more frequently you deploy, the more you can experiment. The more opportunity you have to pivot or persevere and gain validated learning each cycle. This acceleration in validated learning is the value of the improvement. Think of it as the sum of progress that you achieve and the failures that you avoid.

Validated learning versus deployment frequency. Good, indifferent, and bad cycle. Value of improvement metric.