首页> 外文会议>IEEE/ACM International Conference on Automated Software Engineering >Code2graph: Automatic Generation of Static Call Graphs for Python Source Code
【24h】

Code2graph: Automatic Generation of Static Call Graphs for Python Source Code

机译:Code2graph:为Python源代码自动生成静态调用图

获取原文

摘要

A static call graph is an imperative prerequisite used in most interprocedural analyses and software comprehension tools. However, there is a lack of software tools that can automatically analyze the Python source-code and construct its static call graph. In this paper, we introduce a prototype Python tool, named code2graph, which automates the tasks of (1) analyzing the Python source-code and extracting its structure, (2) constructing static call graphs from the source code, and (3) generating a similarity matrix of all possible execution paths in the system. Our goal is twofold: First, assist the developers in understanding the overall structure of the system. Second, provide a stepping stone for further research that can utilize the tool in software searching and similarity detection applications. For example, clustering the execution paths into a logical workflow of the system would be applied to automate specific software tasks. Code2graph has been successfully used to generate static call graphs and similarity matrices of the paths for three popular open-source Deep Learning projects (TensorFlow, Keras, PyTorch). A tool demo is available at https://youtu.be/ecctePpcAKU.
机译:静态调用图是大多数过程间分析和软件理解工具中使用的必要前提。但是,缺少可以自动分析Python源代码并构造其静态调用图的软件工具。在本文中,我们介绍了一个名为code2graph的Python工具原型,该工具可自动执行以下任务:(1)分析Python源代码并提取其结构,(2)从源代码构造静态调用图,以及(3)生成系统中所有可能执行路径的相似度矩阵。我们的目标是双重的:首先,协助开发人员了解系统的整体结构。其次,为可以在软件搜索和相似性检测应用程序中使用该工具的进一步研究提供垫脚石。例如,将执行路径群集到系统的逻辑工作流中将应用于自动执行特定的软件任务。 Code2graph已成功用于生成三个流行的开源深度学习项目(TensorFlow,Keras,PyTorch)的静态调用图和路径的相似矩阵。可在https://youtu.be/ecctePpcAKU上获得工具演示。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号