Change is inevitable for software systems to deal with the evolving environment surrounding them, and applying changes requires careful design and implementation not to break existing functionalities. Evolution in software product lines (SPLs) is more complex compared to evolution for individual products: a change applied to a single feature might affect all the products in the whole product family. In this paper we present an approach for change impact analysis in delta-oriented programming (DOP), an existing language aimed at supporting SPLs. We propose the CIAHelper tool to identify dependencies within a DOP program, by analyzing the semantics of both the code artifacts and variability models to construct a directed dependency graph. We also consider how the source code history could be used to enhance the recall of detecting the affected artifacts given a change proposal. We evaluate our approach by means of five case studies on two different DOP SPLs. C 2018 Association for Computing Machinery.

, , , ,
22nd International Systems and Software Product Line Conference, SPLC 2018
Department of Systems and Computer Engineering

Hamza, M. (Mostafa), Walker, R.J. (Robert J.), & Elaasar, M. (2018). CIAHelper: Towards change impact analysis in delta-oriented software product lines. In ACM International Conference Proceeding Series (pp. 31–42). doi:10.1145/3233027.3233036