ACM Home Page
Please provide us with feedback. Feedback
Automatic documentation inference for exceptions
Full text PdfPdf (348 KB)
Source
International Symposium on Software Testing and Analysis archive
Proceedings of the 2008 international symposium on Software testing and analysis table of contents
Seattle, WA, USA
SESSION: Inference table of contents
Pages 273-282  
Year of Publication: 2008
ISBN:978-1-60558-050-0
Authors
Raymond P.L. Buse  University of Virginia, Charlottesville, VA, USA
Westley R. Weimer  University of Virginia, Charlottesville, VA, USA
Sponsors
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 1,   Downloads (12 Months): 76,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1390630.1390664
What is a DOI?

ABSTRACT

Exception handling is a powerful and widely-used programming language abstraction for constructing robust software systems. Unfortunately, it introduces an inter-procedural flow of control that can be difficult to reason about. Failure to do so correctly can lead to security vulnerabilities, breaches of API encapsulation, and any number of safety policy violations.

We present a fully automated tool that statically infers and characterizes exception-causing conditions in Java programs. Our tool is based on an inter-procedural, context-sensitive analysis. The output of this tool is well-suited for use as human-readable documentation of exceptional conditions.

We evaluate the output of our tool by comparing it to over 900 instances of existing exception documentation in almost two million lines of code. We find that the output of our tool is at least as good as existing documentation 85% of the time and is better 25% of the time.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
3
 
4
T. Cargill. Exception handling: a false sense of security. C++ Report, 6(9), 1994.
 
5
6
 
7
8
9
10
11
 
12
R. V.-R. et. al. Soot -- a java optimization framework. In Proceedings of CASCON 1999, pages 125--135, 1999.
13
14
 
15
16
18
19
20
21
 
23
D. Malayeri and J. Aldrich. Practical exception specifications. In Advanced Topics in Exception Handling Techniques, pages 200--220, 2006.
 
24
K. L. McMillan. Applications of craig interpolants in model checking. In Tools and Algorithms for the Construction and Analysis of Systems, pages 1--12, 2005.
 
25
R. Miller and A. Tripathi. Issues with exception handling in object-oriented systems. In European Conference on Object-Oriented Programming, pages 85--103, 1997.
26
 
27
 
28
 
29
30
31
 
32
 
33
34
 
35
 
36
37
38
39
40
 
57
 
74
O. Lhoták and L. Hendren. Scaling Java points--to analysis using Spark. In G. Hedin, editor, Compiler Construction, 12th International Conference, volume 2622 of LNCS, pages 153--169, Warsaw, Poland, April 2003. Springer.


Collaborative Colleagues:
Raymond P.L. Buse: colleagues
Westley R. Weimer: colleagues