English
Related papers

Related papers: Why Developers Refactor Source Code: A Mining-base…

200 papers

Background. Pull requests are a common practice for contributing and reviewing contributions, and are employed both in open-source and industrial contexts. One of the main goals of code reviews is to find defects in the code, allowing…

Software Engineering · Computer Science 2019-08-27 Valentina Lenarduzzi , Vili Nikkola , Nyyti Saarimäki , Davide Taibi

Novice programmers often struggle to comprehend code due to vague naming, deep nesting, and poor structural organization. While explanations may offer partial support, they typically do not restructure the code itself. We propose code…

Software Engineering · Computer Science 2026-04-20 Subarna Saha , Alif Al Hasan , Fariha Tanjim Shifat , Mia Mohammad Imran

With the advent of open source software, a veritable treasure trove of previously proprietary software development data was made available. This opened the field of empirical software engineering research to anyone in academia. Data that is…

Software Engineering · Computer Science 2022-04-19 Adam Tutko , Austin Z. Henley , Audris Mockus

In this paper two intensive problems faced during software application's analysis and development process arose by the software industry are briefly conversed i.e. identification of fault proneness and increase in rate of variability in the…

Software Engineering · Computer Science 2010-11-16 Zeeshan Ahmed , Saman Majeed

Object-oriented code smells are well-known concepts in software engineering that refer to bad design and development practices commonly observed in software systems. With the emergence of mobile apps, new classes of code smells have been…

Software Engineering · Computer Science 2020-10-15 Sarra Habchi , Naouel Moha , Romain Rouvoy

In this paper an analysis of a technical support data with the goal of identifying process improvement actions for reducing interrupts is presented. A technical support chat is established and used to provide internal developer support to…

Social and Information Networks · Computer Science 2015-10-19 Zádor Dániel Kelemen , Balázs Tódor , Sándor Hodosi , Ákos Somfai

Large Language Models (LLMs) have recently attracted wide interest for tackling software engineering tasks. In contrast to code generation, refactoring demands precise, semantics-preserving edits that improve program structure, which also…

Software Engineering · Computer Science 2026-02-04 Yisen Xu , Jinqiu Yang , Tse-Hsun , Chen

GitHub introduced the suggestion feature to enable reviewers to explicitly suggest code modifications in pull requests. These suggestions make the reviewers' feedback more actionable for the submitters and represent a valuable knowledge for…

Software Engineering · Computer Science 2025-02-10 Abir Bouraffa , Yen Dieu Pham , Walid Maalej

Software refactoring is the process of changing the structure of software without any alteration in its behavior and functionality. Presuming it is carried out in appropriate opportunities, refactoring enhances software quality…

Software Engineering · Computer Science 2023-01-20 Hanieh Khosravi , Abbas Rasoolzadegan

A source code difference (diff) indicates changes made by comparing new and old source codes, and it can be utilized in code reviews to help developers understand the changes made to the code. Although many diff generation methods have been…

Software Engineering · Computer Science 2024-09-27 Tsukasa Yagi , Shinpei Hayashi

Refactoring, the process of improving the code structure of a software system without altering its behavior, is crucial for managing code evolution in software development. Identifying refactoring actions in source code is essential for…

Software Engineering · Computer Science 2025-05-13 Siqi Wang , Xing Hu , Xin Xia , Xinyu Wang

This paper presents our approach to use refactoring techniques together with code generation. Refactoring is particularly useful if not only the generated classes but also the generator itself can be adapted in an automatic fashion. We have…

Software Engineering · Computer Science 2014-09-24 Holger Krahn , Bernhard Rumpe

Binary rewriting is a rapidly-maturing technique for modifying software for instrumentation, customization, optimization, and hardening without access to source code. Unfortunately, the practical applications of binary rewriting tools are…

Software Engineering · Computer Science 2022-09-09 Eric Schulte , Michael D. Brown , Vlad Folts

Cognitive-Driven Development (CDD) is a coding design technique that aims to reduce the cognitive effort that developers place in understanding a given code unit (e.g., a class). By following CDD design practices, it is expected that the…

Software Engineering · Computer Science 2022-06-23 Leonardo Barbosa , Victor Hugo Santiago , Alberto Luiz Oliveira Tavares de Souza , Gustavo Pinto

Large Language Models (LLMs) have shown potential to enhance software development through automated code generation and refactoring, reducing development time and improving code quality. This study empirically evaluates StarCoder2, an LLM…

Software Engineering · Computer Science 2024-11-05 Jonathan Cordeiro , Shayan Noei , Ying Zou

To reduce the complexity of software, Developers manually simplify program (known as developer-induced program simplification in this paper) to reduce its code size yet preserving its functionality but manual simplification is…

Software Engineering · Computer Science 2024-01-30 Haibo Wang , Zezhong Xing , Zheng Wang , Chengnian Sun , Shin Hwei Tan

This paper presents an approach that evaluates best-first search methods to code refactoring. The motivation for code refactoring could be to improve the design, structure, or implementation of an existing program without changing its…

Software Engineering · Computer Science 2023-05-15 Sourena Khanzadeh , Samad Alias Nyein Chan , Richard Valenzano , Manar Alalfi

With the growth of the open-source data science community, both the number of data science libraries and the number of versions for the same library are increasing rapidly. To match the evolving APIs from those libraries, open-source…

Software Engineering · Computer Science 2021-02-16 Ansong Ni , Daniel Ramos , Aidan Yang , Inês Lynce , Vasco Manquinho , Ruben Martins , Claire Le Goues

Fixing software bugs and adding new features are two of the major maintenance tasks. Software bugs and features are reported as change requests. Developers consult these requests and often choose a few keywords from them as an ad hoc query.…

Software Engineering · Computer Science 2023-06-12 Mohammad Masudur Rahman , Chanchal K. Roy

Background: Contemporary software development organizations lack diversity and the ratios of women in Free and open-source software (FOSS) communities are even lower than the industry average. Although the results of recent studies hint the…

Software Engineering · Computer Science 2023-02-07 Sayma Sultana , Amiangshu Bosu