English
Related papers

Related papers: Test Behaviors, Not Methods! Detecting Tests Obses…

200 papers

Code review plays an important role in software quality control. A typical review process would involve a careful check of a piece of code in an attempt to find defects and other quality issues/violations. One type of issues that may impact…

Software Engineering · Computer Science 2021-03-23 Xiaofeng Han , Amjed Tahir , Peng Liang , Steve Counsell , Yajing Luo

Context. The adoption of Machine Learning (ML)--enabled systems is steadily increasing. Nevertheless, there is a shortage of ML-specific quality assurance approaches, possibly because of the limited knowledge of how quality-related concerns…

Software Engineering · Computer Science 2024-03-14 Gilberto Recupito , Giammaria Giordano , Filomena Ferrucci , Dario Di Nucci , Fabio Palomba

Code smells represent sub-optimal implementation choices applied by developers when evolving software systems. The negative impact of code smells has been widely investigated in the past: besides developers' productivity and ability to…

Software Engineering · Computer Science 2019-05-28 Gemma Catolino , Fabio Palomba , Francesca Arcelli Fontana , Andrea De Lucia , Andy Zaidman , Filomena Ferrucci

Context: Software specifications are usually written in natural language and may suffer from imprecision, ambiguity, and other quality issues, called thereafter, requirement smells. Requirement smells can hinder the development of a project…

Software Engineering · Computer Science 2024-04-18 Emanuele Gentili , Davide Falessi

Context: Logging is an important part of modern software projects; logs are used in several tasks such as debugging and testing. Due to the complex nature of logging, it remains a difficult task with several pitfalls that could have serious…

Software Engineering · Computer Science 2026-03-11 Nyyti Saarimäki , Donghwan Shin , Domenico Bianculli

Artificial Intelligence (AI) and Machine Learning (ML) are pervasive in the current computer science landscape. Yet, there still exists a lack of software engineering experience and best practices in this field. One such best practice,…

Software Engineering · Computer Science 2021-03-09 Bart van Oort , Luís Cruz , Maurício Aniche , Arie van Deursen

Python is widely adopted across various domains, especially in Machine Learning (ML) and traditional software projects. Despite its versatility, Python is susceptible to performance smells, i.e., suboptimal coding practices that can reduce…

Software Engineering · Computer Science 2025-04-30 François Belias , Leuson Da Silva , Foutse Khomh , Cyrine Zid

Large Language Models (LLMs) have gained massive popularity in recent years and are increasingly integrated into software systems for diverse purposes. However, poorly integrating them in source code may undermine software system quality.…

Software Engineering · Computer Science 2025-12-29 Brahim Mahmoudi , Zacharie Chenail-Larcher , Naouel Moha , Quentin Stiévenart , Florent Avellaneda

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…

Software Engineering · Computer Science 2023-09-06 Philipp Straubinger , Gordon Fraser

When using object-oriented frameworks it is easy to overlook certain important method calls that are required at particular places in code. In this paper, we provide a comprehensive set of empirical facts on this problem, starting from…

Software Engineering · Computer Science 2023-05-08 Martin Monperrus , Mira Mezini

Mobile apps have become essential of our daily lives, making code quality a critical concern for developers. Behavioural code smells are characteristics in the source code that induce inappropriate code behaviour during execution, which…

Software Engineering · Computer Science 2026-04-14 Houcine Abdelkader Cherief , Florent Avellaneda , Naouel Moha

Code smells as symptoms of poor design and implementation choices. Many times they are the result of so called technical debt. Our study showed that the interest in code smells research is increasing. However, most of the publications are…

Software Engineering · Computer Science 2018-02-19 Peter Kokol , Milan Zorman , Grega Zlahtic , Bojan Zlahtic

Angular is one of the most widely adopted frameworks for developing large-scale, dynamic web applications. As projects increase in scope and complexity, developers face growing challenges in managing architecture and maintaining clean,…

Software Engineering · Computer Science 2026-05-01 Maykon Nunes , Emanuel Coutinho , Carla Bezerra , Ivan Machado

Automated random testing has shown to be an effective approach to finding faults but still faces a major unsolved issue: how to generate test inputs diverse enough to find many faults and find them quickly. Stateful testing, the automated…

Software Engineering · Computer Science 2013-08-14 Yi Wei , Hannes Roth , Carlo A. Furia , Yu Pei , Alexander Horton , Michael Steindorfer , Martin Nordio , Bertrand Meyer

Evaluating Software testability can assist software managers in optimizing testing budgets and identifying opportunities for refactoring. In this paper, we abandon the traditional approach of pursuing testability measurements based on the…

Software Engineering · Computer Science 2021-02-23 Luca Guglielmo , Andrea Riboni , Giovanni Denaro

Reinforcement Learning (RL) is being increasingly used to learn and adapt application behavior in many domains, including large-scale and safety critical systems, as for example, autonomous driving. With the advent of plug-n-play RL…

Software Engineering · Computer Science 2023-08-04 Nicolás Cardozo , Ivana Dusparic , Christian Cabrera

One of the main challenges that developers face when testing their systems lies in engineering test cases that are good enough to reveal bugs. And while our body of knowledge on software testing and automated test case generation is already…

Software Engineering · Computer Science 2021-11-09 Maurício Aniche , Christoph Treude , Andy Zaidman

Flaky tests are software tests that exhibit a seemingly random outcome (pass or fail) when run against the same, identical code. Previous work has examined fixes to flaky tests and has proposed automated solutions to locate as well as fix…

Software Engineering · Computer Science 2019-07-03 Moritz Eck , Fabio Palomba , Marco Castelluccio , Alberto Bacchelli

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

The learning and usage of an API is supported by official documentation. Like source code, API documentation is itself a software product. Several research results show that bad design in API documentation can make the reuse of API features…

Software Engineering · Computer Science 2021-02-18 Junaed Younus Khan , Md. Tawkat Islam Khondaker , Gias Uddin , Anindya Iqbal