You can use a selective rollout for enabling certain features for premium users or beta users. Many products offer paid features that can only be accessed by the users that pay for the premium functionality. You can develop your own in-house plugin for managing premium features, or CloudBees Feature Management offers the same functionality built-in. It provides ready-made plugins and code snippets via its SDK to quickly implement different types of feature flag use cases.
You can use CloudBees Feature Management to roll out features for only specific geographic regions or countries. Imagine you own a financial product that isn’t authorized to operate in certain countries. To comply with local regulations, you need to disable certain features for users in a specific country or region. Feature flags can help you accomplish this task.
Production experiments are another popular way of using feature flags. The most common example is an A/B test, through which an organization deploys two different versions of a feature to see which performs best. The possibilities for production experiments are endless and the results can significantly improve your application. When used correctly, experiments provide product owners and developers with a much shorter feedback loop with their end users, resulting in improved customer acquisition and retention.
In this scenario, you may want to roll out a new feature gradually to a growing percentage of your user base until you have released the feature to all users. For example, every day, you release a new feature to five percent of the user base.
By slowly rolling out the feature, you collect quantitative user feedback. For example, you can ask users to rate the feature on a scale of 1 to 10. Next, you implement a snippet of logic that reverts a new feature if 30 percent of the users report a score below five out of ten. Of course, you can play with the numbers. Ultimately we are looking at automating a feature rollout based on live user feedback.