Measuring Objective Continuous Improvement in DevOps
DevOps has become the perennial buzzword on the technology scene, but it means a lot of different things to different people and organizations. Some definitions are heavy in regards to automation, and others are heavy in regards to culture, but the true definition is somewhere in between.
My favorite definition of DevOps is the one from Gene Kim in The DevOps Handbook: “the emerging professional movement that advocates a collaborative working relationship between Development and IT Operations, resulting in the fast flow of planned work (i.e., high deploy rates), while simultaneously increasing the reliability, stability, resilience and security of the production environment.”
Much more important than how we define the work is the fact that the technology industry is leaping at the opportunity to "implement DevOps."
This is a great thing, but in order to bring about the implementation successfully, there are a few things that an organization should consider when starting and attempting to sustain DevOps. Here are six steps to follow on the road to "DevOps awesomeness":
- Figure out the long-term goals of using DevOps to facilitate change in your organization
- Determine the short-term goals that support your long-term goals—things that can be accomplished soon so that you know you are on the right path
- Create a value stream map of your organization, product, application, system, or team
- Decide on metrics to capture that allow you to make objective, data-driven decisions
- Choose a release period in which you can capture metrics as a baseline
- Use the baseline to figure out where your bottlenecks and constraints are
These six steps will help you get off to a good start on your journey because it is incredibly important to know where you are starting. Once you are three, six, or even twelve months into your DevOps adoption, you will want to know what progress you have made, and you won’t be able to figure that out unless you have benchmarks from the beginning.
It’s important to remember that research shows that implementing DevOps gets hard before it makes things better for your organization. This is where the culture of DevOps should kick in. While things are difficult to implement and figure out, as the teams dig out of the hard part, they will begin to build a culture of trust, courage, and determination that will help them be the type of organization that is incredibly competitive and valuable in its market.
Also remember that DevOps is a journey that should never end. The law of entropy teaches that things constantly want to be in a state of disorder. This also applies to technology organizations, and teams must work to constantly and continuously improve themselves in order to fight entropy.
“DevOps awesomeness” means that organizations figure out how to build culture and automation that inspires continuous improvement, continuous learning, and continuous feedback in order to make it the best it can be.
Logan Daigle is presenting the session Measure DevOps for Objective Continuous Improvement Practices at the DevOps East 2017 conference, November 5–10 in Orlando, FL.