English
Related papers

Related papers: Follow Your Nose -- Which Code Smells are Worth Ch…

200 papers

Is the quality of existing code correlated with the quality of subsequent changes? According to the (controversial) broken windows theory, which inspired this study, disorder sets descriptive norms and signals behavior that further…

Software Engineering · Computer Science 2025-01-09 Diomidis Spinellis , Panos Louridas , Maria Kechagia , Tushar Sharma

Educating students about software testing practices is integral to the curricula of many computer science-related courses and typically involves students writing unit tests. Similar to production/source code, students might inadvertently…

Software Engineering · Computer Science 2024-04-17 Anthony Peruma , Eman Abdullah AlOmar , Wajdi Aljedaani , Christian D. Newman , Mohamed Wiem Mkaouer

Open-source software supply chain attacks aim at infecting downstream users by poisoning open-source packages. The common way of consuming such artifacts is through package repositories and the development of vetting strategies to detect…

Cryptography and Security · Computer Science 2022-10-11 Piergiorgio Ladisa , Henrik Plate , Matias Martinez , Olivier Barais , Serena Elisa Ponta

Open source projects often maintain open bug repositories during development and maintenance, and the reporters often point out straightly or implicitly the reasons why bugs occur when they submit them. The comments about a bug are very…

Software Engineering · Computer Science 2011-03-21 Deqing Wang , Mengxiang Lin , Hui Zhang , Hongping Hu

Code comments are important in software development because they directly influence software maintainability and overall quality. Bad practices of code comments lead to code comment smells, negatively impacting software maintenance. Recent…

Software Engineering · Computer Science 2025-09-01 Ipek Oztas , U Boran Torun , Eray Tüzün

We are trying to find source code comments that help programmers understand a nontrivial part of source code. One of such examples would be explaining to assign a zero as a way to "clear" a buffer. Such comments are invaluable to…

Software Engineering · Computer Science 2022-03-18 Yusuke Shinyama , Yoshitaka Arahori , Katsuhiko Gondow

Code smells are indicators of potential design flaws in source code and do not appear alone but in combination with other smells, creating complex interactions. While existing literature classifies these smell interactions into collocated,…

Software Engineering · Computer Science 2025-04-28 Ruchin Gupta , Sandeep Kumar Singh

Determining the most effective Large Language Model for code smell detection presents a complex challenge. This study introduces a structured methodology and evaluation matrix to tackle this issue, leveraging a curated dataset of code…

Software Engineering · Computer Science 2025-04-23 Ahmed R. Sadik , Siddhata Govind

In object-oriented languages software developers rely on thread-safe classes to implement concurrent applications. However, determining whether a class is thread-safe is a challenging task. This paper presents a highly scalable method to…

Software Engineering · Computer Science 2025-09-03 Bjørnar Haugstad Jåtten , Simon Boye Jørgensen , Rasmus Petersen , Raúl Pardo

Software systems naturally evolve, and this evolution often brings design problems that cause system degradation. Architectural smells are typical symptoms of such problems, and several of these smells are related to undesired dependencies…

Software Engineering · Computer Science 2018-08-21 J. Andrés Díaz-Pace , Antonela Tommasel , Daniela Godoy

Code quality remains an abstract concept that fails to get traction at the business level. Consequently, software companies keep trading code quality for time-to-market and new features. The resulting technical debt is estimated to waste up…

Software Engineering · Computer Science 2022-03-10 Adam Tornhill , Markus Borg

The adoption of Artificial Intelligence (AI) in high-stakes domains such as healthcare, wildlife preservation, autonomous driving and criminal justice system calls for a data-centric approach to AI. Data scientists spend the majority of…

Software Engineering · Computer Science 2022-03-28 Arumoy Shome , Luis Cruz , Arie van Deursen

In software engineering, it is not enough to simply write code that only works as intended, even if it is free from vulnerabilities and bugs. Every programming language has a style guide and a set of best practices defined by its community,…

Architectural smells such as God Class, Cyclic Dependency, and Hub-like Dependency degrade software quality and maintainability. Existing tools detect such smells but rarely suggest how to fix them. This paper explores the use of…

Software Engineering · Computer Science 2025-07-22 Samal Nursapa , Anastassiya Samuilova , Alessio Bucaioni , Phuong T. Nguyen

Code cloning plays a very important role in open-source software engineering. The presence of clones within a project may indicate a need for refactoring, and clones between projects are even more interesting, since code migration takes…

Software Engineering · Computer Science 2021-08-16 Yaroslav Golubev , Timofey Bryksin

During software development, poor design and implementation choices can detrimentally impact software maintainability. Design smells, recurring patterns of poorly designed fragments, signify these issues. Role-stereotypes denote the generic…

Software Engineering · Computer Science 2024-06-28 Daniel Ogenrwot , Joyce Nakatumba-Nabende , John Businge , Michel R. V. Chaudron

Context. Refactoring has been widely investigated in the past in relation to production code quality, yet still little is known on how developers apply refactoring on test code. Specifically, there is still a lack of investigation into how…

Software Engineering · Computer Science 2023-08-21 Luana Martins , Valeria Pontillo , Heitor Costa , Filomena Ferrucci , Fabio Palomba , Ivan Machado

Use case modeling is very popular to represent the functionality of the system to be developed, and it consists of two parts: use case diagram and use case description. Use case descriptions are written in structured natural language (NL),…

Software Engineering · Computer Science 2020-09-04 Yotaro Seki , Shinpei Hayashi , Motoshi Saeki

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

Cloud-based software-as-a-service (SaaS) have gained popularity due to their low cost and elasticity. However, like other software, SaaS applications suffer from code smells, which can drastically affect functionality and resource usage.…

Software Engineering · Computer Science 2020-08-17 Asif Imran , Tevfik Kosar