Skip to Main Content
Software product lines (SPLs) encompass a family of software systems developed from reusable assets. One issue during SPL maintenance is the decision about which mechanism should be used to restructure variabilities aiming at improving the modularity of the SPL artifacts. Due to the great variety of mechanisms (inheritance, configuration files, aspect-oriented programming), selecting the incorrect ones may produce negative effects on the cost to evolve the SPL. To reduce this problem, we propose a decision model to help developers to choose mechanisms to restructure variabilities in SPLs. The domain analyzed by this work consists of test scripts. We also developed a prototype tool to support developers by recommending mechanisms according to the decision model. Using our model and tool may improve the tests variabilitiespsila modularity and remove bad smells such as cloned code.