ChatGPT for Code Refactoring: Analyzing Topics, Interaction, and Effective Prompts

Abstract

Large Language Models (LLMs), such as ChatGPT, have become widely popular and widely used in various software engineering tasks such as refactoring, testing, code review, and program comprehension. Although recent studies have examined the effectiveness of LLMs in recommending and suggesting refactoring, there is a limited understanding of how developers express their refactoring needs when interacting with ChatGPT. In this paper, our goal is to explore interactions related to refactoring between developers and ChatGPT to better understand how developers identify areas for improvement in code, and how ChatGPT addresses developers’ needs. Our approach involves text mining 715 refactoring-related interactions from 29,778 ChatGPT prompts and responses, as well as the analysis of developers’ explicit refactoring intentions.

Publication
Proceedings of the 35th IEEE International Conference on Collaborative Advances in Software and Computing
Anthony S. Peruma
Anthony S. Peruma
Assistant Professor

My research interests include program comprehension and software refactoring.