A scalable goal-oriented approach to software variability recovery
Proceedings of the 15th International Software Product Line Conference, Volume 2
Supporting the analysis of bug prevalence in software product lines with product genealogy
Proceedings of the 16th International Software Product Line Conference - Volume 1
Code-based variability model extraction for software product line improvement
Proceedings of the 16th International Software Product Line Conference - Volume 2
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Extraction of product evolution tree from source code of product variants
Proceedings of the 17th International Software Product Line Conference
Hi-index | 0.01 |
Software reuse approaches, such as software product lines, can help to achieve considerable effort and cost savings when developing families of software systems with a significant overlap in functionality. In practice, however, the need for strategic reuse often becomes apparent only after a number of product variants have already been delivered. Hence, a reuse approach has to be introduced afterwards. To plan for such a reuse introduction, it is crucial to have precise information about the distribution of commonality and variability in the source code of each system variant. However, this information is often not available because each variant has evolved independently over time and the source code does not exhibit explicit variation points. In this paper, we present Variant Analysis, a scalable reverse engineering technique that aims at delivering exactly this information. It supports simultaneous analysis of multiple source code variants and enables easy interpretation of the analysis results. We demonstrate the technique by applying it to a large industrial software system with four variants.