English
Related papers

Related papers: ChangePrism: Visualizing the Essence of Code Chang…

200 papers

Large Language Models (LLMs) are rapidly transforming software engineering, with coding assistants embedded in an IDE becoming increasingly prevalent. While research has focused on improving the tools and understanding developer…

GitHub's Copilot for Pull Requests (PRs) is a promising service aiming to automate various developer tasks related to PRs, such as generating summaries of changes or providing complete walkthroughs with links to the relevant code. As this…

Software Engineering · Computer Science 2024-02-15 Tao Xiao , Hideaki Hata , Christoph Treude , Kenichi Matsumoto

Program visualizations help to form useful mental models of how programs work, and to reason and debug code. But these visualizations exist at a fixed level of abstraction, e.g., line-by-line. In contrast, programmers switch between many…

Human-Computer Interaction · Computer Science 2023-06-14 Devamardeep Hayatpur , Haijun Xia , Daniel Wigdor

Change-based code review is used widely in industrial software development. Thus, research on tools that help the reviewer to achieve better review performance can have a high impact. We analyze one possibility to provide cognitive support…

Software Engineering · Computer Science 2018-12-27 Tobias Baum , Steffen Herbold , Kurt Schneider

Software projects under version control grow with each commit, accumulating up to hundreds of thousands of commits per repository. Especially for such large projects, the traversal of a repository and data extraction for static source code…

Software Engineering · Computer Science 2022-05-04 Fabian Heseding , Willy Scheibel , Jürgen Döllner

We present ComSum, a data set of 7 million commit messages for text summarization. When documenting commits, software code changes, both a message and its summary are posted. We gather and filter those to curate developers' work…

Computation and Language · Computer Science 2021-08-25 Leshem Choshen , Idan Amit

Live programming provides feedback on run-time behavior by visualizing concrete values of expressions close to the source code. When using such a local perspective on run-time behavior, programmers have to mentally reconstruct the control…

Programming Languages · Computer Science 2024-03-06 Patrick Rein , Christian Flach , Stefan Ramson , Eva Krebs , Robert Hirschfeld

Security vulnerabilities introduced by applications using third-party dependencies are on the increase, caused by the emergence of large ecosystems of libraries such as the NPM packages for JavaScript. Nowadays, libraries depend on each…

Managing software projects gets more and more complicated with an increasing project and product size. To cope with this complexity, many organizations use issue tracking systems, where tasks, bugs, and requirements are stored as issues.…

Software Engineering · Computer Science 2019-09-18 Clara Marie Lüders , Mikko Raatikainen , Joaquim Motger , Walid Maalej

Git metadata contains rich information for developers to understand the overall context of a large software development project. Thus it can help new developers, managers, and testers understand the history of development without needing to…

Software Engineering · Computer Science 2021-04-29 Youngtaek Kim , Jaeyoung Kim , Hyeon Jeon , Young-Ho Kim , Hyunjoo Song , Bohyoung Kim , Jinwook Seo

Researchers in the humanities are among the many who are now exploring the world of big data. They have begun to use programming languages like Python or R and their corresponding libraries to manipulate large data sets and discover brand…

Software Engineering · Computer Science 2020-07-30 Dewi Yokelson

The increasing use of large language model (LLM)-powered code generation tools, such as GitHub Copilot, is transforming software engineering practices. This paper investigates how developers validate and repair code generated by Copilot and…

Software Engineering · Computer Science 2024-05-28 Ningzhi Tang , Meng Chen , Zheng Ning , Aakash Bansal , Yu Huang , Collin McMillan , Toby Jia-Jun Li

After working for some time, developers commit their code changes to a version control system. When doing so, they often bundle unrelated changes (e.g., bug fix and refactoring) in a single commit, thus creating a so-called tangled commit.…

Software Engineering · Computer Science 2015-02-25 Martín Dias , Alberto Bacchelli , Georgios Gousios , Damien Cassou , Stéphane Ducasse

Software quality is an important problem for technology companies, since it substantially impacts the efficiency, usefulness, and maintainability of the final product; hence, code review is a must-do activity for software developers. During…

Social and Information Networks · Computer Science 2022-10-11 Abduljaleel Al-Rubaye , Gita Sukthankar

When a group of people strives to understand new information, struggle ensues as various ideas compete for attention. Steep learning curves are surmounted as teams learn together. To understand how these team dynamics play out in software…

Social and Information Networks · Computer Science 2019-07-11 Pamela Bilo Thomas , Rachel Krohn , Tim Weninger

Commit is an important operation of revision control for open-source software (OSS). Recent research has been pursued to explore the statistical laws of such an operation, but few of those papers conduct empirical investigations on commit…

Software Engineering · Computer Science 2013-11-26 Yutao Ma , Yang Wu , Youwei Xu

A fundamental unit of work in programming is the code contribution ("commit") that a developer makes to the code base of the project in work. An author's commit frequency describes how often that author commits. Knowing the distribution of…

Software Engineering · Computer Science 2014-08-22 Carsten Kolassa , Dirk Riehle , Michel A. Salim

This paper presents a study of using large language models (LLMs) in modifying existing code. While LLMs for generating code have been widely studied, their role in code modification remains less understood. Although "prompting" serves as…

Software Engineering · Computer Science 2025-08-05 Ningzhi Tang , Emory Smith , Yu Huang , Collin McMillan , Toby Jia-Jun Li

Code analyzers such as Error Prone and FindBugs detect code patterns symptomatic of bugs, performance issues, or bad style. These tools express patterns as quick fixes that detect and rewrite unwanted code. However, it is difficult to come…

Software Engineering · Computer Science 2018-09-11 Reudismam Rolim , Gustavo Soares , Rohit Gheyi , Titus Barik , Loris D'Antoni

Version Control Systems (VCS) are frequently used to support development of large-scale software projects. A typical VCS repository of a large project can contain various intertwined branches consisting of a large number of commits. If some…

Software Engineering · Computer Science 2017-08-23 Jaroslav Bendik , Nikola Benes , Ivana Cerna