An example
- An example where we find a bug
iterator_has_next
- draw and explain monitor FSM
- might be worth writing out the trace (alluding to trace slicing without actually defining it)
A specification
Runtime Verification in Practice
Usefulness of RV
- Usefulness of RV (ASE '16)
- Adding RV to the testing process!
Open challenges and techniques
Specifications: As with many specification-reliant tools, RV quality depends on the specifications that are used. A large question then is, who writes and validates these specifications? Writing specifications
Speeding up RV:
One dimension we can consider improving performance is reducing the amount of testing + RV needed based on code updates. Software Development cycles often employ Continuous Integration (CI), where tests are executed after every commit to a repository. We implemented eMOP in Java, which you can read about it more in our paper.
For more information, check out How Good Are the Specs? A Study of the Bug-Finding Effectiveness of Existing Java API Specifications (Legunsen et al., ASE 2016).
More Resources
- More resources
- Cornell SE
- CS6156
- RV textbook?
- Wikipedia is surprisingly verbose
- RV conference
- Other cool work: RV theory (hyperproperties), Cyberphysical systems