TY - JOUR
T1 - Analysing the Linux kernel feature model changes using FMDiff
AU - Dintzner, Nicolas
AU - van Deursen, Arie
AU - Pinzger, Martin
PY - 2017/2
Y1 - 2017/2
N2 - Evolving a large scale, highly variable system is a challenging task. For such a system, evolution operations often require to update consistently both their implementation and its feature model. In this context, the evolution of the feature model closely follows the evolution of the system. The purpose of this work is to show that fine-grained feature changes can be used to guide the evolution of the highly variable system. In this paper, we present an approach to obtain fine-grained feature model changes with its supporting tool “FMDiff”. Our approach is tailored for Kconfig-based variability models and proposes a feature change classification detailing changes in features, their attributes and attribute values. We apply our approach to the Linux kernel feature model, extracting feature changes occurring in sixteen official releases. In contrast to previous studies, we found that feature modifications are responsible for most of the changes. Then, by taking advantage of the multi-platform aspect of the Linux kernel, we observe the effects of a feature change across the different architecture-specific feature models of the kernel. We found that between 10 and 50 % of feature changes impact all the architecture-specific feature models, offering a new perspective on studies of the evolution of the Linux feature model and development practices of its developers.
AB - Evolving a large scale, highly variable system is a challenging task. For such a system, evolution operations often require to update consistently both their implementation and its feature model. In this context, the evolution of the feature model closely follows the evolution of the system. The purpose of this work is to show that fine-grained feature changes can be used to guide the evolution of the highly variable system. In this paper, we present an approach to obtain fine-grained feature model changes with its supporting tool “FMDiff”. Our approach is tailored for Kconfig-based variability models and proposes a feature change classification detailing changes in features, their attributes and attribute values. We apply our approach to the Linux kernel feature model, extracting feature changes occurring in sixteen official releases. In contrast to previous studies, we found that feature modifications are responsible for most of the changes. Then, by taking advantage of the multi-platform aspect of the Linux kernel, we observe the effects of a feature change across the different architecture-specific feature models of the kernel. We found that between 10 and 50 % of feature changes impact all the architecture-specific feature models, offering a new perspective on studies of the evolution of the Linux feature model and development practices of its developers.
KW - Evolution
KW - Feature model
KW - Software product line
UR - http://www.scopus.com/inward/record.url?scp=84929688458&partnerID=8YFLogxK
UR - http://resolver.tudelft.nl/uuid:7a6ac361-11f1-43d9-975c-473d812333c9
U2 - 10.1007/s10270-015-0472-2
DO - 10.1007/s10270-015-0472-2
M3 - Article
AN - SCOPUS:84929688458
SN - 1619-1366
VL - 16
SP - 55
EP - 76
JO - Software and Systems Modeling
JF - Software and Systems Modeling
IS - 1
ER -