Change impact analysis for maintenance and evolution of variable software systems

Florian Angerer, Andreas Grimmer, Herbert Prähofer, Paul Grünbacher
2019 Automated Software Engineering : An International Journal  
Understanding variability is essential to allow the configuration of software systems to diverse requirements. Variability-aware program analysis techniques have been proposed for analyzing the space of program variants. Such techniques are highly beneficial, e.g., to determine the potential impact of changes during maintenance. This article presents an interprocedural and configuration-aware change impact analysis (CIA) approach for determining the possibly impacted source code elements when
more » ... anging the source code of a product family. The approach also supports engineers, who are adapting the code of specific product variants after an initial pre-configuration. The approach can be adapted to work with different variability mechanisms, it is more precise than existing CIA approaches, and it can be implemented using standard control flow and data flow analysis. We report evaluation results on the benefit and performance of the approach using industrial product lines.
doi:10.1007/s10515-019-00253-7 fatcat:prn6bluppzc5zinwaq7mx7bfee