Building a successful DevOps model in your organization is hard. It’s not only a matter of technology; you also need to build a culture that works across the entire development pipeline--from design to development to test to deployment. Tooling is a big part of this, of course, as it gives you access to the data you need to understand what’s happening, identifying blockages and wastage.
Indeed, a key element of a mature DevOps model is tooling to deliver a continuous integration/continuous delivery (CI/CD) pipeline, like the open source Jenkins environment used by CloudBees’ Core. That’s now been joined by a new tool, DevOptics, designed to extract the data you need to improve how DevOps works inside your business.
ITPro Today recently sat down for a conversation with Ben Williams, senior director of product management at Cloudbees, talking about DevOptics and its role in building and managing DevOps best practices. Williams has a long history of working as a DevOps practitioner, and has been involved in managing DevOps transitions across the industry.
“Before I worked at CloudBees I led a major DevOps transition,” Williams said. “There were issues.”
This led Williams to understand many of the issues that drove the development of DevOptics.
“We weren’t able to monitor our continuous delivery platform or measure DevOps performance across teams," he said. "That also meant we couldn’t identify the sources of waste in our development processes, as it was very difficult to know where blockages were.”
Without that information it was impossible to see if there was a payoff to a significant investment in DevOps. What should have been delivered by the DevOps tooling was instead a lot of manual work, building reports and having conversations with team members. Even so, with all the cost in time and effort, the result was error-prone. “We were effectively flying blind.”
Many organizations face the same challenges. They’re trying to implement best practices for the DevOps model, but without visibility into the development pipeline there’s no real way to see exactly what’s happening-- and no way to make changes that will improve the process.
DevOptics is a tool that’s intended to provide those metrics, benchmarking and tracking software delivery.
“You can think of it as an organization’s DevOps radar,” Williams says. “It gives you visibility into your DevOps platform.”
While DevOps tools are designed to automate the software development lifecycle, the worst thing that can happen is for that automation to be a blocker itself.
Using DevOptics, organizations can map out the value associate with their development efforts, taking a program-driven approach to understanding how all the various projects fit together and how they benefit the business. Using the CI/CD pipeline as the hub for development, organizations can get real-time metrics that show what’s being done across the development process, with multiple streams and delivery pipelines.
Each step is treated as a gate that the project needs to pass through, letting you see where everything is and what might be blocking delivery. The same tools track your various delivery artifacts, like code and documentation, as well as show how your DevOps team responds to tickets.
Williams looks at this as a way of making DevOps teams consider the value that’s being delivered--and how to maximize it.
“It’s a matter of relentless improvement,” he says. “It’s a lean value.”
Software development’s artisanal heritage can be a hindrance to implementing effective DevOps processes, and with tooling like DevOptics you can start to bring in similar development models to those used in mature manufacturing processes.
“One of the great things about it is that you can understand where everything is and collaborate on things you couldn't have before,” noted Williams.
There’s a lot to consider with a tool like this. It’s clearly one that would work well for a company that’s made the transition to a DevOps culture. But it’s also suitable for one that’s beginning the process, as you can use it to monitor your transition from your current state by understanding where you are and how your current development processes operate. Similarly, DevOptics allows you to consider what the effects of changes might be.
Said Williams: “You can’t improve what you can’t see.”