Specification-based Monitoring in C++
收藏资源简介:
Software systems cannot in general be assumed proven correct before deployment. Testing is still the most common approach to demonstrate a satisfactory level of correctness. However, some errors will survive verification efforts, and it is therefore reasonable to monitor a system after deployment, to determine whether it executes correctly. Both for testing and post-deployment monitoring, it may be desirable to be able to formalize correctness properties that can be monitored against program executions. This is also referred to as runtime verification. We present a specification language and a monitoring system for monitoring such specifications against an event stream. The monitoring engine front-end (parser and translator) is written in Scala, whereas the back-end (the monitoring engine) is written in C++. This makes it feasible to monitor the execution of C and C++ programs online.



