To understand Enterprise DevOps, we have to first define what "regular" DevOps is. Here is my current definition of DevOps. Let's call it "DevOps 0.1"
What is DevOps? (Version 0.1)
DevOps is a culture that drives and enables the following behaviors:
- Treating Infrastructure and code as the same thing: Software
- That Software is built and deployed to achieve fast feedback cycles
- Those feedback cycles are achieved through continuous delivery pipelines
- Those pipelines contain the automated coded policy of the organization
- Those pipelines are as human free as possible
- Humans share knowledge and work creatively with work centered around pipelines
- Knowledge silos are broken in favor of supporting a continuous pipeline flow
DevOps is the Agile operating model of modern IT, and is centered around the idea of a continuous delivery pipeline as the main building block of an Agile organization.
DevOps is based on lean development concepts, as well as the lean startup movement's ideas. As such, the "build, measure, learn", the scientific method mantra, is very relevant to DevOps.
That's why metrics play a very important role in a DevOps culture. They help determine gradual success over time in DevOps transformations. Here are the main metrics being used in DevOps based organizations today:
What is Enterprise DevOps?
Enterprise DevOps is the application of DevOps values in an environment that contains any of the following:
- Many inter-dependent and related systems and sub systems, software and teams that rely on each other
- Monolithic systems and/or static software/hardware environments
- Lengthy Approval Gates or change control processes
- Security, financial medical or other compliance requirements
- Lengthy waterfall based processes among multiple teams and stake holders
- Workflows that are mostly manual and error prone across multiple teams or stakeholders
In order to create a pipeline-centered organization that is able to seize opportunities in the marketplace quickly.