Conference Paper (published)

Expanding Fix Patterns to Enable Automatic Program Repair

Details

Citation

Nowack V, Bowes D, Counsell S, Hall T, Haraldsson S, Winter E & Woodward J (2022) Expanding Fix Patterns to Enable Automatic Program Repair. In: Jin Z, Li X, Xiang J, Mariani L, Liu T, Yu X & Ivaki N (eds.) 32nd IEEE International Symposium on Software Reliability Engineering, ISSRE 2021. 2021 IEEE 32nd International Symposium on Software Reliability Engineering (ISSRE), Wuhan, China, 25.10.2021-28.10.2021. Piscataway, NJ, USA: IEEE Computer Society, pp. 12-23. https://doi.org/10.1109/ISSRE52982.2021.00015

Abstract
Automatic Program Repair (APR) has been proposed to help developers and reduce the time spent repairing programs. Recent APR tools have applied learned templates (fix patterns) to fix code using knowledge from fixes successfully applied in the past. However, there is still no general agreement on the representation of fix patterns, making their application and comparison with a baseline difficult. As a consequence, it is also difficult to expand fix patterns and further enable APR. We automatically generate fix patterns from similar fixes and compare the generated fix patterns against a state-of-the-art taxonomy. Our automated approach splits fixes into smaller, method-level chunks and calculates their similarity. A threshold-based clustering algorithm groups similar chunks and finds matches with state-of-the-art fix patterns. In our evaluation, we present 33 clusters whose fix patterns were generated from the fixes of 835 Defects4J bugs. Of those 33 clusters, 22 matched a state-of-the-art taxonomy with good agreement. The remaining 11 clusters were thematically analysed and generated new fix patterns that expanded the taxonomy. Our new fix patterns should enable APR researchers and practitioners to expand their tools to fix a greater range of bugs in the future.

Keywords
automatic program repair; similarity metric; clustering; fix pattern

StatusPublished
Publication date31/12/2022
Publication date online11/02/2022
URLhttp://hdl.handle.net/1893/34199
PublisherIEEE Computer Society
Place of publicationPiscataway, NJ, USA
ISSN of series2332-6549
ISBN9781665425872
Conference2021 IEEE 32nd International Symposium on Software Reliability Engineering (ISSRE)
Conference locationWuhan, China
Dates

People (1)

Dr Saemundur Haraldsson

Dr Saemundur Haraldsson

Lecturer, Computing Science

Files (1)