Dynamically Adaptable Software Is All about Modeling Contextual Variability and Avoiding Failures
Ismayle de Sousa Santos, Magno Luã de Jesus Souza, Michelle Larissa Luciano Carvalho, Thalisson Oliveira, Eduardo Santana de Almeida, Rossana M. C. Andrade · IEEE Software · 2017
Contextual-variability modeling is integral to dealing with dynamically adaptable software. Several techniques support this task using dynamic-software-product-line engineering, which enables runtime management of software variants. In particular, context-aware feature modeling (CFM) has been considered suitable for dealing with contextual variability. However, it has limited expressiveness to specify real-world constraints related to context information. To tackle this limitation, this article proposes eCFM, an extended form of CFM. In addition, it presents an approach using eCFM and model checking to identify common design faults that could lead to runtime failures. A comparison of CFM and eCFM showed that eCFM was more expressive and easier to use.