Distribution-Transparency in Runtime Verification

Somayeh Malakuti, Mehmet Akşit, Christoph M. Bockisch · 2011

Run-time verification checks whether the active execution traces of an application fulfills its specified behavior and is especially applicable when one needs to consider the actual execution context in the verification. In today's practices, software is more and more distributed over multiple processes, possibly running at different locations. This is supported by middleware that, to some extend, allows implementing applications in a distribution-transparent way. We define four requirements for the effective verification of such software: 1) abstraction of less-critical details of software behavior due to the complexity of software behavior, 2) distribution-transparent specification of software behavior, as software is also implemented in such a way, 3) end-to-end verification of behavior, and 4) automatic generation of verification modules for arbitrary process and distribution structures. The existing runtime verification systems fall in short to fulfill these requirements, therefore their applicability is limited. We develop the E-Chaser runtime verification system to facilitate the verification of distributed software by addressing these requirements. This paper explains the approach and the prototype implementation of E-Chaser based on the Java-RMI technology.

Read the paper · More papers on PaperTik