This project addresses software development and analysis techniques that take runtime monitoring as a foundational principle. The proposed research is based on the idea that effective monitoring code is automatically generated from high-level, human-readable system requirements specifications, and then used to either detect or predict violations of requirements in software systems at runtime. The proposed techniques aim at detecting errors in complex software systems and at narrowing the gap between specification and implementation by allowing the former to play an active role in the execution of programs via monitoring and guiding.

Many aspects of the proposed research focus on designing and implementing monitor synthesis and integration algorithms. A generic method to add new requirements specification formalisms modularly and compactly to a runtime environment is designed. Techniques to detect not only errors that happened, but especially errors which were close to happen are developed, together with techniques to monitor complex concurrent systems in a decentralized manner. The proposed research is expected to lead to novel scalable techniques to detect errors in software systems, as well as to programming methodologies for robust and dependable software, thus having a direct impact on how high-quality software is being tested and developed.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Communication Foundations (CCF)
Application #
0448501
Program Officer
Sol J. Greenspan
Project Start
Project End
Budget Start
2005-04-01
Budget End
2010-03-31
Support Year
Fiscal Year
2004
Total Cost
$400,000
Indirect Cost
Name
University of Illinois Urbana-Champaign
Department
Type
DUNS #
City
Champaign
State
IL
Country
United States
Zip Code
61820