Sage business gurus tell us that what gets measured gets done. But how, exactly, to measure success? Agreeing on what and how to measure is challenging. Even more so, turning measurement into action without producing unwanted side-effects is . . . almost impossible.
In this four-part series, we’ll examine using process mining techniques as a way to get information about how our software development, testing, delivery, and support processes are working. Mining and analysis of data from the tools that support these environments will help implement a DevOps lifecycle and improve the ability to deliver value to the customer.
Part one will explain process mining and provide an example. In later installments in the series, we’ll examine case studies, identify key benefits, and discuss how to implement process mining.
Typically, organizations don’t understand how they do their work. If administrative processes aren’t understood, software development and maintenance processes are even less so. For an organization doing agile software development, there is more focus on creating software and less focus on documenting the process. And if there is documentation, then it describes the ideal process, not the real process that is actually implemented. The connection between how software development and support are done and the quality and usefulness of the software products and information resulting from that work is murkier still.
One of DevOps’ goals is to illuminate the process path from user stories to development to testing to delivery and maintenance. Most tools in a DevOps toolchain provide some limited insight regarding each particular tool’s operation, but don’t give information across the toolchain.
Collecting and analyzing data at depth across the toolchain can help answer the following questions:
Data mining has led to a deeper understanding of available information. Process mining leads to a better understanding of how DevOps is functioning to deliver value to customers by using a complete, high-integrity data collection and analysis model to understand and visualize actual processes.
Process mining can:
As a teaser for part 2 of this series, consider the following process flow map. This map is automatically built from data taken from a real project. Can you spot the process bottlenecks? How about the rework loop? Read part 2 to find out more!
Process Mining to Implement Better DevOps: Part 2