Journal of Frontiers of Computer Science and Technology ›› 2017, Vol. 11 ›› Issue (6): 851-862.DOI: 10.3778/j.issn.1673-9418.1609026

Previous Articles     Next Articles

Software Knowledge Graph Building Method for Open Source Project

LI Wenpeng1,2,3, WANG Jianbin1,2,3, LIN Zeqi1,2,3, ZHAO Junfeng1,2,3+, ZOU Yanzhen1,2,3, XIE Bing1,2,3   

  1. 1. School of Electronics Engineering and Computer Science, Peking University, Beijing 100871, China
    2. Key Laboratory of High Confidence Software Technologies, Ministry of Education, Beijing 100871, China 
    3. Peking University Information Technology Institute (Tianjin Binhai), Tianjin 300450, China
  • Online:2017-06-01 Published:2017-06-07


李文鹏1,2,3,王建彬1,2,3,林泽琦1,2,3,赵俊峰1,2,3+,邹艳珍1,2,3,谢  冰1,2,3   

  1. 1. 北京大学 信息科学技术学院,北京 100871
    2. 高可信软件技术教育部重点实验室,北京 100871
    3. 北京大学(天津滨海)新一代信息技术研究院,天津 300450

Abstract: Software reuse is a solution to reduce the duplication of efforts during software development and improve the efficiency and quality of the process. Open source projects’ source code, mailing lists, issue reports, Q&A documents and other software resources contain software knowledge with complex structure and rich semantic association on a large scale. How to obtain and organize software knowledge and retrieve it effectively in the process of software reuse have become urgent problems. In order to solve these problems, this paper constructs software knowledge graph, whose goal is to organize and manage the structural knowledge of a software project, and provides software knowledge graph based knowledge retrieval. The contributions of this paper are as follows: Providing the extraction principles and methods of software knowledge entities, and extracting software knowledge entities from four different kinds of software resources respectively; Providing the methods of building the relationships between software knowledge entities; Providing two software knowledge retrieval mechanisms, and displaying the retrieval       results by the combination of word list and graph visualization; Designing the implementation framework of software knowledge graph. On the basic of the work above, this paper designs and implements a software knowledge graph building tool for open source project. Instances prove that software knowledge graph can help developers to better retrieve and use knowledge.

Key words: software reuse, open source software, software knowledge graph, graph database



关键词: 软件复用, 开源软件, 软件知识图谱, 图数据库