English
Related papers

Related papers: Migrating Client Code without Change Examples

200 papers

One single code change can significantly influence a wide range of software systems and their users. For example, 1) adding a new feature can spread defects in several modules, while 2) changing an API method can improve the performance of…

Software Engineering · Computer Science 2016-06-13 Daoyuan Li , Li Li , Dongsun Kim , Tegawendé F. Bissyandé , David Lo , Yves Le Traon

With the advances in machine learning, there is a growing interest in AI-enabled tools for autocompleting source code. GitHub Copilot, also referred to as the "AI Pair Programmer", has been trained on billions of lines of open source GitHub…

Software Engineering · Computer Science 2023-04-28 Beiqi Zhang , Peng Liang , Xiyu Zhou , Aakash Ahmad , Muhammad Waseem

This paper provides a few approaches to automating computer programming and project submission tasks, that we have been following for the last six years and have found to be successful. The approaches include using CodeRunner with Learning…

Software Engineering · Computer Science 2024-04-09 Bama Srinivasan , Mala Nehru , Ranjani Parthasarathi , Saswati Mukherjee , Jeena A Thankachan

Although there are many automated software testing suites, they usually focus on unit, system, and interface testing. However, especially software updates such as new security features have the potential to diminish user experience. In this…

Software Engineering · Computer Science 2021-04-09 Chidera Biringa , Gokhan Kul

In collaborative software development, multiple contributors frequently change the source code in parallel to implement new features, fix bugs, refactor existing code, and make other changes. These simultaneous changes need to be merged…

Software Engineering · Computer Science 2023-05-11 Andre Oliveira , Vania Neves , Alexandre Plastino , Ana Carla Bibiano , Alessandro Garcia , Leonardo Murta

Code editing encompasses a variety of pragmatic tasks that developers deal with daily. Despite its relevance and practical usefulness, automatic code editing remains an underexplored area in the evolution of deep learning models, partly due…

Computation and Language · Computer Science 2024-02-29 Kaixin Li , Qisheng Hu , Xu Zhao , Hui Chen , Yuxi Xie , Tiedong Liu , Qizhe Xie , Junxian He

Manually editing pasted code is a long-standing developer pain point. In internal software development at Google, we observe that code is pasted 4 times more often than it is manually typed. These paste actions frequently require follow-up…

Software Engineering · Computer Science 2026-04-14 Vincent Nguyen , Guilherme Herzog , José Cambronero , Marcus Revaj , Aditya Kini , Alexander Frömmgen , Maxim Tabachnyk

We formulate the novel task of automatically updating an existing natural language comment based on changes in the body of code it accompanies. We propose an approach that learns to correlate changes across two distinct language…

Computation and Language · Computer Science 2020-04-29 Sheena Panthaplackel , Pengyu Nie , Milos Gligoric , Junyi Jessy Li , Raymond J. Mooney

Machine learning algorithms have become increasingly prevalent in multiple domains, such as autonomous driving, healthcare, and finance. In such domains, data preparation remains a significant challenge in developing accurate models,…

Databases · Computer Science 2023-04-27 Mohamed Abdelaal , Rashmi Koparde , Harald Schoening

Applications depend on libraries to avoid reinventing the wheel. Libraries may have incompatible changes during evolving. As a result, applications will suffer from compatibility failures. There has been much research on addressing…

Software Engineering · Computer Science 2021-02-18 Zhouyang Jia , Shanshan Li , Tingting Yu , Chen Zeng , Erci Xu , Xiaodong Liu , Ji Wang , Xiangke Liao

Lack of experience, inadequate documentation, and sub-optimal API design frequently cause developers to make mistakes when re-using third-party implementations. Such API misuses can result in unintended behavior, performance losses, or…

Software Engineering · Computer Science 2021-07-13 Sebastian Nielebock , Robert Heumüller , Kevin Michael Schott , Frank Ortmeier

With the advent of new and advanced programming languages, it becomes imperative to migrate legacy software to new programming languages. Unsupervised Machine Learning-based Program Translation could play an essential role in such…

Programming Languages · Computer Science 2023-02-22 Aniketh Malyala , Katelyn Zhou , Baishakhi Ray , Saikat Chakraborty

Software libraries implement APIs that deliver reusable functionalities. To correctly use these functionalities, software applications must satisfy certain correctness policies, for instance policies about the order some API methods can be…

Software Engineering · Computer Science 2020-10-14 Oliviero Riganelli , Daniela Micucci , Leonardo Mariani

Software language models have achieved promising results predicting code completion usages, and several industry studies have described successful IDE integrations. Recently, accuracy in autocompletion prediction improved 12.8% from…

Software Engineering · Computer Science 2021-10-14 Wen Zhou , Seohyun Kim , Vijayaraghavan Murali , Gareth Ari Aye

The README file serves as a critical source of information for gaining an overview and helping developers onboard to an Open Source Software (OSS) project. Yet, documentation issues persist; in particular, ``outdated'' documentation is…

Software Engineering · Computer Science 2026-03-03 Haoyu Gao , Hong Yi Lin , Christoph Treude , Gregory Gay , Mansooreh Zahedi

Software comes in releases. An implausible change to software is something that has never been changed in prior releases. When planning how to reduce defects, it is better to use plausible changes, i.e., changes with some precedence in the…

Software Engineering · Computer Science 2021-02-16 Kewen Peng , Tim Menzies

Code reviews are an integral part of software development and have been recognized as a crucial practice for minimizing bugs and favouring higher code quality. They serve as an important checkpoint before committing code and play an…

Software Engineering · Computer Science 2024-12-05 Genevieve Caumartin , Qiaolin Qin , Sharon Chatragadda , Janmitsinh Panjrolia , Heng Li , Diego Elias Costa

Large language models face intrinsic limitations in coding with APIs that are unseen in their training corpora. As libraries continuously evolve, it becomes impractical to exhaustively retrain LLMs with new API knowledge. This limitation…

Software Engineering · Computer Science 2025-06-23 Yunkun Wang , Yue Zhang , Zhen Qin , Chen Zhi , Binhua Li , Fei Huang , Yongbin Li , Shuiguang Deng

Code translation, the automatic conversion of programs between languages, is a growing use case for Large Language Models (LLMs). However, direct one-shot translation often fails to preserve program intent, leading to errors in control…

Software Engineering · Computer Science 2026-02-19 Shahriar Rumi Dipto , Saikat Mondal , Chanchal K. Roy

Checking software application suitability using automated software tools has become a vital element for most organisations irrespective of whether they produce in-house software or simply customise off-the-shelf software applications for…

Software Engineering · Computer Science 2015-08-05 Rajesh Mathur , Scott Miles , Miao Du