大数据 ›› 2021, Vol. 7 ›› Issue (1): 22-36.doi: 10.11959/j.issn.2096-0271.2021002

• 专题:数据驱动的软件智能化开发 • 上一篇    

基于大数据的软件项目知识图谱构造及问答方法

邹艳珍1,2, 王敏1,2, 谢冰1,2, 林泽琦3   

  1. 1 北京大学信息科学技术学院,北京 100871
    2 高可信软件技术教育部重点实验室(北京大学),北京 100871
    3 微软亚洲研究院,北京 100080
  • 出版日期:2021-01-15 发布日期:2021-01-01
  • 作者简介:邹艳珍(1976- ),女,博士,北京大学信息科学技术学院副教授,主要研究方向为软件工程、软件复用、知识图谱和智能软件开发等
    王敏(1994- ),男,北京大学信息科学技术学院博士生,主要研究方向为软件工程、软件复用、代码审查和智能化软件开发等
    谢冰(1970- ),男,博士,北京大学教授、信息科学技术学院常务副院长、软件研究所所长,国家杰出青年基金获得者,中国软件行业协会理事,中国计算机学会高级会员,Chinese Journal of Electromics编委,入选教育部新世纪优秀人才支持计划、北京市科技新星计划,获得“中创软件人才奖”。主要研究方向为软件工程、计算机理论科学和分布式系统等
    林泽琦(1992- ),男,博士,微软亚洲研究院研究员,主要研究方向为机器学习、智能数据分析、智能开发环境
  • 基金资助:
    国家重点研发计划基金资助项目(2016YFB1000800);国家自然科学基金资助项目(61972006)

Software knowledge graph construction and Q&A technology based on big data

Yanzhen ZOU1,2, Min WANG1,2, Bing XIE1,2, Zeqi LIN3   

  1. 1 School of Electronics Engineering and Computer Science, Peking University, Beijing 100871, China
    2 Key Lab of High Confidence Software Technologies (Peking University), Ministry of Education, Beijing 100871, China
    3 Microsoft Research Asia, Beijing 100080, China
  • Online:2021-01-15 Published:2021-01-01
  • Supported by:
    Foundation Items: The National Key Research and Development Program of China(2016YFB1000800);The National Natural Science Foundation of China(61972006)

摘要:

随着软件规模的不断扩大、软件演化周期的不断延长,构建软件项目知识图谱对软件维护、软件开发的意义越来越重大。如何基于软件项目开发过程中产生的源代码、邮件列表、缺陷报告等多源异构大数据,快速构建语义关联丰富的软件知识图谱,是软件工程领域亟待解决的关键问题。提出了以代码结构为核心的软件知识图谱模型,建立了“知识抽取-知识融合”两层软件知识图谱构造框架,该框架支持软件项目知识图谱的自动构造以及基于知识图谱的软件项目智能问答,有效提高了软件项目理解和软件复用的效率。目前,软件项目知识图谱已经在Apache开源社区以及国内著名软件企业成功展开应用实践。

关键词: 软件复用, 软件知识图谱, 软件知识抽取, 知识问答

Abstract:

With the increasing of software scale and software evolution, it is more and more important to construct software project knowledge graph for software maintenance and software development. Automatically constructing software knowledge graph with complex structure and rich semantic relations based on the multi-source heterogeneous mass data such as source code, mailing list, issue report and Q&A document generated in the process of software project development is a key challenge to be solved urgently in the field of software engineering. A code-centric software knowledge model was proposed, a two-layer plugin framework for knowledge graph construction and software Q&A was provided, which improves the efficiency of software understanding and software reuse. At present, software project knowledge graph has successfully deployed in the Apache open source community and in the domestic famous enterprises.

Key words: software reuse, software knowledge graph, software knowledge extraction, knowledge Q&A

中图分类号: 

No Suggested Reading articles found!