Abstract
Successful software products frequently evolve into software product lines, whether intentionally or not. In such cases, product managers have to be involved in creating and specifying the commonality and variability of the evolving software product line in order to continuously assure a winning business case. In this paper we introduce feature unweaving, a novel approach that allows a product manager to efficiently evolve an integrated graphical requirements model into a product line model: when he or she has identified variable elements, feature unweaving automatically extracts these elements and refactors them into a feature, using an aspect-oriented approach. Feature unweaving significantly reduces the required effort for variability specification, both on a clerical and intellectual level. Furthermore, variability constraints can be added to capture more knowledge about the features and their interdependencies. We evaluate and validate our approach with two case studies.