Releasing new versions of your software can be nerve wrecking. Doubly so when the update contains new features or a large number of changes for your users. Of course, you always strive to release successful updates, and to help improve your release cycle process, you can use a system called Staged Rollouts.
What is a staged rollout?
A Staged Rollout is a method of releasing updates to your software to only a defined percentage of users, as opposed to releasing the update to all of your users at the same time. Instead of an “everyone or no one” approach, you can gradually distribute your latest update to some of your users. For example, when first released you may choose to only show the update to 10% of users, and over the course of a few days.
Used by numerous software companies world wide, you may have been part of a staged rollout without even knowing it. Common real world examples are mobile phone app releases as well as sites like Netflix and Uber.
The benefits of using staged rollouts.
A staged rollout can serve many purposes depending on the type of software you build. By using a staged rollout, you can take the time to analyze the real world performance impacts of your update, identify any unforeseen bugs, and verify the releases stability prior to giving to all of your users.
As always, we know that you take every precaution to release stable and bug free software to your users, but we live in the real world, where there are some things we just cannot account for. Conflicts with other software, server configurations, and user behavior are all things that organically become apparent as you release an update.
With a Staged Rollout, you can slow down the exposure of your changes to users by only releasing to a specified percentage of them, in order to impact as few people as possible. A bug is much better controlled when only 10% of your users experience it than 100%. If you’ve created a new user interface, getting it in the hands of 25% of users before making it widely available, gives you the time to take feedback from real world users, and release follow up improvements based on this feedback.
How to use staged rollouts with Software Licensing
The Software Licensing extension for Easy Digital Downloads allows you to quickly and easily configure a staged rollout for your releases. When editing your licensed product, you have the ability to do the following:
- Enable staged rollouts.
- Define the percentage of sites that get the update.
- Release the update to sites based on the current installed version.
Staged rollouts is available to all users of our Software Licensing extension who are on version 3.8 or greater. Thanks to the work by Thomas Maier and the team at WP AdvancedAds for inspiring this feature and writing the first proof of concept, which allowed us to quickly integrate this directly into Software Licensing for all users.