English
Related papers

Related papers: Code smells

200 papers

Spreadsheet users are often unaware of the risks imposed by poorly designed spreadsheets. One way to assess spreadsheet quality is to detect smells which attempt to identify parts of spreadsheets that are hard to comprehend or maintain and…

Software Engineering · Computer Science 2018-10-11 Patrick Koch , Birgit Hofer , Franz Wotawa

User Interfaces (UIs) intensively rely on event-driven programming: widgets send UI events, which capture users' interactions, to dedicated objects called controllers. Controllers use several UI listeners that handle these events to produce…

Software Engineering · Computer Science 2018-05-29 Arnaud Blouin , Valéria Lelli , Benoit Baudry , Fabien Coulon

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

Logging code is written by developers to capture system runtime behavior and plays a vital role in debugging, performance analysis, and system monitoring. However, defects in logging code can undermine the usefulness of logs and lead to…

Software Engineering · Computer Science 2025-08-18 Xin Wang , Zhenhao Li , Zishuo Ding

This study addresses the challenge of detecting code smells in large-scale software systems using machine learning (ML). Traditional detection methods often suffer from low accuracy and poor generalization across different datasets. To…

Research software (also called scientific software) is essential for advancing scientific endeavours. Research software encapsulates complex algorithms and domain-specific knowledge and is a fundamental component of all science. A pervasive…

Software Engineering · Computer Science 2026-03-24 Neil A. Ernst , Ahmed Musa Awon , Swapnil Hingmire , Ze Shi Li

Much of the existing ML research focuses on model performance metrics, leaving limited attention to the long-term sustainability and resource efficiency of ML applications. While high performance is essential, ensuring efficient resource…

Software Engineering · Computer Science 2025-11-27 Bashar Abdallah , Martyna E. Wojciechowska , Gustavo Santos , Edmand Yu , Maxime Lamothe , Alain Abran , Mohammad Hamdaqa

Many software developments projects fail due to quality problems. Software testing enables the creation of high quality software products. Since it is a cumbersome and expensive task, and often hard to manage, both its technical background…

Software Engineering · Computer Science 2015-03-17 Tim A. Majchrzak

Refactoring is the art of improving the design of a system without altering its external behavior. Refactoring has become a well established and disciplined software engineering practice that has attracted a significant amount of research…

Software Engineering · Computer Science 2021-03-26 Eman Abdullah AlOmar , Anthony Peruma , Mohamed Wiem Mkaouer , Christian Newman , Ali Ouni , Marouane Kessentini

AI coding assistants are now widely used in software development. Software developers increasingly integrate AI-generated code into their codebases to improve productivity. Prior studies have shown that AI-generated code may contain code…

Software Engineering · Computer Science 2026-04-28 Yue Liu , Ratnadira Widyasari , Yanjie Zhao , Ivana Clairine Irsan , Junkai Chen , David Lo

Software Quality is a major concern in software engineering development in order to be competitive. Such a quality can be achieved by a possible technique called Refactoring where the systems external behavior of the system is not changed.…

In this paper, we present a novel approach to improving software quality and efficiency through a Large Language Model (LLM)-based model designed to review code and identify potential issues. Our proposed LLM-based AI agent model is trained…

The phenomenon of architecture erosion can negatively impact the maintenance and evolution of software systems, and manifest in a variety of symptoms during software development. While erosion is often considered rather late, its symptoms…

Software Engineering · Computer Science 2022-01-05 Ruiyin Li , Mohamed Soliman , Peng Liang , Paris Avgeriou

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

Background. Containerization technologies are widely adopted in the DevOps workflow. The most commonly used one is Docker, which requires developers to define a specification file (Dockerfile) to build the image used for creating…

Software Engineering · Computer Science 2022-08-22 Giovanni Rosa , Simone Scalabrino , Rocco Oliveto

Large Language Models (LLMs) have shown potential to enhance software development through automated code generation and refactoring, reducing development time and improving code quality. This study empirically evaluates StarCoder2, an LLM…

Software Engineering · Computer Science 2024-11-05 Jonathan Cordeiro , Shayan Noei , Ying Zou

Modern language models (LMs) have been successfully employed in source code generation and understanding, leading to a significant increase in research focused on learning-based code intelligence, such as automated bug repair, and test case…

Software Engineering · Computer Science 2023-10-30 Xinyu She , Yue Liu , Yanjie Zhao , Yiling He , Li Li , Chakkrit Tantithamthavorn , Zhan Qin , Haoyu Wang

Context: Technical Debt (TD) discusses the negative impact of sub-optimal decisions to cope with the need-for-speed in software development. Code Technical Debt Items (TDI) are atomic elements of TD that can be observed in code artefacts.…

Software Engineering · Computer Science 2022-01-06 Ehsan Zabardast , Kwabena Ebo Bennin , Javier Gonzalez-Huerta

Regression testing is an important phase to deliver software with quality. However, flaky tests hamper the evaluation of test results and can increase costs. This is because a flaky test may pass or fail non-deterministically and to…

Software Engineering · Computer Science 2021-09-15 B. H. P. Camara , M. A. G. Silva , A. T. Endo , S. R. Vergilio

Software development, often perceived as a technical endeavor, is fundamentally a social activity requiring collaboration among team members. Acknowledging this, the software development community has devised strategies to address possible…

Software Engineering · Computer Science 2024-09-04 Mikhail Evtikhiev , Ekaterina Koshchenko , Vladimir Kovalenko