JITO: A tool for just-in-time defect identification and localization

In software development and maintenance, defect localization is necessary for software quality assurance. Current defect localization techniques mainly rely on defect symptoms (e.g., bug reports or program spectrum) when the defect has been exposed. One challenge task is: can we locate buggy program...

Full description

Saved in:
Bibliographic Details
Main Authors: QIU, Fangcheng, YAN, Meng, XIA, Xin, WANG, Xinyu, FAN, Yuanrui, HASSAN, Ahmed E., LO, David
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2020
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/5537
https://ink.library.smu.edu.sg/context/sis_research/article/6540/viewcontent/3368089.3417927.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-6540
record_format dspace
spelling sg-smu-ink.sis_research-65402021-05-10T07:44:22Z JITO: A tool for just-in-time defect identification and localization QIU, Fangcheng YAN, Meng XIA, Xin WANG, Xinyu FAN, Yuanrui HASSAN, Ahmed E. LO, David In software development and maintenance, defect localization is necessary for software quality assurance. Current defect localization techniques mainly rely on defect symptoms (e.g., bug reports or program spectrum) when the defect has been exposed. One challenge task is: can we locate buggy program prior to the appearance of the defect symptom. Such kind of localization is conducted at an early stage (e.g., when buggy program elements are being checkedin) which can be an early step of continuous quality control.In this paper, we propose a Just-In-Time defect identification and lOcalization tool, named JITO, which can help developers to locate defective lines at check-in time. In summary, JITO contains two phases: (i) identify if a new change is buggy and (ii) locate suspicious buggy code lines in the identified buggy changes. Weimplement JITO as a plugin in an integrated development environment (i.e., Intellij IDEA). When developers using our plugin, JITO loads the local Git repository to build the JIT defect identification model and localization model based on historical changes. After submitting a new change to the local repository, developers apply JITO to identify whether it is a buggy change. If a buggy change is identified, JITO leverages JIT defect localization model to locate its suspicious buggy lines and highlight them in Intellij IDEA. Experimental results show that JITO outperforms two baselines (i.e., random guess and a static bug finder (i.e., PMD)) by a substantial margin in terms of four ranking measures. 2020-11-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/5537 info:doi/10.1145/3368089.3417927 https://ink.library.smu.edu.sg/context/sis_research/article/6540/viewcontent/3368089.3417927.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Defect localization Just-in-time Defect identification Software naturalness Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Defect localization
Just-in-time
Defect identification
Software naturalness
Software Engineering
spellingShingle Defect localization
Just-in-time
Defect identification
Software naturalness
Software Engineering
QIU, Fangcheng
YAN, Meng
XIA, Xin
WANG, Xinyu
FAN, Yuanrui
HASSAN, Ahmed E.
LO, David
JITO: A tool for just-in-time defect identification and localization
description In software development and maintenance, defect localization is necessary for software quality assurance. Current defect localization techniques mainly rely on defect symptoms (e.g., bug reports or program spectrum) when the defect has been exposed. One challenge task is: can we locate buggy program prior to the appearance of the defect symptom. Such kind of localization is conducted at an early stage (e.g., when buggy program elements are being checkedin) which can be an early step of continuous quality control.In this paper, we propose a Just-In-Time defect identification and lOcalization tool, named JITO, which can help developers to locate defective lines at check-in time. In summary, JITO contains two phases: (i) identify if a new change is buggy and (ii) locate suspicious buggy code lines in the identified buggy changes. Weimplement JITO as a plugin in an integrated development environment (i.e., Intellij IDEA). When developers using our plugin, JITO loads the local Git repository to build the JIT defect identification model and localization model based on historical changes. After submitting a new change to the local repository, developers apply JITO to identify whether it is a buggy change. If a buggy change is identified, JITO leverages JIT defect localization model to locate its suspicious buggy lines and highlight them in Intellij IDEA. Experimental results show that JITO outperforms two baselines (i.e., random guess and a static bug finder (i.e., PMD)) by a substantial margin in terms of four ranking measures.
format text
author QIU, Fangcheng
YAN, Meng
XIA, Xin
WANG, Xinyu
FAN, Yuanrui
HASSAN, Ahmed E.
LO, David
author_facet QIU, Fangcheng
YAN, Meng
XIA, Xin
WANG, Xinyu
FAN, Yuanrui
HASSAN, Ahmed E.
LO, David
author_sort QIU, Fangcheng
title JITO: A tool for just-in-time defect identification and localization
title_short JITO: A tool for just-in-time defect identification and localization
title_full JITO: A tool for just-in-time defect identification and localization
title_fullStr JITO: A tool for just-in-time defect identification and localization
title_full_unstemmed JITO: A tool for just-in-time defect identification and localization
title_sort jito: a tool for just-in-time defect identification and localization
publisher Institutional Knowledge at Singapore Management University
publishDate 2020
url https://ink.library.smu.edu.sg/sis_research/5537
https://ink.library.smu.edu.sg/context/sis_research/article/6540/viewcontent/3368089.3417927.pdf
_version_ 1770575503541927936