Refactoring product lines

  • Authors:
  • Vander Alves;Rohit Gheyi;Tiago Massoni;Uirá Kulesza;Paulo Borba;Carlos Lucena

  • Affiliations:
  • Informatics Center-UFPE;Informatics Center-UFPE;Informatics Center-UFPE;PUC-Rio;Informatics Center-UFPE;PUC-Rio

  • Venue:
  • Proceedings of the 5th international conference on Generative programming and component engineering
  • Year:
  • 2006

Quantified Score

Hi-index 0.01

Visualization

Abstract

Adoption strategies for Software Product Lines (SPL) frequently involve bootstrapping existing products into a SPL and extending an existing SPL to encompass another product. One way to do that is to use program refactorings. However, the traditional notion of refactoring does not handle appropriately feature models (FM), nor transformations involving multiple instances of the same SPL. For instance, it is not desirable to apply a refactoring into a SPL and reduce its configurability. In this paper, we extend the traditional notion of refactoring to an SPL context. Besides refactoring programs, FMs must also be refactored. We present a set of sound refactorings for FMs. We evaluate this extended refactoring definition for SPL in a real case study in the mobile games domain.