English
Related papers

Related papers: Spec-Driven Development:From Code to Contract in t…

200 papers

Engineering system design -- whether mechatronic, control, or embedded -- often proceeds in an ad hoc manner, with requirements left implicit and traceability from intent to parameters largely absent. Existing specification-driven and…

Computational Engineering, Finance, and Science · Computer Science 2026-05-05 H. Sinan Bank , Daniel R. Herber , Thomas H. Bradley

Despite decades of engineering and scientific research efforts, separation of concerns in software development remains not fully achieved. The challenge has been to avoid the crosscutting of concerns phenomenon, which has no apparent…

Software Engineering · Computer Science 2021-10-11 Júlio G. S. F. da Costa , Reinaldo A. Petta , Samuel Xavier-de-Souza

Analysis and design phases are the most crucial part of the software development life-cycle. Reusing the artifacts of these early phases is very beneficial to improve the productivity and software quality. In this paper we analyze the…

Software Engineering · Computer Science 2014-01-22 Hamdi A. Al-Jamimi , Moataz Ahmed

Software Development (SD) is remarkably dynamic and is critically dependent on the knowledge acquired by the project's software developers as the project progresses. Software developers need to understand large amounts of information…

Software Engineering · Computer Science 2023-05-02 Glaucia Melo , Luis Fernando Lins , Paulo Alencar , Donald Cowan

Design by Contract enables seamless software development by unifying software requirements with their implementations. In its pure form, however, Design by Contract leaves some problems with contracts' expressiveness, verifiability, and…

Software Engineering · Computer Science 2019-11-26 Alexandr Naumchev

This manuscript signals a new era in the integration of artificial intelligence with software engineering, placing machines at the pinnacle of coding capability. We present a formalized, iterative methodology proving that AI can fully…

Software Engineering · Computer Science 2024-12-09 Alex , Liu , Vivian , Chi

The rapid rise of Artificial Intelligence (AI) is reshaping Software Engineering (SE), creating new opportunities while introducing human-centered challenges. Although prior work notes behavioral and other non-technical factors in AI…

Software Engineering · Computer Science 2025-12-08 Theocharis Tavantzis , Stefano Lambiase , Daniel Russo , Robert Feldt

Introduction of the Scrum approach into software engineering has changed the way software is being developed. The Scrum approach emphasizes the active end-user involvement, embracing of change, and /iterative delivery of products. Our study…

Software Engineering · Computer Science 2021-03-02 Peter Kokol. Sašo Zagoranski , Marko Kokol

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

This paper presents a tool stack for the implementation, specification and test of software following the practices of Behavior Driven Development (BDD) in Python language. The usage of this stack highlights the specification and validation…

In this paper we formally analyze the software methodology called (iterated) Test Driven Development (TDD). We formally define Specification, Software, Testing, Equivalence Partitions, Coupling, to argue about the nature of the software…

Software Engineering · Computer Science 2024-07-19 Hemil Ruparel , Nabarun Mondal

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

Developing distributed systems presents significant challenges, primarily due to the complexity introduced by non-deterministic concurrency and faults. To address these, we propose a specification-driven development framework. Our method…

Software Engineering · Computer Science 2025-09-16 Hua Guo , Yunhong Ji , Xuan Zhou

Software Defined Networking (SDN) drastically changes the meaning and process of designing, building, testing, and operating networks. The current support for wireless net- working in SDN technologies has lagged behind its development and…

Networking and Internet Architecture · Computer Science 2015-09-17 Muxi Yan , Jasson Casey , Prithviraj Shome , Alex Sprintson , Andrew Sutton

It is expected that in the near future, AI software development assistants will play an important role in the software industry. However, current software development assistants tend to be unreliable, often producing incorrect, unsafe, or…

Software Engineering · Computer Science 2024-01-24 Daniel Maninger , Krishna Narasimhan , Mira Mezini

Formal software specification is known to enable early error detection and explicit invariants, yet it has seen limited industrial adoption due to its high notation overhead and the expertise required to use traditional formal languages.…

Software Engineering · Computer Science 2026-01-16 Antonio Abu Nassar , Eitan Farchi

Cognitive-Driven Development (CDD) is a coding design technique that aims to reduce the cognitive effort that developers place in understanding a given code unit (e.g., a class). By following CDD design practices, it is expected that the…

Software Engineering · Computer Science 2022-06-23 Leonardo Barbosa , Victor Hugo Santiago , Alberto Luiz Oliveira Tavares de Souza , Gustavo Pinto

Much of the reported progress in file-level software defect prediction (SDP) is, in reality, nothing but an illusion of accuracy. Over the last decades, machine learning and deep learning models have reported increasing performance across…

Software Engineering · Computer Science 2026-01-01 Mohsen Hesamolhokama , Behnam Rohani , Amirahmad Shafiee , MohammadAmin Fazli , Jafar Habibi

Background: The increasing adoption of AI assistants in programming has led to numerous studies exploring their benefits. While developers consistently report significant productivity gains from these tools, empirical measurements often…

Human-Computer Interaction · Computer Science 2025-01-07 Ebtesam Al Haque , Chris Brown , Thomas D. LaToza , Brittany Johnson

Software-Defined Networking (SDN) is an emerging paradigm that promises to change this state of affairs, by breaking vertical integration, separating the network's control logic from the underlying routers and switches, promoting (logical)…

Networking and Internet Architecture · Computer Science 2014-10-09 Diego Kreutz , Fernando M. V. Ramos , Paulo Verissimo , Christian Esteve Rothenberg , Siamak Azodolmolky , Steve Uhlig