The study of the evolution of highly configurable systems requires a thorough understanding of thee core ingredients of such systems: (1) the underlying variability model; (2) the assets that together implement the configurable features; and (3) the mapping from variable features to actual assets. Unfortunately, to date no systematic way to obtain such information at a sufficiently fine grained level exists. To remedy this problem we propose FEVER and its instantiation for the Linux kernel. FEVER extracts detailed information on changes in variability models (KConfig files), assets (preprocessor based C code), and mappings (Makefiles). We describe how FEVER works, and apply it to several releases of the Linux kernel. Our evaluation on 300 randomly selected commits, from two different releases, shows our results are accurate in 82.6% of the commits. Furthermore, we illustrate how the populated FEVER graph database thus obtained can be used in typical Linux engineering tasks.
|Title of host publication||Proceedings - 13th Working Conference on Mining Software Repositories, MSR 2016|
|Publisher||Association for computing machinery, Inc. (ACM)|
|Number of pages||12|
|State||Published - 14 May 2016|
|Event||13th Working Conference on Mining Software Repositories, MSR 2016 - Austin, United States|
|Conference||13th Working Conference on Mining Software Repositories, MSR 2016|
|Period||14/05/16 → 15/05/16|