摘要:互联网、机器学习、人工智能等技术的迅速发展以及大量开源软件和开源社区的出现,给软件工程的发展带来了新的机遇和挑战.目前,在互联网上已经存在了数十亿行的各类程序代码,这些代码中存在着各种知识,尤其是众多已被广泛使用、高质量的软件代码,由此催生了利用大规模代码资源中蕴涵的众多知识进行智能化软件开发的新思路.它试图充分利用互联网中存在的代码资源、知识和群体智慧,以有效地提高软件开发的效率和质量,其核心技术是程序搜索与构造,具有非常重要的理论与应用价值.目前,该方向的研究工作主要集中在代码搜索、程序合成、代码推荐与补全、缺陷检测、代码风格改善、程序自动修复等方面.从以上几个方面对当前的主要研究工作进行综述,对具体的理论和技术途径进行梳理,并在最后总结了目前该领域研究过程中面临的挑战,给出了建议的研究方向.
Abstract:The rapid development of Internet, machine learning and artificial intelligence, as well as the appearance of a large number of open-source software and communities, has brought new opportunities and challenges to the development of software engineering. There are billions of lines of code on the Internet. These codes, especially those of high quality and widely used contains all kinds of knowledge, which has led to the new idea of intelligent software development. It tries to make full use of code resources, knowledge and collective intelligence on the Internet to effectively improve the efficiency and quality of software development. The key technology is program search and construction, providing great theoretical and practical value. At present, the research work of these areas mainly focuses on code search, program synthesis, code recommendation and completion, defect detection, code style improvement, and automatic program repair. This paper surveys the current main research work from the above aspects, sorts out the specific theoretical and technical approaches in detail and summarizes the challenges in the current research process. Several directions of research in the future are also proposed.
PDF全文下载地址:
http://jos.org.cn/jos/article/pdf/5529
删除或更新信息,请邮件至freekaoyan#163.com(#换成@)
智能化的程序搜索与构造方法综述
本站小编 Free考研考试/2022-01-02
相关话题/代码 软件 知识 程序 技术
融合结构与语义特征的代码注释决策支持方法
摘要:代码注释是辅助编程人员理解源代码的有效手段之一.高质量的注释决策不仅能够覆盖软件系统中的核心代码片段,还能避免产生多余的代码注释.然而在实际开发中,编程人员往往缺乏统一的注释规范,大部分的注释决策都取决于个人经验以及领域知识.对于新手程序员来说,注释决策显然成为一项重要而艰巨的任务.为了减少编 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02基于StackOverflow数据的软件功能特征挖掘组织方法
摘要:软件的功能描述文档是开发人员了解软件的重要基础.现有的软件项目并不都是具备全面描述软件功能的文档,但软件项目开发和应用过程中的各种交流记录蕴含了讨论其功能的大量信息.为此,提出了一种基于StackOverflow问答数据的软件功能特征挖掘组织方法.该方法提出以动宾短语形式描述软件功能特征,挖掘 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02面向开源生态的软件数据挖掘技术研究综述
摘要:全球开源软件生态中孕育的大众化软件生产模式正在快速形成一种新型的软件生产力,在软件开发和应用各个环节发挥了巨大作用.大众化软件生产的数据规模日趋庞大、协同范围不断扩展、管理模式高度精简,这些全球化特征使其在软件复用、协同开发、知识管理等环节面临诸多挑战,迫切需要新的理论指导和工具支持.首先,界 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02代码文件贡献组成模式的分析
摘要:软件开发过程中,同一代码文件经常由多名开发者共同开发和维护,各个开发者向文件贡献了不同的代码量,使之形成特有的贡献组成.代码文件的贡献组成是否合理,直接影响开发者的任务分配,进而影响软件质量和开发效率.对于不同类型的代码文件,如何刻画并确定其合理的贡献组成模式,成为一个亟待解决的问题.协同开发 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02基于贡献分配的开源软件核心开发者评估
摘要:开源软件中如何真实评估所有开发者的贡献度并有效区分核心开发者和外围开发者,是一个重要的研究问题.通过设计开发文件的贡献度分配算法,以9个Apache项目为基础,分析了开发者对项目的贡献度,并以此有效地区分核心开发者和外围开发者.实验结果通过Apache官方主页公布的开发者地位名单进行考证,同时 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02一种多特征融合的软件开发者推荐
摘要:软件开发者能力评价和协作关系推荐,是大数据环境下软件智能化开发领域的一个研究热点.通过分析互联网开发者社区和企业内部开发环境,设计出基于模糊综合评价的开发者能力模型.随后,通过挖掘开发者与任务的动态交互行为、静态匹配度以及开发者能力这3个不同维度的特征并结合矩阵分解技术,提出一种能力与行为感知 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02基于语义分析的情感计算技术研究进展
摘要:随着机器学习和大数据技术的应用发展,基于语义分析的情感计算与分析技术在研究人类的感知、注意力、记忆、决策、社会交流等诸多方面起着重大作用,它不仅影响到了人工智能技术的发展,还影响到了人/机交互的方式,并受到学术界以及企业界的广泛关注.在针对情感定义以及相关90多种情感模型分析的基础上,归纳并提 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02面向隐私保护的新型技术与密码算法专题前言
摘要:Abstract:PDF全文下载地址:http://jos.org.cn/jos/article/pdf/5366 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02同态加密技术及其在云计算隐私保护中的应用
摘要:云计算技术的快速发展使得云服务模式具备了广阔的应用空间,这种模式使用户具备了过往无法比拟的计算能力和存储空间等优势.在云服务模式下用户的隐私安全问题是其推广和应用中面临的首要问题,如何在计算数据的过程中,既保证数据的隐私性,又保证其可用性,是面临的一大难题,同态加密技术作为解决这一问题的关键手 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02基于恶意读写器发现的RFID空口入侵检测技术
摘要:随着RFID技术的不断发展,其在物流管理、货物监控、会议安全保障等领域的应用越来越广泛,但随之而来的安全威胁是不得不需要考虑的隐患因素.在无线通信技术中,空中接口定义了终端设备与网络设备之间的电磁连接技术规范.目前大部分RFID设备采用公开的标准通信协议进行数据传输,使得RFID系统容易遭到恶 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02