English
Related papers

Related papers: Code Smells in Clojure: Initial Findings from a Gr…

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

While automated vulnerability detection techniques have made promising progress in detecting security vulnerabilities, their scalability and applicability remain challenging. The remarkable performance of Large Language Models (LLMs), such…

Cryptography and Security · Computer Science 2024-10-24 Avishree Khare , Saikat Dutta , Ziyang Li , Alaia Solko-Breslin , Rajeev Alur , Mayur Naik

Large Language Models (LLMs) have made significant progress in code generation, offering developers groundbreaking automated programming support. However, LLMs often generate code that is syntactically correct and even semantically…

Computation and Language · Computer Science 2025-01-22 Yuchen Tian , Weixiang Yan , Qian Yang , Xuandong Zhao , Qian Chen , Wen Wang , Ziyang Luo , Lei Ma , Dawn Song

Code cloning, the duplication of code fragments, is common in software development. While some reuse aids productivity, excessive cloning hurts maintainability and introduces bugs. Hence, automatic code clone detection is vital. Meanwhile,…

Software Engineering · Computer Science 2023-08-08 Shihan Dou , Junjie Shan , Haoxiang Jia , Wenhao Deng , Zhiheng Xi , Wei He , Yueming Wu , Tao Gui , Yang Liu , Xuanjing Huang

Android Inter-Component Communication (ICC) is complex, largely unconstrained, and hard for developers to understand. As a consequence, ICC is a common source of security vulnerability in Android apps. To promote secure programming…

Cryptography and Security · Computer Science 2018-12-11 Pascal Gadient , Mohammad Ghafari , Patrick Frischknecht , Oscar Nierstrasz

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

With the ever-increasing use of games, game developers are expected to write efficient code supporting several qualities such as security, maintainability, and performance. However, the continuous need to update the features of games in…

Software Engineering · Computer Science 2021-05-05 Vartika Agrahari , Sridhar Chimalakonda

Understanding what drives code instability is essential for effective software maintenance, as unstable classes require larger or more frequent edits and increase the risk of unintended side effects. Although code smells are widely believed…

Software Engineering · Computer Science 2026-02-17 Zushuai Zhang , Elliott Wen , Ewan Tempero

As a software system evolves, its architecture tends to degrade, and gradually impedes software maintenance and evolution activities and negatively impacts the quality attributes of the system. The main root cause behind architecture…

Software Engineering · Computer Science 2023-08-07 Ruiyin Li , Peng Liang , Paris Avgeriou

Background: Noise, defined as an unwanted sound, is one of the commonest factors that could affect people's performance in their daily work activities. The software engineering research community has marginally investigated the effects of…

Software Engineering · Computer Science 2018-07-12 Simone Romano , Giuseppe Scanniello , Davide Fucci , Natalia Juristo , Burak Turhan

Technical debt has become a common metaphor for the accumulation of software design and implementation choices that seek fast initial gains but that are under par and counterproductive in the long run. However, as a metaphor, technical debt…

Software Engineering · Computer Science 2021-03-23 Jacinto Ramirez Lahti , Antti-Pekka Tuovinen , Tommi Mikkonen

Modern software relies on a multitude of automated testing and quality assurance tools to prevent errors, bugs and potential vulnerabilities. This study sets out to provide a head-to-head, quantitative and qualitative evaluation of six…

Software Engineering · Computer Science 2025-08-07 Damian Gnieciak , Tomasz Szandala

Programmers often write code that has similarity to existing code written somewhere. A tool that could help programmers to search such similar code would be immensely useful. Such a tool could help programmers to extend partially written…

Software Engineering · Computer Science 2019-10-21 Sifei Luan , Di Yang , Celeste Barnaby , Koushik Sen , Satish Chandra

Gender stereotypes in introductory programming courses often go unnoticed, yet they can negatively influence young learners' interest and learning, particularly under-represented groups such as girls. Popular tutorials on block-based…

Computers and Society · Computer Science 2025-10-14 Isabella Graßl , Benedikt Fein , Gordon Fraser

The use of large language models for code generation is a rapidly growing trend in software development. However, without effective methods for ensuring the correctness of generated code, this trend could lead to undesirable outcomes. In…

Artificial Intelligence · Computer Science 2024-11-19 Chuyue Sun , Ying Sheng , Oded Padon , Clark Barrett

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

Graphical User Interfaces (GUIs) intensively rely on event-driven programming: widgets send GUI events, which capture users' interactions, to dedicated objects called controllers. Controllers implement several GUI listeners that handle…

Software Engineering · Computer Science 2017-03-28 Valéria Lelli , Arnaud Blouin , Benoit Baudry , Fabien Coulon , Olivier Beaudoux

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

Machine learning (ML) codebases face unprecedented challenges in maintaining code quality and sustainability as their complexity grows exponentially. While traditional code smell detection tools exist, they fail to address ML-specific…

Software Engineering · Computer Science 2025-02-27 Karthik Shivashankar , Antonio Martini

This paper reports an empirical study on refactoring activity in three Java software systems. We investigated some questions on refactoring activity, to confirm or disagree on conclusions that have been drawn from previous empirical…