|
[ Publications ]
[ Research Opportunities ]
[ Partners & Supporters ]
[ Earlier Work ]
|
|
Dynamically Inferring, Refining, and Checking API Usage Protocols
|
| Michael Pradel,
Thomas R. Gross,
Dynamically Inferring, Refining, and Checking API Usage Protocols, ACM/SIGPLAN Student Research Competition at OOPSLA 2009.
[OOPSLA_SRC_2009.pdf]
|
| Using a set of API methods often requires compliance with a protocol, whose violation can lead to errors in the program. However, most APIs lack explicit and formal definitions of these protocols. We propose a dynamic program analysis for automatically inferring and refining specifications of correct method call sequences. Our experiments with several Java programs show that we can infer meaningful protocols, such as widely respected programming rules. Furthermore, our analysis finds violations of the inferred specifications that point out potential bugs to the programmer. |
|
[ Publications ]
[ Research Opportunities ]
[ Partners & Supporters ]
[ Earlier Work ]
|
|