The ROI of Data-Driven Development

The ROI of Data-Driven Development

Originally published on IT Pro Portal

Every year, companies spend millions on digital solutions and platforms, hoping to accelerate their transformations. Development teams are at the heart of delivering that value and innovation, and the DevOps practices software teams have begun to adopt are critical to helping them optimize their software delivery value streams.

Value streams illustrate the way teams work together to deliver value, but without visibility into the delivery pipeline, companies are leaving millions in ROI for their transformations on the table.

But where does the ROI of digital transformation come from? How does it get realized?

Put simply, ROI comes from improving the way teams work. While the work development teams produce is clearly important, how that work is accomplished typically holds the key for opportunities to drive business value faster.

When teams improve the way they work, they gain small, yet impactful, efficiencies continuously. Improvements to the software delivery value stream help reach revenue goals faster, allowing the business to realize ROI sooner and increase its ROI potential.

In a recent study of 12 Salesforce customers, analyst firm IDC found that two of the four primary value drivers of the Salesforce platform were increasing the productivity of the application development team and optimizing the use of IT staff time and IT infrastructure.

So, how can teams strategically improve the ways in which they work together?

The value of visibility

To unlock innovation at scale in an orchestrated fashion, development teams need to gain visibility into the value stream itself. Teams cannot improve without clarity.

Gartner’s research has revealed that companies’ inability to measure and optimize the value of application development is directly tied to their lack of visibility into the flow of work. While they may “know” how to work together, teams are often siloed, without visibility into processes, flow, and what is working versus what is breaking down.

Value streams represent the series of steps an organization uses to provide a continuous flow of value to a customer. The steps of that process are typically some version of planning, building, testing, deploying, and monitoring.  All these steps are needed to maximize value delivery in a systematic way. But, if the steps are not explicitly defined, visualized, and measured, it is difficult to know what a team is doing or how it could improve at any stage.

Most teams who have adopted DevOps practices are unsure of how to take the next step to begin to measure and improve their organization’s processes. While their teams’ actions throughout the development lifecycle produce all the data they need to do so, data-driven development can only happen when development data is surfaced in a clear way.

Few companies give their teams the tools to have access or visibility into their data and even fewer can see the data organized in such a way that leads to insightful decision-making. This is the critical gap organizations need to fill to maximize potential ROI from digital transformation based in DevOps practices.

Performance data visibility enables and expedites data-driven decisions about future investments in the product, brings to light opportunities for business process re-engineering, and improves delivery velocity and quality while mitigating risk factors.

Insightful decision-making based on data.

A single-source-of-DevOps truth can help give teams the insights they need to measure and improve DevOps performance and throughput. Many people talk about monitoring the development lifecycle as the last step in DevOps maturity, but the reality is that it is one of the linchpins to digital transformation. Monitoring should be applied to every step of the DevOps lifecycle to gain visibility into processes, gather data on what is working and what is not, and adjust accordingly. It is integral to every step of the DevOps process.

Historically, a value stream map has been an essential lean tool for an organization wanting to plan, implement, and improve while on its lean journey. Value stream mapping helps users create a solid implementation plan that maximizes their available resources and ensures that materials and time are used efficiently.

Applied to DevOps, this maps the value stream of a Salesforce delivery process to help unlock opportunities to drive more value. Businesses need to map out each phase of the delivery process: plan, build, test, deliver, and monitor. Each metric represents an opportunity for incremental improvements in time to value and ROI.

DevOps analytics

Metrics such as change failure rate, mean time to restore, lead time, and deployment frequency – that are tracked on every stage of the process serve as red flags. Changes in these numbers over time help indicate stages of the development process to further dig into. This information is crucial for not only having a holistic view of where components of the roadmap stand in the development lifecycle, but for reporting on value creation of the development team and digging in to optimize the system.

Realistically, a business cannot make improvements across all indicators at once. Just as agile is rooted in simplifying work to drive value faster, DevOps value stream optimization benefits from starting with smaller pieces. Increases or decreases in these metrics over time are just symptoms of underlying causes. Target one at a time for improvement, and often, multiple areas will benefit.

In this way, Value Stream Maps illustrate process breakdowns such as bottlenecks that prevent the team from delivering value in a reasonable time frame; excess waiting time; or when, where, and how far back in the process work is being sent back.

These are all opportunities for business process improvement. For example:

If lead time increases, a business can assess how the work is planned, if the work scoped is too big and should be broken down into smaller, independent pieces?

Alternatively, leaders may need to analyse the build phase.  Are developers context-switching throughout the day, as they work on multiple user stories at once?

There are then assessments of work quality – do tests or QA checks routinely fail, causing work to be sent back to development? Do deployments routinely fail? Is testing / QA being bypassed?

If deployments become less frequent, leaders should ask if complexity of the planned work increased, and then consider re-scoping projects to release in smaller batches. If teams are still manually testing, could it be automated? Then review the tests to make sure they are written in a way that provides more coverage.

Achieving understanding

These examples show that visibility is not just about tracking metrics to see incremental improvement in them over time. It is about understanding where to look to uncover which processes are working and which are not in a development lifecycle. This, in turn, helps understand where to apply or refine DevOps practices to optimize a team’s work output and the way they work, to deliver value to customers faster.

This business process management is a virtuous feedback loop that resembles a DevOps mindset: watch the data to understand which process to optimize, adjust the process, watch how the data changes, rinse, and repeat.

As teams practice this process of end-to-end optimization over time, they become more efficient, building, and delivering with higher quality at faster speeds. This is the core of digital transformation: businesses cannot transform (or continue transforming) without refining processes.

In 2018, nearly $1.3 trillion was spent on digital transformation globally. Of that, more than $900 billion is estimated to have gone to waste. The need for DevOps, agile development, and value stream visibility is not a nice-to-have, it is a business necessity for digital transformation winners.