Understanding the use of spectrum-based fault localization
Main Author: | |
---|---|
Publication Date: | 2024 |
Other Authors: | , , |
Format: | Article |
Language: | eng |
Source: | Repositório Institucional da UNESP |
Download full: | http://dx.doi.org/10.1002/smr.2622 https://hdl.handle.net/11449/305000 |
Summary: | Developers spend significant time locating and fixing bugs, which is often performed manually. Although spectrum-based fault localization (SFL) techniques aim at helping developers to locate faults, they are not yet used in practice. Recent studies have investigated how developers use SFL, presenting different conclusions about their effectiveness and usefulness. We carried out a user study to further enhance the understanding of SFL. We assessed whether SFL improves the developers' performance and to what extent SFL leads developers to inspect faulty code excerpts. We also investigated the intention of the developers to use SFL and how they interact with SFL. Twenty-six participants performed debugging tasks using real programs, with and without using the Jaguar SFL tool. Using SFL, more developers located and fixed the bugs. SFL also led more developers to inspect the faulty code and locate the faulty method. However, they did not spend less time locating the faults. SFL was well-accepted by the participants, who showed intention to use it in their daily activities. Our results indicate that SFL is useful even when the fault is not ranked among the first positions, leading developers to reach faulty code regions and find the bugs. |
id |
UNSP_5b29cb29acf319ff8f3333c16f67227f |
---|---|
oai_identifier_str |
oai:repositorio.unesp.br:11449/305000 |
network_acronym_str |
UNSP |
network_name_str |
Repositório Institucional da UNESP |
repository_id_str |
2946 |
spelling |
Understanding the use of spectrum-based fault localizationautomated debuggingfault comprehensionfault localizationspectrum-baseduser studyDevelopers spend significant time locating and fixing bugs, which is often performed manually. Although spectrum-based fault localization (SFL) techniques aim at helping developers to locate faults, they are not yet used in practice. Recent studies have investigated how developers use SFL, presenting different conclusions about their effectiveness and usefulness. We carried out a user study to further enhance the understanding of SFL. We assessed whether SFL improves the developers' performance and to what extent SFL leads developers to inspect faulty code excerpts. We also investigated the intention of the developers to use SFL and how they interact with SFL. Twenty-six participants performed debugging tasks using real programs, with and without using the Jaguar SFL tool. Using SFL, more developers located and fixed the bugs. SFL also led more developers to inspect the faulty code and locate the faulty method. However, they did not spend less time locating the faults. SFL was well-accepted by the participants, who showed intention to use it in their daily activities. Our results indicate that SFL is useful even when the fault is not ranked among the first positions, leading developers to reach faulty code regions and find the bugs.Fundação de Amparo à Pesquisa do Estado de São Paulo (FAPESP)Department of Computing São Paulo State UniversityDepartment of Computer Science Institute of Mathematics and Statistics University of São PauloSchool of Arts Sciences and Humanities University of São PauloDepartment of Computing São Paulo State UniversityFAPESP: 13/24992-2FAPESP: 14/23030-5FAPESP: 14/50937-1Universidade Estadual Paulista (UNESP)Universidade de São Paulo (USP)Amario de Souza, Higor [UNESP]de Souza Lauretto, MarceloKon, FabioLordello Chaim, Marcos2025-04-29T20:01:36Z2024-06-01info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/articlehttp://dx.doi.org/10.1002/smr.2622Journal of Software: Evolution and Process, v. 36, n. 6, 2024.2047-7481https://hdl.handle.net/11449/30500010.1002/smr.26222-s2.0-85173823943Scopusreponame:Repositório Institucional da UNESPinstname:Universidade Estadual Paulista (UNESP)instacron:UNESPengJournal of Software: Evolution and Processinfo:eu-repo/semantics/openAccess2025-04-30T14:04:54Zoai:repositorio.unesp.br:11449/305000Repositório InstitucionalPUBhttp://repositorio.unesp.br/oai/requestrepositoriounesp@unesp.bropendoar:29462025-04-30T14:04:54Repositório Institucional da UNESP - Universidade Estadual Paulista (UNESP)false |
dc.title.none.fl_str_mv |
Understanding the use of spectrum-based fault localization |
title |
Understanding the use of spectrum-based fault localization |
spellingShingle |
Understanding the use of spectrum-based fault localization Amario de Souza, Higor [UNESP] automated debugging fault comprehension fault localization spectrum-based user study |
title_short |
Understanding the use of spectrum-based fault localization |
title_full |
Understanding the use of spectrum-based fault localization |
title_fullStr |
Understanding the use of spectrum-based fault localization |
title_full_unstemmed |
Understanding the use of spectrum-based fault localization |
title_sort |
Understanding the use of spectrum-based fault localization |
author |
Amario de Souza, Higor [UNESP] |
author_facet |
Amario de Souza, Higor [UNESP] de Souza Lauretto, Marcelo Kon, Fabio Lordello Chaim, Marcos |
author_role |
author |
author2 |
de Souza Lauretto, Marcelo Kon, Fabio Lordello Chaim, Marcos |
author2_role |
author author author |
dc.contributor.none.fl_str_mv |
Universidade Estadual Paulista (UNESP) Universidade de São Paulo (USP) |
dc.contributor.author.fl_str_mv |
Amario de Souza, Higor [UNESP] de Souza Lauretto, Marcelo Kon, Fabio Lordello Chaim, Marcos |
dc.subject.por.fl_str_mv |
automated debugging fault comprehension fault localization spectrum-based user study |
topic |
automated debugging fault comprehension fault localization spectrum-based user study |
description |
Developers spend significant time locating and fixing bugs, which is often performed manually. Although spectrum-based fault localization (SFL) techniques aim at helping developers to locate faults, they are not yet used in practice. Recent studies have investigated how developers use SFL, presenting different conclusions about their effectiveness and usefulness. We carried out a user study to further enhance the understanding of SFL. We assessed whether SFL improves the developers' performance and to what extent SFL leads developers to inspect faulty code excerpts. We also investigated the intention of the developers to use SFL and how they interact with SFL. Twenty-six participants performed debugging tasks using real programs, with and without using the Jaguar SFL tool. Using SFL, more developers located and fixed the bugs. SFL also led more developers to inspect the faulty code and locate the faulty method. However, they did not spend less time locating the faults. SFL was well-accepted by the participants, who showed intention to use it in their daily activities. Our results indicate that SFL is useful even when the fault is not ranked among the first positions, leading developers to reach faulty code regions and find the bugs. |
publishDate |
2024 |
dc.date.none.fl_str_mv |
2024-06-01 2025-04-29T20:01:36Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/article |
format |
article |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://dx.doi.org/10.1002/smr.2622 Journal of Software: Evolution and Process, v. 36, n. 6, 2024. 2047-7481 https://hdl.handle.net/11449/305000 10.1002/smr.2622 2-s2.0-85173823943 |
url |
http://dx.doi.org/10.1002/smr.2622 https://hdl.handle.net/11449/305000 |
identifier_str_mv |
Journal of Software: Evolution and Process, v. 36, n. 6, 2024. 2047-7481 10.1002/smr.2622 2-s2.0-85173823943 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.relation.none.fl_str_mv |
Journal of Software: Evolution and Process |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.source.none.fl_str_mv |
Scopus reponame:Repositório Institucional da UNESP instname:Universidade Estadual Paulista (UNESP) instacron:UNESP |
instname_str |
Universidade Estadual Paulista (UNESP) |
instacron_str |
UNESP |
institution |
UNESP |
reponame_str |
Repositório Institucional da UNESP |
collection |
Repositório Institucional da UNESP |
repository.name.fl_str_mv |
Repositório Institucional da UNESP - Universidade Estadual Paulista (UNESP) |
repository.mail.fl_str_mv |
repositoriounesp@unesp.br |
_version_ |
1834482366887755776 |