English
Related papers

Related papers: Effects of Visualizing Technical Debts on a Softwa…

200 papers

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

Context: Technical debt management is challenging for software engineers due to poor tool support and a lack of knowledge on how to prioritize technical debt repayment and prevention activities. Furthermore, when there is a large backlog of…

Software Engineering · Computer Science 2018-02-09 Matthieu Foucault , Xavier Blanc , Margaret-Anne Storey , Jean-Rémy Falleri , Cédric Teyton

Advances in AI have led to new types of technical debt in software engineering projects. AI-based competition platforms face challenges due to rapid prototyping and a lack of adherence to software engineering principles by participants,…

Software Engineering · Computer Science 2024-08-02 Dionysios Sklavenitis , Dimitris Kalles

Quantum computing is a rapidly growing field attracting the interest of both researchers and software developers. Supported by its numerous open-source tools, developers can now build, test, or run their quantum algorithms. Although the…

Software Engineering · Computer Science 2022-06-02 Moses Openja , Mohammad Mehdi Morovati , Le An , Foutse Khomh , Mouna Abidi

Self-Admitted Technical Debt (SATD) annotates development decisions that intentionally exchange long-term software artifact quality for short-term goals. Recent work explores the existence of SATD clones (duplicate or near duplicate SATD…

Software Engineering · Computer Science 2024-02-15 Tao Xiao , Zhili Zeng , Dong Wang , Hideaki Hata , Shane McIntosh , Kenichi Matsumoto

Incorporating the business perspective into prioritizing technical debt is essential to contribute to decision making in industry. In this paper, we evolve and evaluate a business-driven approach for technical debt prioritization. The…

Software Engineering · Computer Science 2021-07-13 Rodrigo Rebouças de Almeida , Rafael do Nascimento Ribeiro , Christoph Treude , Uirá Kulesza

The concept of technical debt has been explored from many perspectives but its precise estimation is still under heavy empirical and experimental inquiry. We aim to understand whether, by harnessing approximate, data-driven,…

Software Engineering · Computer Science 2019-08-05 Valentina Lenarduzzi , Antonio Martini , Davide Taibi , Damian Andrew Tamburri

Self-admitted technical debt (SATD) refers to comments in which developers explicitly acknowledge code issues, workarounds, or suboptimal solutions. SATD is known to significantly increase software maintenance effort. While extensive…

Software Engineering · Computer Science 2025-12-22 Shahidul Islam , Md Nahidul Islam Opu , Shaowei Wang , Shaiful Chowdhury

Self-Admitted Technical Debt (SATD) is a form of Technical Debt where developers document the debt using source code comments (SATD-C) or issues (SATD-I). However, it is still unclear the circumstances that drive developers to choose one or…

Software Engineering · Computer Science 2024-08-28 Laerte Xavier , João Eduardo Montandon , Marco Tulio Valente

Technical Debt is a term used to classify non-optimal solutions during software development. These solutions cause several maintenance problems and hence they should be avoided or at least documented. Although there are a considered number…

Software Engineering · Computer Science 2016-04-07 Marcelino Campos Oliveira Silva , Marco Tulio Valente , Ricardo Terra

Self-admitted technical debt (SATD), referring to comments flagged by developers that explicitly acknowledge suboptimal code or incomplete functionality, has received extensive attention in machine learning (ML) and traditional (Non-ML)…

Software Engineering · Computer Science 2026-01-21 Niruthiha Selvanayagam , Taher A. Ghaleb , Manel Abdellatif

Technical debt is a pervasive problem in software development. Software development teams have to prioritize debt items and determine whether they should address debt or develop new features at any point in time. This paper presents…

Software Engineering · Computer Science 2021-07-13 Rodrigo Rebouças de Almeida , Christoph Treude , Uirá Kulesza

Background: Test-Driven Development (TDD) is an agile software development practice, which is claimed to boost both external quality of software products and developers' productivity. Aims: We want to study (i) the TDD effects on the…

With the increasing reliance on software and automation nowadays, tight deadlines, limited resources, and prioritization of functionality over security can lead to insecure coding practices. When not handled properly, these constraints…

Software Engineering · Computer Science 2025-07-16 Chaima Boufaied , Taher Ghaleb , Zainab Masood

Optimizing the quality of software is a function of the degree of reviews made during the early life of a software development process. Reviews detect errors and potential errors early in the software development process. The errors…

Software Engineering · Computer Science 2014-12-11 Inibehe Emmanuel Akpannah

Augmenting missing key aspects in Textual Vulnerability Descriptions (TVDs) is crucial for effective vulnerability analysis. For instance, in TVDs, key aspects include Attack Vector, Vulnerability Type, among others. These key aspects help…

Software Engineering · Computer Science 2024-12-17 Linyi Han , Shidong Pan , Zhenchang Xing , Jiamou Sun , Sofonias Yitagesu , Xiaowang Zhang , Zhiyong Feng

The adoption of Machine and Deep Learning (ML/DL) technologies introduces maintenance challenges, leading to Technical Debt (TD). Algorithm Debt (AD) is a TD type that impacts the performance and scalability of ML/DL systems. A review of 42…

Software Engineering · Computer Science 2026-04-09 Emmanuel Iko-Ojo Simon , Chirath Hettiarachchi , Fatemeh Fard , Alex Potanin , Hanna Suominen

In modern software engineering, build systems play the crucial role of facilitating the conversion of source code into software artifacts. Recent research has explored high-level causes of build failures, but has largely overlooked the…

Software Engineering · Computer Science 2025-04-03 Anwar Ghammam , Dhia Elhaq Rzig , Mohamed Almukhtar , Rania Khalsi , Foyzul Hassan , Marouane Kessentini

A systems quality is a major concern for development teams when it evolve. Understanding the effects of a loss of quality in the codebase is crucial to avoid side effects like the appearance of technical debt. Although the identification of…

Software Engineering · Computer Science 2025-04-16 Karthik Shivashankar , Rafael Capilla , Maren Maritsdatter Kruke , Mili Orucevic , Antonio Martini

Defect Prevention is the most critical but most neglected component of the software quality assurance in any project. If applied at all stages of software development, it can reduce the time, cost and resources required to engineer a high…

Software Engineering · Computer Science 2016-09-08 Suma V. , T. R. Gopalakrishnan Nair