Synthesizing type-safe compositions in feature oriented software designs using staged composition

The composition of features that interact with each other is challenging. Algebraic formalisms have been proposed by various authors to describe feature compositions and their interactions. The intention of feature compositions is the composition of fragments of documents of any kind to a product that fulfills users' requirements expressed by a feature selection. These modules often include code modules of typed programming languages whereas the proposed algebraic formalism is agnostic to types. This situation can lead to product code which is not type correct. In addition, types can carry semantic information on a program or module. We present a type system and connect it to an algebraic formalism thereby allowing automatic synthesis of feature compositions yielding well-typed programs.

[1]  Andrej Dudenhefner,et al.  Typing Classes and Mixins with Intersection Types , 2015, ITRS.

[2]  Andrej Dudenhefner,et al.  Combinatory Logic Synthesizer , 2014, ISoLA.

[3]  Jakob Rehof,et al.  Bounded Combinatory Logic , 2012, CSL.

[4]  Antonio Ruiz Cortés,et al.  Automated Reasoning on Feature Models , 2005, Seminal Contributions to Information Systems Engineering.

[5]  Sven Apel,et al.  An Overview of Feature-Oriented Software Development , 2009, J. Object Technol..

[6]  Jakob Rehof,et al.  Staged Composition Synthesis , 2014, Software Engineering & Management.

[7]  Betti Venneri,et al.  Intersection Types as Logical Formulae , 1994, J. Log. Comput..

[8]  William R. Cook,et al.  Safe composition of product lines , 2007, GPCE '07.

[9]  Don S. Batory,et al.  Feature Models, Grammars, and Propositional Formulas , 2005, SPLC.

[10]  Jakob Rehof,et al.  Towards Combinatory Logic Synthesis , 2013 .

[11]  Gunter Saake,et al.  Feature-Oriented Software Product Lines , 2013, Springer Berlin Heidelberg.

[12]  Jia Liu,et al.  Modeling Interactions in Feature Oriented Software Designs , 2005, FIW.

[13]  Gunter Saake,et al.  Feature-Oriented Software Product Lines , 2013, Springer Berlin Heidelberg.

[14]  Sergio Segura,et al.  Automated analysis of feature models 20 years later: A literature review , 2010, Inf. Syst..

[15]  Christian Prehofer,et al.  Semantic reasoning about feature composition via multiple aspect-weavings , 2006, GPCE '06.

[16]  Krzysztof Czarnecki,et al.  Efficient synthesis of feature models , 2012, SPLC '12.

[17]  Frank Pfenning,et al.  A modal analysis of staged computation , 1996, POPL '96.

[18]  Krzysztof Czarnecki,et al.  Feature Diagrams and Logics: There and Back Again , 2007, 11th International Software Product Line Conference (SPLC 2007).

[19]  Mike Mannion Using First-Order Logic for Product Line Model Validation , 2002, SPLC.

[20]  Bernhard Möller,et al.  Features, modularity, and variation points , 2013, FOSD '13.

[21]  Mariangiola Dezani-Ciancaglini,et al.  A filter lambda model and the completeness of type assignment , 1983, Journal of Symbolic Logic.

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