ACM Home Page
Please provide us with feedback. Feedback
Anomaly-based bug prediction, isolation, and validation: an automated approach for software debugging
Full text PdfPdf (600 KB)
Source
Architectural Support for Programming Languages and Operating Systems archive
Proceeding of the 14th international conference on Architectural support for programming languages and operating systems table of contents
Washington, DC, USA
SESSION: Reliable systems I table of contents
Pages 61-72  
Year of Publication: 2009
ISBN:978-1-60558-406-5
Also published in ...
Authors
Martin Dimitrov  University of Central Florida, Orlando, FL, USA
Huiyang Zhou  University of Central Florida, Orlando, FL, USA
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
SIGOPS: ACM Special Interest Group on Operating Systems
ACM: Association for Computing Machinery
SIGARCH: ACM Special Interest Group on Computer Architecture
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 20,   Downloads (12 Months): 159,   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/1508244.1508252
What is a DOI?

ABSTRACT

Software defects, commonly known as bugs, present a serious challenge for system reliability and dependability. Once a program failure is observed, the debugging activities to locate the defects are typically nontrivial and time consuming. In this paper, we propose a novel automated approach to pin-point the root-causes of software failures.

Our proposed approach consists of three steps. The first step is bug prediction, which leverages the existing work on anomaly-based bug detection as exceptional behavior during program execution has been shown to frequently point to the root cause of a software failure. The second step is bug isolation, which eliminates false-positive bug predictions by checking whether the dynamic forward slices of bug predictions lead to the observed program failure. The last step is bug validation, in which the isolated anomalies are validated by dynamically nullifying their effects and observing if the program still fails. The whole bug prediction, isolation and validation process is fully automated and can be implemented with efficient architectural support. Our experiments with 6 programs and 7 bugs, including a real bug in the gcc 2.95.2 compiler, show that our approach is highly effective at isolating only the relevant anomalies. Compared to state-of-art debugging techniques, our proposed approach pinpoints the defect locations more accurately and presents the user with a much smaller code set to analyze.


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
A. Barr, "Find the Bug", Addison-Wesley, 2004.
3
4
 
5
6
 
7
 
8
9
10
11
 
12
M.J. Harrold, G. Rothermel, K. Sayre, R. Wu and L. Yi, " An empirical investigation of the relationship between spectra differences and regression faults", Journal of Software Testing and Reliability, Vol. 10, No. 3, 2000
13
 
14
D. Jeffrey, N. Gupta and R. Gupta, "Identifying the root causes of memory bugs using corrupted memory location suppression", ICSM 2008
 
15
 
16
S. Lu, Z. Li, F. Qin, L. Tan, P. Zhou and Y. Zhou, "Bugbench: Benchmarks for evaluating bug detection tools", Work. on Eval. of SW Defect Detection Tools, June 2005.
17
18
19
20
21
22
23
 
24
 
25
M. Renieris and S. Reiss, "Fault localization with nearest neighbor queries", ASE, 2003
26
27
 
28
S. Sidiroglou, M. Locasto and A. Keromytis, "Hardware support for self-healing software services", Workshop on Arch. Supp. for Security and Anti-Virus, 2004.
29
30
 
31
F. Tip, "A survey of program slicing techniques", Journal of Programming Languages, Vol.3, No. 3, 1995.
 
32
N. Wang and S. Patel, "ReStore: Symptom Based Soft Error Detection in Microprocessors", DSN, 2005.
 
33
M. Weiser, "Program Slicing", IEEE TSE, Vol. SE-10, No. 4, 1982.
34
35
36
37
38
 
39
 
40
41
42
43
 
44

Collaborative Colleagues:
Martin Dimitrov: colleagues
Huiyang Zhou: colleagues