English
Related papers

Related papers: Evaluating Code Readability and Legibility: An Exa…

200 papers

Program tracing, or mentally simulating a program on concrete inputs, is an important part of general program comprehension. Programs involve many kinds of virtual state that must be held in memory, such as variable/value pairs and a call…

Human-Computer Interaction · Computer Science 2021-01-19 Will Crichton , Maneesh Agrawala , Pat Hanrahan

Reliability prediction is crucial for ensuring the safety and security of software systems, especially in the context of industry practices. While various metrics and measurements are employed to assess software reliability, the complexity…

Software Engineering · Computer Science 2025-07-29 Dapeng Yan , Wenjie Yang , Kui Liu , Zhiming Liu , Zhikuang Cai

Programming courses can be challenging for first year university students, especially for those without prior coding experience. Students initially struggle with code syntax, but as more advanced topics are introduced across a semester, the…

Programming Languages · Computer Science 2024-04-10 Valdemar Švábenský , Maciej Pankiewicz , Jiayi Zhang , Elizabeth B. Cloude , Ryan S. Baker , Eric Fouh

Modern code review is a widely used technique employed in both industrial and open-source projects to improve software quality, share knowledge, and ensure adherence to coding standards and guidelines. During code review, developers may…

Software Engineering · Computer Science 2022-03-29 Eman Abdullah AlOmar , Moataz Chouchen , Mohamed Wiem Mkaouer , Ali Ouni

Context: Various approaches aim to support program comprehension by automatically detecting algorithms in source code. However, no empirical evaluations of their helpfulness have been performed. Objective: To empirically evaluate how…

Software Engineering · Computer Science 2025-04-29 Denis Neumüller , Alexander Raschke , Matthias Tichy

This paper documents a year-long experiment to "profile" the process of learning a programming language: gathering data to understand what makes a language hard to learn, and using that data to improve the learning process. We added…

Programming Languages · Computer Science 2024-01-03 Will Crichton , Shriram Krishnamurthi

Judging the readability of text has many important applications, for instance when performing text simplification or when sourcing reading material for language learners. In this paper, we present a 518 participant study which investigates…

Computation and Language · Computer Science 2021-11-18 Sian Gooding , Yevgeni Berzak , Tony Mak , Matt Sharifi

Complex machine learning algorithms are used more and more often in critical tasks involving text data, leading to the development of interpretability methods. Among local methods, two families have emerged: those computing importance…

Machine Learning · Computer Science 2025-10-22 Gianluigi Lopardo , Damien Garreau

Background. There are some publications in software engineering research that aim at guiding researchers in assessing validity threats to their studies. Still, many researchers fail to address many aspects of validity that are essential to…

Software Engineering · Computer Science 2018-09-07 Lucas Gren

As the use of machine learning (ML) models in product development and data-driven decision-making processes became pervasive in many domains, people's focus on building a well-performing model has increasingly shifted to understanding how…

Human-Computer Interaction · Computer Science 2020-06-02 Sungsoo Ray Hong , Jessica Hullman , Enrico Bertini

The opportunities offered by LLM coders (and their current limitations) demand a reevaluation of how software is structured. Software today is often "illegible" - lacking a direct correspondence between code and observed behavior - and…

Software Engineering · Computer Science 2025-08-29 Eagon Meng , Daniel Jackson

Large language models for code (LLM4Code), which demonstrate strong performance (e.g., high accuracy) in processing source code, have significantly transformed software engineering. Many studies separately investigate the non-functional…

Software Engineering · Computer Science 2024-03-13 Zhou Yang , Zhensu Sun , Terry Zhuo Yue , Premkumar Devanbu , David Lo

Binary code similarity detection is a core task in reverse engineering. It supports malware analysis and vulnerability discovery by identifying semantically similar code in different contexts. Modern methods have progressed from manually…

Artificial Intelligence · Computer Science 2025-09-30 Charles E. Gagnon , Steven H. H. Ding , Philippe Charland , Benjamin C. M. Fung

Testing plays an important role in securing the success of a software development project. Prior studies have demonstrated beneficial effects of applying acceptance testing within a Behavioural-Driven Development method. In this research,…

Software Engineering · Computer Science 2024-08-23 Marina Filipovic , Fabian Gilson

Background: During software maintenance and development, the comprehension of program code is key to success. High-quality comments can help us better understand programs, but they're often missing or outmoded in today's programs. Automatic…

Software Engineering · Computer Science 2019-10-15 Yuxiang Zhu , Minxue Pan

Code translation aims to convert code from one programming language to another automatically. It is motivated by the need for multi-language software development and legacy system migration. In recent years, neural code translation has…

Software Engineering · Computer Science 2025-05-13 Xiang Chen , Jiacheng Xue , Xiaofei Xie , Caokai Liang , Xiaolin Ju

Code changes are an integral part of the software development process. Many code changes are meant to improve the code without changing its functional behavior, e.g., refactorings and performance improvements. Unfortunately, validating…

Software Engineering · Computer Science 2025-02-25 Lars Gröninger , Beatriz Souza , Michael Pradel

This paper investigates the factors influencing programmers' adoption of AI-generated JavaScript code recommendations within the context of lightweight, function-level programming tasks. It extends prior research by (1) utilizing objective…

Software Engineering · Computer Science 2026-02-18 Changwen Li , Christoph Treude , Ofir Turel

Code naturalness, which captures repetitiveness and predictability in programming languages, has proven valuable for various code-related tasks in software engineering. However, precisely measuring code naturalness remains a fundamental…

Software Engineering · Computer Science 2024-09-04 Chen Yang , Junjie Chen , Jiajun Jiang , Yuliang Huang

Encodings or the proof of their absence are the main way to compare process calculi. To analyse the quality of encodings and to rule out trivial or meaningless encodings, they are augmented with quality criteria. There exists a bunch of…

Logic in Computer Science · Computer Science 2015-08-28 Kirstin Peters , Rob van Glabbeek