English
Related papers

Related papers: A Formal Analysis of Iterated TDD

200 papers

In this paper, we address program development by multiple different programmers (or programming teams), each working in different settings (programming languages or reasoning frameworks), but following a common specification; in particular,…

Logic in Computer Science · Computer Science 2023-06-13 Georgios V. Pitsiladis , Petros S. Stefaneas

Agentic AI systems can now generate code with remarkable fluency, but a fundamental question remains: \emph{does the generated code actually do what the user intended?} The gap between informal natural language requirements and precise…

Software Engineering · Computer Science 2026-03-19 Shuvendu K. Lahiri

Technical Debt (TD) refers to non-optimal decisions made in software projects that may lead to short-term benefits, but potentially harm the system's maintenance in the long-term. Technical debt management (TDM) refers to a set of…

Software Engineering · Computer Science 2023-12-11 João Paulo Biazotto , Daniel Feitosa , Paris Avgeriou , Elisa Yumi Nakagawa

TLA+ is a formal specification language used for designing, modeling, documenting, and verifying systems through model checking. Despite significant interest from the research community, knowledge about usage of the TLA+ ecosystem in…

Software Engineering · Computer Science 2024-11-22 Roman Bögli , Leandro Lerena , Christos Tsigkanos , Timo Kehrer

Many dependability techniques expect certain behaviors from the underlying subsystems and fail in chaotic ways if these expectations are not met. Under expected circumstances, however, software tends to work quite well. This paper suggests…

Operating Systems · Computer Science 2007-05-23 George Candea

Developing complex software systems is costly, time-consuming and error-prone. Model- driven development (MDD) promises to improve software productivity, timeliness, quality and cost through the transformation of abstract application models…

Software Engineering · Computer Science 2014-11-04 Hamid Bagheri

Most currently accepted approaches to evaluating Research through Design (RtD) presume that design prototypes are finalized and ready for robust testing in laboratory or in-the-wild settings. However, it is also valuable to assess designs…

Human-Computer Interaction · Computer Science 2024-04-03 Raquel B Robinson , Anya Osborne , Chen Ji , James Collin Fey , Ella Dagan , Katherine Isbister

Testing is a core software development activity that has huge potential to make software development more sustainable. In this paper, we discuss how environmental, social, economic, and technical sustainability map onto the activities of…

Software Engineering · Computer Science 2021-04-06 Armin Beer , Michael Felderer , Tobias Lorey , Stefan Mohacsi

Many proposed methods for explaining machine learning predictions are in fact challenging to understand for nontechnical consumers. This paper builds upon an alternative consumer-driven approach called TED that asks for explanations to be…

Machine Learning · Computer Science 2020-01-17 Michael Hind , Dennis Wei , Yunfeng Zhang

In reinforcement learning, the TD($\lambda$) algorithm is a fundamental policy evaluation method with an efficient online implementation that is suitable for large-scale problems. One practical drawback of TD($\lambda$) is its sensitivity…

Machine Learning · Statistics 2014-12-23 Aviv Tamar , Panos Toulis , Shie Mannor , Edoardo M. Airoldi

Behavior-Driven Development (BDD) is a specification technique that automatically certifies that all functional requirements are treated properly by source code, through the connection of the textual description of these requirements to…

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

Testing a database application is a challenging process where both the database and the user interaction have to be considered in the design of test cases. This paper describes a specification-based approach to guide the design of test…

Software Engineering · Computer Science 2023-04-26 Raquel Blanco , Javier Tuya , Ruben V. Seco

Background: Software systems powered by large language models are becoming a routine part of everyday technologies, supporting applications across a wide range of domains. In software engineering, many studies have focused on how LLMs…

Software Engineering · Computer Science 2025-08-05 Cleyton Magalhaes , Italo Santos , Brody Stuart-Verner , Ronnie de Souza Santos

The structures for the expression of fault-tolerance provisions into the application software are the central topic of this paper. Structuring techniques answer the questions "How to incorporate fault-tolerance in the application layer of a…

Software Engineering · Computer Science 2015-04-14 Vincenzo De Florio , Chris Blondia

Product Data Management (PDM) aims to provide 'Systems' contributing in industries by electronically maintaining organizational data, improving data repository system, facilitating with easy access to CAD and providing additional…

Information Retrieval · Computer Science 2010-08-10 Zeeshan Ahmed , Saman Majeed , Thomas Dandekar

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

The semantic foundations for logic programming are usually separated into two different approaches. The operational semantics, which uses SLD-resolution, the proof method that computes answers in logic programming, and the declarative…

Programming Languages · Computer Science 2022-08-02 João Barbosa , Mário Florido , Vítor Santos Costa

The specification and validation of robotics applications require bridging the gap between formulating requirements and systematic testing. This often involves manual and error-prone tasks that become more complex as requirements, design,…

Robotics · Computer Science 2025-07-08 Minh Nguyen , Sebastian Wrede , Nico Hochgeschwender

Virtually all verification techniques using formal methods rely on the availability of a formal specification, which describes the design requirements precisely. However, formulating specifications remains a manual task that is notoriously…

Formal Languages and Automata Theory · Computer Science 2025-01-28 Daniel Neider , Rajarshi Roy

Requirements engineering is a key phase in the development process. Ensuring that requirements are consistent is essential so that they do not conflict and admit implementations. We consider the formal verification of rt-consistency, which…

Formal Languages and Automata Theory · Computer Science 2020-07-09 Thierry Jéron , Nicolas Markey , David Mentré , Reiya Noguchi , Ocan Sankur