Requirement driven evolution in software product lines: A systematic mapping study
We conducted a systematic mapping study on SPL evolution.We identified 107 relevant contributions on the topic up to mid 2015.We elaborated on the traditional change mini cycle to classify the contributions.We identified well established topics, trends and open research issues. CONTEXT. Software Product Lines (SPLs) aim to support the development of a whole family of software products through systematic reuse of shared assets. As SPLs exhibit a long life span, evolution is an even greater concern than for single systems. For the purpose of this work, evolution refers to the adaptation of the SPL as a result of changing requirements. Hence, evolution is triggered by requirement changes, and not by bug fixing or refactoring.OBJECTIVE. Research on SPL evolution has not been previously mapped. This work provides a mapping study along Petersen's and Kichenham's guidelines, to identify strong areas of knowledge, trends and gaps.RESULTS. We identified 107 relevant contributions. They were classified according to four facets: evolution activity (e.g. identify, analyze and plan, implement) product derivation approach (e.g. annotation based, composition based) research type (e.g. solution, experience, evaluation) and asset type (i.e. variability model, SPL architecture, code assets and products).CONCLUSION. Analyses of the results indicate that "Solution proposals" are the most common type of contribution (31% Regarding the evolution activity, "Implement change" (43% and "Analyze and plan change" (37% are the most covered ones. A finer grained analysis uncovered some tasks as being underexposed. A detailed description of the 107 papers is also included.
J. Syst. Softw.