English
Related papers

Related papers: Assert Use and Defectiveness in Industrial Code

200 papers

The pivotal role of testing in high-quality software production has driven a significant effort in evaluating and assessing testing practices. We explore the state of testing in a large industrial project over an extended period. We study…

Software Engineering · Computer Science 2019-08-06 Mohammad Ghafari , Markus Eggiman , Oscar Nierstrasz

Unit testing represents the foundational basis of the software testing pyramid, beneath integration and end-to-end testing. Automated software testing researchers have proposed a variety of techniques to assist developers in this…

Software Engineering · Computer Science 2022-03-25 Michele Tufano , Dawn Drain , Alexey Svyatkovskiy , Neel Sundaresan

Contracts are a form of lightweight formal specification embedded in the program text. Being executable parts of the code, they encourage programmers to devote proper attention to specifications, and help maintain consistency between…

Software Engineering · Computer Science 2014-05-08 H. -Christian Estler , Carlo A. Furia , Martin Nordio , Marco Piccioni , Bertrand Meyer

ML models are increasingly deployed in settings with real world interactions such as vehicles, but unfortunately, these models can fail in systematic ways. To prevent errors, ML engineering teams monitor and continuously improve these…

Artificial Intelligence · Computer Science 2020-03-13 Daniel Kang , Deepti Raghavan , Peter Bailis , Matei Zaharia

Developers often opt for easier but non-optimal implementation to meet deadlines or create rapid prototypes, leading to additional effort known as technical debt to improve the code later. Oftentimes, developers explicitly document the…

Software Engineering · Computer Science 2026-02-10 Ibuki Nakamura , Yutaro Kashiwa , Bin Lin , Hajimu Iida

Assertion messages significantly enhance unit tests by clearly explaining the reasons behind test failures, yet they are frequently omitted by developers and automated test-generation tools. Despite recent advancements, Large Language…

Software Engineering · Computer Science 2025-09-25 Ahmed Aljohani , Anamul Haque Mollah , Hyunsook Do

Context. Software reusability mechanisms, like inheritance and delegation in Object-Oriented programming, are widely recognized as key instruments of software design. These are used to reduce the risks of source code being affected by…

Software Engineering · Computer Science 2022-08-17 Giammaria Giordano , Gerardo Festa , Gemma Catolino , Fabio Palomba , Filomena Ferrucci , Carmine Gravino

Software engineering is not an empirically based discipline. Consequently, many of its practices are based on little more than a generally agreed feeling that something may be true. Part of the problem is that it is both relatively young…

Software Engineering · Computer Science 2019-12-10 Tim Hopkins , Les Hatton

Code metrics are easy to define, but not so easy to justify. It is hard to prove that a metric is valid, i.e., that measured numerical values imply anything on the vaguely defined, yet crucial software properties such as complexity and…

Software Engineering · Computer Science 2012-01-17 Joseph Gil , Maayan Goldstein , Dany Moshkovich

Background. Effort-aware metrics (EAMs) are widely used to evaluate the effectiveness of software defect prediction models, while accounting for the effort needed to analyze the software modules that are estimated defective. The usual…

Software Engineering · Computer Science 2025-04-29 Luigi Lavazza , Gabriele Rotoloni , Sandro Morasca

Defect prediction is one of the most popular research topics due to its potential to minimize software quality assurance efforts. Existing approaches have examined defect prediction from various perspectives such as complexity and developer…

Software Engineering · Computer Science 2024-09-02 Rafed Muhammad Yasir , Ahmedul Kabir

Unlike most other software quality attributes, testability cannot be evaluated solely based on the characteristics of the source code. The effectiveness of the test suite and the budget assigned to the test highly impact the testability of…

Software Engineering · Computer Science 2022-08-25 Morteza Zakeri-Nasrabadi , Saeed Parsa

Designing and analysis of test cases is a challenging tasks for tester roles especially those who are related to test the structure of program. Recently, Programmers are showing valuable trend towards the implementation of recursive modules…

Software Engineering · Computer Science 2012-08-28 Muhammad Javed , Bashir Ahmad , Zaffar Abbas , Allah Nawaz , Muhammad Ali Abid , Ihsan Ullah

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

Experience with lightweight formal methods suggests that programmers are willing to write specification if it brings tangible benefits to their usual development activities. This paper considers stronger specifications and studies whether…

Software Engineering · Computer Science 2013-08-14 Nadia Polikarpova , Carlo A. Furia , Yu Pei , Yi Wei , Bertrand Meyer

A recurring problem in software development is incorrect decision making on the techniques, methods and tools to be used. Mostly, these decisions are based on developers' perceptions about them. A factor influencing people's perceptions is…

Software Engineering · Computer Science 2024-02-13 Sira Vegas , Patricia Riofrio , Esperanza Marcos , Natalia Juristo

Context: Static Application Security Testing Tools (SASTTs) identify software vulnerabilities to support the security and reliability of software applications. Interestingly, several studies have suggested that alternative solutions may be…

Software Engineering · Computer Science 2024-03-15 Matteo Esposito , Valentina Falaschi , Davide Falessi

Context: The quality of the test suites and the constituent test cases significantly impacts confidence in software testing. While research has identified several quality attributes of test cases and test suites, there is a need for a…

Software Engineering · Computer Science 2025-07-10 Huynh Khanh Vi Tran , Nauman bin Ali , Michael Unterkalmsteiner , Jürgen Börstler , Panagiota Chatzipetrou

This demo presents the implementation and usage details of GASSERT, the first tool to automatically improve assertion oracles. Assertion oracles are executable boolean expressions placed inside the program that should pass (return true) for…

Software Engineering · Computer Science 2021-03-05 Valerio Terragni , Gunel Jahangirova , Paolo Tonella , Mauro Pezzè

Context: Scientific open-source software (SciOSS) plays a foundational role in research and engineering, yet its long-term sustainability has often been overlooked and remains a significant concern. Objective: This study investigates the…

Software Engineering · Computer Science 2026-05-06 Sheikh Md. Mushfiqur Rahman , Gregory R. Watson , Nasir U. Eisty