English
Related papers

Related papers: Comments or Issues: Where to Document Technical De…

200 papers

Smart contracts are self-enforcing agreements that are employed to exchange assets without the approval of trusted third parties. This feature has encouraged various sectors to make use of smart contracts when transacting. Experience shows…

Cryptography and Security · Computer Science 2021-03-18 Sabreen Ahmadjee , Carlos Mera-Gómez , Rami Bahsoon

Technical Debt (TD) identification in software projects issues is crucial for maintaining code quality, reducing long-term maintenance costs, and improving overall project health. This study advances TD classification using…

Software Engineering · Computer Science 2024-08-20 Karthik Shivashankar , Mili Orucevic , Maren Maritsdatter Kruke , Antonio Martini

While technical debt grows in absolute numbers as software systems evolve over time, the density of technical debt (technical debt divided by lines of code) is reduced in some cases. This can be explained by either the application of…

Software Engineering · Computer Science 2020-10-20 George Digkas , Alexander Chatzigeorgiou , Apostolos Ampatzoglou , Paris Avgeriou

Developers use and contribute to repositories on GitHub. Documentation present in the repositories serves as an important source by helping developers to understand, maintain and contribute to the project. Currently, documentation in a…

Software Engineering · Computer Science 2021-03-02 Akhila Sri Manasa Venigalla , Sridhar Chimalakonda

Generative AI is accelerating software development, but may quietly shift where the most significant risks lie. As AI generates code faster than teams can understand it, two under appreciated forms of debt accumulate: cognitive debt, the…

Software Engineering · Computer Science 2026-04-08 Margaret-Anne Storey

Context: Technical Debt (TD) discusses the negative impact of sub-optimal decisions to cope with the need-for-speed in software development. Code Technical Debt Items (TDI) are atomic elements of TD that can be observed in code artefacts.…

Software Engineering · Computer Science 2022-01-06 Ehsan Zabardast , Kwabena Ebo Bennin , Javier Gonzalez-Huerta

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

Technical debt happens when teams take shortcuts on software development to gain short-term benefits at the cost of making future changes more expensive. Previous results show that there is a misalignment between the prioritization done by…

Software Engineering · Computer Science 2021-07-13 Rodrigo Rebouças de Almeida

In this paper, we investigate the strategies adopted by Solidity developers to fix security vulnerabilities in smart contracts. Vulnerabilities are categorized using the DASP TOP 10 taxonomy, and fixing strategies are extracted from GitHub…

When not appropriately managed, technical debt is considered to have negative effects on the long term success of a software project. However, how the debt metaphor applies to requirements engineering in general, and to requirements…

Software Engineering · Computer Science 2019-07-26 Valentina Lenarduzzi , Davide Fucci

Context: Technical debt (TD) refers to the additional costs incurred due to compromises in software quality, providing short-term advantages during development but potentially compromising long-term quality. Accurate TD forecasting and…

Software Engineering · Computer Science 2024-06-19 Adekunle Ajibode , Yvon Apedo , Temitope Ajibode

Security issue reports are the primary means of informing development teams of security risks in projects, but little is known about current practices. We aim to understand the characteristics of these reports in open-source projects and…

Cryptography and Security · Computer Science 2021-12-21 Noah Bühlmann , Mohammad Ghafari

Context: Technical lag accumulates when software systems fail to keep pace with technological advancements, leading to a deterioration in software quality. Objective: This paper aims to consolidate existing research on technical lag,…

Software Engineering · Computer Science 2026-01-21 Shane K. Panter , Nasir U. Eisty

To effectively manage Technical Debt (TD), we need reliable means to quantify it. We conducted a Systematic Mapping Study (SMS) where we identified TD quantification approaches that focus on different aspects of TD. Some approaches base the…

Software Engineering · Computer Science 2023-03-14 Judith Perera , Ewan Tempero , Yu-Cheng Tu , Kelly Blincoe

Background: To adequately attend to non-functional requirements (NFRs), they must be documented; otherwise, developers would not know about their existence. However, the documentation of NFRs may be subject to Technical Debt and Waste, as…

Software Engineering · Computer Science 2019-09-30 Gabriela Robiolo , Ezequiel Scott , Santiago Matalonga , Michael Felderer

Academic publications have been evaluated in terms of their impact on research communities based on many metrics, such as the number of citations. On the other hand, the impact of academic publications on industry has been rarely studied.…

Commit signing is a principal mechanism for verifying the origin of code in software supply chains. Security frameworks treat it as a core trust signal, assuming developers sign their commits consistently with keys they control and keep…

Software Engineering · Computer Science 2026-05-01 Abubakar Sadiq Shittu , John Sadik , Farzin Gholamrezae , Scott Ruoti

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

Blockchain is a disruptive technology intended at implementing secure decentralized distributed systems, in which transactional data can be shared, stored and verified by participants of a system using cryptographic and consensus…

Software Engineering · Computer Science 2019-03-11 Sabreen Ahmadjee , Rami Bahsoon

Open-source code development has become widespread in recent years. As a result, open-source software platforms have also become popular, and millions of developers from diverse locations are able to contribute to the same projects. On…

Software Engineering · Computer Science 2021-01-22 Abdulkadir Şeker , Banu Diri , Halil Arslan