RuVa: A runtime software variability algorithm Articles uri icon

publication date

  • May 2022

start page

  • 52525

end page

  • 52536


  • 10

International Standard Serial Number (ISSN)

  • 2169-3536

Electronic International Standard Serial Number (EISSN)

  • 2169-3536


  • Context-aware and smart systems that require runtime reconfiguration to cope with changes in the environment increasingly demand variability management mechanisms that can address runtime concerns. In recent years, we have witnessed new dynamic variability solutions using dynamic software product line (DSPL) approaches. However, while few solutions proposed so far have addressed the need to add, change and remove variants dynamically, none of them provide a way to check the constraints between features at runtime. Because all SAT solvers perform variability constraint checking in off-line mode, we suggest in this ongoing research paper the integration of RuVa, a runtime variability algorithm, with the FaMa tool suite to check feature constraints dynamically before a new feature is added or an existing feature is removed. This research suggests a novel approach to modifying the variability model of context-aware systems dynamically and check the feature constraints on the fly. We integrate our solution with a SAT solver that can be invoked at runtime by a cyber-physical system. We validate the effectiveness and performance of the proposed algorithm using simulations. We also provide a proof-of-concept for updating the configuration of a robot's variability model based on contextual changes.


  • Computer Science
  • Mechanical Engineering
  • Robotics and Industrial Informatics


  • software variability; runtime variability; dynamic software product lines; feature model; context features; reconfiguration; robots