时间记录了梦想的足迹,探索镌刻了奋斗的峥嵘。在逐梦的道路上,无论是急风骤雨,还是孤夜寂寥,科研人总是披荆斩棘,埋首前行。在软件工程国际顶级会议ASE 2021中斩获最有影响力论文奖的谢涛,对此深有感触。
有人说,选择了,就是一辈子。所以,谢涛前沿的研究想法和独立的思考模式都围绕着软件工程徐徐展开。他相信,唯有厚积薄发,才能找到“真相”。
为了开拓软件工程科研探索的思路,谢涛选择走出舒适区,去美国学习深造。“埋首探索,是科研的日常,无论走到哪里,这一点都不会改变。”寻找课题,反复实验,获取反馈,主动调整,在这样的厚积薄发中,谢涛找到了科研探索的正确路径,同时,也积累了丰富的探索经验,“在未知中前行,需要可以依靠的工具,而知识和经验,就是这样的工具。”
2005年,谢涛提出用机器学习提高软件质量的方法和工具,并成为最早开展智能化软件工程研究的学者之一,十余年匆匆而过,谢涛也已经在软件自动化领域取得了不斐的成绩。
峥嵘时刻——学术与产业的探索
作为科研人,谢涛是谦虚且低调的。自认为天赋并非出类拔萃的他,把勤奋,动脑,上进心视为不停进步的主要因素。通过不停的知识积累,不停的科研探索,不停的主动思考,再加之不断地追求卓越,各种因素的集合,成就了今天的谢涛。而其影响力主要体现在对学术和产业两个方面。
一篇论文,能够广泛影响、启发到学界业界同行的研究想法,那么,这篇论文就是一篇极具有学术影响力的论文。而谢涛第一时间想到的就是他在ASE 2007国际软件工程顶会上发表的一篇论文《PARSEWeb: A Programmer Assistant for Reusing Open Source Code on the Web》,即,前面提到的获得了ASE 2021 最有影响力论文奖的论文。
提起这篇论文,谢涛的眼中是满满的骄傲与自豪。他清楚的记得,论文的工作起源于2006年初。那时的他,开始意识到把互联网上的大规模开源代码充分利用起来,能够更好的完成工作。当时“大数据”、“大代码”等词汇还没有受到大众的关注,人工智能、机器学习在软件工程领域的应用也很少,但作为软件工程领域的前沿探索者,谢涛有着极为超前的敏感度。那篇论文就是一次很早期的引领性探索,创新总是格外备受关注,谢涛也因这篇论文及其后续工作,受到了学界的高度认可。
众所周知,科研是在探索中前行的,谢涛对软件工程的研究也是连续性的。谢涛更早一点的相关成果是在MSR 2006 论文《MAPO: Mining API Usages from Open Source Repositories》中提出的MAPO工具,并且后续与北大团队合作将它完善并发表在ECOOP 2009国际会议上,其主要内容是怎么用数据挖掘的方式来挖掘海量的开源代码,这两篇MAPO论文的引用率也较高。
与学术相比,产业影响,更令谢涛关注。“实战,通常才是软件工程科研工作中最终的检验方式。”谢涛在产业影响上,主要有两个代表性科研成果。
2007年起,谢涛和微软雷德蒙德研究院(位于西雅图)的两位工程师合作研发的自动化测试工具Pex,经过深度研究和完善,2015年,Pex工具被微软命名为IntelliTest(意指智能化测试)来进行商用发布,成为微软Visual Studio企业版的主要卖点之一。
成绩属于过去,探索才是未来。因此,谢涛的探索从未停歇。2011年,他与张冬梅博士(现微软亚洲研究院常务副院长)领导的研究组合作开展的软件解析学(Software Analytics)研究,合作产出了一系列有高产业影响力的软件解析学成果,并应用到微软内部以及广大软件产业的实践。值得关注的是,在2011年他们合作发表的《Software Analytics as a Learning Case in Practice: Approaches and Experiences》论文中,首次阐述了软件解析学的定义,并用具体成果系统来示例如何开展高影响力的软件解析学研究。在国际上,他们的成果引起了极大的反响,目前,许多科研工作者都在该领域进行探索。谢涛和张冬梅也因此获得了2022年度软件仓库挖掘奠基性贡献奖。
展望未来——智能化软件工程的研发
在延续的基础上,创新。这就是现代科研的探索之路。在美国成绩斐然的谢涛,一直关注着中国计算机的发展,“我要参与到祖国计算机的发展大潮中。”于是,在2019年,谢涛载誉归国。
回国后的他,还是延续之前的两大方向,即软件测试与软件解析学。但他深知,科研要与社会发展相结合,与时代需求相结合。智能化软件工程的研究,应运而生。
在探索过程中,谢涛十分注重推动一些长远、有较大挑战的问题,比如软件自动化,即自动生成满足给定软件需求的代码。而“面向智构件的软件开发”就是他在朝着最终软件自动化目标行进途中推动的创新研发方向。谢涛称这个开发过程为“搭积木”,即,用复用、组装、集成“积木”(即软件构件)来进一步提高软件开发效率。只是,很大一部分“积木”是由软件自动化去创建,不需要投入人力。但如何人机协作去做好“搭积木”,则需要谢涛团队进一步深耕探索。
与此同时,可信软件工程是谢涛团队的另一个研究课题。比如,基础软件包括操作系统、编译器、数据库等在软件系统里是极其关键的,如何保障它们的可信度?当人机物融合的新型计算环境和应用场景中包含有AI赋能系统,如自动驾驶、无人机等,怎么去保障系统整体的可信性?要解决这些问题,不仅需要软件测试,还需要形式化验证等技术,而这些在大规模软件上还未被突破的技术,都需要谢涛团队深入研究后给出答案。
这就是谢涛,一位高瞻远瞩的科研人。未来的他,将继续埋首计算机领域,开拓前行;将用更多的科研成果,为计算机科学的发展,添砖加瓦,贡献力量。
专家简介:
谢涛,北京大学讲席教授,高可信软件技术教育部重点实验室(北京大学)副主任,北京大学新工科建设委员会副秘书长。欧洲科学院外籍院士、国际计算机学会(ACM)会士、 电气电子工程师学会(IEEE)会士、美国科学促进会(AAAS)会士、中国计算机学会(CCF)会士。长期从事软件工程的研究,在软件测试、 软件解析学、软件安全、软件自动化、智能化软件工程、可信人工智能等方面取得突出研究成果。
对软件工程界做出杰出贡献和服务,获 2021 年度 ACM 软件工程领域(SIGSOFT)杰 出服务奖(为 SIGSOFT 年度三大奖项之一)和 2020 年度 IEEE 软件工程领域(TCSE)杰出服 务奖(为 TCSE 年度四大奖项之一),是唯一 同时获得这两个奖项的学者。
发表评论