English
Related papers

Related papers: Refactoring $\neq$ Bug-Inducing: Improving Defect …

200 papers

Context: Software refactoring aims to improve software quality and developer productivity. Numerous empirical studies investigating the impact of refactoring activities on software quality have been conducted over the last two decades.…

Software Engineering · Computer Science 2019-08-19 Satnam Kaur , Paramvir Singh

Code review is a key development practice that contributes to improve software quality and to foster knowledge sharing among developers. However, code review usually takes time and demands detailed and time-consuming analysis of textual…

Software Engineering · Computer Science 2021-03-23 Rodrigo Brito , Marco Tulio Valente

Agentic coding tools, such as OpenAI Codex, Claude Code, and Cursor, are transforming the software engineering landscape. These AI-powered systems function as autonomous teammates capable of planning and executing complex development tasks.…

Software Engineering · Computer Science 2025-11-10 Kosei Horikawa , Hao Li , Yutaro Kashiwa , Bram Adams , Hajimu Iida , Ahmed E. Hassan

While most forks on platforms like GitHub are short-lived and used for social collaboration, a smaller but impactful subset evolve into long-lived forks, referred to here as variants, that maintain independent development trajectories.…

Software Engineering · Computer Science 2025-08-12 Daniel Ogenrwot , John Businge

In today's world, the focus of programmers has shifted from writing complex, error-prone code to prioritizing simple, clear, efficient, and sustainable code that makes programs easier to understand. Code refactoring plays a critical role in…

Software Engineering · Computer Science 2025-12-01 Md. Raihan Tapader , Md. Mostafizer Rahman , Ariful Islam Shiplu , Md Faizul Ibne Amin , Yutaka Watanobe

Context: Refactoring is the art of modifying the design of a system without altering its behavior. The idea is to reorganize variables, classes and methods to facilitate their future adaptations and comprehension. As the concept of behavior…

Software Engineering · Computer Science 2021-07-23 Eman Abdullah AlOmar , Mohamed Wiem Mkaouer , Christian Newman , Ali Ouni

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

Crossp-roject defect prediction (CPDP), where data from different software projects are used to predict defects, has been proposed as a way to provide data for software projects that lack historical data. Evaluations of CPDP models using…

Software Engineering · Computer Science 2022-06-17 Kwabena Ebo Bennin , Amjed Tahir , Stephen G. MacDonell , Jürgen Börstler

Software development agents such as Claude Code, GitHub Copilot, Cursor Agent, Devin, and OpenAI Codex are being increasingly integrated into developer workflows. While prior work has evaluated agent capabilities for code completion and…

Software Engineering · Computer Science 2026-05-26 Lukas Ottenhof , Daniel Penner , Abram Hindle , Thibaud Lutellier

Programming Knowledge Tracing (PKT) has recently advanced through hybrid approaches that integrate attention-based feature modeling for code representation with RNN-based sequential prediction. While these models report strong empirical…

Machine Learning · Computer Science 2026-05-07 Jaewook Kim , Hyeoncheol Kim

Automated test generators, such as search based software testing (SBST) techniques, replace the tedious and expensive task of manually writing test cases. SBST techniques are effective at generating tests with high code coverage. However,…

Software Engineering · Computer Science 2022-06-15 Anjana Perera

Refactoring is a widespread practice that helps developers to improve the maintainability and readability of their code. However, there is a limited number of studies empirically investigating the actual motivations behind specific…

Software Engineering · Computer Science 2018-08-07 Danilo Silva , Nikolaos Tsantalis , Marco Tulio Valente

Defect prediction is one of the most popular research topics due to its potential to minimize software quality assurance efforts. Existing approaches have examined defect prediction from various perspectives such as complexity and developer…

Software Engineering · Computer Science 2024-09-02 Rafed Muhammad Yasir , Ahmedul Kabir

Artificial Intelligence and Machine Learning have witnessed rapid, significant improvements in Natural Language Processing (NLP) tasks. Utilizing Deep Learning, researchers have taken advantage of repository comments in Software Engineering…

Software Engineering · Computer Science 2023-03-20 William Aiken , Paul K. Mvula , Paula Branco , Guy-Vincent Jourdan , Mehrdad Sabetzadeh , Herna Viktor

Refactoring is a common software engineering practice that improves code quality without altering program behavior. Although tools like ReExtractor+, RefactoringMiner, and RefDiff have been developed to detect refactorings automatically,…

Software Engineering · Computer Science 2025-11-20 Pedro Simões , Rohit Gheyi , Rian Melo , Jonhnanthan Oliveira , Márcio Ribeiro , Wesley K. G. Assunção

Previous works on Just-In-Time (JIT) defect prediction tasks have primarily applied pre-trained models directly, neglecting the configurations of their fine-tuning process. In this study, we perform a systematic empirical study to…

Software Engineering · Computer Science 2024-03-19 Yuxiang Guo , Xiaopeng Gao , Bo Jiang

Commits often involve refactorings -- behavior-preserving code modifications aiming at software design improvements. Refactoring operations pose a challenge to code reviewers, as distinguishing them from behavior-altering changes is often…

Software Engineering · Computer Science 2025-02-26 Benjamin Ritz , Aleksandar Karakaš , Denis Helic

In recent years, defect prediction techniques based on deep learning have become a prominent research topic in the field of software engineering. These techniques can identify potential defects without executing the code. However, existing…

Software Engineering · Computer Science 2024-05-20 Ying Xing , Mengci Zhao , Bin Yang , Yuwei Zhang , Wenjin Li , Jiawei Gu , Jun Yuan

Just-in-time (JIT) compilers are key components for many popular programming languages with managed runtimes (e.g., Java and JavaScript). JIT compilers perform optimizations and generate native code at runtime based on dynamic profiling…

Software Engineering · Computer Science 2026-03-09 Zijian Yi , Cheng Ding , August Shi , Milos Gligoric

Automated program repair (APR) aims to fix software bugs automatically without human debugging efforts and plays a crucial role in software development and maintenance. Despite promising, APR is still challenged by a long-standing…

Software Engineering · Computer Science 2024-01-17 Quanjun Zhang , Chunrong Fang , Weisong Sun , Yan Liu , Tieke He , Xiaodong Hao , Zhenyu Chen