Delta-oriented programming (DOP) is a flexible approach for implementing software product lines (SPLs). DOP SPLs are implemented by a set of delta modules encapsulating changes to class-based object-oriented programs. A particular product in a DOP SPL is generated by applying to the empty program the modifications contained in the delta modules associated to the selected product features. Traits are pure units of behavior, designed to support flexible fine-grained reuse and to provide an effective means to counter the limitations of class-based inheritance. A trait is a set of methods which is independent from any class hierarchy and can be flexibly used to build other traits or classes by means of a suite of composition operations. In this paper, we present an approach for programming SPLs of trait-based programs where the program modifications expressed by delta modules are formulated by exploiting the trait composition mechanism. This smooth integration of the modularity mechanisms provided by delta modules and traits results in a new approach for programming SPLs, delta-trait programming (DTP), which is particularly well suited for evolving SPLs.

Delta-Trait Programming of Software Product Lines

DAMIANI, Ferruccio;
2014-01-01

Abstract

Delta-oriented programming (DOP) is a flexible approach for implementing software product lines (SPLs). DOP SPLs are implemented by a set of delta modules encapsulating changes to class-based object-oriented programs. A particular product in a DOP SPL is generated by applying to the empty program the modifications contained in the delta modules associated to the selected product features. Traits are pure units of behavior, designed to support flexible fine-grained reuse and to provide an effective means to counter the limitations of class-based inheritance. A trait is a set of methods which is independent from any class hierarchy and can be flexibly used to build other traits or classes by means of a suite of composition operations. In this paper, we present an approach for programming SPLs of trait-based programs where the program modifications expressed by delta modules are formulated by exploiting the trait composition mechanism. This smooth integration of the modularity mechanisms provided by delta modules and traits results in a new approach for programming SPLs, delta-trait programming (DTP), which is particularly well suited for evolving SPLs.
2014
6th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation, ISoLA 2014
Imperial, Corfu, Greece
8-11 October 2014
Lecture Notes in Computer ScienceLeveraging Applications of Formal Methods, Verification and Validation. Technologies for Mastering Change
Springer Verlag
8802
289
303
9783662452332
9783662452349
http://link.springer.com/chapter/10.1007%2F978-3-662-45234-9_21
Class hierarchies; Composition mechanisms; New approaches; Object-oriented program; Product feature; Software Product Line
Ferruccio Damiani;Ina Schaefer;Sven Schuster;Tim Winkelmann
File in questo prodotto:
File Dimensione Formato  
LNCS-isola-2014.pdf

Accesso riservato

Descrizione: Articolo principale (versione per conferenza)
Tipo di file: PDF EDITORIALE
Dimensione 167.64 kB
Formato Adobe PDF
167.64 kB Adobe PDF   Visualizza/Apri   Richiedi una copia
open-access-main.pdf

Open Access dal 01/01/2016

Descrizione: Articolo principale (conferenza)
Tipo di file: POSTPRINT (VERSIONE FINALE DELL’AUTORE)
Dimensione 357.15 kB
Formato Adobe PDF
357.15 kB Adobe PDF Visualizza/Apri

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/2318/150052
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 4
  • ???jsp.display-item.citation.isi??? 3
social impact