Model-based testing relies on a model of the system under test. FineFit is a framework for model-based testing of Java programs. In the FineFit approach, the model is expressed by a set of tables based on Parnas tables. A software product line is a family of programs (the products) with well-defined commonalities and variabilities that are developed by (re)using common artifacts. In this paper, we address the issue of using the FineFit approach to support the development of correct software product lines. We specify a software product line as a specification product line where each product is a FineFit specification of the corresponding software product. The main challenge is to concisely specify the software product line while retaining the readability of the specification of a single system. To address this, we used delta-oriented programming, a recently proposed flexible approach for implementing software product lines, and developed: (1) delta tables as a means to apply the delta-oriented programming idea to the specification of software product lines; and (2) DeltaFineFit as a novel model-based testing approach for software product lines.

A novel model-based testing approach for software product lines

DAMIANI, Ferruccio;
2017-01-01

Abstract

Model-based testing relies on a model of the system under test. FineFit is a framework for model-based testing of Java programs. In the FineFit approach, the model is expressed by a set of tables based on Parnas tables. A software product line is a family of programs (the products) with well-defined commonalities and variabilities that are developed by (re)using common artifacts. In this paper, we address the issue of using the FineFit approach to support the development of correct software product lines. We specify a software product line as a specification product line where each product is a FineFit specification of the corresponding software product. The main challenge is to concisely specify the software product line while retaining the readability of the specification of a single system. To address this, we used delta-oriented programming, a recently proposed flexible approach for implementing software product lines, and developed: (1) delta tables as a means to apply the delta-oriented programming idea to the specification of software product lines; and (2) DeltaFineFit as a novel model-based testing approach for software product lines.
2017
14
4
1223
1251
http://springerlink.metapress.com/app/home/journal.asp?wasp=12dlujwvrkdx54qmhqvl&referrer=parent&backto=browsepublicationsresults,474,541;
http://link.springer.com/article/10.1007%2Fs10270-016-0516-2
Alloy; Delta-oriented programming; Java; Model-based testing; Refinement; Software product line; Software; Modeling and Simulation
Damiani, Ferruccio; Faitelson, David; Gladisch, Christoph; Tyszberowicz, Shmuel
File in questo prodotto:
File Dimensione Formato  
SoSyM-PublishedOnline-2016-02-13-OPEN.pdf

Open Access dal 15/02/2017

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

Accesso riservato

Descrizione: Articolo principale (rivista)
Tipo di file: PDF EDITORIALE
Dimensione 1.65 MB
Formato Adobe PDF
1.65 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/1614384
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 10
  • ???jsp.display-item.citation.isi??? 8
social impact