A Software Product Line (SPL) is a set of similar programs, called variants, with a common code base and well documented variability. Because the number of variants in an SPL can be large, checking them efficiently (e.g., to ensure that they are all well-typed) is a challenging problem. Delta-Oriented Programming (DOP) is a flexible approach to implement SPLs. The Abstract Behavioral Specification (ABS) modeling language and toolchain supports delta-oriented SPLs. In this paper we present an extension of the ABS toolchain with a mechanism for checking that all the variants of an SPL can be generated and are well-typed ABS programs. Currently we have implemented only part of this mechanism: our implementation (integrated in version 1.4.2 of the ABS toolchain and released in April 2017) checks whether all variants can be generated, however it does not check, in particular, whether the bodies of the methods are well-typed. Empirical evaluation shows that the current implementation allows for efficient partial type checking of existing ABS SPLs.

An extension of the ABS toolchain with a mechanism for type checking SPLs

DAMIANI, Ferruccio;LIENHARDT, Michael;
2017-01-01

Abstract

A Software Product Line (SPL) is a set of similar programs, called variants, with a common code base and well documented variability. Because the number of variants in an SPL can be large, checking them efficiently (e.g., to ensure that they are all well-typed) is a challenging problem. Delta-Oriented Programming (DOP) is a flexible approach to implement SPLs. The Abstract Behavioral Specification (ABS) modeling language and toolchain supports delta-oriented SPLs. In this paper we present an extension of the ABS toolchain with a mechanism for checking that all the variants of an SPL can be generated and are well-typed ABS programs. Currently we have implemented only part of this mechanism: our implementation (integrated in version 1.4.2 of the ABS toolchain and released in April 2017) checks whether all variants can be generated, however it does not check, in particular, whether the bodies of the methods are well-typed. Empirical evaluation shows that the current implementation allows for efficient partial type checking of existing ABS SPLs.
2017
13th International Conference on Integrated Formal Methods, IFM 2017
ita
2017
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Springer Verlag
10510
111
126
9783319668444
http://springerlink.com/content/0302-9743/copyright/2005/
Theoretical Computer Science; Computer Science (all)
Damiani, Ferruccio; Lienhardt, Michael; Muschevici, Radu; Schaefer, Ina
File in questo prodotto:
File Dimensione Formato  
LNCS-iFM-2017-Damiani-et-al.pdf

Accesso riservato

Descrizione: Articolo principale (conferenza)
Tipo di file: PDF EDITORIALE
Dimensione 357.69 kB
Formato Adobe PDF
357.69 kB Adobe PDF   Visualizza/Apri   Richiedi una copia
LNCS-iFM-2017-Damiani-et-al-OPEN.pdf

Open Access dal 28/08/2018

Descrizione: Articolo principale (conferenza)
Tipo di file: POSTPRINT (VERSIONE FINALE DELL’AUTORE)
Dimensione 791.85 kB
Formato Adobe PDF
791.85 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/1649744
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 7
  • ???jsp.display-item.citation.isi??? ND
social impact