On the Interaction of Feature Toggles - Archive ouverte HAL
Communication Dans Un Congrès Année : 2022

On the Interaction of Feature Toggles

Résumé

Feature toggling is a technique for enabling branching-in-code. It is increasingly used during continuous deployment to incrementally test and integrate new features before their release. In principle, feature toggles tend to be light, that is, they are defined as simple Boolean flags and used in conditional statements to condition the activation of some software features. However, there is a lack of knowledge on whether and how they may interact with each other, in that case their enabling and testing become complex. We argue that finding the interactions of feature toggles is valuable for developers to know which of them should be enabled at the same time, which are impacted by a removed toggle, and to avoid their mis-configurations. In this work, we mine feature toggles and their interactions in five open-source projects. We then analyse how they are realized and whether they tend to be multiplied over time. Our results show that 7% of feature toggles interact with each other, 33% of them interact with another code expression, and their interactions tend to increase over time (22%, on average). Further, their interactions are expressed by simple logical operators (i.e., and and or) and nested if statements. We propose to model them into a Feature Toggle Model, and believe that our results are helpful towards robust management approaches of feature toggles.
Fichier principal
Vignette du fichier
VaMoS22-paper8-HAL.pdf (1.04 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03527250 , version 1 (15-01-2022)
hal-03527250 , version 2 (17-01-2022)

Identifiants

Citer

Xhevahire Tërnava, Luc Lesoil, Georges Aaron Randrianaina, Djamel Eddine Khelladi, Mathieu Acher. On the Interaction of Feature Toggles. VaMoS 2022 - 16th International Working Conference on Variability Modelling of Software-Intensive Systems, Feb 2022, Florence, Italy. ⟨10.1145/3510466.3510485⟩. ⟨hal-03527250v2⟩
299 Consultations
251 Téléchargements

Altmetric

Partager

More