English
Related papers

Related papers: Towards Quantifying Requirements Technical Debt fo…

200 papers

Architectural technical debt (ATD) represents trade-offs in software architecture that accelerate initial development but create long-term maintenance challenges. ATD, in particular when self-admitted, impacts the foundational structure of…

Software Engineering · Computer Science 2025-05-06 Edi Sutoyo , Paris Avgeriou , Andrea Capiluppi

Self-admitted technical debt (SATD) refers to a form of technical debt in which developers explicitly acknowledge and document the existence of technical shortcuts, workarounds, or temporary solutions within the codebase. Over recent years,…

Software Engineering · Computer Science 2024-09-19 Edi Sutoyo , Andrea Capiluppi

Upon evolving their software, organizations and individual developers have to spend a substantial effort to pay back technical debt, i.e., the fact that software is released in a shape not as good as it should be, e.g., in terms of…

Software Engineering · Computer Science 2023-08-21 Antonio Mastropaolo , Massimiliano Di Penta , Gabriele Bavota

Self-admitted technical debt refers to situations where a software developer knows that their current implementation is not optimal and indicates this using a source code comment. In this work, we hypothesize that it is possible to develop…

Software Engineering · Computer Science 2019-10-22 Rungroj Maipradit , Christoph Treude , Hideaki Hata , Kenichi Matsumoto

In the process of software evolution, developers often sacrifice the long-term code quality to satisfy the short-term goals due to specific reasons, which is called technical debt. In particular, self-admitted technical debt (SATD) refers…

Software Engineering · Computer Science 2019-10-30 Zhaoqiang Guo , Shiran Liu , Jinping Liu , Yanhui Li , Lin Chen , Hongmin Lu , Yuming Zhou , Baowen Xu

NonTechnical Debt (NTD) is a common challenge in agile software development, manifesting in four critical forms, Process Debt, Social Debt, People Debt, Organizational debt. NODLA project is a collaboration between Karlstad University and…

Software Engineering · Computer Science 2025-09-03 Muhammad Ovais Ahmad , Tomas Gustavsson

Requirements engineering is a key phase in the development process. Ensuring that requirements are consistent is essential so that they do not conflict and admit implementations. We consider the formal verification of rt-consistency, which…

Formal Languages and Automata Theory · Computer Science 2020-07-09 Thierry Jéron , Nicolas Markey , David Mentré , Reiya Noguchi , Ocan Sankur

Self-Admitted Technical Debt (SATD) encompasses a wide array of sub-optimal design and implementation choices reported in software artefacts (e.g., code comments and commit messages) by developers themselves. Such reports have been central…

Software Engineering · Computer Science 2024-03-05 Nicolás E. Díaz Ferreyra , Mojtaba Shahin , Mansooreh Zahedi , Sodiq Quadri , Ricardo Scandariato

High-quality requirements minimize the risk of propagating defects to later stages of the software development life cycle. Achieving a sufficient level of quality is a major goal of requirements engineering. This requires a clear definition…

Software Engineering · Computer Science 2023-09-20 Julian Frattini , Lloyd Montgomery , Jannik Fischbach , Daniel Mendez , Davide Fucci , Michael Unterkalmsteiner

The rapid adoption of Deep Learning (DL)-enabled systems has revolutionized software development, driving innovation across various domains. However, these systems also introduce unique challenges, particularly in maintaining software…

Software Engineering · Computer Science 2025-10-07 Gilberto Recupito , Vincenzo De Martino , Dario Di Nucci , Fabio Palomba

Fixing bugs is an important phase in software development and maintenance. In practice, the process of bug fixing may conflict with the release schedule. Such confliction leads to a trade-off between software quality and release schedule,…

Software Engineering · Computer Science 2017-04-18 Jifeng Xuan , Yan Hu , He Jiang

This study explores the dynamic landscape of Technical Debt (TD) topics in software engineering by examining its evolution across time, programming languages, and repositories. Despite the extensive research on identifying and quantifying…

Software Engineering · Computer Science 2025-04-17 Karthik Shivashankar , Antonio Martini

Analysing the strategic alignment of software requirements primarily provides assurance to stakeholders that the software-to-be will add value to the organisation. Additionally, such analysis can improve a requirement by disambiguating its…

Software Engineering · Computer Science 2014-01-03 Richard Ellis-Braithwaite , Russell Lock , Ray Dawson , Badr Haque

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

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

Software developers and maintainers need to read and understand source programs and other software artifacts. The increase in size and complexity of software drastically affects several quality attributes, especially understandability and…

Software Engineering · Computer Science 2010-04-27 Mohd Nazir , Raees A. Khan , Khurram Mustafa

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

Self-admitted technical debt (SATD) refers to technical debt that is intentionally introduced by developers and explicitly documented in code comments or other software artifacts (e.g., issue reports) to annotate sub-optimal decisions made…

Software Engineering · Computer Science 2022-03-31 Jerin Yasmin , Mohammad Sadegh Sheikhaei , Yuan Tian

Developers sometimes choose design and implementation shortcuts due to the pressure from tight release schedules. However, shortcuts introduce technical debt that increases as the software evolves. The debt needs to be repaid as fast as…

Software Engineering · Computer Science 2022-01-07 Biruk Asmare Muse , Csaba Nagy , Anthony Cleve , Foutse Khomh , Giuliano Antoniol

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