Model-driven Support for Source Code Variability in Automotive Software Engineering.
Cem Mengi, Christian Fuß, Ruben Zimmermann, Ismet Aktaş · 2009
Abstract—Variability on source code level in automotive software engineering is handled by C/C++ preprocessing directives. It provides fine-grained definition of variation points, but brings highly complex structures into the source code. The software gets more difficult to understand, to maintain and to integrate changes. Current approaches for modeling and managing variability on source code do not consider the specific requirements of the automotive domain. To close this gap, we propose a modeldriven approach to support software engineers in handling source code variability and configuration of software variants. For this purpose, a variability model is developed that is linked with the source code. Using this approach, a software engineer can shift work steps to the variability model in order to model and manage variation points and implement their variants in the source code. Index Terms—automotive software engineering; programming; model-driven engineering; variability modeling; I.