Improving Software Fault Localization by Combining Spectrum and Mutation

The performance of software fault localization techniques is critical to software debugging and the reliability of software. Spectrum-based fault localization (SBFL) and mutation-based fault localization (MBFL) are the two most popular fault localization methods. However, the accuracies of the two m...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE access 2020, Vol.8, p.172296-172307
Hauptverfasser: Cui, Zhanqi, Jia, Minghua, Chen, Xiang, Zheng, Liwei, Liu, Xiulei
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 172307
container_issue
container_start_page 172296
container_title IEEE access
container_volume 8
creator Cui, Zhanqi
Jia, Minghua
Chen, Xiang
Zheng, Liwei
Liu, Xiulei
description The performance of software fault localization techniques is critical to software debugging and the reliability of software. Spectrum-based fault localization (SBFL) and mutation-based fault localization (MBFL) are the two most popular fault localization methods. However, the accuracies of the two methods are still limited. For example, only 10.63% of faults can be detected by inspecting the top 3 suspicious elements reported by Ochiai, which is a famous SBFL technique. Unfortunately, programmers only examine the first few suspicious elements before losing patience. Since the information used in SBFL and MBFL are quite different and complementary, this paper proposes a novel approach by combining spectrum and mutation to improve the fault localization accuracy. First, the faulty program is evaluated by using SBFL, and the potential faulty statements are ranked according to their suspiciousness. Then, mutants of the program are generated and executed by MBFL. Finally, the statements that are ranked in the top tied {n} by SBFL are evaluated and reranked according to their mutation scores. Experiments are carried on the Defects4J benchmark and the results reveal that the accuracy of the proposed approach outperforms those of the SBFL and MBFL techniques. In terms of the faults located by inspecting the top 1 suspicious elements, the SMFL techniques detect at least 2.36 times more faults than two SBFL techniques (DStar and Ochiai) and detect at least 1.86 times more faults than two MBFL techniques (MUSE and Metallaxis).
doi_str_mv 10.1109/ACCESS.2020.3025460
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_2454678066</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>9201269</ieee_id><doaj_id>oai_doaj_org_article_7ce488d103cf43ceb8d7d219575f76c1</doaj_id><sourcerecordid>2454678066</sourcerecordid><originalsourceid>FETCH-LOGICAL-c408t-fe9a95f399b86d0b06de2b8a3cbf502d043fc0ac6803739f0e1f7f662e64c63d3</originalsourceid><addsrcrecordid>eNpNUctuwjAQjKpWKqJ8AZdIPUPXduLYRxRBQaLqgfZsOX6goCSmTtKKfn0NQah72dVqZvYxUTRFMEcI-Msiz5e73RwDhjkBnCYU7qIRRpTPSEro_b_6MZq07QFCsNBKs1G03tRH777LZh_vnO1-pDfxSvZVF2-dklX5K7vSNXFxinNXF2VzAR6N6nxfx7LR8VvfXSBP0YOVVWsm1zyOPlfLj3w9276_bvLFdqYSYN3MGi55agnnBaMaCqDa4IJJogqbAtaQEKtAKsqAZIRbMMhmllJsaKIo0WQcbQZd7eRBHH1ZS38STpbi0nB-L6TvSlUZkSmTMKYREGUTokzBdKYxCnenNqMKBa3nQSu84Ks3bScOrvdNWF_gJPwxY0BpQJEBpbxrW2_sbSoCcXZADA6IswPi6kBgTQdWaYy5MTgGhCknf041gYY</addsrcrecordid><sourcetype>Open Website</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2454678066</pqid></control><display><type>article</type><title>Improving Software Fault Localization by Combining Spectrum and Mutation</title><source>IEEE Open Access Journals</source><source>DOAJ Directory of Open Access Journals</source><source>EZB-FREE-00999 freely available EZB journals</source><creator>Cui, Zhanqi ; Jia, Minghua ; Chen, Xiang ; Zheng, Liwei ; Liu, Xiulei</creator><creatorcontrib>Cui, Zhanqi ; Jia, Minghua ; Chen, Xiang ; Zheng, Liwei ; Liu, Xiulei</creatorcontrib><description>The performance of software fault localization techniques is critical to software debugging and the reliability of software. Spectrum-based fault localization (SBFL) and mutation-based fault localization (MBFL) are the two most popular fault localization methods. However, the accuracies of the two methods are still limited. For example, only 10.63% of faults can be detected by inspecting the top 3 suspicious elements reported by Ochiai, which is a famous SBFL technique. Unfortunately, programmers only examine the first few suspicious elements before losing patience. Since the information used in SBFL and MBFL are quite different and complementary, this paper proposes a novel approach by combining spectrum and mutation to improve the fault localization accuracy. First, the faulty program is evaluated by using SBFL, and the potential faulty statements are ranked according to their suspiciousness. Then, mutants of the program are generated and executed by MBFL. Finally, the statements that are ranked in the top tied &lt;inline-formula&gt; &lt;tex-math notation="LaTeX"&gt;{n} &lt;/tex-math&gt;&lt;/inline-formula&gt; by SBFL are evaluated and reranked according to their mutation scores. Experiments are carried on the Defects4J benchmark and the results reveal that the accuracy of the proposed approach outperforms those of the SBFL and MBFL techniques. In terms of the faults located by inspecting the top 1 suspicious elements, the SMFL techniques detect at least 2.36 times more faults than two SBFL techniques (DStar and Ochiai) and detect at least 1.86 times more faults than two MBFL techniques (MUSE and Metallaxis).</description><identifier>ISSN: 2169-3536</identifier><identifier>EISSN: 2169-3536</identifier><identifier>DOI: 10.1109/ACCESS.2020.3025460</identifier><identifier>CODEN: IAECCG</identifier><language>eng</language><publisher>Piscataway: IEEE</publisher><subject>Benchmark testing ; Debugging ; Fault detection ; fault localization ; Fault location ; Information science ; Localization ; Mutation ; mutation testing ; program spectrum ; Software ; Software debugging ; Software quality ; Software reliability</subject><ispartof>IEEE access, 2020, Vol.8, p.172296-172307</ispartof><rights>Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2020</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c408t-fe9a95f399b86d0b06de2b8a3cbf502d043fc0ac6803739f0e1f7f662e64c63d3</citedby><cites>FETCH-LOGICAL-c408t-fe9a95f399b86d0b06de2b8a3cbf502d043fc0ac6803739f0e1f7f662e64c63d3</cites><orcidid>0000-0002-9303-3682 ; 0000-0001-7641-6369 ; 0000-0003-0859-7502 ; 0000-0002-1180-3891 ; 0000-0002-5537-9236</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/9201269$$EHTML$$P50$$Gieee$$Hfree_for_read</linktohtml><link.rule.ids>314,776,780,860,2095,4009,27612,27902,27903,27904,54912</link.rule.ids></links><search><creatorcontrib>Cui, Zhanqi</creatorcontrib><creatorcontrib>Jia, Minghua</creatorcontrib><creatorcontrib>Chen, Xiang</creatorcontrib><creatorcontrib>Zheng, Liwei</creatorcontrib><creatorcontrib>Liu, Xiulei</creatorcontrib><title>Improving Software Fault Localization by Combining Spectrum and Mutation</title><title>IEEE access</title><addtitle>Access</addtitle><description>The performance of software fault localization techniques is critical to software debugging and the reliability of software. Spectrum-based fault localization (SBFL) and mutation-based fault localization (MBFL) are the two most popular fault localization methods. However, the accuracies of the two methods are still limited. For example, only 10.63% of faults can be detected by inspecting the top 3 suspicious elements reported by Ochiai, which is a famous SBFL technique. Unfortunately, programmers only examine the first few suspicious elements before losing patience. Since the information used in SBFL and MBFL are quite different and complementary, this paper proposes a novel approach by combining spectrum and mutation to improve the fault localization accuracy. First, the faulty program is evaluated by using SBFL, and the potential faulty statements are ranked according to their suspiciousness. Then, mutants of the program are generated and executed by MBFL. Finally, the statements that are ranked in the top tied &lt;inline-formula&gt; &lt;tex-math notation="LaTeX"&gt;{n} &lt;/tex-math&gt;&lt;/inline-formula&gt; by SBFL are evaluated and reranked according to their mutation scores. Experiments are carried on the Defects4J benchmark and the results reveal that the accuracy of the proposed approach outperforms those of the SBFL and MBFL techniques. In terms of the faults located by inspecting the top 1 suspicious elements, the SMFL techniques detect at least 2.36 times more faults than two SBFL techniques (DStar and Ochiai) and detect at least 1.86 times more faults than two MBFL techniques (MUSE and Metallaxis).</description><subject>Benchmark testing</subject><subject>Debugging</subject><subject>Fault detection</subject><subject>fault localization</subject><subject>Fault location</subject><subject>Information science</subject><subject>Localization</subject><subject>Mutation</subject><subject>mutation testing</subject><subject>program spectrum</subject><subject>Software</subject><subject>Software debugging</subject><subject>Software quality</subject><subject>Software reliability</subject><issn>2169-3536</issn><issn>2169-3536</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2020</creationdate><recordtype>article</recordtype><sourceid>ESBDL</sourceid><sourceid>RIE</sourceid><sourceid>DOA</sourceid><recordid>eNpNUctuwjAQjKpWKqJ8AZdIPUPXduLYRxRBQaLqgfZsOX6goCSmTtKKfn0NQah72dVqZvYxUTRFMEcI-Msiz5e73RwDhjkBnCYU7qIRRpTPSEro_b_6MZq07QFCsNBKs1G03tRH777LZh_vnO1-pDfxSvZVF2-dklX5K7vSNXFxinNXF2VzAR6N6nxfx7LR8VvfXSBP0YOVVWsm1zyOPlfLj3w9276_bvLFdqYSYN3MGi55agnnBaMaCqDa4IJJogqbAtaQEKtAKsqAZIRbMMhmllJsaKIo0WQcbQZd7eRBHH1ZS38STpbi0nB-L6TvSlUZkSmTMKYREGUTokzBdKYxCnenNqMKBa3nQSu84Ks3bScOrvdNWF_gJPwxY0BpQJEBpbxrW2_sbSoCcXZADA6IswPi6kBgTQdWaYy5MTgGhCknf041gYY</recordid><startdate>2020</startdate><enddate>2020</enddate><creator>Cui, Zhanqi</creator><creator>Jia, Minghua</creator><creator>Chen, Xiang</creator><creator>Zheng, Liwei</creator><creator>Liu, Xiulei</creator><general>IEEE</general><general>The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</general><scope>97E</scope><scope>ESBDL</scope><scope>RIA</scope><scope>RIE</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>7SP</scope><scope>7SR</scope><scope>8BQ</scope><scope>8FD</scope><scope>JG9</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><scope>DOA</scope><orcidid>https://orcid.org/0000-0002-9303-3682</orcidid><orcidid>https://orcid.org/0000-0001-7641-6369</orcidid><orcidid>https://orcid.org/0000-0003-0859-7502</orcidid><orcidid>https://orcid.org/0000-0002-1180-3891</orcidid><orcidid>https://orcid.org/0000-0002-5537-9236</orcidid></search><sort><creationdate>2020</creationdate><title>Improving Software Fault Localization by Combining Spectrum and Mutation</title><author>Cui, Zhanqi ; Jia, Minghua ; Chen, Xiang ; Zheng, Liwei ; Liu, Xiulei</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c408t-fe9a95f399b86d0b06de2b8a3cbf502d043fc0ac6803739f0e1f7f662e64c63d3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2020</creationdate><topic>Benchmark testing</topic><topic>Debugging</topic><topic>Fault detection</topic><topic>fault localization</topic><topic>Fault location</topic><topic>Information science</topic><topic>Localization</topic><topic>Mutation</topic><topic>mutation testing</topic><topic>program spectrum</topic><topic>Software</topic><topic>Software debugging</topic><topic>Software quality</topic><topic>Software reliability</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Cui, Zhanqi</creatorcontrib><creatorcontrib>Jia, Minghua</creatorcontrib><creatorcontrib>Chen, Xiang</creatorcontrib><creatorcontrib>Zheng, Liwei</creatorcontrib><creatorcontrib>Liu, Xiulei</creatorcontrib><collection>IEEE All-Society Periodicals Package (ASPP) 2005-present</collection><collection>IEEE Open Access Journals</collection><collection>IEEE All-Society Periodicals Package (ASPP) 1998-Present</collection><collection>IEEE Electronic Library (IEL)</collection><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Electronics &amp; Communications Abstracts</collection><collection>Engineered Materials Abstracts</collection><collection>METADEX</collection><collection>Technology Research Database</collection><collection>Materials 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><collection>DOAJ Directory of Open Access Journals</collection><jtitle>IEEE access</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Cui, Zhanqi</au><au>Jia, Minghua</au><au>Chen, Xiang</au><au>Zheng, Liwei</au><au>Liu, Xiulei</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Improving Software Fault Localization by Combining Spectrum and Mutation</atitle><jtitle>IEEE access</jtitle><stitle>Access</stitle><date>2020</date><risdate>2020</risdate><volume>8</volume><spage>172296</spage><epage>172307</epage><pages>172296-172307</pages><issn>2169-3536</issn><eissn>2169-3536</eissn><coden>IAECCG</coden><abstract>The performance of software fault localization techniques is critical to software debugging and the reliability of software. Spectrum-based fault localization (SBFL) and mutation-based fault localization (MBFL) are the two most popular fault localization methods. However, the accuracies of the two methods are still limited. For example, only 10.63% of faults can be detected by inspecting the top 3 suspicious elements reported by Ochiai, which is a famous SBFL technique. Unfortunately, programmers only examine the first few suspicious elements before losing patience. Since the information used in SBFL and MBFL are quite different and complementary, this paper proposes a novel approach by combining spectrum and mutation to improve the fault localization accuracy. First, the faulty program is evaluated by using SBFL, and the potential faulty statements are ranked according to their suspiciousness. Then, mutants of the program are generated and executed by MBFL. Finally, the statements that are ranked in the top tied &lt;inline-formula&gt; &lt;tex-math notation="LaTeX"&gt;{n} &lt;/tex-math&gt;&lt;/inline-formula&gt; by SBFL are evaluated and reranked according to their mutation scores. Experiments are carried on the Defects4J benchmark and the results reveal that the accuracy of the proposed approach outperforms those of the SBFL and MBFL techniques. In terms of the faults located by inspecting the top 1 suspicious elements, the SMFL techniques detect at least 2.36 times more faults than two SBFL techniques (DStar and Ochiai) and detect at least 1.86 times more faults than two MBFL techniques (MUSE and Metallaxis).</abstract><cop>Piscataway</cop><pub>IEEE</pub><doi>10.1109/ACCESS.2020.3025460</doi><tpages>12</tpages><orcidid>https://orcid.org/0000-0002-9303-3682</orcidid><orcidid>https://orcid.org/0000-0001-7641-6369</orcidid><orcidid>https://orcid.org/0000-0003-0859-7502</orcidid><orcidid>https://orcid.org/0000-0002-1180-3891</orcidid><orcidid>https://orcid.org/0000-0002-5537-9236</orcidid><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 2169-3536
ispartof IEEE access, 2020, Vol.8, p.172296-172307
issn 2169-3536
2169-3536
language eng
recordid cdi_proquest_journals_2454678066
source IEEE Open Access Journals; DOAJ Directory of Open Access Journals; EZB-FREE-00999 freely available EZB journals
subjects Benchmark testing
Debugging
Fault detection
fault localization
Fault location
Information science
Localization
Mutation
mutation testing
program spectrum
Software
Software debugging
Software quality
Software reliability
title Improving Software Fault Localization by Combining Spectrum and Mutation
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-22T04%3A52%3A43IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Improving%20Software%20Fault%20Localization%20by%20Combining%20Spectrum%20and%20Mutation&rft.jtitle=IEEE%20access&rft.au=Cui,%20Zhanqi&rft.date=2020&rft.volume=8&rft.spage=172296&rft.epage=172307&rft.pages=172296-172307&rft.issn=2169-3536&rft.eissn=2169-3536&rft.coden=IAECCG&rft_id=info:doi/10.1109/ACCESS.2020.3025460&rft_dat=%3Cproquest_cross%3E2454678066%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2454678066&rft_id=info:pmid/&rft_ieee_id=9201269&rft_doaj_id=oai_doaj_org_article_7ce488d103cf43ceb8d7d219575f76c1&rfr_iscdi=true