Sciweavers

SE
2016

Morpheus: variability-aware refactoring in the wild

8 years 12 days ago
Morpheus: variability-aware refactoring in the wild
—Today, many software systems are configurable with conditional compilation. Just like any software system, configurable systems need to be refactored in their evolution, but their inherent variability induces an additional dimension of complexity that is not addressed well by current academic and industrial refactoring engines. To improve the state of the art, we propose a variability-aware refactoring approach that relies on a canonical variability representation and recent work on variability-aware analysis. The goal is to preserve the behavior of all variants of a configurable system, without compromising general applicability and scalability. To demonstrate practicality, we developed MORPHEUS, a sound, variability-aware refactoring engine for C code with preprocessor directives. We applied MORPHEUS to three substantial real-world systems (BUSYBOX, OPENSSL, and SQLITE) showing that it scales reasonably well, despite of its heavy reliance on satisfiability solvers. By extendin...
Jörg Liebig, Sven Apel, Andreas Janker, Flori
Added 09 Apr 2016
Updated 09 Apr 2016
Type Journal
Year 2016
Where SE
Authors Jörg Liebig, Sven Apel, Andreas Janker, Florian Garbe, Sebastian Oster
Comments (0)