中文
相关论文

相关论文: How Do Developers Structure Unit Test Cases? An Em…

200 篇论文

The validation of design pattern implementations to identify pattern violations has gained more relevance as part of re-engineering processes in order to preserve, extend, reuse software projects in rapid development environments. If design…

软件工程 · 计算机科学 2019-08-20 Tamer Abdelaziz , Aya Sedky , Bruno Rossi , Mostafa-Sami M. Mostafa

Architecture patterns capture architectural design experience and provide abstract solutions to recurring architectural design problems. They consist of a description of component types and restrict component connection and activation.…

软件工程 · 计算机科学 2017-03-22 Diego Marmsoler , Silvio Degenhardt

It is a conundrum that agile projects can succeed 'without requirements' when weak requirements engineering is a known cause for project failures. While Agile development projects often manage well without extensive requirements…

软件工程 · 计算机科学 2023-08-15 Elizabeth Bjarnason , Michael Unterkalmsteiner , Emelie Engström , Markus Borg

Refactoring is a common practice in software development, aimed at improving the internal code structure in order to make it easier to understand and modify. Consequently, it is often assumed that refactoring makes the code less prone to…

Various claims have been made regarding the benefits that Enterprise Architecture (EA) delivers for both individual systems development projects and the organization as a whole. This paper presents the statistical findings of a survey study…

计算机与社会 · 计算机科学 2020-08-26 Ralph Foorthuis , Marlies van Steenbergen , Nino Mushkudiani , Wiel Bruls , Sjaak Brinkkemper , Rik Bos

Deep Learning (DL) models have rapidly advanced, focusing on achieving high performance through testing model accuracy and robustness. However, it is unclear whether DL projects, as software systems, are tested thoroughly or functionally…

软件工程 · 计算机科学 2024-02-27 Han Wang , Sijia Yu , Chunyang Chen , Burak Turhan , Xiaodong Zhu

During software evolution, inexperienced developers may introduce design anti-patterns when they modify their software systems to fix bugs or to add new functionalities based on changes in requirements. Developers may also use design…

软件工程 · 计算机科学 2021-04-02 Zeinab , Kermansaravi , Md Saidur Rahman , Foutse Khomh , Fehmi Jaafar , Yann-Gael Gueheneuc

Foundation model (FM)-based AI agents are rapidly gaining adoption across diverse domains, but their inherent non-determinism and non-reproducibility pose testing and quality assurance challenges. While recent benchmarks provide task-level…

Refactoring is widely recognized as one of the efficient techniques to manage technical debt and maintain a healthy software project through enforcing best design practices or coping with design defects. Previous refactoring surveys have…

软件工程 · 计算机科学 2021-09-24 Eman Abdullah AlOmar , Anthony Peruma , Mohamed Wiem Mkaouer , Christian D. Newman , Ali Ouni

As foundation models have accumulated hundreds of millions of users, developers have begun to take steps to prevent harmful types of uses. One salient intervention that foundation model developers adopt is acceptable use policies: legally…

计算机与社会 · 计算机科学 2024-11-26 Kevin Klyman

The promise of increased agility, autonomy, scalability, and reusability has made the microservices architecture a \textit{de facto} standard for the development of large-scale and cloud-native commercial applications. Software patterns are…

Unit tests are an important artifact that supports the software development process in several ways. For example, when a test fails, its name can provide the first step towards understanding the purpose of the test. Unfortunately, unit…

软件工程 · 计算机科学 2020-05-20 Jianwei Wu , James Clause

Background: Test-driven development (TDD) is a technique that repeats short coding cycles interleaved with testing. The developer first writes a unit test for the desired functionality, followed by the necessary production code, and…

软件工程 · 计算机科学 2016-11-21 Davide Fucci , Hakan Erdogmus , Burak Turhan , Markku Oivo , Natalia Juristo

Software is infamous for its poor quality and frequent occurrence of bugs. While there is no doubt that thorough testing is an appropriate answer to ensure sufficient quality, the poor state of software generally suggests that developers…

软件工程 · 计算机科学 2023-09-06 Philipp Straubinger , Gordon Fraser

Decisions on which classes to refactor are fraught with difficulty. The problem of identifying candidate classes becomes acute when confronted with large systems comprising hundreds or thousands of classes. In this paper, we describe a…

软件工程 · 计算机科学 2007-05-23 Richard Wheeldon , Steve Counsell

Unit testing verifies the presence of faults in individual software components. Previous research has been targeting the automatic generation of unit tests through the adoption of random or search-based algorithms. Despite their…

软件工程 · 计算机科学 2022-04-13 Fabiano Pecorelli , Giovanni Grano , Fabio Palomba , Harald C. Gall , Andrea De Lucia

AI assistants can increasingly generate and evolve test cases. The challenge is no longer merely to produce them, but also to help engineers understand why a generated artefact exists and what supports it. Existing work has focused on…

软件工程 · 计算机科学 2026-04-27 Eduard Paul Enoiu , Robert Feldt

Context: Software development projects increasingly adopt unit testing as a way to identify and correct program faults early in the construction process. Code that is unit tested should therefore have fewer failures associated with it.…

软件工程 · 计算机科学 2023-12-05 Efstathia Chioteli , Ioannis Batas , Diomidis Spinellis

Agent-based coding tools have transformed software development practices. Unlike prompt-based approaches that require developers to manually integrate generated code, these agent-based tools autonomously interact with repositories to…

软件工程 · 计算机科学 2026-03-17 Suzuka Yoshimoto , Shun Fujita , Kosei Horikawa , Daniel Feitosa , Yutaro Kashiwa , Hajimu Iida

Software developers study and reuse existing source code to understand how to properly use application programming interfaces (APIs). However, manually finding sufficient and adequate code examples for a given API is a difficult and a…

软件工程 · 计算机科学 2022-08-02 Mohammad Ghafari , Konstantin Rubinov , Mohammad Mehdi Pourhashem K