Runtime monitoring of requirements in software development can increase the reliability of the resulting systems. On the one hand, if used to detect errors in programs, runtime monitoring can not only enhance testing and debugging but also provide the capability of predicting concurrency errors. On the other hand, if used as an integral part of a system to detect and recover from requirements violations at runtime, monitoring can increase the dependability and safety of the deployed system by guiding the running system to avoid catastrophic failures. In this talk, I will discuss two novel runtime monitoring approaches, namely predictive runtime analysis and monitoring oriented programming (MOP). The former is a technique that effectively and correctly predicts concurrency bugs during testing by improving the coverage of runtime monitoring using static analysis information, while the latter is a generic and efficient framework for developing morning based applications.
Feng Chen is a PhD candidate in the Department of Computer Science at the University of Illinois at Urbana-Champaign. His PhD thesis research is in the area of program analysis, with focus on using runtime monitoring and static analysis to increase the reliability of software. He is also interested and active in the broader areas of formal methods, programming language semantics and design, as well as in their use in software development. Feng Chen received C.L and Jane Liu award for the most promising graduate student from the Department of Computer Science at UIUC in 2005. He obtained an MS degree in Computer Science in 2002 at Peking University.