English
Related papers

Related papers: Build Code Needs Maintenance Too: A Study on Refac…

200 papers

Technical debt is a well-known challenge in software development, and its negative impact on software quality, maintainability, and performance is widely recognized. In recent years, artificial intelligence (AI) has proven to be a promising…

Software Engineering · Computer Science 2023-06-21 Srinivas Babu Pandi , Samia A. Binta , Savita Kaushal

Maintaining software is an ongoing process that stretches beyond the initial release. Stable software versions continuously evolve to fix bugs, add improvements, address security issues, and ensure compatibility. This ongoing support…

Software Engineering · Computer Science 2025-11-13 Jarin Tasnim , Debasish Chakroborti , Chanchal K. Roy , Kevin A. Schneider

Speeding up development may produce technical debt, i.e., not-quite-right code for which the effort to make it right increases with time as a sort of interest. Developers may be aware of the debt as they admit it in their code comments.…

Software Engineering · Computer Science 2022-05-05 Barbara Russo , Matteo Camilli , Moritz Mock

Technical Debt analysis is increasing in popularity as nowadays researchers and industry are adopting various tools for static code analysis to evaluate the quality of their code. Despite this, empirical studies on software projects are…

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

Dockerfiles enable the creation of portable container-based execution environments for the application code, and have become an important part of the modern software development process. As Dockerfiles are a form of Infrastructure-as-Code…

Software Engineering · Computer Science 2026-05-21 Wei Minn , Yan Naing Tun , Biniam Fesseha Demissie , Rui'ang Hu , Jiakun Liu , Mariano Ceccato , Lwin Khin Shar , David Lo

The software build process transforms source code into deployable artifacts, representing a critical yet vulnerable stage in software development. Build infrastructure security poses unique challenges: the complexity of multi-component…

Source code reviews are manual, time-consuming, and expensive. Human involvement should be focused on analyzing the most relevant aspects of the program, such as logic and maintainability, rather than amending style, syntax, or formatting…

Machine Learning · Computer Science 2019-04-02 Vadim Markovtsev , Waren Long , Hugo Mougard , Konstantin Slavnov , Egor Bulychev

Software and systems traceability is essential for downstream tasks such as data-driven software analysis and intelligent tool development. However, despite the increasing attention to mining and understanding technical debt in software…

Software Engineering · Computer Science 2023-04-18 Mohammad Sadegh Sheikhaei , Yuan Tian

Test smells arise from poor design practices and insufficient domain knowledge, which can lower the quality of test code and make it harder to maintain and update. Manually refactoring test smells is time-consuming and error-prone,…

Software Engineering · Computer Science 2025-02-12 Yi Gao , Xing Hu , Xiaohu Yang , Xin Xia

The task of repository-level code completion is to continue writing the unfinished code based on a broader context of the repository. While for automated code completion tools, it is difficult to utilize the useful information scattered in…

Computation and Language · Computer Science 2023-10-23 Fengji Zhang , Bei Chen , Yue Zhang , Jacky Keung , Jin Liu , Daoguang Zan , Yi Mao , Jian-Guang Lou , Weizhu Chen

Requirements traceability in safety-critical software development remains largely dependent on external documentation maintained separately from the systems it describes. This separation introduces structural fragility: traces degrade…

Software Engineering · Computer Science 2026-03-17 Thorsten Schlathölter

Context: Technical Debt (TD) can be paid back either by those that incurred it or by others. We call the former self-fixed TD, and it can be particularly effective, as developers are experts in their own code and are well-suited to fix the…

Software Engineering · Computer Science 2021-10-13 Jie Tan , Daniel Feitosa , Paris Avgeriou

Technical debt refers to taking shortcuts to achieve short-term goals while sacrificing the long-term maintainability and evolvability of software systems. A large part of technical debt is explicitly reported by the developers themselves;…

Software Engineering · Computer Science 2023-04-24 Yikun Li , Mohamed Soliman , Paris Avgeriou

Software development organisations aim to stay effective and efficient amid growing system complexity. To address this, they often form small teams focused on separate components that can be independently developed, tested, and deployed.…

Software Engineering · Computer Science 2024-06-28 Ehsan Zabardast , Javier Gonzalez-Huerta , Francis Palma , Panagiota Chatzipetrou

The most important way to achieve higher performance in computer systems is through heterogeneous computing, i.e., by adopting hardware platforms containing more than one type of processor, such as CPUs, GPUs, and FPGAs. Several types of…

Software Engineering · Computer Science 2020-05-19 Hugo Andrade , Ivica Crnkovic , Jan Bosch

Technical debt (TD) describes the additional costs that emerge when developers have opted for a quick and easy solution to a problem, rather than a more effective and well-designed, but time-consuming approach. Self-Admitted Technical Debts…

Software Engineering · Computer Science 2025-08-12 Nam Le Hai , Anh M. T. Bui , Phuong T. Nguyen , Davide Di Ruscio , Rick Kazman

With the recent unprecedented advancements in Artificial Intelligence (AI) computing, progress in Large Language Models (LLMs) is accelerating rapidly, presenting challenges in establishing clear guidelines, particularly in the field of…

Cryptography and Security · Computer Science 2024-09-04 Nafis Tanveer Islam , Joseph Khoury , Andrew Seong , Elias Bou-Harb , Peyman Najafirad

Software Quality is a major concern in software engineering development in order to be competitive. Such a quality can be achieved by a possible technique called Refactoring where the systems external behavior of the system is not changed.…

Code review is an essential part to software development lifecycle since it aims at guaranteeing the quality of codes. Modern code review activities necessitate developers viewing, understanding and even running the programs to assess…

Software Engineering · Computer Science 2022-10-12 Zhiyu Li , Shuai Lu , Daya Guo , Nan Duan , Shailesh Jannu , Grant Jenks , Deep Majumder , Jared Green , Alexey Svyatkovskiy , Shengyu Fu , Neel Sundaresan

Understanding code represents a core ability needed for automating software development tasks. While foundation models like LLMs show impressive results across many software engineering challenges, the extent of their true semantic…

Software Engineering · Computer Science 2025-04-16 Serge Lionel Nikiema , Jordan Samhi , Abdoul Kader Kaboré , Jacques Klein , Tegawendé F. Bissyandé