English
Related papers

Related papers: Code Smells and Refactoring: A Tertiary Systematic…

200 papers

Data contamination presents a critical barrier preventing widespread industrial adoption of advanced software engineering techniques that leverage code language models (CLMs). This phenomenon occurs when evaluation data inadvertently…

Software Engineering · Computer Science 2024-11-19 Jialun Cao , Songqiang Chen , Wuqi Zhang , Hau Ching Lo , Shing-Chi Cheung

Developers often refactor source code to improve its quality during software development. A challenge in refactoring is to determine if it can be applied or not. To help with this decision-making process, we aim to search for past…

Software Engineering · Computer Science 2023-10-04 Motoki Abe , Shinpei Hayashi

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

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

It is well known that software needs to change to meet new requirements. The synchronization of software architecture models and implementation is of high importance to keep the architecture documents useful and the software evolution…

Software Engineering · Computer Science 2014-09-24 Holger Krahn , Bernhard Rumpe

Test smells indicate poor development practices in test code, reducing maintainability and reliability. While developers often struggle to prevent or refactor these issues, existing tools focus primarily on detection rather than automated…

Incorrect placement of methods within classes is a typical code smell called Feature Envy, which causes additional maintenance and cost during evolution. To remove this design flaw, several Move Method refactoring tools have been proposed.…

Software Engineering · Computer Science 2022-12-26 Di Cui , Siqi Wang , Yong Luo , Xingyu Li , Jie Dai , Lu Wang , Qingshan Li

Software Interfaces are meant to describe contracts governing interactions between logic modules. Interfaces, if well designed, significantly reduce software complexity and ease maintainability . However, as software evolves, the…

Software Engineering · Computer Science 2013-02-07 Hani Abdeen , Osama Shata

Background: Test-driven development (TDD) is a technique that repeats short coding cycles interleaved with testing. The developer first writes a unit test for the desired functionality, followed by the necessary production code, and…

Software Engineering · Computer Science 2016-11-21 Davide Fucci , Hakan Erdogmus , Burak Turhan , Markku Oivo , Natalia Juristo

The quality of scientific code is a critical concern for the research community. Poorly written code can result in irreproducible results, incorrect findings, and slower scientific progress. In this study, we evaluate scientific code…

Software Engineering · Computer Science 2026-03-25 Shun Kashiwa , Ayla Kurdak , Savitha Ravi , Ridhi Srikanth , Angel Thakur , Sonia Chandra , Jonathan Truong , Michael Coblenz

Previous studies have shown that high-quality code comments assist developers in program comprehension and maintenance tasks. However, the semi-structured nature of comments, unclear conventions for writing good comments, and the lack of…

Software Engineering · Computer Science 2021-07-27 Pooja Rani

Reproducibility is a cornerstone of scientific progress, yet its state in large language model (LLM)-based software engineering (SE) research remains poorly understood. This paper presents the first large-scale, empirical study of…

Software Engineering · Computer Science 2025-12-02 Mohammed Latif Siddiq , Arvin Islam-Gomes , Natalie Sekerak , Joanna C. S. Santos

Commit messages are the atomic level of software documentation. They provide a natural language description of the code change and its purpose. Messages are critical for software maintenance and program comprehension. Unlike documenting…

Software Engineering · Computer Science 2021-12-06 Eman Abdullah AlOmar , Jiaqian Liu , Kenneth Addo , Mohamed Wiem Mkaouer , Christian Newman , Ali Ouni , Zhe Yu

This report investigates the relationship between software refactoring and behavior preservation. Existing behavior preservation analyses often lack comprehensive insights into refactoring rejections and do not provide actionable solutions.…

Software Engineering · Computer Science 2024-11-14 Wouter Brinksma , William Wernsen , Evert Verduin , Herman Hilberink , Patrick de Beer , Lex Bijlsma , Harrie Passier

Code cloning is an important software engineering aspect. It is a common software reuse principle that consists of duplicating source code within a program or across different systems owned or maintained by the same entity. There are…

Software Engineering · Computer Science 2015-04-30 Oualid El Halimi , Trith Patel , Zohaib S. Kiyani , Naresh. Kumar , Ankit Singh

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

Maintainable and general software allows developers to build robust applications efficiently, yet achieving these qualities often requires refactoring specialized solutions into reusable components. This challenge becomes particularly…

Software Engineering · Computer Science 2025-10-07 Ziga Kovacic , Justin T. Chiu , Celine Lee , Wenting Zhao , Kevin Ellis

Traditionally, energy efficiency research has focused on reducing energy consumption at the hardware level and, more recently, in the design and coding phases of the software development life cycle. However, software testing's impact on…

Software Engineering · Computer Science 2025-02-07 Md Rakib Hossain Misu , Jiawei Li , Adithya Bhattiprolu , Yang Liu , Eduardo Almeida , Iftekhar Ahmed

Enterprise applications are often built as service-oriented architectures, where the individual services are designed to perform specific functions and interact with each other by means of well-defined APIs (Application Programming…

Software Engineering · Computer Science 2024-07-11 Fabrizio Montesi , Marco Peressotti , Valentino Picotti , Olaf Zimmermann

The readability of source code is key for understanding and maintaining software systems and tests. Several studies investigate the readability of source code, but there is limited research on the readability of test code and related…

Software Engineering · Computer Science 2024-03-26 Dietmar Winkler , Pirmin Urbanke , Rudolf Ramler