Delta-oriented programming (DOP) is a flexible transformational approach to implement software product lines (SPLs). In delta-oriented SPLs, variants are generated by applying operations contained in delta modules to a base program. These operations can add, remove or modify named elements in a program (e.g. classes, methods and fields in a Java program). This paper presents two notions of normal form for delta-oriented SPLs. Both normal forms do not contain the remove operation. Additionally, the second normal form enforces a limitation on the use of the method-modify operation. For each of the proposed normal forms an algorithm for refactoring a delta-oriented SPL into one that satisfies that normal form is described. The algorithms are formalized for a core calculus for delta-oriented SPLs of Java programs.

Automatic refactoring of delta-oriented SPLs to remove-free form and replace-free form

Damiani F.;Lienhardt M.;Paolini L.
2019-01-01

Abstract

Delta-oriented programming (DOP) is a flexible transformational approach to implement software product lines (SPLs). In delta-oriented SPLs, variants are generated by applying operations contained in delta modules to a base program. These operations can add, remove or modify named elements in a program (e.g. classes, methods and fields in a Java program). This paper presents two notions of normal form for delta-oriented SPLs. Both normal forms do not contain the remove operation. Additionally, the second normal form enforces a limitation on the use of the method-modify operation. For each of the proposed normal forms an algorithm for refactoring a delta-oriented SPL into one that satisfies that normal form is described. The algorithms are formalized for a core calculus for delta-oriented SPLs of Java programs.
2019
21
6
691
707
http://springerlink.metapress.com/app/home/journal.asp?wasp=e2ggqmluwmc226vrfl1y&referrer=parent&backto=linkingpublicationresults,1:101563,1
Automated refactoring; Delta-oriented programming; Featherweight Java; Software product lines
Damiani F.; Lienhardt M.; Paolini L.
File in questo prodotto:
File Dimensione Formato  
mainSTTT.pdf

Open Access dal 24/09/2020

Descrizione: Articolo principale (rivista)
Tipo di file: POSTPRINT (VERSIONE FINALE DELL’AUTORE)
Dimensione 405.94 kB
Formato Adobe PDF
405.94 kB Adobe PDF Visualizza/Apri
STTT-FoMaC-Damiani-et-al-2019.pdf

Accesso riservato

Descrizione: Articolo principale (rivista)
Tipo di file: PDF EDITORIALE
Dimensione 1.76 MB
Formato Adobe PDF
1.76 MB Adobe PDF   Visualizza/Apri   Richiedi una copia

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/1717330
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 2
  • ???jsp.display-item.citation.isi??? 0
social impact