What is software feature (flag) management?
Applications have features, so, logically, feature management (and delivery) is now a thing.
The very logically named Rollout is a company that describes itself as a feature delivery and management specialist that accelerates software development and release.
The firm has now announced feature management platform functionality to offer Configuration-as-Code (CaC) and an integration with GitHub.
The intention is that developers should be able to treat ‘feature flags’ as they treat any other mission-critical infrastructure.
A feature flag (sometimes also called a feature flipper, feature toggle or feature switch) is a software application development programming technique designed to provide an alternative approach to shouldering the burden of maintaining multiple source code branches (also known as feature branches)… and so provide a means of testing new features prior to their deployment, or indeed their full release.
Rollout says it also plans to open source its feature management platform.
“Rollout’s CaC approach, the integration with GitHub and the decision to open source its feature flag technology means that developers now enjoy the benefit of both worlds — faster development and deployment of new features without the risk of breaking things,” said Kyle Daigle, director of ecosystem engineering for GitHub.
Feature flags modeled with CaC means that software developers can design, implement and deploy application features using the same processes used to manage code changes, like full change management, ability to rollback, track ownership of changes etc.
“Until now, control of feature flags has circumvented existing software development and deployment processes or known checks and balances for software development and production changes,” said Erez Rusovsky, co-founder and CEO of Rollout.io. “The decision to integrate our configuration as code with Git & GitHub and open source our platform means that product and development teams have consistent and reliable control of every feature in production, resulting in applications that are easier to develop and maintain.”
Rollout’s feature management solution with CaC will initially leverage GitHub as an integration point with support for Atlassian, Gitlab and other hosting services coming soon.
The company says it designed its management system with feature flags and controls for gradually releasing features in development and production with the ability to rollout back features when needed.