Administración de Variabilidad en una Línea de Producto de Software basada en Modelos

Variability management in Software Product Lines (SPLs) has two fundamental challenges: (1) the expression of common and variable features, and (2) the development of applications employing properly such features. In this paper, we present a Software Product Line based on Models (MD-SPL). We separate the concepts related to SPLs in different domains and we build core assets like feature models, metamodels, and three different types of transformation rules to transform models from a source domain to different (variable) models into a target domain. By using transformation rules, we are able to generate applications in an incremental process, guided by a set of features selected for each target domain. Thus, we manage to extend the SPLs scope, separate the domains diminishing the complexity to create applications with variable characteristics, and automatically generate applications using transformation rules. In order to illustrate our approach, we have built a MDSPL where the products are small applications used in programming computers teaching. Keywords—Model Driven Architecture, Variability, Software Product Lines, Model Transformation.

[1]  Klaus Pohl,et al.  Software Product Line Variability Management , 2006, 10th International Software Product Line Conference (SPLC'06).

[2]  Itana Maria de Souza Gimenes,et al.  A variability management process for software product lines , 2005, CASCON.

[3]  Vander Alves,et al.  AOP-Driven Variability in Product Lines of Pervasive Computing Applications , 2003 .

[4]  Kai Koskimies,et al.  An MDA Approach for Variability Management in Product-Line Engineering , 2006 .

[5]  Jaejoon Lee,et al.  FORM: A feature-;oriented reuse method with domain-;specific reference architectures , 1998, Ann. Softw. Eng..

[6]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[7]  Jacky Estublier,et al.  Reuse and variability in large software applications , 2005, ESEC/FSE-13.

[8]  Krzysztof Czarnecki,et al.  Overview of Generative Software Development , 2004, UPP.

[9]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[10]  Jean Bézivin,et al.  On the unification power of models , 2005, Software & Systems Modeling.

[11]  Marco Sinnema,et al.  Model Driven Architecture as Approach to Manage Variability in Software Product Families , 2003 .

[12]  Johannes Sametinger,et al.  Software Engineering with Reusable Components , 1997, Springer Berlin Heidelberg.

[13]  QVT Partners Initial submission for MOF 2.0 Query / Views / Transformations RFP , 2003 .

[14]  Don S. Batory,et al.  Feature-oriented programming and the AHEAD tool suite , 2004, Proceedings. 26th International Conference on Software Engineering.

[15]  Jaejoon Lee,et al.  Feature-oriented variability management in product line engineering , 2006, CACM.