English
Related papers

Related papers: Quantifying and Characterizing Clones of Self-Admi…

200 papers

Code clones are code snippets that are identical or similar to other snippets within the same or different files. They are often created through copy-and-paste practices and modified during development and maintenance activities. Since a…

Software Engineering · Computer Science 2024-09-16 Reishi Yokomori , Katsuro Inoue

Context. Technical Debt (TD) is a metaphor for technical problems that are not visible to users and customers but hinder developers in their work, making future changes more difficult. TD is often incurred due to tight project deadlines and…

Software Engineering · Computer Science 2022-04-26 Marion Wiese , Paula Rachow , Matthias Riebisch , Julian Schwarze

Managing technical debt (TD) is critical to ensure the sustainability of long-term software projects. However, the time and cost involved in technical debt management (TDM) often discourage practitioners from performing this activity…

Software Engineering · Computer Science 2026-04-14 João Paulo Biazotto , Daniel Feitosa , Paris Avgeriou , Elisa Yumi Nakagawa

Background: Technical debt (TD) has been widely discussed in software engineering research, and there is an emerging literature linking it to developer characteristics. However, developer personality has not yet been studied in this…

Software Engineering · Computer Science 2024-06-28 Lorenz Graf-Vlachy , Stefan Wagner

A vigorous and growing set of technical debt analysis tools have been developed in recent years -- both research tools and industrial products -- such as Structure 101, SonarQube, and DV8. Each of these tools identifies problematic files…

Software Engineering · Computer Science 2021-03-09 Jason Lefever , Yuanfang Cai , Humberto Cervantes , Rick Kazman , Hongzhou Fang

Software developers often submit questions to technical Q&A sites like Stack Overflow (SO) to resolve code-level problems. In practice, they include example code snippets with questions to explain the programming issues. Existing research…

Software Engineering · Computer Science 2024-07-16 Saikat Mondal , Banani Roy

Context: Technical Debt needs to be managed to avoid disastrous consequences, and investigating developers' habits concerning technical debt management is invaluable information in software development. Objective: This study aims to…

Software Engineering · Computer Science 2020-09-10 Zadia Codabux , Christopher Dutchyn

Software development relies heavily on traceability links between various software artifacts to ensure quality and facilitate maintenance. While automated traceability recovery techniques have advanced for different artifact pairs, the…

Software Engineering · Computer Science 2026-03-18 Zhifei Chen , Lata Yi , Liming Nie , Yangyang Zhao , Hao Liu , Yiqing Shi , Wei Song

Reusing code can produce duplicate or near-duplicate code clones in code repositories. Current code clone detection techniques, like Program Dependence Graphs, rely on code structure and their dependencies to detect clones. These techniques…

Software Engineering · Computer Science 2020-06-26 Sandeep Kaur Kuttal , Akash Ghosh

Designing correct replicated data types (RDTs) is challenging because replicas evolve independently and must be merged while preserving application intent. A promising approach is correct-by-construction development in a proof-oriented…

Programming Languages · Computer Science 2026-03-31 Pranav Ramesh , Vimala Soundarapandian , KC Sivaramakrishnan

Context: Advances in technical debt research demonstrate the benefits of applying the financial debt metaphor to support decision-making in software development activities. Although decision-making during requirements engineering has…

Technical debt (TD) refers to suboptimal choices during software development that achieve short-term goals at the expense of long-term quality. Although developers often informally discuss TD, the concept has not yet crystalized into a…

Software Engineering · Computer Science 2022-01-31 Ipek Ozkaya , Zachary Kurtz , Robert L. Nord , Raghvinder S. Sangwan , Satish M. Srinivasan

Having similar code fragments, also called clones, in software systems can lead to unnecessary comprehension, review and change efforts. Syntactically similar clones can often be encountered in practice. The same is not clear for only…

Software Engineering · Computer Science 2018-05-23 Verena Käfer , Stefan Wagner , Rainer Koschke

Background: Contract-based Design (CbD) is a valuable methodology for software design that allows annotation of code and architectural components with contracts, thereby enhancing clarity and reliability in software development. It…

Software Engineering · Computer Science 2025-05-13 Fazli Faruk Okumus , Amra Ramic , Stefan Kugele

Microservice architectures provide an intuitive promise of high maintainability and evolvability due to loose coupling. However, these quality attributes are notably vulnerable to technical debt (TD). Few studies address TD in microservice…

Software Engineering · Computer Science 2025-06-23 Klara Borowa , Andrzej Ratkowski , Roberto Verdecchia

AI coding assistants are now widely used in software development. Software developers increasingly integrate AI-generated code into their codebases to improve productivity. Prior studies have shown that AI-generated code may contain code…

Software Engineering · Computer Science 2026-04-28 Yue Liu , Ratnadira Widyasari , Yanjie Zhao , Ivana Clairine Irsan , Junkai Chen , David Lo

Background. Developers use Automated Static Analysis Tools (ASATs) to control for potential quality issues in source code, including defects and technical debt. Tool vendors have devised quite a number of tools, which makes it harder for…

Software Engineering · Computer Science 2021-01-25 Valentina Lenarduzzi , Savanna Lujan , Nyyti Saarimaki , Fabio Palomba

The lack of reliable sources of detailed information on the vulnerabilities of open-source software (OSS) components is a major obstacle to maintaining a secure software supply chain and an effective vulnerability management process.…

Cryptography and Security · Computer Science 2025-03-18 Antonino Sabetta , Michele Bezzi

Source code is changed for a reason, e.g., to adapt, correct, or adapt it. This reason can provide valuable insight into the development process but is rarely explicitly documented when the change is committed to a source code repository.…

Software Engineering · Computer Science 2021-05-03 Sebastian Hönel , Morgan Ericsson , Welf Löwe , Anna Wingkvist

Context. Technical Debt (TD), defined as software constructs that are beneficial in the short term but may hinder future change, is a frequently used term in software development practice. Nevertheless, practitioners do not always fully…

Software Engineering · Computer Science 2025-02-05 Marion Wiese , Angelina Heinrichs , Nino Rusieshvili , Rodrigo Rebouças de Almeida , Klara Borowa