English
Related papers

Related papers: Learning to Recommend Third-Party Library Migratio…

200 papers

Mapping programs from one architecture to another plays a key role in technologies such as binary translation, decompilation, emulation, virtualization, and application migration. Although multicore architectures are ubiquitous, the…

Programming Languages · Computer Science 2020-09-09 Soham Chakraborty

Reusing code is a common practice in software development: It helps developers speedup the implementation task while also reducing the chances of introducing bugs, given the assumption that the reused code has been tested, possibly in…

Software Engineering · Computer Science 2022-08-17 Rosalia Tufano , Emad Aghajani , Gabriele Bavota

This paper is the result of a two month research internship on the topic of library version identification. In this paper, ideas and techniques from literature in the area of binary comparison and fingerprinting are outlined and applied to…

Cryptography and Security · Computer Science 2017-03-02 Thomas Rinsma

Data and algorithm sharing is an imperative part of data and AI-driven economies. The efficient sharing of data and algorithms relies on the active interplay between users, data providers, and algorithm providers. Although recommender…

Information Retrieval · Computer Science 2022-10-27 Peter Müllner , Stefan Schmerda , Dieter Theiler , Stefanie Lindstaedt , Dominik Kowald

Open-source software (OSS) is a pillar of modern software development. Its success depends on the dedication of maintainers who work constantly to keep their libraries stable, adapt to changing needs, and support a growing community. Yet,…

Software Engineering · Computer Science 2025-10-20 Rachna Raj , Diego Elias Costa

MIML library is a Java software tool to develop, test, and compare classification algorithms for multi-instance multi-label (MIML) learning. The library includes 43 algorithms and provides a specific format and facilities for data managing…

Machine Learning · Computer Science 2024-02-14 Álvaro Belmonte , Amelia Zafra , Eva Gibaja

Implementing new features across an entire codebase presents a formidable challenge for Large Language Models (LLMs). This proactive task requires a deep understanding of the global system architecture to prevent unintended disruptions to…

Software Engineering · Computer Science 2026-03-03 Mingwei Liu , Zhenxi Chen , Zheng Pei , Zihao Wang , Yanlin Wang , Zibin Zheng

During software evolution, developers commonly face the problem of mapping a specific code region from one commit to another. For example, they may want to determine how the condition of an if-statement, a specific line in a configuration…

Software Engineering · Computer Science 2025-11-10 Huimin Hu , Michael Pradel

Continuous Integration (CI) is a widely adopted practice for faster code change integration and testing. Developers often migrate between CI systems in pursuit of features like matrix building or better logging. However, this migration is…

Software Engineering · Computer Science 2024-07-04 Dhia Elhaq Rzig , Alaa Houerbi , Chungha Sung , Foyzul Hassan

Machine Learning software systems are frequently used in our day-to-day lives. Some of these systems are used in various sensitive environments to make life-changing decisions. Therefore, it is crucial to ensure that these AI/ML systems do…

Machine Learning · Computer Science 2025-08-25 Ajoy Das , Gias Uddin , Shaiful Chowdhury , Mostafijur Rahman Akhond , Hadi Hemmati

Learning and remembering to use APIs are difficult. Several techniques have been proposed to assist developers in using APIs. Most existing techniques focus on recommending the right API methods to call, but very few techniques focus on…

Software Engineering · Computer Science 2023-06-13 Son Nguyen , Cuong Tran Manh , Kien T. Tran , Tan M. Nguyen , Thu-Trang Nguyen , Kien-Tuan Ngo , Hieu Dinh Vo

Existing API mining algorithms can be difficult to use as they require expensive parameter tuning and the returned set of API calls can be large, highly redundant and difficult to understand. To address this, we present PAM (Probabilistic…

Software Engineering · Computer Science 2016-11-14 Jaroslav Fowkes , Charles Sutton

Background: The process of mapping a source code entity onto an architectural module is to a large degree a manual task. Automating this process could increase the use of static architecture conformance checking methods, such as reflexion…

Software Engineering · Computer Science 2021-09-21 Tobias Olsson , Morgan Ericsson , Anna Wingkvist

Trading off performance guarantees in favor of scalability, the Multi-Agent Path Finding (MAPF) community has recently started to embrace Multi-Agent Reinforcement Learning (MARL), where agents learn to collaboratively generate individual,…

Robotics · Computer Science 2023-09-01 Yutong Wang , Bairan Xiang , Shinan Huang , Guillaume Sartoretti

Application Programming Interfaces (APIs), which encapsulate the implementation of specific functions as interfaces, greatly improve the efficiency of modern software development. As numbers of APIs spring up nowadays, developers can hardly…

Software Engineering · Computer Science 2021-12-24 Yun Peng , Shuqing Li , Wenwei Gu , Yichen Li , Wenxuan Wang , Cuiyun Gao , Michael Lyu

In the context of a collaboration with Berger-Levrault, an IT company producing information systems, we are working on migrating Microsoft Access monolithic applications to the web front-end and microservices back-end. Like in most software…

Software Engineering · Computer Science 2023-09-08 Santiago Bragagnolo , Nicolas Anquetil , Stéphane Ducasse , Abdelhak-Djamel Seriai , Mustapha Derras

Modern software programs are built on stacks that are often undergoing changes that introduce updates and improvements, but may also break any project that depends upon them. In this paper we explore the use of Large Language Models (LLMs)…

Software Engineering · Computer Science 2025-11-04 Katherine A. Rosenfeld , Cliff C. Kerr , Jessica Lundin

Recommender systems for software engineering (RSSE) play a crucial role in automating development tasks by providing relevant suggestions according to the developer's context. However, they suffer from the so-called popularity bias, i.e.,…

Software Engineering · Computer Science 2025-01-20 Claudio Di Sipio , Juri Di Rocco , Davide Di Ruscio , Vladyslav Bulhakov

Large Language Models (LLMs) have shown promise for program translation, particularly for migrating systems code to memory-safe languages such as Rust. However, existing approaches struggle when source programs depend on external libraries:…

Software Engineering · Computer Science 2026-02-24 Hanliang Zhang , Arindam Sharma , Cristina David , Meng Wang , Brandon Paulsen , Daniel Kroening , Wenjia Ye , Taro Sekiyama

This paper investigates the novel one-sided communication methods based on remote memory access (RMA) operations in MPI for dynamic resizing of malleable applications, enabling data redistribution with minimal impact on application…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-01-28 Iker Martín-Álvarez , José I. Aliaga , Maribel Castillo