大数据 ›› 2021, Vol. 7 ›› Issue (1): 76-93.doi: 10.11959/j.issn.2096-0271.2021006

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

数据驱动的软件开发者智能协作技术

张建1,2,3, 孟祥鑫1,2,3, 孙海龙1,2,3, 王旭1,2,3, 刘旭东1,2,3   

  1. 1 软件开发环境国家重点实验室(北京航空航天大学),北京 100191
    2 北京航空航天大学大数据科学与脑机智能高精尖创新中心,北京 100191
    3 北京航空航天大学计算机学院,北京 100191
  • 出版日期:2021-01-15 发布日期:2021-01-01
  • 作者简介:张建(1994- ),男,北京航空航天大学计算机学院博士生,主要研究方向为软件工程、源代码分析、自然语言理
    孟祥鑫(1995- ),男,北京航空航天大学计算机学院博士生,主要研究方向为基于模板的程序自动修复与基于度学习的程序自动修复
    孙海龙(1979- ),男,博士,北京航空航天大学计算机学院教授、博士生导师,主要研究方向为智能软件工程、体智能和分布式系统
    王旭(1986- ),男,博士,北京航空航天大学计算机学院讲师,主要研究方向为基于大数据的软件分析和智能化开发
    刘旭东(1965- ),男,博士,北京航空航天大学计算机学院教授、博士生导师,北京航空航天大学计算机学院计算机新技术研究所所长,可信网络计算技术国防重点学科实验室主任,主要研究方向为网络化软件开发方法、可信软件技术、软件中间件技术和信息化标准
  • 基金资助:
    国家重点研发计划基金资助项目(2016YFB1000800);国家自然科学基金资助项目(61932007);国家自然科学基金资助项目(261972013)

Data driven intelligent collaboration of software developers

Jian ZHANG1,2,3, Xiangxin MENG1,2,3, Hailong SUN1,2,3, Xu WANG1,2,3, Xudong LIU1,2,3   

  1. 1 State Key Laboratory for Software Development Environment (Beihang University), Beijing 100191, China
    2 Beijing Advanced Innovation Center for Big Data and Brain Computing, Beihang University, Beijing 100191, China
    3 School of Computer Science and Engineering, Beihang University, Beijing 100191, China
  • Online:2021-01-15 Published:2021-01-01
  • Supported by:
    The National Key Research and Development Program of China(2016YFB1000800);The National Natural Science Foundation of China(61932007);The National Natural Science Foundation of China(261972013)

摘要:

通过挖掘并利用软件大数据中蕴含的知识来提高软件开发的智能化水平已成为软件工程领域的热点研究问题。然而,对软件开发者及其群体协作方法的研究尚未形成系统化的研究成果。针对此问题,以开发者群体为研究对象,通过深入分析开发者的行为历史数据,研究面向智能协作的关键技术,并以此为基础研制相应的支撑环境。首先,收集并分析了海量的开发者相关数据;第二,给出了软件开发者能力特征模型及其协作关系模型,并构建了开发者知识图谱;第三,以开发者知识图谱为支撑,阐述了基于智能推荐的协作开发方法。基于以上关键技术,研发了相应的支撑工具,并构建了智能协作开发环境系统;最后,对未来的工作进行了展望。

关键词: 智能化软件开发, 大数据, 群体协作, 知识图谱, 推荐系统

Abstract:

Mining big software data and utilizing the knowledge contained in it to explore intelligent methods for software development is an active research topic. However, existing researches on software developer and crowd collaboration have not yet formed systematic methods. Therefore, the key technologies for intelligent collaboration through in-depth analysis of developer behavior were studied. Besides, the corresponding support environment was also developed on the basis of the key technologies to improve the efficiency and quality of software development. Firstly, a large amount of data related to developers were collected and analyzed. Secondly, a systematic approach of analyzing developers and their collaboration which is called developer knowledge graph was proposed. Thirdly, supported by the developer knowledge graph, the collaborative development method based on intelligent recommendation was introduced thoroughly. Depending on the above technologies, the corresponding supporting tools were developed, and a system of intelligent collaborative development environment was provided. Finally, the future work was prospected.

Key words: intelligent software development, big data, crowd collaboration, knowledge graph, recommender system

中图分类号: 

No Suggested Reading articles found!