English
Related papers

Related papers: UX Debt: Developers Borrow While Users Pay

200 papers

Test-driven development (TDD) is a programming technique in which the tests are written prior to the source code. It is proposed that TDD is one of the most fundamental practices enabling the development of software in an agile and…

Software Engineering · Computer Science 2017-11-15 Maria Siniaalto , Pekka Abrahamsson

The better developers can learn software tools, the faster they can start using them and the more efficiently they can later work with them. Tutorials are supposed to help here. While in the early days of computing, mostly text tutorials…

Software Engineering · Computer Science 2017-04-04 Verena Käfer , Daniel Kulesz , Stefan Wagner

The focus on rapid software delivery inevitably results in the accumulation of technical debt, which, in turn, affects quality and slows future development. Yet, companies with a long history of rapid delivery exist. Our primary aim is to…

Context: Previous research on software aging is limited with focus on dynamic runtime indicators like memory and performance, often neglecting evolutionary indicators like source code comments and narrowly examining legacy issues within the…

Software Engineering · Computer Science 2025-04-25 Murali Sridharan , Mika Mäntylä , Leevi Rantala

This report describes the experiences of one organization's adoption of Test Driven Development (TDD) practices as part of a medium-term software project employing Extreme Programming as a methodology. Three years into this project the…

Software Engineering · Computer Science 2021-02-01 Jim Buchan , Ling Li , Stephen G. MacDonell

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

Integrated Development Environments shape developers' daily experience, yet the empirical study of their usability and user experience (UX) remains limited. This work presents an LLM-assisted approach to detecting UX smells in Visual Studio…

Software Engineering · Computer Science 2026-02-26 Andrés Rodriguez , Juan Cruz Gardey , Alejandra Garrido

Unit testing is an essential component of the software development life-cycle. A developer could easily and quickly catch and fix software faults introduced in the source code by creating and running unit tests. Despite their importance,…

Software Engineering · Computer Science 2021-08-02 Denivan Campos , Larissa Rocha , Ivan Machado

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

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

Context: User-Centered Design and Agile methodologies focus on human issues. Nevertheless, agile methodologies focus on contact with contracting customers and generating value for them. Usually, the communication between end users and the…

Software Engineering · Computer Science 2022-11-28 Bruna Ferreira , Silvio Marques , Marcos Kalinowski , Helio Lopes , Simone D. J. Barbosa

Large Language Models (LLMs) are increasingly embedded in software via APIs like OpenAI, offering powerful AI features without heavy infrastructure. Yet these integrations bring their own form of self-admitted technical debt (SATD). In this…

Software Engineering · Computer Science 2025-09-26 Ahmed Aljohani , Hyunsook Do

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

This white paper provides an overview of the topic of "technical debt" and presents an approach for managing technical debt in teams. The white paper is based on the results of my dissertation, which aimed to translate scientific findings…

Software Engineering · Computer Science 2026-03-04 Marion Wiese

Context: Human-centric software design and development focuses on how users want to carry out their tasks rather than making users accommodate their software. Software users can have different genders, ages, cultures, languages,…

Software Engineering · Computer Science 2024-02-06 Vedant Chauhan , Chetan Arora , Hourieh Khalajzadeh , John Grundy

Background: Performance bugs can lead to severe issues regarding computation efficiency, power consumption, and user experience. Locating these bugs is a difficult task because developers have to judge for every costly operation whether…

Software Engineering · Computer Science 2017-07-03 Sebastian Baltes , Oliver Moseler , Fabian Beck , Stephan Diehl

Dependency cycles pose a significant challenge to software quality and maintainability. However, there is limited understanding of how practitioners resolve dependency cycles in real-world scenarios. This paper presents an empirical study…

Software Engineering · Computer Science 2023-12-19 Qiong Feng , Shuwen Liu , Huan Ji , Xiaotian Ma , Peng Liang

As software systems evolve, their architecture is meant to adapt accordingly by following the changes in requirements, the environment, and the implementation. However, in practice, the evolving system often deviates from the architecture,…

Software Engineering · Computer Science 2021-03-23 Ruiyin Li , Peng Liang , Mohamed Soliman , Paris Avgeriou

This paper identifies a model of software evolution that is prevalent in large, long-lived academic research tool suites (3L-ARTS). This model results in an "archipelago" of related but haphazardly organized architectural "islands", and…

Software Engineering · Computer Science 2021-04-20 Marcelo Schmitt Laser , Duc Minh Le , Joshua Garcia , Nenad Medvidović

Background. The migration from monolithic systems to microservices involves deep refactoring of the systems. Therefore, the migration usually has a big economic impact and companies tend to postpone several activities during this process,…

Software Engineering · Computer Science 2020-07-07 Valentina Lenarduzzi , Francesco Lomio , Nyyti Saarimäki , Davide Taibi