Unleash

Here’s how decoupling deployment and release can bring value to your business

Given the rise in DevOps teams in the last few years, it is normal for software development teams to develop the service and continue maintenance of the service long after deployment.

In the book Accelerate, the authors found that high performing DevOps teams constantly strived to do better, which became a key driver of business value. As a result, organizations with high-performing DevOps teams performed better than organizations with low-performing DevOps teams.

Photo by Fatos Bytyqi on Unsplash

Photo by Fatos Bytyqi on Unsplash

High performing teams deploy more frequently 

In the whitepaperpublished by DORA and Google, high performing DevOps teams excelled “at all aspects of throughput and stability”, but had room for improvement. In comparison, Elite DevOps teams consistently deliver superior software at the highest levels. To improve throughput and stability, high performers and Elite teams were able to deploy on-demand, multiple times a day.

Frequent deployments mean teams spend less time waiting to deploy a feature or tool that’s already done. They’re able to get feedback faster and dramatically shorten the time between idea to implementation. Teams that are able to pull this off will eventually reach a point where deployments are happening too often.

What’s the problem with deploying too often?

From a product management or marketing point of view , the high frequency of deployments often turns into a new set of challenges. First and foremost, deploying small incremental changes multiple times per day could end up harming the user experience rather than improving it.

In some cases, frequent deployments end up using the live production environment as a testbed. This is a slippery slope to be on as deployments to production should not replace proper testing through your deployment pipeline. However, for certain edge cases or critical issues, it makes sense to run the code in a production environment as it may be hard to locate the issue otherwise.

From a wider business perspective, it’s common for marketing and PR campaigns to be directly coupled to the launch of a new feature or new customer experience. To get the most out of the campaign, marketers prefer to limit public access before the campaign goes live.

With all three scenarios, feature toggles can help manage deployments and improve efficiency.

How feature toggles bring value to DevOps teams

A feature toggle management system like Unleash allows you to decouple deploy to production from release to customers, which means you get to control who has access to which feature, and when. With feature toggles, DevOps teams can continue to deploy features at a high frequency, but to a controlled group of users for further testing and gradual rollouts.

Feature toggle management UI

Allowing this decoupling of deploy from release to start to bring real business value into DevOps. The team can use activation strategies based on the company’s overall business strategy to decide on who gets what and when regardless of when a feature is deployed.

One common activation strategy is the gradual rollout. This allows the team to enable the deployment to a small and defined subset of live users, instead of exposing the new feature to the entire customer base. It’s a good way to beta test new features and get feedback before releasing them to everyone.

Using the centralized overview in Unleash, product management can fully control when a new feature or customer experience goes live to all customers. The best part is that product teams can do so without the development team updating a config-file or token in code.

Summary

A high-performing DevOps team, with the frequent deployment of new features, can support the overall development of a high-performing organization. To bridge the gap between continuous innovation and frequent deployments to production, feature toggles can make it easier for companies to decide which new features should be released to who and when. It is the ability to control the user experience at this level that allows companies to design unique experiences that set them apart from the competition and drive long-term success.

Want to try Unleash?

GET STARTED TRY OUR DEMO

Share this article

Explore further