首页> 外文会议>IEEE/ACM International Conference on Program Comprehension >On the Use of Information Retrieval to Automate the Detection of Third-Party Java Library Migration at the Method Level
【24h】

On the Use of Information Retrieval to Automate the Detection of Third-Party Java Library Migration at the Method Level

机译:关于信息检索的使用以自动检测方法级别的第三方Java库迁移

获取原文

摘要

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 the retired library. This process is subjective and time-consuming as developers need to fully understand the documentation of both libraries' Application Programming Interfaces, and find the right matching between their methods, if it exists. In this context, several studies rely on mining existing library migrations to provide developers with by-example approaches for similar scenarios. In this paper, we introduce a novel mining approach that extracts existing instances of library method replacements that are manually performed by developers for a given library migration to automatically generate migration patterns in the method level. Thereafter, our approach combines the mined method-change patterns with method-related lexical similarity to accurately detect mappings between replacing/replaced methods. We conduct a large scale empirical study to evaluate our approach on a benchmark of 57,447 open-source Java projects leading to 9 popular library migrations. Our qualitative results indicate that our approach significantly increases the accuracy of mining method-level mappings by an average accuracy of 12%, as well as increasing the number of discovered method mappings, in comparison with existing state-of-the-art studies. Finally, we provide the community with an open source mining tool along with a dataset of all mined migrations at the method level.
机译:不同的第三方库之间的迁移过程很难,复杂,容易出错。通常,在库迁移期间,开发人员需要在新库中查找最足够替换退休库的旧方法的方法。由于开发人员需要充分了解图书馆的应用程序编程接口的文档,并且在其方法之间找到右侧匹配,此过程是主观和耗时的主观且耗时耗时。在这种情况下,若干研究依赖于挖掘现有图书馆迁移,为开发人员提供类似的场景的示例方法。在本文中,我们介绍了一种新的挖掘方法,提取由Covelopers迁移的开发人员手动执行的库方法的现有实例,以在方法级别自动生成迁移模式。此后,我们的方法将采用的方法更改模式与方法相关的词汇相似性结合,以精确地检测替换/替换方法之间的映射。我们进行大规模的实证研究,以评估我们在57,447个开源Java项目的基准上的方法,导致9个流行的图书馆迁移。我们的定性结果表明,与现有的最先进的研究相比,我们的方法显着提高了挖掘方法级映射的准确性,以及增加所发现的方法映射的数量。最后,我们为社区提供了一个开源挖掘工具以及在方法级别的所有开采迁移的数据集。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号