来自微软,北京大学,中国电子科技大学的研究人员已经开发出一种可以自动修复软件系统缺陷而无需人为干预的系统。
这项研究始于微软和剑桥大学的研究,他们宣布了一个从问题输入/输出产生程序的DeepCoder算法。
DeepCoder仍然非常有限,但新的研究要求计算机程序是否可能识别和修复现有程序中的错误。
由精确状态系统(ACS)发明的系统旨在自动修复软件系统中的缺陷,而无需人为干预。
然而现有的自动化程序修复工具,他们生产的补丁的“精度”低。大多数情况下,主流程序修复方法的精确度小于10%,甚至改进方法的准确度也不到40%。问题是用于将更改标记为“正确”的测试,并不意味着通过测试意味着程序实际上是正确的。而这种最新的方法在Defects4J基准测试中达到80%的“正确性”评级。
ACS通过使用多个信息源,特别是互联网上存在的“大量代码”,实现了改进的结果。研究人员侧重于条件综合。在以前的工具中添加了三种新的信息源。首先,通过了解在“if”条件下应该使用本地上下文中的哪些变量给出的信息,以及使用基于变量之间的依赖关系的排序方法。
第二个变化依赖于可以使用API文档来指导修复过程的观察。基于此,使用文档分析技术进一步过滤变量。自然语言分析技术用于分析Javadoc,然后应用程序使用Javadoc中的信息来过滤不正确的补丁。
最后,最重要的是,ACS对互联网上的开源程序进行统计分析,发现对变量进行操作的条件概率,并进一步生成正确的补丁。
描述ACS系统的文件“程序修复的精确条件综合”已发表于ICSE 2017。作者包括北京大学、中国电子科技大学和微软研究院的研究人员。
相关资讯
最新热门应用
智慧笑联app官网最新版
生活实用41.45MB
下载盯链app安卓最新版
生活实用50.17M
下载学有优教app家长版
办公学习38.83M
下载九号出行app官网最新版
旅行交通28.8M
下载货拉拉司机版app最新版
生活实用145.22M
下载全自动抢红包神器2024最新版本安卓app
系统工具4.39M
下载扫描王全能宝官网最新版
办公学习238.17M
下载海信爱家app最新版本
生活实用235.33M
下载航旅纵横手机版
旅行交通138.2M
下载双开助手多开分身安卓版
系统工具18.11M
下载