Emergo: a tool for improving maintainability of preprocessor-based product lines

  • Authors:
  • Márcio Ribeiro;Társis Tolêdo;Johnni Winther;Claus Brabrand;Paulo Borba

  • Affiliations:
  • Federal University of Pernambuco, Recife, Brazil;Federal University of Pernambuco, Recife, Brazil;Aarhus University, Aarhus, Denmark;IT University of Copenhagen, Copenhagen, Denmark;Federal University of Pernambuco, Recife, Brazil

  • Venue:
  • Proceedings of the 11th annual international conference on Aspect-oriented Software Development Companion
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

When maintaining a feature in preprocessor-based Software Product Lines (SPLs), developers are susceptible to introduce problems into other features. This is possible because features eventually share elements (like variables and methods) with the maintained one. This scenario might be even worse when hiding features by using techniques like Virtual Separation of Concerns (VSoC), since developers cannot see the feature dependencies and, consequently, they become unaware of them. Emergent Interfaces was proposed to minimize this problem by capturing feature dependencies and then providing information about other features that can be impacted during a maintenance task. In this paper, we present Emergo, a tool capable of computing emergent interfaces between the feature we are maintaining and the others. Emergo relies on feature-sensitive dataflow analyses in the sense it takes features and the SPL feature model into consideration when computing the interfaces.