2016年6月27日到7月1日,由中国科大计算机学院承办的龙星计划“软件可靠性与调试”研究生暑期课程在我校成功举办。来自中国科大、北京大学、清华大学、国防科大、华中科大、西安交大、北京交通大学、中科院软件所、华东师大、东南大学、合肥工大、哈尔滨工程大学、电子工程学院、安徽大学等150多名学员参加了课程学习,主讲教师是美国芝加哥大学计算机科学系卢山副教授。
“龙星计划”是由中国科学院和国家自然科学基金委员会资助,面向全国高校和科研院所的教师和研究生的高水平学术培训活动。“龙星计划”每年组织一批在国际学术界著名的海外学者不定期回国就某一领域在中国各地大学系统地讲授一门国外研究生课程(每门课程15-30课时),对提高我国科研水平和培养优秀人才起到了重要作用。本次课程同时也作为中国科大“程序设计语言和系统前沿”本科生夏季课程,供校内本科生和研究生选修。
计算机学院作为此次“龙星计划”课程的承办方,将课程主题选取为“软件可靠性与调试”。现代社会日益依赖于用各种各样的软件来处理大量数据的各种计算设备,而软件缺陷(即bugs)对系统的可靠性和效率提出了前所未有的挑战。最近的研究表明,软件缺陷每年会导致大约3000亿美元的经济损失。软件可靠性已成为关乎国家安全和民生的非常重要的研究领域。本次课程邀请到美国芝加哥大学计算机科学系卢山副教授作为授课专家,课程内容围绕软件可靠性问题展开,重点介绍对多线程和分布式系统中与时序有关的缺陷(如并发)、导致低效计算和耗能的性能缺陷等的识别、分析和处理。
卢山老师2003年本科毕业于欧亿6蓝狮在线,是郭沫若奖学金的获得者;2008年博士毕业于伊利诺大学香槟分校,2009年到2014年任威斯康星大学麦迪逊分校助理教授,2014年起任芝加哥大学副教授。她长期研究软件系统的稳定性,致力于自动检测程序错误、自动分析程序问题以及自动修复程序的研究。卢山老师现任ACM-SIGOPS副主席,曾任USENIX 2015年会主席,并曾获得2014年度北美斯隆研究奖、2013年度伊利诺大学计算机系杰出青年校友奖、2010年度美国自然科学基金青年科学家奖。
作为本次课程主题的国际知名专家,卢山老师在为期5天的课程中结合自己10余年来的研究工作经历,从收集、分析和理解开源代码库中与bugs有关的日志和补丁包出发,分析总结各种故障模式(bug patterns)及其特征;然后介绍解决这些bugs的软件可靠性技术,包括自动的bugs检测、故障预防、故障恢复、故障诊断和bug修复技术等。卢山老师对这些问题和技术深入浅出地讲解,让学员们对这个领域有了整体的了解。整个课程贯穿了卢山老师对她在研究工作中如何发现问题、产生ideas、选择有价值的研究点、研究方法、分析评估取得的结果等的经验介绍。详细的讲解使得学员们对如何做科研、如何发现有价值的研究点等有了极大的启发和收获。
课堂之外,卢山老师还在百忙之中抽出时间与学员们做交流。6月27日下午,卢山老师与来自各地的师生们进行了近2小时的深入交流。学员们分享了各自所做的研究,卢山老师则依据自己广博的知识和深厚的积累,给学员们提出她自己的看法。大家一起交流研究的方向与方法,进行热烈的讨论,碰撞出智慧的火花。
7月1日中午,龙星计划课程在学员们热烈的掌声中落下帷幕,取得圆满成功。在课程快结束的时候,卢老师应邀分享了自己的学习科研经历与体会。卢山老师谈到,她本人善于考试但不擅长编程,在研究初期也曾经历论文被多次拒稿的打击。面对挫折,她更多的是深入思考工作的不足之处和改进办法,不断总结经验教训。由于勤于思考、刻苦钻研,善于从现实世界的实际问题中选择研究问题,主动与众多学术界和工业界人士交流和合作,不断开拓新的研究思路,近年来她在ASPLAS、SOSP、OSDI、PLDI或FSE等计算机系统、程序设计语言、软件工程等领域的顶级国际学术会议上连续发表大量高水平研究成果。
本次龙星计划课程受到了学员们的普遍好评。在收集到的课程问卷调查表中,学员们对课程讲授和组织的评价普遍为“特优”或“优”。有学员写道:“对相关领域知识有了进一步了解,对并行软件调试有了更深的认识。同时借助此平台,也与同行进行了一定交流,收获颇多”、“鉴于龙星课程的背景,希望未来课程能够多讲授科学前沿知识。一方面可以提高听课学生的兴趣,另一方面也可以吸引同行加入,提高龙星的知名度。在过去五年里,我参加过多次龙星课程,本次课程已非常成功,感谢课程组织者”。我校一位2013级本科生学员写道:“学习了编译原理、多线程鲁棒性和人工、自动调试的知识,从较为通俗的角度讲解计算机相关的知识,收获颇丰”、“邀请到颇具实力的教授来授课,有全国各地的学生一起上课,开阔了视野、增长了见识”。
附:
中国科大研究生网络课堂,《龙星课程-软件可靠性与调试》视频链接: