ACM Home Page
Please provide us with feedback. Feedback
Fault localization and repair for Java runtime exceptions
Full text PdfPdf (548 KB)
Source
International Symposium on Software Testing and Analysis archive
Proceedings of the eighteenth international symposium on Software testing and analysis table of contents
Chicago, IL, USA
SESSION: Fault localization table of contents
Pages 153-164  
Year of Publication: 2009
ISBN:978-1-60558-338-9
Authors
Saurabh Sinha  IBM India Research Lab, New Delhi, India
Hina Shah  Georgia Institute of Technology, Atlanta, GA, USA
Carsten Görg  Georgia Institute of Technology, Atlanta, GA, USA
Shujuan Jiang  China University of Mining and Technology, Xuzhou, China
Mijung Kim  Georgia Institute of Technology, Atlanta, GA, USA
Mary Jean Harrold  Georgia Institute of Technology, Atlanta, GA, USA
Sponsors
SIGSOFT: ACM Special Interest Group on Software Engineering
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 22,   Downloads (12 Months): 94,   Citation Count: 0
Additional Information:

abstract   references   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/1572272.1572291
What is a DOI?

ABSTRACT

This paper presents a new approach for locating and repairing faults that cause runtime exceptions in Java programs. The approach handles runtime exceptions that involve a flow of an incorrect value that finally leads to the exception. This important class of exceptions includes exceptions related to dereferences of null pointers, arithmetic faults (e.g., ArithmeticException), and type faults (e.g., ArrayStoreException). Given a statement at which such an exception occurred, the technique combines dynamic analysis (using stack-trace information) with static backward data-flow analysis (beginning at the point where the runtime exception occurred) to identify the source statement at which an incorrect assignment was made; this information is required to locate the fault. The approach also identifies the source statements that may cause this same exception on other executions, along with the reference statements that may raise an exception in other executions because of this incorrect assignment; this information is required to repair the fault. The paper also presents an application of our technique to null pointer exceptions. Finally, the paper describes an implementation of the null-pointer-exception analysis and a set of studies that demonstrate the advantages of our approach for locating and repairing faults in the program.


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
 
5
6
7
 
8
9
 
10
11
12
13
 
14
15
 
16
M. Weiser. Program slicing. IEEE Trans. Softw. Eng., 10(4):352--357, July 1984.
17

Collaborative Colleagues:
Saurabh Sinha: colleagues
Hina Shah: colleagues
Carsten Görg: colleagues
Shujuan Jiang: colleagues
Mijung Kim: colleagues
Mary Jean Harrold: colleagues