Abstract delta modelling

Delta modelling is an approach to facilitate the automated product derivation for software product lines. It is based on a set of deltas specifying modifications that are incrementally applied to a core product. The applicability of deltas depends on application conditions over features. This paper presents abstract delta modelling , which explores delta modelling from an abstract, algebraic perspective. Compared to the previous work, we take a more flexible approach to conflicts between modifications by introducing the notion of conflict-resolving deltas. Furthermore, we extend our approach to allow the nesting of delta models for increased modularity. We also present conditions on the structure of deltas to ensure unambiguous product generation.

[1]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[2]  Sven Apel,et al.  Granularity in software product lines , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[3]  Christian Prehofer,et al.  Feature-Oriented Programming: A Fresh Look at Objects , 1997, ECOOP.

[4]  Michiel Helvensteijn,et al.  Abstract delta modeling , 2010, GPCE '10.

[5]  Sven Apel,et al.  Model Superimposition in Software Product Lines , 2009, ICMT@TOOLS.

[6]  Ina Schaefer,et al.  Variability Modelling for Model-Driven Development of Software Product Lines , 2010, VaMoS.

[7]  Sven Apel,et al.  An algebraic foundation for automatic feature-based program synthesis , 2010, Sci. Comput. Program..

[8]  Arie van Deursen,et al.  Domain-specific language design requires feature descriptions , 2002 .

[9]  Reiner Hähnle HATS: Highly Adaptable and Trustworthy Software Using Formal Methods , 2010, ISoLA.

[10]  C. Krueger,et al.  Eliminating the adoption barrier , 2002, IEEE Software.

[11]  A. U.S.,et al.  Finite Map Spaces and Quarks : Algebras of Program Structure , 2007 .

[12]  Sven Apel,et al.  A Case Study Implementing Features Using AspectJ , 2007, 11th International Software Product Line Conference (SPLC 2007).

[13]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[14]  Jacques Klein,et al.  Reconciling Automation and Flexibility in Product Derivation , 2008, 2008 12th International Software Product Line Conference.

[15]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[16]  Don S. Batory,et al.  The design and implementation of hierarchical software systems with reusable components , 1992, TSEM.

[17]  Birger Møller-Pedersen,et al.  Confluence in Domain-Independent Product Line Transformations , 2009, FASE.

[18]  K. Czarnecki,et al.  Cardinality-Based Feature Modeling and Constraints : A Progress Report , 2005 .

[19]  Ina Schaefer,et al.  Compositional type-checking for delta-oriented programming , 2011, AOSD '11.

[20]  Ina Schaefer,et al.  Pure delta-oriented programming , 2010, FOSD '10.

[21]  Viviana Bono,et al.  Delta-Oriented Programming of Software Product Lines , 2010, SPLC.

[22]  Krzysztof Czarnecki,et al.  Staged Configuration Using Feature Models , 2004, SPLC.

[23]  Thomas Leich,et al.  Aspectual Feature Modules , 2008, IEEE Transactions on Software Engineering.

[24]  Arnd Poetzsch-Heffter,et al.  A Model-Based Framework for Automated Product Derivation , 2009, MAPLE@SPLC.

[25]  Awais Rashid,et al.  Framed Aspects: Supporting Variability and Configurability for AOP , 2004, ICSR.

[26]  Gilad Bracha,et al.  Executable Grammars in Newspeak , 2007, Festschrift honoring Gary Lindstrom.

[27]  Ina Schaefer,et al.  Implementing software product lines using traits , 2010, SAC '10.

[28]  Iris Groher,et al.  Product Line Implementation using Aspect-Oriented and Model-Driven Software Development , 2007 .

[29]  Stan Jarzabek,et al.  An XVCL-based Approach to Software Product Line Development , 2003, SEKE.

[30]  Sven Apel,et al.  FEATUREHOUSE: Language-independent, automated software composition , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[31]  Don S. Batory,et al.  Scaling step-wise refinement , 2004, IEEE Transactions on Software Engineering.

[32]  Pierre-Yves Schobbens,et al.  Evaluating formal properties of feature diagram languages , 2008, IET Softw..

[33]  Sven Apel,et al.  Type-Checking Software Product Lines - A Formal Approach , 2008, 2008 23rd IEEE/ACM International Conference on Automated Software Engineering.

[34]  Roberto Erick Lopez-Herrejon,et al.  Evaluating Support for Features in Advanced Modularization Technologies , 2005, ECOOP.

[35]  Iris Groher,et al.  Product Line Implementation using Aspect-Oriented and Model-Driven Software Development , 2007, 11th International Software Product Line Conference (SPLC 2007).

[36]  Tom Mens,et al.  Detecting Structural Refactoring Conflicts Using Critical Pair Analysis , 2005, SETra@ICGT.

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

[38]  Tomoji Kishi,et al.  Aspect-Oriented Modeling for Variability Management , 2008, 2008 12th International Software Product Line Conference.

[39]  Yannis Smaragdakis,et al.  Mixin layers: an object-oriented implementation technique for refinements and collaboration-based designs , 2002, TSEM.

[40]  Jia Liu,et al.  Feature oriented refactoring of legacy applications , 2006, ICSE.

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

[42]  Birger Møller-Pedersen,et al.  Adding Standardized Variability to Domain Specific Languages , 2008, 2008 12th International Software Product Line Conference.

[43]  Sven Apel,et al.  Program refactoring using functional aspects , 2008, GPCE '08.

[44]  Robert Hirschfeld,et al.  Language constructs for context-oriented programming: an overview of ContextL , 2005, DLS '05.

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

[46]  Oscar Nierstrasz,et al.  Traits: A mechanism for fine-grained reuse , 2006, TOPL.

[47]  U. Kulesza,et al.  Bridging the Gap Between Features and Models , 2007 .

[48]  Gunter Saake,et al.  On the impact of the optional feature problem: analysis and case studies , 2009, SPLC.

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

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