Glossary · Automation software engineering and architecture
Feature flag
Also known as: Feature toggle, Feature switch
German: Feature-Schalter
In software engineering, a feature flag is a runtime configuration switch that enables or disables a feature without deploying new code, used for example to release features gradually, test them with selected users or turn them off quickly if problems occur.
- Software engineering
In one sentence
A feature flag is a runtime switch that enables or disables a feature without deploying new code.
Example
The new predictive maintenance dashboard ships with a feature flag, enabled first for two pilot customers before being switched on for all.
How it applies
- Engineering: Feature flags decouple deployment from release. They are common in cloud and edge software; in machine software, option parameters or license switches play a similar role.
- Maintenance: Flags accumulate. Old flags make code harder to read and test, because every combination is a possible configuration. Remove flags when a feature is fully released.
- Documentation: Documentation must match what users can actually see. Track which features are behind flags and for whom they are enabled, and publish documentation for a feature when it becomes available, or mark it clearly as available only on request.
Feature flag vs. compile-time configuration
A feature flag is switched at runtime; Compile-time configuration is fixed in the build. Flags are flexible but keep inactive code in the product, which must still be secure and tested.
Switching safety-related functions on or off with feature flags is not appropriate without the same verification and change control as any other change to those functions.