The Road to DevOps Is Paved With Continuous Measurement

Overview: The pursuit of continuous improvement is central to the adoption of DevOps. As discussed in Chapter 14 of the Building a Better Software Delivery Platform podcast series, continuous measurement not only helps analyze the success of improvement efforts, it aids in the creation of goals that will help bring that improvement to fruition.

 

Whatever the medium, whether it’s lectures, classes, books, blogs, or podcasts, in any discussion of DevOps you’ll frequently hear the word “journey.” The word applies because the transition to DevOps thinking and practices doesn’t happen overnight. For DevOps practitioners the desire to improve doesn’t have an end state—the improvement they seek is described by another word you’ll often hear: “continuous.”

This concept plays a central role in Chapter 14 of Compuware’s Building a Better Software Delivery Platform podcast series. Compuware Executive DevOps Solution Architect Rick Slade welcomes zAdviser Product Owner Bill Mackey to discuss the role of measurement in the software delivery system. Used to gauge the quality, velocity, and efficiency of software delivery, this measurement needs to be—you guessed it—continuous.

Rick states that when discussing DevOps, “we talk about continuous development and continuous integration, continuous testing, continuous delivery, continuous everything. I think one of the most important things with regard to measurement is the support it provides to continuous improvement.”

Being able to measure the performance of your software delivery system is crucial in attempting to improve that performance. With accurate, relevant data you can create baselines, find bottlenecks, and, perhaps most importantly, monitor the success (or failure) of the changes you implement.

To use a real-world analogy, have you ever painted a building, or perhaps cleared a field, and thought how much better it looked after you were done? Have you ever looked at the fruits of your labor and thought, “Gee, I wish I’d taken some ‘before’ pictures.” (I have). You may think you’ve done an incredible job, but without something to compare to the end result, you’re only guessing just how much progress was made.

The collection of data, and the use of it to measure progress, can’t be an occasional act. In order to constantly improve on your previous results, you must be able to analyze “before” and “after” data. As Bill says,

Continuous improvement requires us to continuously challenge ourselves to get better. And to do that we have to be continuously measuring ourselves.

According to Bill, key performance indicators (KPIs) are the means by which an organization can continuously challenge itself. zAdviser, a free service offered to maintenance-current Compuware customers, collects data provided by the customer and uses machine learning to create KPIs designed to improve the quality, velocity, and efficiency of their software delivery.

The fast feedback provided by zAdviser allows customers to pinpoint inefficiencies and find areas that are meeting expectations as well as ones that can be improved. Armed with this data, managers can make adjustments and see the effects of their efforts almost immediately. And with the ability to continuously stream data to zAdviser, managers can be sure that the data not only is current, but thorough, as well.

The continuous improvement that is central to DevOps is enabled by continuous measurement. With timely, accurate data, organizations can measure their progress, identify new ways to improve, and challenge themselves with relevant KPIs. And, just as organizations continue to enhance their software delivery systems and progress on their DevOps journeys, the zAdviser team continues to seek new and better ways to gather, analyze, and report data that will ensure that the improvement continues.

Listen to Rick and Bill’s entire discussion of measurement in the software delivery system in Chapter 14: Monitoring and Measurement. You can find the entire Building a Better Software Delivery Platform podcast series at www.compuware.com/goodcoding