第三方库依赖冲突问题研究综述
作者:
作者单位:

作者简介:

李硕(1997-),女,博士生,CCF学生会员,主要研究领域为智能化软件工程;刘杰(1982-),男,博士,副研究员,CCF专业会员,主要研究领域为大数据,分布式系统,软件工程;王帅(1982-),男,博士,高级工程师,主要研究领域为大数据分析处理,人工智能,系统集成;田浩翔(1994-),男,博士生,CCF学生会员,主要研究领域为自动驾驶,仿真测试,数据挖掘;叶丹(1971-),女,博士,研究员,博士生导师,CCF高级会员,主要研究领域为网络分布式系统,软件工程.

通讯作者:

刘杰,E-mail:ljie@otcaix.iscas.ac.cn;叶丹,E-mail:yedan@otcaix.iscas.ac.cn

中图分类号:

基金项目:

国家重点研发计划(2017YFA0700603);国家自然科学基金(61972386)


Survey on Dependency Conflict Problem of Third-party Libraries
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    软件开发过程中, 开发人员通过大量使用第三方库来实现代码复用. 不同第三方库之间存在依赖关系, 第三方库间的不兼容会导致第三方库的安装、加载、调用时出现错误, 进而导致系统异常, 这类问题称之为第三方库依赖冲突问题. 依赖冲突的根本原因是加载的第三方库无法覆盖软件引用的必需特性(例如: 方法). 依赖冲突问题会在第三方库的下载安装, 项目编译和运行时中出现, 且定位困难. 依赖冲突问题的修复要求开发人员对使用的第三方库版本间差别具有准确的理解, 并且第三方库之间复杂的依赖关系增加了修复难度. 为了能够在软件运行前, 发现软件中存在的依赖冲突, 并且能够响应和处理运行过程中由依赖冲突引发的系统异常, 国内外学者展开了各种针对依赖冲突问题的研究. 从依赖冲突问题的4个方面, 对当前已有研究工作进行了梳理, 包括: 第三方库的使用实证分析、依赖冲突原因分析、依赖冲突检测方法以及依赖冲突常用修复方式. 最后对该领域未来值得关注的研究问题进行了展望.

    Abstract:

    During software development, developers use third-party libraries extensively to achieve code reuse. Due to the dependencies among different third-party libraries, the incompatibilities among them lead to errors during the installing, loading, or calling of those libraries and ultimately result in system anomalies. Such a problem is called a dependency conflict (DC, also referred to as conflict dependency or CD) issue of third-party libraries. The root cause of such issues is that the third-party libraries loaded fail to cover the required features (e.g., methods) cited by the software. DC issues often occur during the download and install, project compiling, and running of third-party libraries and are difficult to locate. Fixing DC issues requires developers to know the differences among the versions of the third-party libraries they use accurately, and the complex dependencies among the third-party libraries increase the difficulty in this work. To identify the DC issues in the software before its running and to deal with the system anomalies caused by those issues during running, researchers around the world have conducted various studies on such issues. This study presents a systematic review of this research topic from four aspects, including the empirical analysis of third-party library usage, the cause analysis of DC issues, and the detection methods and common fixing ways for such issues. Finally, the potential research opportunities in this field are discussed.

    参考文献
    相似文献
    引证文献
引用本文

李硕,刘杰,王帅,田浩翔,叶丹.第三方库依赖冲突问题研究综述.软件学报,2023,34(10):4636-4660

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2021-10-09
  • 最后修改日期:2021-12-28
  • 录用日期:
  • 在线发布日期: 2022-05-24
  • 出版日期: 2023-10-06
文章二维码
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号