一种基于代码知识图谱的缺陷搜索方法及系统

    公开(公告)号:CN115562673A

    公开(公告)日:2023-01-03

    申请号:CN202211190008.X

    申请日:2022-09-28

    申请人: 扬州大学

    摘要: 本发明公开了一种基于代码知识图谱的缺陷搜索方法及系统,从文本和代码角度将Mozilla@Bugzilla,Eclipse@Bugzilla,Github以及Stack overflow网站的缺陷修复前后的代码进行整合,爬取不同的主题,并构建主题集,同事提取帖子中缺陷代码和正确代码,建立以缺陷代码、正确代码、缺陷报告中的标题信息、帖子标题信息和问题描述信息、主题为实体的代码知识图谱,借助可视化工具将代码知识图谱可视化。从多平台的爬取,使得缺陷代码知识图谱的覆盖内容更多,范围更广,同时,通过融合代码文本及代码信息,普及了代码知识,使得开发人员能够直观的对缺陷代码拥有一定了解,开发人员检索时能够快速查询到修复后的代码信息。

    一种基于代码知识图谱的缺陷定位方法及系统

    公开(公告)号:CN115629760A

    公开(公告)日:2023-01-20

    申请号:CN202211190016.4

    申请日:2022-09-28

    申请人: 扬州大学

    摘要: 本发明公开了一种基于代码知识图谱的缺陷定位方法及系统,从Git版本控制系统中提取源代码,对源代码进行解析生成抽象语法树,基于抽象语法树构建代码知识图谱,同时对Bugzilla缺陷跟踪系统中爬取的缺陷报告的摘要和描述预处理后,进行命名实体识别,以识别出和缺陷相关的实体序列,再将代码知识图谱与缺陷实体序列通过嵌入算法转换为向量化表示,计算两者之间的余弦相似度,按相似度得分降序,生成可疑方法列表,过滤了源代码中陈宇信息的同时,明确缺陷报告中和缺陷相关的实体元素,保留缺陷相关信息,提升缺陷定位的准确性,减少维护人员定位软件缺陷所耗费的时间和精力,提高软件维护的效率。