Loading…

Mining exception-handling rules as sequence association rules

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 de...

Full description

Saved in:
Bibliographic Details
Published in:International Conference on Software Engineering 2009 2009-05, Vol.2009 (2)
Main Authors: Thummalapenta, Suresh, Xie, Tao
Format: Article
Language:English
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
cited_by
cites
container_end_page
container_issue 2
container_start_page
container_title International Conference on Software Engineering 2009
container_volume 2009
creator Thummalapenta, Suresh
Xie, Tao
description 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 '(FC1c1...FCcn) {AND} FCa {rightwards double arrow} (FCe1...FCem)'. This rule describes that function call FCa should be followed by a sequence of function calls (FCe1...FCem) when FCa is preceded by a sequence of function calls (FCe1...FCcn). 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.
doi_str_mv 10.1145/1273463.1273486
format article
fullrecord <record><control><sourceid>proquest</sourceid><recordid>TN_cdi_proquest_miscellaneous_34995935</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>34995935</sourcerecordid><originalsourceid>FETCH-proquest_miscellaneous_349959353</originalsourceid><addsrcrecordid>eNqNjT0PgjAYhJuoiajMrkxuYD-BDk5G4-LmThp81ZpakBcSf76g_gCnu9w9lyNkyWjCmFRrxjMhU5F8NE9HJNRZziSXUkgl5JgElGc0VlxlUzJDvFNKU6l1QDZH662_RvAqoW5t5eOb8Wc3RE3nACODEcKzA19C77EqrRmwb7sgk4txCOFP52S13522h7huqn6DbfGwWIJzxkPVYSH6T6WFEn-Db-lJQsY</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>34995935</pqid></control><display><type>article</type><title>Mining exception-handling rules as sequence association rules</title><source>IEEE Xplore All Conference Series</source><source>IEEE Electronic Library (IEL) Conference Proceedings</source><creator>Thummalapenta, Suresh ; Xie, Tao</creator><creatorcontrib>Thummalapenta, Suresh ; Xie, Tao</creatorcontrib><description>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 '(FC1c1...FCcn) {AND} FCa {rightwards double arrow} (FCe1...FCem)'. This rule describes that function call FCa should be followed by a sequence of function calls (FCe1...FCem) when FCa is preceded by a sequence of function calls (FCe1...FCcn). 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.</description><identifier>ISSN: 0270-5257</identifier><identifier>ISBN: 9781424434534</identifier><identifier>ISBN: 142443453X</identifier><identifier>DOI: 10.1145/1273463.1273486</identifier><language>eng</language><ispartof>International Conference on Software Engineering 2009, 2009-05, Vol.2009 (2)</ispartof><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,778,782,27907,27908</link.rule.ids></links><search><creatorcontrib>Thummalapenta, Suresh</creatorcontrib><creatorcontrib>Xie, Tao</creatorcontrib><title>Mining exception-handling rules as sequence association rules</title><title>International Conference on Software Engineering 2009</title><description>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 '(FC1c1...FCcn) {AND} FCa {rightwards double arrow} (FCe1...FCem)'. This rule describes that function call FCa should be followed by a sequence of function calls (FCe1...FCem) when FCa is preceded by a sequence of function calls (FCe1...FCcn). 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.</description><issn>0270-5257</issn><isbn>9781424434534</isbn><isbn>142443453X</isbn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2009</creationdate><recordtype>article</recordtype><recordid>eNqNjT0PgjAYhJuoiajMrkxuYD-BDk5G4-LmThp81ZpakBcSf76g_gCnu9w9lyNkyWjCmFRrxjMhU5F8NE9HJNRZziSXUkgl5JgElGc0VlxlUzJDvFNKU6l1QDZH662_RvAqoW5t5eOb8Wc3RE3nACODEcKzA19C77EqrRmwb7sgk4txCOFP52S13522h7huqn6DbfGwWIJzxkPVYSH6T6WFEn-Db-lJQsY</recordid><startdate>20090524</startdate><enddate>20090524</enddate><creator>Thummalapenta, Suresh</creator><creator>Xie, Tao</creator><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>20090524</creationdate><title>Mining exception-handling rules as sequence association rules</title><author>Thummalapenta, Suresh ; Xie, Tao</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-proquest_miscellaneous_349959353</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2009</creationdate><toplevel>online_resources</toplevel><creatorcontrib>Thummalapenta, Suresh</creatorcontrib><creatorcontrib>Xie, Tao</creatorcontrib><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>International Conference on Software Engineering 2009</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Thummalapenta, Suresh</au><au>Xie, Tao</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Mining exception-handling rules as sequence association rules</atitle><jtitle>International Conference on Software Engineering 2009</jtitle><date>2009-05-24</date><risdate>2009</risdate><volume>2009</volume><issue>2</issue><issn>0270-5257</issn><isbn>9781424434534</isbn><isbn>142443453X</isbn><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 '(FC1c1...FCcn) {AND} FCa {rightwards double arrow} (FCe1...FCem)'. This rule describes that function call FCa should be followed by a sequence of function calls (FCe1...FCem) when FCa is preceded by a sequence of function calls (FCe1...FCcn). 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.</abstract><doi>10.1145/1273463.1273486</doi></addata></record>
fulltext fulltext
identifier ISSN: 0270-5257
ispartof International Conference on Software Engineering 2009, 2009-05, Vol.2009 (2)
issn 0270-5257
language eng
recordid cdi_proquest_miscellaneous_34995935
source IEEE Xplore All Conference Series; IEEE Electronic Library (IEL) Conference Proceedings
title Mining exception-handling rules as sequence association rules
url http://sfxeu10.hosted.exlibrisgroup.com/loughborough?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-16T09%3A16%3A14IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Mining%20exception-handling%20rules%20as%20sequence%20association%20rules&rft.jtitle=International%20Conference%20on%20Software%20Engineering%202009&rft.au=Thummalapenta,%20Suresh&rft.date=2009-05-24&rft.volume=2009&rft.issue=2&rft.issn=0270-5257&rft.isbn=9781424434534&rft.isbn_list=142443453X&rft_id=info:doi/10.1145/1273463.1273486&rft_dat=%3Cproquest%3E34995935%3C/proquest%3E%3Cgrp_id%3Ecdi_FETCH-proquest_miscellaneous_349959353%3C/grp_id%3E%3Coa%3E%3C/oa%3E%3Curl%3E%3C/url%3E&rft_id=info:oai/&rft_pqid=34995935&rft_id=info:pmid/&rfr_iscdi=true