Skip to main content
DevOps icon showing cogs

This post is from the XebiaLabs blog and has not been updated since the original publish date.

Last Updated Jan 01, 2019 — DevOps Expert

Take Release Automation to the Next Level, Episode 5: Demonstrate Value with Dark Launches and Features Toggles

DevOps

The “Take Release Automation to the Next Level” series gives you insights into the benefits and challenges surrounding DevOps deployment patterns. In this series, we’ll look at how different patterns work, the advantages and disadvantages of each one, considerations for implementing them, and best practices when applying them.

In Episode 4, we discussed canary releases, which allow teams to roll out new features and functionality to targeted user groups without impacting other users. Dark launches and feature toggles are alternative deployment strategies that enable you to introduce new features to users in a highly controlled way, without requiring you to maintain multiple environments.

What Is a Dark Launch?

Dark launching a feature means releasing an early version of a feature to Production so you can test it with realistic user traffic and usage patterns without actually exposing the feature to users. Dark launching is particularly effective for testing the back end of a feature because you can run back-end functionality in the background without the user being aware of it. When it’s time to give users access to the feature, you simply deploy its front-end interface. For example, you could implement the back end of a product recommendation feature on an ecommerce website and test its performance without showing the recommendations to site visitors. When you’re satisfied with the feature’s performance, you can deploy the front-end recommendation interface on the website.

What is a Feature Toggle?

Feature toggles—also known as feature flags—allow you to further decouple the deployment of different software versions from the release of features to users. You can deploy new versions of an application as often as needed, with certain features disabled: releasing a feature to users is simply a matter of toggling it “on”.Dark Launch

Advantages of Dark Launches and Feature Toggles

Like canary releases, dark launching and toggling features allow you to roll out new features in a controlled way. However, dark launches and feature toggles do not require you to run multiple versions of an application in an environment simultaneously, which you must do for a canary release.

Disadvantages of a Dark Launch or Feature Toggle

Dark launches and feature toggles can be difficult to adopt because they require you to change the application that you want to deploy. Development teams must build the capability to dark-launch or toggle a feature into the application at the code level, but doing so can be a challenge for mature applications with a large code base.

Rolling Back a Dark Launch or Feature Toggle

Rolling back a feature that has been dark-launched or controlled by a feature toggle is relatively simple. In the case of a dark launch, you simply remove the interface that allows users to access the feature. And in the case of a feature toggle, you disable access to the feature.

Master Dark Launches and Feature Toggles with the XebiaLabs DevOps Platform

While dark launches and features toggles primarily impact the architecture of the application, scaling their use across the enterprise has the most positive effect if you implement automated, repeatable deployment processes that enforce consistency and reuse across teams and applications. The XebiaLabs DevOps Platform makes it easy to dark launch and toggle features. With XebiaLabs, you can deploy features strategically and release new functionality to users in a way that is decoupled from technical deployment.
Application Release Automation

Best Practices for DevOps: Advanced Deployment Patterns

This white paper gives you insights into the DevOps best practice of advanced deployment patterns. It describes how each pattern works, the advantages and disadvantages of each one, considerations for implementing them, and best practices when applying them. Read more.

Related resources

More from the Blog

View more
Sep 13, 2021

The Expedited Journey of Digital Transformation

DevOps
Alan Brown, Digital Transformation Advisor at Digital.ai conducts a se ...
Read More
Aug 23, 2021

Is Data Analytics Missing From Your Digital Transformation?

DevOps
Nearly every major enterprise is already in the process of digital tra ...
Read More
Aug 19, 2021

Creative Ways to Automate Developer Workflows

DevOps
When an organization begins an Agile or DevOps journey, the process ca ...
Read More
Aug 12, 2021

How Automation Enhances Efficiency and Delivery Speed In a DevOps Environment

DevOps
When organizations make the decision to move to a DevOps environment, ...
Read More
Contact Us