Feature flagging and feature management are critical components in the effective delivery of cloud-native applications. They enable product delivery and SRE teams to turn functionality on and off at runtime without deploying new code. This helps SRE teams quickly mitigate issues by turning off poorly-performing features, enabling features for specific subsets of end-users, or performing side-by-side A/B feature testing. This decoupling of code deployment from feature release is a crucial enabler for modern Continuous Delivery practices. Feature flags and feature management eliminate the need to maintain multiple long-lived feature branches within your source code and they simplify and accelerate release cycles.
OpenFeature is a language-agnostic and vendor-neutral standard for feature flagging. Standardizing feature flag management allows organizations to confidently and quickly get started using feature flags, know that a vendor-neutral SDK will help them avoid vendor lock-in, and enable them to increase release velocity and quality.
OpenFeature simplifies feature flag use cases from the most basic to the most advanced:
- For example, a new “skunkworks” project might leverage OpenFeature immediately, performing essential flag evaluation based on static environment variables.
- As the project matures, more robust sources for flag configuration could be used, perhaps a simple REST API, database, or structured configuration file.
- As the application usage increases in production, a vendor solution becomes more attractive. OpenFeature allows the migration from one feature flag “source-of-truth” to another without any changes in application code.
Dynatrace with industry consortium submits OpenFeature standard as a CNCF sandbox project