A Survey of Deep Learning Based Software Refactoring
Abstract
Refactoring is a critical activity in software engineering used to improve software quality and maintainability. Increasingly, deep learning (DL) techniques are being applied to software refactoring to overcome the limitations of traditional, manually designed heuristics. However, there is a lack of comprehensive surveys and structured taxonomies characterizing these deep learning-based approaches. To fill this gap, we present a survey that categorizes deep learning-based software refactoring into five core tasks: code smell detection, refactoring recommendation, refactoring implementation, refactoring mining, and refactoring impact analysis. Our analysis reveals an imbalance in research distribution. The field is concentrated on the early decision-making stages, with code smell detection ( \(43.84\% \) ) and refactoring recommendation ( \(32.88\% \) ) comprising more than three-quarters of the literature. Conversely, refactoring implementation ( \(12.33\% \) ) and mining ( \(8.22\% \) ) show emergent tracking, while refactoring impact analysis remains under-explored ( \(2.74\% \) ). Beyond this taxonomy, the survey highlights critical gaps, including a notable absence of research on quality assurance for DL-based refactoring and minimal attention given to class- and variable-level operations. Finally, we map out open challenges and future directions to guide researchers toward building more comprehensive, end-to-end automated refactoring pipelines.
// Source
Authors: Bridget Nyirongo, Yanjie Jiang, He Jiang, Hui Liu
Institutions: Dalian University of Technology, Tianjin University, Beijing Institute of Technology, Tianjin University of Technology