What is progressive delivery?
Progressive delivery is an approach to releasing software updates to users gradually and monitoring how the software performs before releasing it to larger groups. This minimizes your exposure to widespread issues that weren’t caught in testing. It’s generally adopted by teams with a strong DevOps culture and well-developed Continuous Integration and Continuous Delivery (CI/CD) pipeline.
What are the benefits of progressive delivery?
The big benefits of progressive delivery are the speed of bringing value to customers and the risk mitigation by releasing small, incremental updates to a subset of users. These two have a solid impact on your development costs and brand satisfaction.
How does progressive delivery work?
To get started with progressive delivery, your development team should already be using (CI/CD) as part of your software delivery. From there, teams will customarily use a tool that toggles features on/off for specific users with access. This is called feature flagging.
Feature flagging has many use cases. What distinguishes progressive delivery from the rest is incorporating the flags into release management. You’ll want to deploy your release with the relevant flags turned off. Then, you turn the flags on for a targeted audience. This could be pre-selected delta testers, power users of the relevant feature(s), or even just a random sample of users.
The main thing here is you want to monitor this audience’s usage or adoption, paying attention to whatever signals are important in your case: errors, latency, key events, a/b test results, etc. Once you’re confident that the update is performing as intended, you can ungate the release for another larger audience or your entire user base.
Running delta tests alongside progressive delivery—specifically, the Product Growth use case—is particularly effective. In this scenario, you’re actively engaging a subset of customers to identify issues, ideas, and praise before going live for everyone. During this time, it's useful to conduct both qualitative research (feedback collection) and quantitative research (metrics collection) based on feature adoption and general usage of the release.