A Templating System to Generate Provenance

Luc Moreau, Belfrit Victor Batlajery, Trung Dong Huynh, Danius Michaelides, Heather Packer

Research output: Contribution to journalArticlepeer-review

39 Citations (Scopus)
199 Downloads (Pure)

Abstract

PROV-Template is a declarative approach that enables designers and programmers to design and generate provenance compatible with the PROV standard of the World Wide Web Consortium. Designers specify the topology of the provenance to be generated by composing templates, which are provenance graphs containing variables, acting as placeholders for values. Programmers write programs that log values and package them up in sets of bindings, a data structure associating variables and values. An expansion algorithm generates instantiated provenance from templates and sets of bindings in any of the serialisation formats supported by PROV. A quantitative evaluation shows that sets of bindings have a size that is typically 40% of that of expanded provenance templates and that the expansion algorithm is suitably tractable, operating in fractions of milliseconds for the type of templates surveyed in the article. Furthermore, the approach shows four significant software engineering benefits: separation of responsibilities, provenance maintenance, potential runtime checks and static analysis, and provenance consumption. The article gathers quantitative data and qualitative benefits descriptions from four different applications making use of PROV-Template. The system is implemented and released in the open-source library ProvToolbox for provenance processing.
Original languageEnglish
Pages (from-to)103 - 121
JournalIEEE TRANSACTIONS ON SOFTWARE ENGINEERING
Volume44
Issue number2
Early online date24 Apr 2017
DOIs
Publication statusPublished - Feb 2018

Fingerprint

Dive into the research topics of 'A Templating System to Generate Provenance'. Together they form a unique fingerprint.

Cite this