English
Related papers

Related papers: Less is More: Minimizing Code Reorganization using…

200 papers

Code reuse is a widespread practice across software development projects, suggesting an inherent trust in the reused code. Yet, there is a lack of a fundamental understanding of developers' trust and how various factors mold their…

Software Engineering · Computer Science 2026-04-13 Sara Yabesi , Mahta Amini , Jelena Ristic , Zohreh Sharafi

Refactoring is the practice of improving software quality without altering its external behavior. Developers intuitively refactor their code for multiple purposes, such as improving program comprehension, reducing code complexity, dealing…

Computers and Society · Computer Science 2023-11-21 Eman Abdullah AlOmar , Mohamed Wiem Mkaouer , Ali Ouni

Automating the decision of whether a code change requires manual review is vital for maintaining software quality in modern development workflows. However, the emergence of new programming languages and frameworks creates a critical…

Software Engineering · Computer Science 2025-09-08 Yogev Cohen , Dudi Ohayon , Romy Somkin , Yehudit Aperstein , Alexander Apartsin

Refactoring is the process of improving the design of existing code by changing its internal structure without affecting its external behaviour, with the main aims of improving the quality of software product. Therefore, there is a belief…

Software Engineering · Computer Science 2015-02-13 S. H. Kannangara , W. M. J. I. Wijayanayake

Context: Due to the association of significant efforts, even a minor improvement in the effectiveness of Code Reviews(CR) can incur significant savings for a software development organization. Aim: This study aims to develop a finer grain…

Software Engineering · Computer Science 2023-06-21 Asif Kamal Turzo , Amiangshu Bosu

Code changes constitute one of the most important features of software evolution. Studying them can provide insights into the nature of software development and also lead to practical solutions - recommendations and automations of popular…

Software Engineering · Computer Science 2021-08-05 Yaroslav Golubev , Jiawei Li , Viacheslav Bushev , Timofey Bryksin , Iftekhar Ahmed

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

Potential benefits such as agile service delivery have led many companies to deliver their business capabilities through microservices. Bad smells are however always around the corner, as witnessed by the considerable body of literature…

Software Engineering · Computer Science 2019-09-11 Antonio Brogi , Davide Neri , Jacopo Soldani , Olaf Zimmermann

In this paper, we focus on studying duplicate logging statements, which are logging statements that have the same static text message. We manually studied over 4K duplicate logging statements and their surrounding code in five large-scale…

Software Engineering · Computer Science 2021-06-02 Zhenhao Li , Tse-Hsun , Chen , Jinqiu Yang , Weiyi Shang

LLM-based code assistants are becoming increasingly popular among developers. These tools help developers improve their coding efficiency and reduce errors by providing real-time suggestions based on the developer's codebase. While…

Cryptography and Security · Computer Science 2024-10-30 Amit Finkman Noah , Avishag Shapira , Eden Bar Kochva , Inbar Maimon , Dudu Mimran , Yuval Elovici , Asaf Shabtai

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

Block-based programming languages like Scratch have become increasingly popular as introductory languages for novices. These languages are intended to be used with a "tinkering" approach which allows learners and teachers to quickly…

Nearly all modern software suffers from bloat that negatively impacts its performance and security. To combat this problem, several automated techniques have been proposed to debloat software. A key metric used in many of these works to…

Cryptography and Security · Computer Science 2020-01-17 Michael D. Brown , Santosh Pande

Modern software development teams are distributed across onsite and off-shore locations. Each team has developers with varying experience levels and English communication skills. In such a diverse development environment it is important to…

Software Engineering · Computer Science 2016-10-19 Amol Patwardhan

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…

Spreadsheets are the most popular end-user programming software, where formulae act like programs and also have smells. One well recognized common smell of spreadsheet formulae is nest-IF expressions, which have low readability and high…

Software Engineering · Computer Science 2017-12-29 Jie Zhang , Shi Han , Dan Hao , Lu Zhang , Dongmei Zhang

Nowadays, we are witnessing an increasing adoption of Deep Learning (DL) based software systems in many industries. Designing a DL program requires constructing a deep neural network (DNN) and then training it on a dataset. This process…

Software Engineering · Computer Science 2021-07-09 Amin Nikanjam , Foutse Khomh

Code often suffers from performance bugs. These bugs necessitate the research and practice of code optimization. Traditional rule-based methods rely on manually designing and maintaining rules for specific performance bugs (e.g., redundant…

Software Engineering · Computer Science 2025-12-30 Yue Wu , Minghao Han , Ruiyin Li , Peng Liang , Amjed Tahir , Zengyang Li , Qiong Feng , Mojtaba Shahin

Bug localization is an important aspect of software maintenance because it can locate modules that should be changed to fix a specific bug. Our previous study showed that the accuracy of the information retrieval (IR)-based bug localization…

Software Engineering · Computer Science 2021-05-07 Aoi Takahashi , Natthawute Sae-Lim , Shinpei Hayashi , Motoshi Saeki

Code review is a critical practice in modern software engineering, helping developers detect defects early, improve code quality, and facilitate knowledge sharing. With the rapid advancement of large language models (LLMs), a growing body…

Software Engineering · Computer Science 2026-02-17 Taufiqul Islam Khan , Shaowei Wang , Haoxiang Zhang , Tse-Hsun Chen