计算机科学
Java
应用程序编程接口
文档
万维网
过程(计算)
软件
集合(抽象数据类型)
情报检索
相似性(几何)
服务(商务)
阅读(过程)
软件工程
人工智能
程序设计语言
图像(数学)
经济
经济
法学
政治学
作者
Hussein Alrubaye,Mohamed Wiem Mkaouer,Igor Khokhlov,Leon Reznik,Ali Ouni,Jason Mcgoff
标识
DOI:10.1016/j.asoc.2020.106140
摘要
The manual migration between different third-party libraries represents a challenge for software developers. Developers typically need to explore both libraries Application Programming Interfaces, along with reading their documentation, in order to locate the suitable mappings between replacing and replaced methods. In this paper, we introduce RAPIM, a machine learning model that recommends mappings between methods from two different libraries. Our model learns from previous migrations, manually performed in mined software systems, and extracts a set of features related to the similarity between method signatures and method textual documentations. We evaluate our model using 8 popular migrations, collected from 57,447 open-source Java projects. Results show that RAPIM is able to recommend relevant library API mappings with an average accuracy score of 87%. Finally, we provide the community with an API recommendation web service that could be used to support the migration process.
科研通智能强力驱动
Strongly Powered by AbleSci AI