Abstract
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.
Publication Date
Spring 5-1-2022
Document Type
Conference Paper
Department, Program, or Center
Software Engineering (GCCIS)
Recommended Citation
E. A. AlOmar, A. Peruma, M. W. Mkaouer, C. D. Newman and A. Ouni, "An Exploratory Study on Refactoring Documentation in Issues Handling," 2022 IEEE/ACM 19th International Conference on Mining Software Repositories (MSR), 2022, pp. 107-111, doi: 10.1145/3524842.3528525.
Campus
RIT – Main Campus
Comments
© 2022 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.