How to Refactor this Code? An Exploratory Study on Developer-ChatGPT Refactoring Conversations

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: AlOmar, Eman Abdullah, Venkatakrishnan, Anushkrishna, Mkaouer, Mohamed Wiem, Newman, Christian D., Ouni, Ali
Natura: Preprint
Pubblicazione: 2024
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866917585522524160
author AlOmar, Eman Abdullah
Venkatakrishnan, Anushkrishna
Mkaouer, Mohamed Wiem
Newman, Christian D.
Ouni, Ali
author_facet AlOmar, Eman Abdullah
Venkatakrishnan, Anushkrishna
Mkaouer, Mohamed Wiem
Newman, Christian D.
Ouni, Ali
contents Large Language Models (LLMs), like ChatGPT, have gained widespread popularity and usage in various software engineering tasks, including refactoring, testing, code review, and program comprehension. Despite recent studies delving into refactoring documentation in commit messages, issues, and code review, little is known about how developers articulate their refactoring needs when interacting with ChatGPT. In this paper, our goal is to explore conversations between developers and ChatGPT related to refactoring to better understand how developers identify areas for improvement in code and how ChatGPT addresses developers' needs. Our approach relies on text mining refactoring-related conversations from 17,913 ChatGPT prompts and responses, and investigating developers' explicit refactoring intention. Our results reveal that (1) developer-ChatGPT conversations commonly involve generic and specific terms/phrases; (2) developers often make generic refactoring requests, while ChatGPT typically includes the refactoring intention; and (3) various learning settings when prompting ChatGPT in the context of refactoring. We envision that our findings contribute to a broader understanding of the collaboration between developers and AI models, in the context of code refactoring, with implications for model improvement, tool development, and best practices in software engineering.
format Preprint
id arxiv_https___arxiv_org_abs_2402_06013
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle How to Refactor this Code? An Exploratory Study on Developer-ChatGPT Refactoring Conversations
AlOmar, Eman Abdullah
Venkatakrishnan, Anushkrishna
Mkaouer, Mohamed Wiem
Newman, Christian D.
Ouni, Ali
Software Engineering
Large Language Models (LLMs), like ChatGPT, have gained widespread popularity and usage in various software engineering tasks, including refactoring, testing, code review, and program comprehension. Despite recent studies delving into refactoring documentation in commit messages, issues, and code review, little is known about how developers articulate their refactoring needs when interacting with ChatGPT. In this paper, our goal is to explore conversations between developers and ChatGPT related to refactoring to better understand how developers identify areas for improvement in code and how ChatGPT addresses developers' needs. Our approach relies on text mining refactoring-related conversations from 17,913 ChatGPT prompts and responses, and investigating developers' explicit refactoring intention. Our results reveal that (1) developer-ChatGPT conversations commonly involve generic and specific terms/phrases; (2) developers often make generic refactoring requests, while ChatGPT typically includes the refactoring intention; and (3) various learning settings when prompting ChatGPT in the context of refactoring. We envision that our findings contribute to a broader understanding of the collaboration between developers and AI models, in the context of code refactoring, with implications for model improvement, tool development, and best practices in software engineering.
title How to Refactor this Code? An Exploratory Study on Developer-ChatGPT Refactoring Conversations
topic Software Engineering
url https://arxiv.org/abs/2402.06013