author: Ale Strooisma
title: A monitoring solution for multi-language software
topics: Other
committee: Arend Rensink
end: July 2016


Correctness of software is very important. In some applications a software failure may cause serious |even physical| damage, for example when the software manages railroad switches. In other applications the results of a software failure might not be so dramatic, but preventing failures is still essential in order to provide a good user experience.

Runtime monitoring is a method for ensuring software correctness that can be used in addition to the more conventional software testing and model checking. Runtime monitoring is applied at runtime in production environments, as opposed to software testing and model checking which are only applied in a development environment.

Currently there are no runtime monitoring frameworks available for software consisting of multiple components written in di erent languages, even though runtime monitoring can be very useful for such complex systems. This report presents an architecture and prototype implementation for such a system. This architecture is very extensible and highly extensible in order to support many very di erent components and programming languages.

Additional Resources

  1. The paper