Who is to Blame? Runtime Verification of Distributed Objects with Active Monitors

Since distributed software systems are ubiquitous, their correct functioning is crucially important. Static verification is possible in principle, but requires high expertise and effort which is not feasible in many eco-systems. Runtime verification can serve as a lean alternative, where monitoring...

Full description

Bibliographic Details
Main Authors: Wolfgang Ahrendt, Ludovic Henrio, Wytse Oortwijn
Format: Article
Language:English
Published: Open Publishing Association 2019-08-01
Series:Electronic Proceedings in Theoretical Computer Science
Online Access:http://arxiv.org/pdf/1908.10042v1
id doaj-76ed59e17617480698a4f2f586df2e78
record_format Article
spelling doaj-76ed59e17617480698a4f2f586df2e782020-11-25T01:15:32ZengOpen Publishing AssociationElectronic Proceedings in Theoretical Computer Science2075-21802019-08-01302Proc. VORTEX 2018324610.4204/EPTCS.302.3:3Who is to Blame? Runtime Verification of Distributed Objects with Active MonitorsWolfgang Ahrendt0Ludovic Henrio1Wytse Oortwijn2 Chalmers University of Technology Univ Lyon, EnsL, UCBL, CNRS, Inria, LIP University of Twente Since distributed software systems are ubiquitous, their correct functioning is crucially important. Static verification is possible in principle, but requires high expertise and effort which is not feasible in many eco-systems. Runtime verification can serve as a lean alternative, where monitoring mechanisms are automatically generated from property specifications, to check compliance at runtime. This paper contributes a practical solution for powerful and flexible runtime verification of distributed, object-oriented applications, via a combination of the runtime verification tool Larva and the active object framework ProActive. Even if Larva supports in itself only the generation of local, sequential monitors, we empower Larva for distributed monitoring by connecting monitors with active objects, turning them into active, communicating monitors. We discuss how this allows for a variety of monitoring architectures. Further, we show how property specifications, and thereby the generated monitors, provide a model that splits the blame between the local object and its environment. While Larva itself focuses on monitoring of control-oriented properties, we use the Larva front-end StaRVOOrS to also capture data-oriented (pre/post) properties in the distributed monitoring. We demonstrate this approach to distributed runtime verification with a case study, a distributed key/value store.http://arxiv.org/pdf/1908.10042v1
collection DOAJ
language English
format Article
sources DOAJ
author Wolfgang Ahrendt
Ludovic Henrio
Wytse Oortwijn
spellingShingle Wolfgang Ahrendt
Ludovic Henrio
Wytse Oortwijn
Who is to Blame? Runtime Verification of Distributed Objects with Active Monitors
Electronic Proceedings in Theoretical Computer Science
author_facet Wolfgang Ahrendt
Ludovic Henrio
Wytse Oortwijn
author_sort Wolfgang Ahrendt
title Who is to Blame? Runtime Verification of Distributed Objects with Active Monitors
title_short Who is to Blame? Runtime Verification of Distributed Objects with Active Monitors
title_full Who is to Blame? Runtime Verification of Distributed Objects with Active Monitors
title_fullStr Who is to Blame? Runtime Verification of Distributed Objects with Active Monitors
title_full_unstemmed Who is to Blame? Runtime Verification of Distributed Objects with Active Monitors
title_sort who is to blame? runtime verification of distributed objects with active monitors
publisher Open Publishing Association
series Electronic Proceedings in Theoretical Computer Science
issn 2075-2180
publishDate 2019-08-01
description Since distributed software systems are ubiquitous, their correct functioning is crucially important. Static verification is possible in principle, but requires high expertise and effort which is not feasible in many eco-systems. Runtime verification can serve as a lean alternative, where monitoring mechanisms are automatically generated from property specifications, to check compliance at runtime. This paper contributes a practical solution for powerful and flexible runtime verification of distributed, object-oriented applications, via a combination of the runtime verification tool Larva and the active object framework ProActive. Even if Larva supports in itself only the generation of local, sequential monitors, we empower Larva for distributed monitoring by connecting monitors with active objects, turning them into active, communicating monitors. We discuss how this allows for a variety of monitoring architectures. Further, we show how property specifications, and thereby the generated monitors, provide a model that splits the blame between the local object and its environment. While Larva itself focuses on monitoring of control-oriented properties, we use the Larva front-end StaRVOOrS to also capture data-oriented (pre/post) properties in the distributed monitoring. We demonstrate this approach to distributed runtime verification with a case study, a distributed key/value store.
url http://arxiv.org/pdf/1908.10042v1
work_keys_str_mv AT wolfgangahrendt whoistoblameruntimeverificationofdistributedobjectswithactivemonitors
AT ludovichenrio whoistoblameruntimeverificationofdistributedobjectswithactivemonitors
AT wytseoortwijn whoistoblameruntimeverificationofdistributedobjectswithactivemonitors
_version_ 1725152683840503808