[关键词]
[摘要]
智能化软件开发正在经历从简单的代码检索到语义赋能的代码自动生成的转变,传统的语义表达方式无法有效地支撑人、机器和代码之间的语义交互,探索机器可理解的语义表达机制迫在眉睫.首先指出了代码知识图谱是实现智能化软件开发的基础,进而分析了大数据时代智能化软件开发的新特点以及基于代码知识图谱进行智能化软件开发的新挑战;随后回顾了智能化软件开发和代码知识图谱的研究现状,指出了现有智能化软件开发的研究仍然处于较低水平,而现有知识图谱的研究主要面向开放领域知识图谱,无法直接应用于代码领域知识图谱.因此,从代码知识图谱的建模与表示、构建与精化、存储与演化管理、查询语义理解以及智能化应用这5个方面详细探讨了研究新趋势,以更好地满足基于代码知识图谱进行智能化软件开发的需要.
[Key word]
[Abstract]
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.
[中图分类号]
TP311
[基金项目]
国家重点研发计划(2018YFB1003400);国家自然科学基金(61572376);中央高校基本科研业务费专项资金(2042019k10278)