Code instrumentation is a common method for tracing programs. Developers use it to understand and monitor modern systems with millions of lines of code. Unfortunately, current software-based tracing methods concentrate on preserving logical correctness only and are thus inadequate for application areas such as embedded systems, real-time systems, and concurrent software.
This talk presents a new side of code instrumentation; considering extra-functional properties. Specifically, the talk discusses two approaches relevant for time-sensitive applications: (1) Time-aware instrumentation preserves timing constraints under instrumentation and (2) time-triggered runtime verification provides sound monitoring while preserving jitter and resource demand bounds. Although the two approaches concentrate on timing aspects, they clearly demonstrate the need for future work on instrumentation mechanisms that preserve extra-functional properties.
Sebastian Fischmeister is an Assistant Professor in the Department of Electrical and Computer Engineering at the University of Waterloo, Canada. He received his MASc in Computer Science at the Vienna University of Technology, Austria, and his Ph.D. degree at the University of Salzburg, Austria. He was awarded the APART stipend in 2005 and worked as a research associate at the University of Pennsylvania, USA, until 2008.
He performs systems research at the intersection of software technology, distributed systems, and formal methods. His preferred application areas are distributed real-time embedded systems in the domain of automotive systems, avionics, and medical devices. He is now working on the theory and application of monitoring, debugging, tracing of time-sensitive systems.
This talk is organized by the Institute of Computer Engineering.