Diff Feature Matching Network in Refactoring Detection

2022 29th Asia-Pacific Software Engineering Conference (APSEC)(2022)

引用 0|浏览3
暂无评分
摘要
During software maintenance, it is often important to understand the reasons for code changes, so tools are being developed to automatically detect changes due to refactoring. Among these, RefDiff supports multiple programming languages by representing code changes (so-called diffs) by means of a language-independent abstract syntax tree containing nodes for the code parts removed and added during the change. Corresponding nodes, i.e., nodes participating in a refactoring, are matched based on text similarity, which leads to good precision, but the algorithmic limitation of computing text similarity also entail a large number of false negatives. To overcome this, we trained a neural network to classify features in diffs to be used for identifying refactorings. The main contribution of this paper is an approach for encoding differences between nodes in the syntax trees into image data for neural network matching. We have shown that the diff feature matching network not only improves the precision of RefDiff 2.0 to 98.6% and recall to 93.2%, but also is able to support detection tasks in multiple programming languages, with excellent robustness.
更多
查看译文
关键词
refactoring,detection,diff,features,encoding
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要