An Exploratory Study on Refactoring Documentation in Issues Handling

03/19/2022
by   Eman Abdullah AlOmar, et al.
0

Understanding the practice of refactoring documentation is of paramount importance in academia and industry. Issue tracking systems are used by most software projects enabling developers, quality assurance, managers, and users to submit feature requests and other tasks such as bug fixing and code review. Although recent studies explored how to document refactoring in commit messages, little is known about how developers describe their refactoring needs in issues. In this study, we aim at exploring developer-reported refactoring changes in issues to better understand what developers consider to be problematic in their code and how they handle it. Our approach relies on text mining 45,477 refactoring-related issues and identifying refactoring patterns from a diverse corpus of 77 Java projects by investigating issues associated with 15,833 refactoring operations and developers' explicit refactoring intention. Our results show that (1) developers mostly use move refactoring related terms/phrases to target refactoring-related issues; and (2) developers tend to explicitly mention the improvement of specific quality attributes and focus on duplicate code removal. We envision our findings enabling tool builders to support developers with automated documentation of refactoring changes in issues.

READ FULL TEXT
research
03/10/2022

Refactoring Debt: Myth or Reality? An Exploratory Study on the Relationship Between Technical Debt and Refactoring

To meet project timelines or budget constraints, developers intentionall...
research
10/26/2020

How We Refactor and How We Document it? On the Use of Supervised Machine Learning Algorithms to Classify Refactoring Documentation

Refactoring is the art of improving the design of a system without alter...
research
10/23/2021

How Do I Refactor This? An Empirical Study on Refactoring Trends and Topics in Stack Overflow

An essential part of software maintenance and evolution, refactoring is ...
research
09/19/2020

Toward the Automatic Classification of Self-Affirmed Refactoring

The concept of Self-Affirmed Refactoring (SAR) was introduced to explore...
research
08/02/2022

Together or Apart? Investigating a mediator bot to aggregate bot's comments on pull requests

Software bots connect users and tools, streamlining the pull request rev...
research
10/06/2021

Towards Heuristics for Supporting the Validation of Code Smells

The identification of code smells is largely recognized as a subjective ...
research
05/06/2019

Interactive Semi-automated Specification Mining for Debugging: An Experience Report

Context: Specification mining techniques are typically used to extract t...

Please sign up or login with your details

Forgot password? Click here to reset