Impact of Combining Syntactic and Semantic Similarities on Patch Prioritization

Moumita Asad, Kishan Ganguly, Kazi Sakib

Abstract

Patch prioritization means sorting candidate patches based on the probability of correctness. It helps to minimize the bug fixing time and maximize the precision of an automated program repair technique by ranking the correct solution before incorrect one. Recent program repair approaches have used either syntactic or semantic similarity between faulty code and fixing ingredient to prioritize patches. However, the impact of combined approach on patch prioritization has not been analyzed yet. For this purpose, two patch prioritization methods are proposed in this paper. Genealogical and variable similarity are used to measure semantic similarity since these are good at differentiating between correct and incorrect patches. Two popular metrics namely normalized longest common subsequence and token similarity are considered individually for capturing syntactic similarity. To observe the combined impact of similarities, the proposed approaches are compared with patch prioritization techniques that use either semantic or syntactic similarity. For comparison, 246 replacement mutation bugs from historical bug fixes dataset are used. Both methods outperform semantic and syntactic similarity based approaches, in terms of median rank of the correct patch and search space reduction. In 11.79% and 10.16% cases, the combined approaches rank the correct solution at first position.

Download


Paper Citation


in Harvard Style

Asad M., Ganguly K. and Sakib K. (2020). Impact of Combining Syntactic and Semantic Similarities on Patch Prioritization.In Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE, ISBN 978-989-758-421-3, pages 170-180. DOI: 10.5220/0009411301700180


in Bibtex Style

@conference{enase20,
author={Moumita Asad and Kishan Ganguly and Kazi Sakib},
title={Impact of Combining Syntactic and Semantic Similarities on Patch Prioritization},
booktitle={Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,},
year={2020},
pages={170-180},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0009411301700180},
isbn={978-989-758-421-3},
}


in EndNote Style

TY - CONF

JO - Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,
TI - Impact of Combining Syntactic and Semantic Similarities on Patch Prioritization
SN - 978-989-758-421-3
AU - Asad M.
AU - Ganguly K.
AU - Sakib K.
PY - 2020
SP - 170
EP - 180
DO - 10.5220/0009411301700180