English
Related papers

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

200 papers

Testing is an essential quality activity in the software development process. Usually, a software system is tested on several levels, starting with unit testing that checks the smallest parts of the code until acceptance testing, which is…

Software Engineering · Computer Science 2024-03-21 Lucas Neves , Oscar Campos , Robson Santos , Italo Santos , Cleyton Magalhaes , Ronnie de Souza Santos

Code quality remains an abstract concept that fails to get traction at the business level. Consequently, software companies keep trading code quality for time-to-market and new features. The resulting technical debt is estimated to waste up…

Software Engineering · Computer Science 2022-03-10 Adam Tornhill , Markus Borg

Developing multithreaded software is an extremely challenging task, even for experienced programmers. The challenge does not end after the code is written. There are other tasks associated with a development process that become…

Software Engineering · Computer Science 2014-09-04 Evgeny Vainer , Amiram Yehudai

Context: Forgetting is defined as a gradual process of losing information. Even though there are many studies demonstrating the effect of forgetting in software development, to the best of our knowledge, no study explores the impact of…

Software Engineering · Computer Science 2022-04-19 Utku Ünal , Eray Tüzün , Tamer Gezici , Ausaf Ahmed Farooqui

Context. Multiple automated techniques have been proposed and developed for mobile application GUI testing aiming to improve effectiveness, efficiency, and practicality. The effectiveness, efficiency, and practicality are 3 fundamental…

Software Engineering · Computer Science 2019-01-01 Yauhen Leanidavich Arnatovich , Lipo Wang

Background: Pull-based development has shaped the practice of Modern Code Review (MCR), in which reviewers can contribute code improvements, such as refactorings, through comments and commits in Pull Requests (PRs). Past MCR studies…

Software Engineering · Computer Science 2021-08-26 Flávia Coelho , Nikolaos Tsantalis , Tiago Massoni , Everton L. G. Alves

A classical problem in Software Engineering is how to certify that every system requirement is correctly implemented by source code. This problem, albeit well studied, can still be considered an open one, given the problems faced by…

Software Engineering · Computer Science 2010-11-11 Rogerio Atem de Carvalho , Rodrigo Soares Manhaes , Fernando Luiz de Carvalho e Silva

Background: Code reviewing is an essential part of software development to ensure software quality. However, the abundance of review tasks and the intensity of the workload for reviewers negatively impact the quality of the reviews. The…

Software Engineering · Computer Science 2022-07-26 Shadikur Rahman , Umme Ayman Koana , Maleknaz Nayebi

Traditionally, software quality is thought to depend on sound software engineering and development methodologies such as structured programming and agile development. However, high quality software depends just as much on high quality…

Software Engineering · Computer Science 2017-01-24 Emily Weimar , Ariadi Nugroho , Joost Visser , Aske Plaat , Martijn Goudbeek , Alexander P. Schouten

Many software developments projects fail due to quality problems. Software testing enables the creation of high quality software products. Since it is a cumbersome and expensive task, and often hard to manage, both its technical background…

Software Engineering · Computer Science 2015-03-17 Tim A. Majchrzak

Recent advances in coding agents have shown remarkable progress in software issue resolution. In practice, real-world issues are typically bug fixes or feature requests in which human developers naturally incorporate refactoring as part of…

Software Engineering · Computer Science 2026-05-22 Zhao Tian , Zifan Zhang , Tao Xiao , Dong Wang , Masanari Kondo , Junjie Chen , Yasutaka Kamei

It is well known that the software process in place impacts the quality of the resulting product. However, the specific way in which this effect occurs is still mostly unknown and reported through anecdotes. To gather a better understanding…

Software Engineering · Computer Science 2016-02-24 Rasul Tumyrkin , Manuel Mazzara , Mohammad Kassab , Giancarlo Succi , JooYoung Lee

Three controlled experiments testing the benefits that Java programmers gain from using the Two-Tier Programming Toolkit have recently been concluded. The first experiment offers statistically significant evidence (p-value: 0.02) that…

Software Engineering · Computer Science 2010-09-02 Amnon H. Eden , Epameinondas Gasparis

Refactoring is an activity that improves the internal structure of the code without altering its external behavior. When performed on the production code, the tests can be used to verify that the external behavior of the production code is…

Software Engineering · Computer Science 2015-06-25 Ali Parsai , Alessandro Murgia , Quinten David Soetens , Serge Demeyer

Agile practices are receiving considerable attention from industry as an alternative to traditional software development approaches. However, there are a number of challenges in combining Agile [2] with Test-driven development (TDD) [10]…

Software Engineering · Computer Science 2015-06-30 Sandeep Sivanandan

Background: Code review is a cognitively demanding and time-consuming process. Previous qualitative studies hinted at how decomposing change sets into multiple yet internally coherent ones would improve the reviewing process. So far,…

Software Engineering · Computer Science 2020-01-22 Marco di Biase , Magiel Bruntink , Arie van Deursen , Alberto Bacchelli

Regression testing assures software correctness after changes but is resource-intensive. Test Case Prioritisation (TCP) mitigates this by ordering tests to maximise early fault detection. Diversity-based TCP prioritises dissimilar tests,…

Software Engineering · Computer Science 2025-04-18 Islam T. Elgendy , Robert M. Hierons , Phil McMinn

Actually, software products are increasing in a fast way and are used in almost all activities of human life. Consequently measuring and evaluating the quality of a software product has become a critical task for many companies. Several…

Software Engineering · Computer Science 2014-12-10 Jose P. Miguel , David Mauricio , Glen Rodriguez

Naming is very important in software development, as names are often the only vehicle of meaning about what the code is intended to do. A recent study on how developers choose names collected the names given by different developers for the…

Software Engineering · Computer Science 2024-02-16 Rachel Alpern , Ido Lazer , Issar Tzachor , Hanit Hakim , Sapir Weissbuch , Dror G. Feitelson

Software development is a dynamic activity that requires engineers to work effectively with tools, processes, and collaborative teams. As a result, the presence of friction can significantly hinder productivity, increase frustration, and…

Software Engineering · Computer Science 2024-10-25 Ike Obi , Jenna Butler , Sankeerti Haniyur , Brian Hassan , Margaret-Anne Storey , Brendan Murphy