Assessing Product Line Derivation Operators Applied to Java Source Code: An Empirical Study

João Bosco Ferreira Filho 1 Simon Allier 1 Olivier Barais 1 Mathieu Acher 1 Benoit Baudry 1
1 DiverSe - Diversity-centric Software Engineering
Inria Rennes – Bretagne Atlantique , IRISA-D4 - LANGAGE ET GÉNIE LOGICIEL
Abstract : Product Derivation is a key activity in Software Product Line Engineering. During this process, derivation operators modify or create core assets (e.g., model elements, source code instructions, components) by adding, removing or substituting them according to a given configuration. The result is a derived product that generally needs to conform to a programming or modeling language. Some operators lead to invalid products when applied to certain assets, some others do not; knowing this in advance can help to better use them, however this is challenging, specially if we consider assets expressed in extensive and complex languages such as Java. In this paper, we empirically answer the following question: which product line operators, applied to which program elements , can synthesize variants of programs that are incorrect , correct or perhaps even conforming to test suites? We implement source code transformations, based on the derivation operators of the Common Variability Language. We automatically synthesize more than 370,000 program variants from a set of 8 real large Java projects (up to 85,000 lines of code), obtaining an extensive panorama of the sanity of the operations.
Document type :
Conference papers
Complete list of metadatas

Cited literature [31 references]  Display  Hide  Download

https://hal.inria.fr/hal-01163423
Contributor : Joao Bosco Ferreira Filho <>
Submitted on : Monday, June 15, 2015 - 10:55:32 AM
Last modification on : Friday, November 16, 2018 - 1:38:09 AM
Long-term archiving on : Tuesday, April 25, 2017 - 7:42:43 AM

File

VaryJavaSPLC2015.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-01163423, version 1

Citation

João Bosco Ferreira Filho, Simon Allier, Olivier Barais, Mathieu Acher, Benoit Baudry. Assessing Product Line Derivation Operators Applied to Java Source Code: An Empirical Study. 19th International Software Product Line Conference (SPLC'15), Jul 2015, Nashville, TN, United States. ⟨hal-01163423⟩

Share

Metrics

Record views

1366

Files downloads

379