DocumentCode
1994673
Title
Mining exception-handling rules as sequence association rules
Author
Thummalapenta, Suresh ; Xie, Tao
Author_Institution
Dept. of Comput. Sci., North Carolina State Univ., Raleigh, NC
fYear
2009
fDate
16-24 May 2009
Firstpage
496
Lastpage
506
Abstract
Programming languages such as Java and C++ provide exception-handling constructs to handle exception conditions. Applications are expected to handle these exception conditions and take necessary recovery actions such as releasing opened database connections. However, exception-handling rules that describe these necessary recovery actions are often not available in practice. To address this issue, we develop a novel approach that mines exception-handling rules as sequence association rules of the form ldquo(FCc 1...FCc n) nland FCa rArr (FCe 1...FCe m)rdquo. This rule describes that function call FCa should be followed by a sequence of function calls (FCe 1...FCe m) when FCa is preceded by a sequence of function calls (FCe 1...FCc n). Such form of rules is required to characterize common exception-handling rules. We show the usefulness of these mined rules by applying them on five real-world applications (including 285 KLOC) to detect violations in our evaluation. Our empirical results show that our approach mines 294 real exception-handling rules in these five applications and also detects 160 defects, where 87 defects are new defects that are not found by a previous related approach.
Keywords
C++ language; Java; data mining; exception handling; programming languages; C++; Java; function calls; mining exception-handling rules; opened database connections; programming languages; sequence association rules; Application software; Association rules; Computer languages; Computer science; Data mining; Databases; Degradation; Java; Lead;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on
Conference_Location
Vancouver, BC
ISSN
0270-5257
Print_ISBN
978-1-4244-3453-4
Type
conf
DOI
10.1109/ICSE.2009.5070548
Filename
5070548
Link To Document