Evolving software product lines with aspects: an empirical study on design stability

  • Authors:
  • Eduardo Figueiredo;Nelio Cacho;Claudio Sant'Anna;Mario Monteiro;Uira Kulesza;Alessandro Garcia;Sérgio Soares;Fabiano Ferrari;Safoora Khan;Fernando Castor Filho;Francisco Dantas

  • Affiliations:
  • Lancaster University, Lancaster, United Kingdom;Lancaster University, Lancaster, United Kingdom;Pontifical Catholic University of Rio de Janeiro, PUC-Rio, Brazil;Computer Science Department, Pernambuco State University, Brazil;CITI/DI/FCT, Universidade Nova de Lisboa, Portugal;Computing Department, Lancaster University, United Kingdom;Computer Science Department, Pernambuco State University, Brazil;Computing Department, Lancaster University, United Kingdom;Computing Department, Lancaster University, United Kingdom;Computer Science Department, Pernambuco State University, Brazil;Computer Science Department, State University of Rio Grande do Norte, Brazil

  • Venue:
  • Proceedings of the 30th international conference on Software engineering
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software product lines (SPLs) enable modular, large-scale reuse through a software architecture addressing multiple core and varying features. To reap the benefits of SPLs, their designs need to be stable. Design stability encompasses the sustenance of the product line's modularity properties in the presence of changes to both the core and varying features. It is usually assumed that aspect-oriented programming promotes better modularity and changeability of product lines than conventional variability mechanisms, such as conditional compilation. However, there is no empirical evidence on its efficacy to prolong design stability of SPLs through realistic development scenarios. This paper reports a quantitative study that evolves two SPLs to assess various design stability facets of their aspect-oriented implementations. Our investigation focused upon a multi-perspective analysis of the evolving product lines in terms of modularity, change propagation, and feature dependency. We have identified a number of scenarios which positively or negatively affect the architecture stability of aspectual SPLs.