Managing the quality of software product line architectures through reusable model transformations

  • Authors:
  • Amogh Kavimandan;Aniruddha Gokhale;Gabor Karsai;Jeff Gray

  • Affiliations:
  • Vanderbilt University, Nashville, TN, USA;Vanderbilt University, Nashville, TN, USA;Vanderbilt University, Nashville, TN, USA;University of Alabama, Tuscaloosa, AL, USA

  • Venue:
  • Proceedings of the joint ACM SIGSOFT conference -- QoSA and ACM SIGSOFT symposium -- ISARCS on Quality of software architectures -- QoSA and architecting critical systems -- ISARCS
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

In model-driven engineering of applications, the quality of the software architecture is realized and preserved in the successive stages of its lifecycle through model transformations. However, limited support for reuse in contemporary model transformation techniques forces developers of product line architectures to reinvent transformation rules for every variant of the product line, which can adversely impact developer productivity and in turn degrade the quality of the resulting software architecture for the variant. To overcome these challenges, this paper presents the MTS (Model-transformation Templatization and Specialization generative transformation process, which promotes reuse in model transformations through parameterization and specialization of transformation rules. MTS defines two higher order transformations to capture the variability in transformation rules and to specialize them across product variants. The core idea behind MTS is realized within a graphical model transformation tool in a way that is minimally intrusive to the underlying tool's implementation. The paper uses two product line case studies to evaluate MTS in terms of reduction in efforts to define model transformation rules as new variants are added to the product line, and the overhead in executing the higher order transformations. These metrics provide an indirect measure of how potential degradation in the quality of software architectures of product lines caused due to lack of reuse can be alleviated by MTS.