English
Related papers

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

200 papers

The migration process between different third-party libraries is hard, complex and error-prone. Typically, during a library migration, developers need to find methods in the new library that are most adequate in replacing the old methods of…

Software Engineering · Computer Science 2019-06-07 Hussein Alrubaye , Mohamed Wiem Mkaouer , Ali Ouni

The migration process between different third-party software libraries is hard, complex and error-prone. Typically, during a library migration process, developers opt to replace methods from the retired library with other methods from a new…

Software Engineering · Computer Science 2020-10-05 Hussein Alrubaye , Deema Alshoaibi , Eman Alomar , Mohamed Wiem Mkaouer , Ali Ouni

Software intensively depends on external libraries whose relevance may change during its life cycle. As a consequence, software developers must periodically reconsider the libraries they depend on, and must think about \textit{library…

Software Engineering · Computer Science 2013-06-27 Cédric Teyton , Jean-Rémy Falleri , Marc Palyart , Xavier Blanc

In this paper we introduce, MigrationMiner, an automated tool that detects code migrations performed between Java third-party library. Given a list of open source projects, the tool detects potential library migration code changes and…

Software Engineering · Computer Science 2019-07-17 Hussein Alrubaye , Mohamed Wiem Mkaouer , Ali Ouni

Third-party libraries are crucial to the development of software projects. To get suitable libraries, developers need to search through millions of libraries by filtering, evaluating, and comparing. The vast number of libraries places a…

Software Engineering · Computer Science 2020-05-26 Zhensu Sun , Yan Liu , Ziming Cheng , Chen Yang , Pengyu Che

Developers heavily rely on Application Programming Interfaces (APIs) from libraries to build their software. As software evolves, developers may need to replace the used libraries with alternate libraries, a process known as library…

Software Engineering · Computer Science 2024-02-01 Mohayeminul Islam , Ajay Kumar Jha , Ildar Akhmetov , Sarah Nadi

During the development of a software project, developers often need to upgrade third-party libraries (TPLs), aiming to keep their code up-to-date with the newest functionalities offered by the used libraries. In most cases, upgrading used…

Software Engineering · Computer Science 2022-01-21 Riccardo Rubei , Davide Di Ruscio , Claudio Di Sipio , Juri Di Rocco , Phuong T. Nguyen

Library migration is the process of replacing a library with a similar one in a software project. Manual library migration is time consuming and error prone, as it requires developers to understand the Application Programming Interfaces…

Software Engineering · Computer Science 2026-02-25 Mohayeminul Islam , Ajay Kumar Jha , May Mahmoud , Sarah Nadi

Library migration is a challenging problem, where most existing approaches rely on prior knowledge. This can be, for example, information derived from changelogs or statistical models of API usage. This paper addresses a different API…

Software Engineering · Computer Science 2020-08-28 Bruce Collie , Philip Ginsbach , Jackson Woodruff , Ajitha Rajan , Michael O'Boyle

In this paper, we propose LibRec, a novel framework that integrates the capabilities of LLMs with retrieval-augmented generation(RAG) techniques to automate the recommendation of alternative libraries. The framework further employs…

Software Engineering · Computer Science 2025-08-14 Junxiao Han , Yarong Wang , Xiaodong Gu , Cuiyun Gao , Yao Wan , Song Han , David Lo , Shuiguang Deng

Library migration, which re-implements the same software behavior by using a different library instead of using the current one, has been widely observed in software evolution. One essential part of library migration is to find an…

Software Engineering · Computer Science 2023-08-23 Mingwei Liu , Yanjun Yang , Yiling Lou , Xin Peng , Zhong Zhou , Xueying Du , Tianyong Yang

Library migration is the process of replacing one library with another library that provides similar functionality. Manual library migration is time consuming and error prone, as it requires developers to understand the APIs of both…

Software Engineering · Computer Science 2025-10-14 Md Mohayeminul Islam , Ajay Kumar Jha , May Mahmoud , Ildar Akhmetov , Sarah Nadi

Modern software systems are increasingly dependent on third-party libraries. It is widely recognized that using mature and well-tested third-party libraries can improve developers' productivity, reduce time-to-market, and produce more…

Software Engineering · Computer Science 2016-12-07 Mohamed Aymen Saied , Ali Ouni , Houari Sahraoui , Raula Gaikovina Kula , Katsuro Inoue , David Lo

Large language models (LLMs) have achieved exceptional performance in code generation. However, the performance remains unsatisfactory in generating library-oriented code, especially for the libraries not present in the training data of…

Software Engineering · Computer Science 2024-03-01 Zexiong Ma , Shengnan An , Bing Xie , Zeqi Lin

Third-party libraries are a cornerstone of fast application development. To enable efficient use, libraries must provide a well-designed API. An obscure API instead slows down the learning process and can lead to erroneous use. The usual…

Software Engineering · Computer Science 2024-01-17 Lars Reimann , Günter Kniesel-Wünsche

Computer programs written in one language are often required to be ported to other languages to support multiple devices and environments. When programs use language specific APIs (Application Programming Interfaces), it is very challenging…

Software Engineering · Computer Science 2017-04-26 Xiaodong Gu , Hongyu Zhang , Dongmei Zhang , Sunghun Kim

Context: A Legacy system can be defined as a system that significantly resists modification and evolution. According to the literature, there are two main strategies to migrate a legacy system: (a) to replace the legacy system by a new one,…

Software Engineering · Computer Science 2022-10-04 Bruno Góis Mateus , Matias Martinez , Christophe Kolski

The fast-paced evolution of Android APIs has posed a challenging task for Android app developers. To leverage Android's frequently released APIs, developers must often spend considerable effort on API migrations. Prior research and Android…

Software Engineering · Computer Science 2021-03-29 Maxime Lamothe , Weiyi Shang , Tse-Hsun Chen

Using libraries in applications has helped developers reduce the costs of reinventing already existing code. However, an increase in diverse technology stacks and third-party library usage has led developers to inevitably switch…

Software Engineering · Computer Science 2023-03-17 Kanchanok Kannee , Raula Gaikovina Kula , Supatsara Wattanakriengkrai , Kenichi Matsumoto

Retrieval-Augmented Neural Machine Translation (RAMT) architectures retrieve examples from memory to guide the generation process. While most works in this trend explore new ways to exploit the retrieved examples, the upstream retrieval…

Computation and Language · Computer Science 2024-04-04 Maxime Bouthors , Josep Crego , Francois Yvon
‹ Prev 1 2 3 10 Next ›