Visualizing Product Line Domain Variability by Aspect-Oriented Modeling

Modeling variability is a core problem in software product line engineering. The relationship between variability and commonality in a software product line bears strong similarities to the relationship between crosscutting concerns and core concerns in aspect-oriented modeling. So modeling variability with aspect-oriented techniques is an obvious idea which has been exploited before to some extent. In this paper, we propose a new approach to modeling and visualizing variability by a combination of aspect-oriented variability modeling with table-based modeling of configuration possibilities and constraints. As a modeling language, we use a slightly extended version of the ADORA language. Our main contributions are a visual, integrated model comprising both the commonality and the variability of the product line and a novel mechanism for synthesizing products from this model based on the aspect weaving capabilities of ADORA.

[1]  Mira Mezini,et al.  Variability management with feature-oriented programming and aspects , 2004, SIGSOFT '04/FSE-12.

[2]  Klaus Pohl,et al.  Software Product Line Engineering - Foundations, Principles, and Techniques , 2005 .

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

[4]  Timo Asikainen,et al.  Modelling Methods for Managing Variability of Configurable Software Product Families , 2004 .

[5]  Paul Grünbacher,et al.  DOPLER: An Adaptable Tool Suite for Product Line Engineering , 2007, SPLC.

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

[7]  Ruzanna Chitchyan,et al.  Survey of Aspect-Oriented Analysis and Design , 2005 .

[8]  Klaus Pohl,et al.  Software Product Line Engineering , 2005 .

[9]  Michael Eonsuk Shin,et al.  Automated Software Product Line Engineering and Product Derivation , 2007, 2007 40th Annual Hawaii International Conference on System Sciences (HICSS'07).

[10]  Richard N. Taylor,et al.  A Classification and Comparison Framework for Software Architecture Description Languages , 2000, IEEE Trans. Software Eng..

[11]  Stuart R. Faulk Product-line requirements specification (PRS): an approach and case study , 2001, Proceedings Fifth IEEE International Symposium on Requirements Engineering.

[12]  S. Meier,et al.  Modeling and Evolving Crosscutting Concerns in ADORA , 2007, Early Aspects at ICSE: Workshops in Aspect-Oriented Requirements Engineering and Architecture Design (EARLYASPECTS'07).

[13]  Jeff Magee,et al.  The Koala Component Model for Consumer Electronics Software , 2000, Computer.

[14]  M. Zand,et al.  Aspectual Support for Specifying Requirements in Software Product Lines , 2007, Early Aspects at ICSE: Workshops in Aspect-Oriented Requirements Engineering and Architecture Design (EARLYASPECTS'07).

[15]  Martin Glinz,et al.  Object-oriented modeling with A , 2002, Inf. Syst..

[16]  Klaus Schmid,et al.  A customizable approach to full lifecycle variability management , 2004, Sci. Comput. Program..

[17]  Martin Glinz,et al.  Aspect-Oriented Modeling with Integrated Object Models , 2006, Modellierung.

[18]  Alexander Nyßen,et al.  Are Aspects useful for Managing Variability in Software Product Lines ? A Case Study , 2005 .

[19]  Awais Rashid,et al.  From Requirements Documents to Feature Models for Aspect Oriented Product Line Implementation , 2005, MoDELS.