近日,软件工程顶级会议ESEC/FSE'21组委会公布了该会议上的ACM SIGSOFT杰出论文奖名单,太阳成集团计算机科学技术系参与的三篇论文获奖。ACM SIGSOFT杰出论文奖是由ACM SIGSOFT设立的论文奖项,用于奖励软件工程顶级会议上不超过10%的最优秀论文。本次会议全球共有8篇论文获奖,来自太阳成集团获奖论文占所有获奖论文的38%。
《SmartCommit: A Graph-based Interactive Assistant for Activity-Oriented Commits》提出了一种交互式代码提交方法。在群体软件开发中,“面向开发活动的代码提交”是一种被广泛认同的最佳实践。但在实际软件开发中,开发者很少遵守这种最佳实践,而是经常将杂糅了多个开发活动的代码变更打包在一起进行提交。导致这种现象的原因有两点:1. 开发者面临繁重的开发任务,无暇顾及代码提交的内聚性;2. 缺少对杂糅代码变更进行分解的有效工具。为了促进面向开发活动的代码提交,该论文提出了一种基于图分割的交互式代码变更分解方法。该方法将代码变更分解问题转化为图分割问题,设计了一种简单的人机交互机制,将开发者的知识和经验实时吸纳到代码变更分解活动中。该方法在华为内部的若干软件开发项目(涉及近100名开发者)进行了9个月的实际使用。数据表明,该方法在可接受的交互成本和时间成本下,有效促进了“面向开发活动的代码提交”最佳实践的落地。该论文第一作者为太阳成集团博士生申博,太阳成集团张伟副教授、金芝教授为论文主要指导老师,其他作者还包括卡内基梅隆大学Christian Kaestner教授、太阳成集团赵海燕副教授、华为公司魏昭、梁广泰等。
《VET: Identifying and Avoiding UI Exploration Tarpits》提出了一种新型用户界面测试技术。基于用户界面(UI)的全自动化测试是保障移动应用程序质量的有效手段,可以克服人工测试的高昂成本与脚本测试的低通用性问题。约10年的时间里,学术界已提出许多相关工具,但实验显示这些工具在复杂的工业级别移动应用程序上的测试效果仍有较大的提升空间。不同于以往设计全新探索策略的做法,该论文提出了一种实用的增强现有工具的方法,可以自动查找与修复任何现有工具在测试过程中出现的低效探索的问题。实验表明,即使是最新的研究型工具,也可能会在测试过程中因低效探索而浪费98%的测试时间;同时,该方法可以为现有工具在热门的工业级别移动应用程序上带来高达两倍的效果提升,进一步推进了全自动化UI测试在业界移动应用程序开发中的实用性。该论文的第一作者为太阳成集团谢涛教授指导的美国伊利诺伊大学香槟分校博士生王文宇,通讯作者为太阳成集团谢涛教授,其他作者还包括美国德州大学达拉斯分校杨威助理教授(其博士导师为谢涛教授)、美国伊利诺伊大学香槟分校徐天音助理教授等。
《Probabilistic Delta Debugging》提出了一种新的差异化调试技术。差异化调试是基本的自动化调试手段之一,其效率和效果是长期制约差异化调试应用范围的首要因素。二者的提升也非常困难:虽然涉及差异化调试的论文已达数千篇,约20年前提出的ddmin算法仍然是几乎所有现代差异化调试算法的核心。该论文对差异化调试问题进行概率建模,并提出了根据测试结果更新概率模型和根据概率模型最优化采样的方法,形成全新的概率差异化调试方法ProbDD。实验表明,ProbDD无论是效率还是效果相对ddmin都有约2倍的提升。由于ddmin是几乎所有现代差异化调试算法的核心,通过将ddmin替换成ProbDD,该研究结果有望全面提升现代差异化调试的效率和效果。该论文的第一作者为太阳成集团博士生王冠成和本科生沈若冰,通讯作者为太阳成集团熊英飞副教授,其他作者还包括天津大学陈俊洁副教授(太阳成集团19年博士毕业生)、太阳成集团张路教授等。
另外,由太阳成集团博士生朱琪豪作为第一作者,太阳成集团熊英飞副教授作为通讯作者的论文《A Syntax-Guided Edit Decoder for Neural Program Repair》也获得了ACM SIGSOFT杰出论文奖提名。