首页> 外文会议>IEEE International Conference on Software Maintenance >Graph-based detection of library API imitations
【24h】

Graph-based detection of library API imitations

机译:基于图形的图书馆API模仿的检测

获取原文

摘要

It has been a common practice nowadays to employ third-party libraries in software projects. Software libraries encapsulate a large number of useful, well-tested and robust functions, so that they can help improve programmers' productivity and program quality. To interact with libraries, programmers only need to invoke Application Programming Interfaces (APIs) exported from libraries. However, programmers do not always use libraries as effectively as expected in their application development. One commonly observed phenomenon is that some library behaviors are re-implemented by client code. Such re-implementation, or imitation, is not just a waste of resource and energy, but its failure to abstract away similar code also tends to make software error-prone. In this paper, we propose a novel approach based on trace subsumption relation of data dependency graphs to detect imitations of library APIs for achieving better software maintainability. Furthermore, we have implemented a prototype of this approach and applied it to ten large real-world open-source projects. The experiments show 313 imitations of explicitly imported libraries with high precision average of 82%, and 116 imitations of static libraries with precision average of 75%.
机译:现在是在软件项目中使用第三方库一直是常见的做法。软件库封装了大量有用,有用,经过良好的功能,因此它们可以帮助提高程序员的生产力和程序质量。要与库进行交互,程序员只需要调用从库导出的应用程序编程接口(API)。但是,程序员并不总是在其应用程序开发中正常使用库。一个通常观察到的现象是客户代码重新实现一些图书馆行为。此类重新实施或模仿,不仅仅是资源和能源的浪费,而且它无法抽出类似的代码也倾向于使软件出错。在本文中,我们提出了一种基于数据依赖性图的跟踪存储关系的新方法,以检测图书馆API的模仿,以实现更好的软件可维护性。此外,我们已经实施了这种方法的原型,并将其应用于十大真实的开源项目。实验表明,高精度平均值的明确进口文库的313件仿明明的文库,高度平均静态文库的116件仿制剂,精度平均值为75%。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号