Paper

Type
ARTICLE  
Title
Compositional Type Checking of Delta-Oriented Software Product Lines  
Authors
Lorenzo Bettini, Ferruccio Damiani, Ina Schaefer 
Book
Acta Informatica  
Pages
77-122  
Abstract
Delta-oriented programming is a compositional approach to flexibly implementing software product lines. A product line is represented by a code base and a product line declaration. The code base consists of a set of delta modules specifying modifications to object-oriented programs. A particular product in a delta-oriented product line is generated by applying the modifications contained in the suitable delta modules to the empty program. The product-line declaration provides the connection of the delta modules with the product features. This separation increases the reusability of delta modules. In this paper, we provide a foundation for compositional type checking of delta-oriented product lines of JAVA programs by presenting a minimal core calculus for delta-oriented programming. The calculus is equipped with a constraint-based type system that allows analyzing each delta module in isolation, such that the results of the analysis can be reused. By relying only on the analysis results for the delta modules and on the product line declaration, it is possible to establish whether all the products of the product line are well typed according to the JAVA type system.  
Volume
50  
Number
2  
Year
2013  
Bibtex key
BDS12  
Bibtex
@ARTICLE{BDS12,
  title = {{Compositional Type Checking of Delta-Oriented Software Product Lines}},
  author = {Bettini, Lorenzo and Damiani, Ferruccio and Schaefer, Ina},
  journal = {Acta Informatica},
  pages = {77-122},
  abstract = {Delta-oriented programming is a compositional approach to flexibly implementing
      software product lines. A product line is represented by a code base and a
      product line declaration. The code base consists of a set of delta modules
      specifying
      modifications to object-oriented programs. A particular product in a
      delta-oriented
      product line is generated by applying the modifications contained in the
      suitable
      delta modules to the empty program. The product-line declaration provides the
      connection
      of the delta modules with the product features. This separation increases the
      reusability of delta modules. In this paper, we provide a foundation for
      compositional
      type checking of delta-oriented product lines of JAVA programs by presenting a
      minimal
      core calculus for delta-oriented programming. The calculus is equipped with a
      constraint-based type system that allows analyzing each delta module in
      isolation,
      such that the results of the analysis can be reused. By relying only on the
      analysis
      results for the delta modules and on the product line declaration, it is
      possible to establish
      whether all the products of the product line are well typed according to the
      JAVA type system.},
  volume = {50},
  number = {2},
  year = {2013},
  publisher = {Springer},
}
 
Created
2012-11-12 14:57:42  
Modified
2014-09-09 09:42:17