Towards automated provenance collection for runtime models to record system history

Owen Reynolds, Antonio García-Domínguez, Nelly Bencomo

Research output: Chapter in Book/Published conference outputConference publication

Abstract

In highly dynamic environments, systems are expected to make decisions on the fly based on their observations that are bound to be partial. As such, the reasons for its runtime behaviour may be difficult to understand. In these cases, accountability is crucial, and decisions by the system need to be traceable. Logging is essential to support explanations of behaviour, but it poses challenges. Concerns about analysing massive logs have motivated the introduction of structured logging, however, knowing what to log and which details to include is still a challenge. Structured logs still do not necessarily relate events to each other, or indicate time intervals. We argue that logging changes to a runtime model in a provenance graph can mitigate some of these problems. The runtime model keeps only relevant details, therefore reducing the volume of the logs, while the provenance graph records causal connections between the changes and the activities performed by the agents in the system that have introduced them. In this paper, we demonstrate a first version towards a reusable infrastructure for the automated construction of such a provenance graph. We apply it to a multithreaded traffic simulation case study, with multiple concurrent agents managing different parts of the simulation. We show how the provenance graphs can support validating the system behaviour, and how a seeded fault is reflected in the provenance graphs.
Original languageEnglish
Title of host publicationProceedings of the 12th System Analysis and Modelling Conference, SAM 2020
PublisherACM
Pages12-22
Number of pages11
ISBN (Electronic)978-1-4503-8140-6
DOIs
Publication statusPublished - 19 Oct 2020

Publication series

NameProceedings of the 12th System Analysis and Modelling Conference, SAM 2020

Bibliographical note

Permission to make digital or hard copies of all or part of this work for personal or
classroom use is granted without fee provided that copies are not made or distributed
for profit or commercial advantage and that copies bear this notice and the full citation
on the first page. Copyrights for components of this work owned by others than ACM
must be honored. Abstracting with credit is permitted. To copy otherwise, or republish,
to post on servers or to redistribute to lists, requires prior specific permission and/or a
fee. Request permissions from permissions@acm.org.
SAM ’20, October 19–20, 2020, Virtual Event, Canada
© 2020 Association for Computing Machinery

Keywords

  • Multi-threading
  • Provenance
  • Runtime models
  • Self-adaptation
  • Self-explanation

Cite this