English
Related papers

Related papers: Code Perfumes: Reporting Good Code to Encourage Le…

200 papers

Code smells are symptoms of potential code quality problems that may affect software maintainability, thus increasing development costs and impacting software reliability. Large language models (LLMs) have shown remarkable capabilities for…

Software Engineering · Computer Science 2026-01-16 Saymon Souza , Amanda Santana , Eduardo Figueiredo , Igor Muzetti , João Eduardo Montandon , Lionel Briand

The identification of code smells is largely recognized as a subjective task. Consequently, the automated detection tools available are insufficient to deal with the whole subjectivity involved in the task, requiring human validation.…

Software Engineering · Computer Science 2021-10-07 Luiz Felipi Junionello , Rafael de Mello

The Large Language Models (LLMs) have demonstrated great potential in code-related tasks. However, most research focuses on improving the output quality of LLMs (e.g., correctness), and less attention has been paid to the LLM input (e.g.,…

Software Engineering · Computer Science 2025-08-19 Zhipeng Xue , Xiaoting Zhang , Zhipeng Gao , Xing Hu , Shan Gao , Xin Xia , Shanping Li

Large Language Models (LLMs) are increasingly integrated into software systems for diverse purposes, due to their versatility, flexibility, and ability to simulate human reasoning to some extent. However, poor integration of LLM inference…

Software Engineering · Computer Science 2026-05-25 Zacharie Chenail-Larcher , Brahim Mahmoudi , Naouel Moha , Quentin Stiévenart , Florent Avellaneda

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

As Deep learning (DL) systems continuously evolve and grow, assuring their quality becomes an important yet challenging task. Compared to non-DL systems, DL systems have more complex team compositions and heavier data dependency. These…

Code smells are widely used indicators of poor code quality, revealing structural problems and areas where improvement can be made. Although extensively studied in object-oriented languages, functional programming languages remain…

Software Engineering · Computer Science 2026-05-26 Walber Araújo , José Truta , Lucas Vegi , Marco Tulio Valente , João Brunet

Introducing computational thinking in primary school curricula implies that teachers have to prepare appropriate lesson material. Typically this includes creating programming tasks, which may overwhelm primary school teachers with lacking…

Computers and Society · Computer Science 2023-06-27 Luisa Greifenstein , Ute Heuer , Gordon Fraser

Block-based programming languages enable young learners to quickly implement fun programs and games. The Scratch programming environment is particularly successful at this, with more than 50 million registered users at the time of this…

Software Engineering · Computer Science 2020-09-10 Adina Deiner , Christoph Frädrich , Gordon Fraser , Sophia Geserer , Niklas Zantner

Code smells are characteristics of the software that indicates a code or design problem which can make software hard to understand, evolve, and maintain. The code smell detection tools proposed in the literature produce different results,…

Software Engineering · Computer Science 2019-02-11 Thirupathi Guggulothu

Code linters play a crucial role in developing high-quality software systems by detecting potential problems (e.g., memory leaks) in the source code of systems. Despite their benefits, code linters are often language-specific, focused on…

Software Engineering · Computer Science 2024-07-24 Darren Holden , Nafiseh Kahani

Test smells, similar to code smells, can negatively impact both the test code and the production code being tested. Despite extensive research on test smells in languages like Java, Scala, and Python, automated tools for detecting test…

Software Engineering · Computer Science 2024-05-08 Partha P. Paul , Md Tonoy Akanda , M. Raihan Ullah , Dipto Mondal , Nazia S. Chowdhury , Fazle M. Tawsif

Code review that detects and locates defects and other quality issues plays an important role in software quality control. One type of issue that may impact the quality of software is code smells. Yet, little is known about the extent to…

Software Engineering · Computer Science 2022-05-17 Xiaofeng Han , Amjed Tahir , Peng Liang , Steve Counsell , Kelly Blincoe , Bing Li , Yajing Luo

Code smells indicate the potential problems of software quality so that developers can identify refactoring opportunities by detecting code smells. State-of-the-art approaches leverage heuristics, machine learning, and deep learning to…

Software Engineering · Computer Science 2024-02-19 Haiyang Liu , Yang Zhang , Vidya Saikrishna , Quanquan Tian , Kun Zheng

Object-oriented code smells are well-known concepts in software engineering that refer to bad design and development practices commonly observed in software systems. With the emergence of mobile apps, new classes of code smells have been…

Software Engineering · Computer Science 2020-10-15 Sarra Habchi , Naouel Moha , Romain Rouvoy

Nowadays, modern applications are developed using components written in different programming languages. These systems introduce several advantages. However, as the number of languages increases, so does the challenges related to the…

Software Engineering · Computer Science 2021-01-18 Mouna Abidi , Md Saidur Rahman , Moses Openja , Foutse Khomh

Programming is increasingly taught using block-based languages like Scratch. While the use of blocks prevents syntax errors, learners can still make semantic mistakes, requiring feedback and help. As teachers may be overwhelmed by help…

Software Engineering · Computer Science 2025-04-18 Sebastian Schweikl , Gordon Fraser

Blocks-based programming has become the lingua franca for introductory coding. Studies have found that experience with blocks-based programming can help beginners learn more traditional text-based languages. We explore how blocks…

Programming Languages · Computer Science 2018-06-27 David Bau , Jeff Gray , Caitlin Kelleher , Josh Sheldon , Franklyn Turbak

As part of formative and summative assessments in programming courses, students work on developing programming artifacts following a given specification. These artifacts are evaluated by the teachers. At the end of this evaluation, the…

Software Engineering · Computer Science 2020-08-17 Manuel Maarek , Léon McGregor

Fault-proneness is an indication of programming errors that decreases software quality and maintainability. On the contrary, code smell is a symptom of potential design problems which has impact on fault-proneness. In the literature,…

Software Engineering · Computer Science 2023-05-10 Md. Masudur Rahman , Toukir Ahammed , Md. Mahbubul Alam Joarder , Kazi Sakib