papers

Publications (10)

cs.SE2025

Leveraging LLMs, IDEs, and Semantic Embeddings for Automated Move Method Refactoring

Abhiram Bellur, Fraol Batole, Mohammed Raihan Ullah +12

MOVEMETHOD is a hallmark refactoring. Despite a plethora of research tools that recommend which methods to move and where, these recommendations do not align with how expert develo…

cs.SE2024

EM-Assist: Safe Automated ExtractMethod Refactoring with LLMs

Dorin Pomian, Abhiram Bellur, Malinda Dilhara +5

Excessively long methods, loaded with multiple responsibilities, are challenging to understand, debug, reuse, and maintain. The solution lies in the widely recognized Extract Metho…

cs.SE2022

IntelliTC: Automating Type Changes in IntelliJ IDEA

Oleg Smirnov, Ameya Ketkar, Timofey Bryksin +2

Developers often change types of program elements. Such refactoring often involves updating not only the type of the element itself, but also the API of all type-dependent referenc…

cs.SE2024

Unprecedented Code Change Automation: The Fusion of LLMs and Transformation by Example

Malinda Dilhara, Abhiram Bellur, Timofey Bryksin +1

Software developers often repeat code changes, known as "code change patterns" (CPATs), within and across projects. Automating these CPATs accelerates development, but current Tran…

cs.SE2022

Operation-based Refactoring-aware Merging: An Empirical Evaluation

Max Ellis, Sarah Nadi, Danny Dig

Dealing with merge conflicts in version control systems is a challenging task for software developers. Resolving merge conflicts is a time-consuming and error-prone process, which…

cs.SE2020

30 Years of Software Refactoring Research:A Systematic Literature Review

Chaima Abid, Vahid Alizadeh, Marouane Kessentini +2

Due to the growing complexity of software systems, there has been a dramatic increase and industry demand for tools and techniques on software refactoring in the last ten years, de…

cs.SE2025

Towards Realistic Evaluation of Commit Message Generation by Matching Online and Offline Settings

Petr Tsvetkov, Aleksandra Eliseeva, Danny Dig +4

When a Commit Message Generation (CMG) system is integrated into the IDEs and other products at JetBrains, we perform online evaluation based on user acceptance of the generated me…

cs.SE2024

Together We Go Further: LLMs and IDE Static Analysis for Extract Method Refactoring

Dorin Pomian, Abhiram Bellur, Malinda Dilhara +4

Long methods that encapsulate multiple responsibilities within a single method are challenging to maintain. Choosing which statements to extract into new methods has been the targe…

cs.SE2023

From Commit Message Generation to History-Aware Commit Message Completion

Aleksandra Eliseeva, Yaroslav Sokolov, Egor Bogomolov +3

Commit messages are crucial to software development, allowing developers to track changes and collaborate effectively. Despite their utility, most commit messages lack important in…

cs.SE2026

Multi-Agent Coordinated Rename Refactoring

Abhiram Bellur, Mohammed Raihan Ullah, Fraol Batole +9

The primary value of AI agents in software development lies in their ability to extend the developer's capacity for reasoning and action, not to supplant human involvement. To show…