RefExpo: Unveiling Software Project Structures through Advanced Dependency Graph Extraction

2024年07月02日
  • 简介
    本研究介绍了一种易于使用的依赖图(DG)提取工具RefExpo,支持Java、Python和JavaScript等多种语言。该工具基于IntelliJ插件SDK,确保与不同项目结构和技术版本的兼容性。我们还提供了20个Java和Python项目的数据集,并计划根据需要进行扩展。为了验证RefExpo的有效性,我们专注于Java和Python。我们的测试结果显示,RefExpo在Python和Java的微型测试套件Judge和PyCG上分别达到了92%和100%的召回率。在宏观实验中,RefExpo在查找独特和共享结果方面的表现至少比现有工具高出31%和7%。您可以从我们的复制包中访问我们工具的源代码。RefExpo的可安装版本可在IntelliJ市场上获得。此外,您可以在此处观看描述其功能的短视频:https://youtu.be/eCnPUlj6YgA。
  • 图表
  • 解决问题
    缺乏易用的依赖图提取工具和综合的开源项目依赖数据集,本论文提出了一种易于使用的依赖图提取工具RefExpo,并提供了包括20个Java和Python项目在内的综合数据集。
  • 关键思路
    RefExpo基于IntelliJ插件SDK,支持多种语言,能够适应不同的项目结构和技术版本。在Java和Python的测试中,RefExpo的召回率分别达到了92%和100%,在宏观实验中也表现出了优异的性能。
  • 其它亮点
    本论文提出的RefExpo工具易于使用,并提供了综合的开源项目依赖数据集,实验表明其性能优异。论文中还提供了工具的源代码和可安装版本,并附有视频介绍。
  • 相关研究
    与本论文相关的研究包括依赖图提取和分析的研究,以及安全和总线因子计算等方面的应用研究。近期相关的研究包括《Exploring the Performance of Dependency Graph Extraction Tools on Large-Scale Software》和《A Survey of Software Dependency Graph Techniques》。
PDF
原文
点赞 收藏 评论 分享到Link

沙发等你来抢

去评论