Title
Reengineering legacy applications into software product lines: a systematic mapping.
Abstract
Software Product Lines (SPLs) are families of systems that share common assets allowing a disciplined reuse. Rarely SPLs start from scratch, instead they usually start from a set of existing systems that undergo a reengineering process. Many approaches to conduct the reengineering process have been proposed and documented in research literature. This scenario is a clear testament to the interest in this research area. We conducted a systematic mapping study to provide an overview of the current research on reengineering of existing systems to SPLs, identify the community activity in regarding of venues and frequency of publications in this field, and point out trends and open issues that could serve as references for future research. This study identified 119 relevant publications. These primary sources were classified in six different dimensions related to reengineering phases, strategies applied, types of systems used in the evaluation, input artefacts, output artefacts, and tool support. The analysis of the results points out the existence of a consolidate community on this topic and a wide range of strategies to deal with different phases and tasks of the reengineering process, besides the availability of some tools. We identify some open issues and areas for future research such as the implementation of automation and tool support, the use of different sources of information, need for improvements in the feature management, the definition of ways to combine different strategies and methods, lack of sophisticated refactoring, need for new metrics and measures and more robust empirical evaluation. Reengineering of existing systems into SPLs is an active research topic with real benefits in practice. This mapping study motivates new research in this field as well as the adoption of systematic reuse in software companies.
Year
DOI
Venue
2017
https://doi.org/10.1007/s10664-017-9499-z
Empirical Software Engineering
Keywords
Field
DocType
Systematic reuse,Legacy systems,Evolution,Reengineering,Product family
Systems engineering,Software engineering,Computer science,Systematic mapping,Reuse,Automation,Software,Business process reengineering,Product family,Code refactoring,Legacy system
Journal
Volume
Issue
ISSN
22
6
1382-3256
Citations 
PageRank 
References 
13
0.64
53
Authors
5