Feature management in CloudBees platform enables teams to gradually enable or disable features for specific user segments.
Users may possess attributes such as country, account ID, or subscription level. With feature management, you can use these attributes to control how different user segments experience a feature.
For example, you can roll out a feature to internal users first, so customers don’t see it until it’s been fully tested in the production environment. CloudBees feature management enables this behavior using feature flags.
What are feature flags?
Feature flags are conditional statements around a coded functionality in an application.
These if
/else
statements can grow into complex logic trees due to the range of attributes involved.
If a feature flag is toggled on, the associated code runs and the feature is enabled. If toggled off, the code is skipped and the feature remains hidden or inactive.
You can remotely enable or disable features even when the feature is running in production. Feature flags can be implemented on the client side or server side and help teams achieve continuous delivery with less risk.
A flag can be one of three types:
-
Boolean
-
String
-
Number
To learn more, refer to the following:
Core aspects
The table below lists some core aspects of feature management.
Aspect | Description |
---|---|
Cross-platform, cross-device |
Feature management is available for applications in a range of code languages. |
Progressive delivery |
Control feature rollout by scheduling deployment to incrementally larger user groups. With progressive delivery, you can address any problems or feedback before your feature reaches a wider audience. |
Target groups |
Control the audience for new application features through user segmentation, or target groups. Some common targeting methods are by geographical region, web browser, or email domain. You can also create target groups with custom attributes, such as account status or member ID. |
Use cases
The table below lists some popular use cases for feature management.
Use case | Description |
---|---|
Decoupling deployment from release |
Decouple code releases from feature releases to allow teams to work on their own schedules without disrupting the user experience. |
Kill switch |
Toggle a flag to turn off a problematic feature running in production rather than rolling back an entire build or struggling with hotfix code. |
License management |
Grant user groups, such as subscribers, premium members, or trial users, access to different features or sections of your product. |
Product experimentation |
Gain valuable feedback about how actual users are using features. Instantly roll out a beta-stage feature to your power user base. |
Release management |
Control which user segments gain access to new builds and features, easily enabling your team to perform canary or blue/green deployments, and beta releases. |
Testing in production |
Get the most accurate testing feedback by giving production access to your QA or testing teams. Never again miss a bug due to a poorly replicated testing environment. |
Set up with environments and applications
Feature management in CloudBees platform connects and serves configurations to your codebase through an SDK key. This key is automatically generated when you link an environment to an application. Each application that is linked to the same environment receives its own unique SDK key.
To get started, first define the environment where your application runs. For example, QA, Staging, or Production.
Next, create (or select) an application and link the environment to it. This connection enables the evaluation and management of feature flags across all SDK clients associated with that environment.
After the application has been linked to the environment, install the appropriate SDK, add the ROX package to your application, and begin using feature flags in your codebase.
Refer to Install the SDK page for step-by-step instructions, or follow the prompts in the UI installation details.
Access the SDK installation instructions in the UI
To view the SDK installation instructions in the platform:
-
Select Feature management.
-
Select
to open the guided setup steps.
The UI guides you through creating an environment, linking the environment to an application, installing the SDK, and getting started with feature flags.
