Survey on Construction of Code Knowledge Graph and Intelligent Software Development

被引:0
|
作者
Wang F. [1 ]
Liu J.-P. [2 ]
Liu B. [1 ]
Qian T.-Y. [1 ]
Xiao Y.-H. [2 ]
Peng Z.-Y. [1 ]
机构
[1] School of Computer Science, Wuhan University, Wuhan
[2] School of Computer Science, Fudan University, Shanghai
来源
Ruan Jian Xue Bao/Journal of Software | 2020年 / 31卷 / 01期
基金
中国国家自然科学基金;
关键词
Big code; Intelligent software development; Knowledge graph;
D O I
10.13328/j.cnki.jos.005893
中图分类号
学科分类号
摘要
The intelligent software development is migrating from simple code retrieval to semantic empowered automatic code generation. Traditional semantic representation cannot effectively support the semantic interaction among people, machines, and code. It becomes an urgent task to design a set of machine-readable semantic representation. In tThis paper, westudy firstly points out that code knowledge graph forms the basis to realize the intelligent software development, and then analyzes the new features and new challenges of intelligent software development based on code knowledge graph in the era of big data. Next, we review the research progress is reviewed both in intelligent software development and in code knowledge graph. It is noted that the current research of intelligent software development is still at a preliminary stage. Existing studies of knowledge graph mainly focus on open-domain knowledge graph, and they cannot be directly applied to code and software development domain. Therefore, we discuss the new research trends of code knowledge graph are discussed in detail from five aspects, including namely modeling and representation, construction and refinement, storage and evolution management, semantic understanding, and intelligent application, which are essential to meet the various types of demands of the intelligent software development. © Copyright 2020, Institute of Software, the Chinese Academy of Sciences. All rights reserved.
引用
收藏
页码:47 / 66
页数:19
相关论文
共 107 条
  • [1] Economic operation of software industry in 2017, (2017)
  • [2] PWC global 100 software leaders, (2016)
  • [3] Liu L., Industrial application and future development of knowledge graph, The Internet Economy, 4, pp. 16-21, (2018)
  • [4] (2018)
  • [5] Schmidt D.C., Model-driven engineering, IEEE Computer, 39, 2, pp. 25-31, (2006)
  • [6] Manna Z., Waldinger R.J., Toward automatic program synthesis, Communications of the ACM, 14, 3, pp. 151-165, (1971)
  • [7] Liu B.B., Dong W., Wang J., Survey on intelligent search and construction methods of program, Ruan Jian Xue Bao/Journal of Software, 29, 8, pp. 2180-2197, (2018)
  • [8] Allamanis M., Barr E.T., Devanbu P., Sutton C., A survey of machine learning for big code and naturalness, ACM Computing Surveys, 51, 4, pp. 1-37, (2018)
  • [9] Thummalapenta S., Xie T., PARESEWeb: A programmer assistant for reusing open source code on the Web, Proc. of the 22nd IEEE/ACM Int'l Conf. on Automated Software Engineering, pp. 204-213, (2007)
  • [10] Stolee K.T., Finding suitable programs: Semantic search with incomplete and lightweight specifications, Proc. of the 34th Int'l Conf. on Software Engineering, pp. 1571-1574, (2012)