English
Related papers

Related papers: Automatically Extracting Instances of Code Change …

200 papers

In Software Reengineering, one of the central artifacts is the source code of the legacy system in question. In fact, in most cases it is the only definitive artifact, because over the time the code has diverged from the original…

Software Engineering · Computer Science 2011-11-22 Tassilo Horn

In software development, it is common for programmers to copy-paste or port code snippets and then adapt them to their use case. This scenario motivates the code adaptation task -- a variant of program repair which aims to adapt variable…

Software Engineering · Computer Science 2023-10-09 Xiaoyu Liu , Jinu Jang , Neel Sundaresan , Miltiadis Allamanis , Alexey Svyatkovskiy

In the last two decades, tools have been implemented to more formally specify the semantic analysis phase of a compiler instead of relying on handwritten code. In this paper, we introduce patterns and a method to translate a formal…

Programming Languages · Computer Science 2020-02-06 Uwe Meyer , Björn Pfarr

The automated recognition of algorithm implementations can support many software maintenance and re-engineering activities by providing knowledge about the concerns present in the code base. Moreover, recognizing inefficient algorithms like…

Software Engineering · Computer Science 2026-05-08 Denis Neumüller , Florian Sihler , Raphael Straub , Matthias Tichy

During maintenance, software developers deal with a number of software change requests. Each of those requests is generally written using natural language texts, and it involves one or more domain related concepts. A developer needs to map…

Software Engineering · Computer Science 2018-07-09 Mohammad Masudur Rahman , Chanchal K. Roy

Software testing is one of the very important Quality Assurance (QA) components. A lot of researchers deal with the testing process in terms of tester motivation and how tests should or should not be written. However, it is not known from…

Software Engineering · Computer Science 2022-01-04 Matej Madeja , Jaroslav Porubän , Michaela Bačíková , Matúš Sulír , Ján Juhár , Sergej Chodarev , Filip Gurbáľ

Commit messages record code changes (e.g., feature modifications and bug repairs) in natural language, and are useful for program comprehension. Due to the frequent updates of software and time cost, developers are generally unmotivated to…

Software Engineering · Computer Science 2020-11-12 Shangqing Liu , Cuiyun Gao , Sen Chen , Lun Yiu Nie , Yang Liu

Many programmers, when they encounter an error, would like to have the benefit of automatic fix suggestions---as long as they are, most of the time, adequate. Initial research in this direction has generally limited itself to specific…

Software Engineering · Computer Science 2015-03-18 Yu Pei , Yi Wei , Carlo A. Furia , Martin Nordio , Bertrand Meyer

Fault based testing is a technique in which test cases are chosen to reveal certain classes of faults. At present, testing professionals use their personal experience to select testing methods for fault classes considered the most likely to…

Software Engineering · Computer Science 2012-05-31 Shimul Kumar Nath , Robert Merkel , Man Fai Lau , Tanay Kanti Paul

Modern programming languages, such as Java and C#, typically provide features that handle exceptions. These features separate error-handling code from regular source code and aim to assist in the practice of software comprehension and…

Software Engineering · Computer Science 2017-08-03 Guilherme B. de Pádua , Weiyi Shang

In recent times, it has been shown that one can use code as data to aid various applications such as automatic commit message generation, automatic generation of pull request descriptions and automatic program repair. Take for instance the…

Machine Learning · Computer Science 2021-06-14 Syed Arbaaz Qureshi , Sonu Mehta , Ranjita Bhagwan , Rahul Kumar

Software developers study and reuse existing source code to understand how to properly use application programming interfaces (APIs). However, manually finding sufficient and adequate code examples for a given API is a difficult and a…

Software Engineering · Computer Science 2022-08-02 Mohammad Ghafari , Konstantin Rubinov , Mohammad Mehdi Pourhashem K

Duplicated code has a negative impact on the quality of software systems and should be detected at least. In this paper, we discuss an approach that improves source code retrieval using the structural information about the programs. We…

Software Engineering · Computer Science 2013-08-19 Yoshihisa Udagawa

Testing has become an indispensable activity of software development, yet writing good and relevant tests remains a quite challenging task. One well-known problem is that it often is impossible or unrealistic to test for every outcome, as…

Programming Languages · Computer Science 2017-08-18 Dimitri Racordon , Didier Buchs

Test Impact Analysis is an approach to obtain a subset of tests impacted by code changes. This approach is mainly applied to unit testing where the link between the code and its associated tests is easy to obtain. On the integration level,…

Software Engineering · Computer Science 2022-11-16 Muzammil Shahbaz

During software maintenance and evolution, developers need to deal with a large number of change requests by modifying existing code or adding code into the system. An efficient tackling of change request calls for an accurate localising of…

Software Engineering · Computer Science 2018-12-13 Qiuchi Li , Yijun Yu , Dawei Song , Bashar Nuseibeh

We address the problem of predicting edit completions based on a learned model that was trained on past edits. Given a code snippet that is partially edited, our goal is to predict a completion of the edit for the rest of the snippet. We…

Programming Languages · Computer Science 2020-10-13 Shaked Brody , Uri Alon , Eran Yahav

Large language models trained on code have shown great potential to increase productivity of software developers. Several execution-based benchmarks have been proposed to evaluate functional correctness of model-generated code on simple…

Source code summarization -- creating natural language descriptions of source code behavior -- is a rapidly-growing research topic with applications to automatic documentation generation, program comprehension, and software maintenance.…

Software Engineering · Computer Science 2019-02-07 Alexander LeClair , Siyuan Jiang , Collin McMillan

Documenting software architecture is essential to preserve architecture knowledge, even though it is frequently costly. Architecture pattern instances, including microservice pattern instances, provide important structural software…

Software Engineering · Computer Science 2026-03-25 Carlos Eduardo Duarte