SEAug 13, 2019

Extract Method Refactoring by Successive Edge Contraction

arXiv:1908.04636v11 citationsHas Code
AI Analysis

This addresses the problem of code refactoring for software developers, but it appears incremental as it builds on existing dependency analysis methods.

The paper tackles the problem of identifying distinct functionalities within a method for extract method refactoring by introducing a segmentation approach based on successive edge contraction in a Structure Dependence Graph, and it reports findings from evaluation on four case studies.

Segmentation, a new approach based on successive edge contraction is introduced for extract method refactoring. It targets identification of distinct functionalities implemented within a method. Segmentation builds upon data and control dependencies among statements to extract functionalities from code by successive contraction of edges in the Structure Dependence Graph (SDG). Three edge contractions are explored, namely structural control edge contraction, exclusive data dependence edge contraction, and sequential data dependence edge contraction. The SDG is first constructed from the program, which is then collapsed into a segment graph that captures dependence between subtasks. An intermediate representation for data and control dependencies among statements keeps the technique language independent. The approach is evaluated on four case studies, including three from the open source domain, and the findings are reported.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes