题目:基于字节码变异的实用程序修复
主讲人:张令明,德克萨斯大学达拉斯分校,助理教授
日期:2019年8月14日(星期三)
时间:下午15:00 - 16:30
地点:数据科学与jbo竞博电竞官方网站 A201
主持:郑子彬 教授
摘要:自动程序修复(APR)是自动调试领域的最新进展之一,它可以在最少的人为干预下直接修复有缺陷的程序。尽管已经提出了各种先进的APR技术(包括基于搜索或基于语义的技术),但它们主要在源代码级别工作,并且在实践中还不清楚字节码级别APR是如何执行的。此外,现有对于bug技术的实证研究在原始论文中的报告相当有限。在这项工作中,我们实现了第一个实用的字节码级APR技术(PraPR),并第一次完成了用JVM字节码突变修复现实世界中的错误(如4J bug缺陷)。我们的实验结果表明,即使只有基本的传统突变的PraPR也能为17个bug生成真正的修复;通过简单附加的常用APR突变,PraPR能够为43个bug生成真正的修复,显著优于最新的APR,超过10倍的速度。此外,我们对PraPR和其他最近的APR工具进行了广泛的研究,研究了大量额外的实际错误,并首次演示了最近的高级APR工具的数据集过度拟合问题。最后,PraPR还成功地修复了其他JVM语言(例如,流行的Kotlin语言)的错误,这表明PraPR可以极大地补充APR现有的源代码级别。
个人介绍:张令明博士是德克萨斯大学达拉斯分校计算机科学系的助理教授。2014年5月,他获得了德克萨斯大学奥斯汀分校电气与计算机工程系的博士学位,分别获得北京大学(2010年)和南京大学(2007年)的计算机科学硕士和学士学位。他的研究兴趣主要集中在软件工程和编程语言方面,包括自动化软件分析、测试、调试和验证,以及软件工程和机器学习之间的协同作用。他在软件工程和编程语言的顶级会议和期刊中发表了50多篇论文。他还曾在各种国际会议(包括ICSE、ISSTA、FSE、ASE、ICST、ICSM和OOPSLA)的项目/组织委员会或工件评估委员会任职。他曾获得谷歌教员研究奖、三星格罗奖、2项ACM Sigsoft杰出论文奖(ISSTA'19)和最佳行业论文奖(ICST'19)。他的研究也得到了NSF、Futurewi、Amazon和Nvidia的支持。