English
Related papers

Related papers: A Dissection of the Test-Driven Development Proces…

200 papers

Software Engineering (SE) experiments are traditionally analyzed with statistical tests (e.g., t-tests, ANOVAs, etc.) that assume equally spread data across treatments (i.e., the homogeneity of variances assumption). Differences across…

Software Engineering · Computer Science 2018-09-06 Adrian Santos , Markku Oivo , Natalia Juristo

The primary theory of software engineering is that an organization's Policies and Processes influence the quality of its Products. We call this the PPP Theory. Although empirical software engineering research has grown common, it is unclear…

Software Engineering · Computer Science 2023-08-25 Kelechi G. Kalu , Taylor R. Schorlemmer , Sophie Chen , Kyle Robinson , Erik Kocinare , James C. Davis

Continuous Integration (CI) requires efficient regression testing to ensure software quality without significantly delaying its CI builds. This warrants the need for techniques to reduce regression testing time, such as Test Case…

Software Engineering · Computer Science 2024-10-17 Ahmadreza Saboor Yaraghi , Mojtaba Bagherzadeh , Nafiseh Kahani , Lionel Briand

Refactoring is a critical process in software development, aiming at improving the internal structure of code while preserving its external behavior. Refactoring engines are integral components of modern Integrated Development Environments…

Software Engineering · Computer Science 2024-09-24 Haibo Wang , Zhuolin Xu , Huaien Zhang , Nikolaos Tsantalis , Shin Hwei Tan

The direct measurement of quality is difficult because there is no way we can measure quality factors. For measuring these factors, we have to express them in terms of metrics or models. Researchers have developed quality models that…

Software Engineering · Computer Science 2010-04-28 Devpriya Soni , Namita Shrivastava , M. Kumar

Defect prevention is the most vital but habitually neglected facet of software quality assurance in any project. If functional at all stages of software development, it can condense the time, overheads and wherewithal entailed to engineer a…

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

Declarative styles such as functional programming (FP) are rapidly gaining ground on their imperative cousins, including procedural and object-oriented programming. The shift is subtle because it is happening within the context of…

Software Engineering · Computer Science 2016-06-22 Morgan C. Benton , Nicole M. Radziwill

Despite the availability of refactoring as a feature in popular IDEs, recent studies revealed that developers are reluctant to use them, and still prefer the manual refactoring of their code. At JetBrains, our goal is to fully support…

Software Engineering · Computer Science 2021-07-20 Yaroslav Golubev , Zarina Kurbatova , Eman Abdullah AlOmar , Timofey Bryksin , Mohamed Wiem Mkaouer

This position paper argues that decisions on processes, tools, techniques and software artifacts (such as user manuals, unit tests, design documents and code) for scientific software development should be driven by science, not by personal…

Software Engineering · Computer Science 2021-12-24 Spencer Smith , Jacques Carette

In this paper, we present the findings from a survey study to investigate how developers and managers define and trade-off developer productivity and software quality (two related lenses into software development). We found that developers…

Software Engineering · Computer Science 2022-04-28 Margaret-Anne Storey , Brian Houck , Thomas Zimmermann

Background: Technical Debt (TD) describes suboptimal software development practices with long-term consequences, such as defects and vulnerabilities. Deadlines are a leading cause of the emergence of TD in software systems. While multiple…

Software Engineering · Computer Science 2025-05-08 Joshua Aldrich Edbert , Zadia Codabux , Roberto Verdecchia

Refactoring is a practice widely adopted during software maintenance and evolution. Due to its importance, there is extensive work on the effectiveness of refactoring in achieving code quality. However, developer's intentions are usually…

This study explores the application of deep learning technologies in software development processes, particularly in automating code reviews, error prediction, and test generation to enhance code quality and development efficiency. Through…

Software Engineering · Computer Science 2024-05-06 Keqin Li , Armando Zhu , Peng Zhao , Jintong Song , Jiabei Liu

Process mining has matured as analysis instrument for process-oriented data in recent years. Manufacturing is a challenging domain that craves for process-oriented technologies to address digitalization challenges. We found that process…

Artificial Intelligence · Computer Science 2021-05-05 Florian Stertz , Juergen Mangler , Stefanie Rinderle-Ma

Just-in-time defect prediction (JIT-DP) aims to predict the likelihood of code changes resulting in software defects at an early stage. Although code change metrics and semantic features have enhanced prediction accuracy, prior research has…

Software Engineering · Computer Science 2025-07-29 Feifei Niu , Junqian Shao , Christoph Mayr-Dorn , Liguo Huang , Wesley K. G. Assunção , Chuanyi Li , Jidong Ge , Alexander Egyed

For more than thirty years, it has been claimed that a way to improve software developers' productivity and software quality is to focus on people. The underlying assumption seems to be that "happy and satisfied software developers perform…

Software Engineering · Computer Science 2016-01-27 Daniel Graziotin

Testing has become an indispensable activity of software development, yet writing good and relevant tests remains a quite challenging task. One well-known problem is that it often is impossible or unrealistic to test for every outcome, as…

Programming Languages · Computer Science 2017-08-18 Dimitri Racordon , Didier Buchs

In recent years, a vivid interest in hybrid development methods has been observed as practitioners combine various approaches to software creation to improve productivity, product quality, and adaptability of the process to react to change.…

Software Engineering · Computer Science 2021-03-08 Rafał Włodarski , Jean-Rémy Falleri , Corinne Parvéry

Dataset distillation compresses large datasets into compact synthetic ones to reduce storage and computational costs. Among various approaches, distribution matching (DM)-based methods have attracted attention for their high efficiency.…

Computer Vision and Pattern Recognition · Computer Science 2025-12-03 Fengli Ran , Xiao Pu , Bo Liu , Xiuli Bi , Bin Xiao

The durability and quality of software contributions are critical factors in the long-term maintainability of a codebase. This paper introduces the Time to Modification (TTM) Theory, a novel approach for quantifying code quality by…

Software Engineering · Computer Science 2024-10-16 Vincil Bishop , Steven J Simske