English
Related papers

Related papers: A Formal Analysis of Iterated TDD

200 papers

Context: Software Engineering (SE) experiments suffer from threats to validity that may impact their results. Replication allows researchers building on top of previous experiments' weaknesses and increasing the reliability of the findings.…

Software Engineering · Computer Science 2020-04-14 Adrian Santos , Sira Vegas , Fernando Uyaguari , Oscar Dieste , Burak Turhan , Natalia Juristo

Coding agents can generate web applications from natural-language descriptions, yet a recent benchmark study shows that generated applications fail to meet functional requirements in over 70% of cases. The core difficulty is that web…

Software Engineering · Computer Science 2026-05-19 Yuxuan Wan , Tingshuo Liang , Jiakai Xu , Jingyu Xiao , Yintong Huo , Michael R Lyu

This paper compares the impact of Test-Driven Development (TDD) and Behavior-Driven Development (BDD) on software delivery effectiveness within enterprise environments. Using a qualitative research design, data were collected through…

Software Engineering · Computer Science 2024-11-08 Jun Cui

Large language models (LLMs) accelerate software development but often exhibit instability, non-determinism, and weak adherence to development discipline in unconstrained workflows. While test-driven development (TDD) provides a structured…

Software Engineering · Computer Science 2026-04-30 Tarlan Hasanli , Shahbaz Siddeeq , Bishwash Khanal , Pyry Kotilainen , Tommi Mikkonen , Pekka Abrahamsson

Ontology authoring is a complex process, where commonly the automated reasoner is invoked for verification of newly introduced changes, therewith amounting to a time-consuming test-last approach. Test-Driven Development (TDD) for ontology…

Artificial Intelligence · Computer Science 2018-12-17 C. Maria Keet , Kieren Davies , Agnieszka Lawrynowicz

One of the prerequisites of any organization is an unvarying sustainability in the dynamic and competitive industrial environment. Development of high quality software is therefore an inevitable constraint of any software industry. Defect…

Software Engineering · Computer Science 2012-04-03 T. R. Gopalakrishnan Nair , V. Suma , Pranesh Kumar Tiwari

Context: Technical Debt requirements are related to the distance between the ideal value of the specification and the system's actual implementation, which are consequences of strategic decisions for immediate gains, or unintended changes…

Software Engineering · Computer Science 2021-07-15 Ana Melo , Roberta Fagundes , Valentina Lenarduzzi , Wylliams Santos

In today's society, we are becoming increasingly dependent on software systems. However, we also constantly witness the negative impacts of buggy software. Program synthesis aims to improve software correctness by automatically generating…

Software Engineering · Computer Science 2023-12-11 Sanyogita Piya , Allison Sullivan

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

A new workflow for software development (proof-driven development) is presented. An extension of test-driven development, the new workflow utilizes the paradigm of dependently typed programming. The differences in design, complexity and…

Software Engineering · Computer Science 2015-12-08 Ben Goodspeed

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

Technical debt (TD) is a metaphor that is used to communicate the consequences of poor software development practices to non-technical stakeholders. In recent years, it has gained significant attention in agile software development (ASD).…

Software Engineering · Computer Science 2024-01-29 Woubshet Nema Behutiye , Pilar Rodriguez , Markku Oivo , Ayse Tosun

The technical debt (TD) metaphor describes actions made during various stages of software development that lead to a more costly future regarding system maintenance and evolution. According to recent studies, on average 25% of development…

Software synthesis - the process of generating complete, general-purpose programs from specifications - has become a hot research topic in the past few years. For decades the problem was thought to be insurmountable: the search space of…

Programming Languages · Computer Science 2015-10-29 Jonathan Frankle

Context: Technical debt (TD) refers to the additional costs incurred due to compromises in software quality, providing short-term advantages during development but potentially compromising long-term quality. Accurate TD forecasting and…

Software Engineering · Computer Science 2024-06-19 Adekunle Ajibode , Yvon Apedo , Temitope Ajibode

Iteration is a programming operation that traditionally refers to visiting the elements of a data structure in sequence. However, modern programming systems such as Rust, Java, and C# generalise iteration far beyond the traditional use…

Logic in Computer Science · Computer Science 2022-10-19 Aurel Bílý , Jonas Hansen , Peter Müller , Alexander J. Summers

Correctness is a necessary condition for systems to be effective in meeting human demands, thus playing a critical role in system development. However, correctness often manifests as a nebulous concept in practice, leading to challenges in…

Programming Languages · Computer Science 2024-02-23 Yepeng Ding

Software engineering requires rigorous testing to guarantee the product's quality. Semantic testing of functional correctness is challenged by nondeterminism in behavior, which makes testers difficult to write and reason about. This thesis…

Programming Languages · Computer Science 2023-07-07 Yishuai Li

Formal methods play a fundamental role in asserting the correctness of requirements specifications. However, historically, formal method experts have primarily focused on verifying those specifications. Although equally important,…

Software Engineering · Computer Science 2023-08-14 Sebastian Stock , Atif Mashkoor , Alexander Egyed

We present Test-Driven AI Agent Definition (TDAD), a methodology that treats agent prompts as compiled artifacts: engineers provide behavioral specifications, a coding agent converts them into executable tests, and a second coding agent…

Software Engineering · Computer Science 2026-03-11 Tzafrir Rehan