积极推进校企深度合作,软件研发效能(DevOps+)实验室在推进产学研融合过程中取得阶段性成果

发布日期:2020-09-01 浏览次数:


       习近平总书记2014年在南京考察期间曾强调,"要深入推进科技和经济紧密结合,推动产学研深度融合,实现科技同产业无缝对接"。经过近年来的持续探索,我院软件研发效能实验室以软件行业发展趋势为导向,在南京大学的学科培养机制的保障下,凭借强大的科研实力,构筑了产学研一体的从基础能力到软件工程再到赋能领域的科研框架。今年,软件研发效能实验室继续加强与华为、中兴等高科技领军企业的深度合作,在探索产学研合作模式的过程中取得了一系列阶段性成果。


       从企业软件开发过程中的痛点出发,提出新的软件工程方法,并在企业中验证方法的有效性,这是产学研合作实现强强联合、协同攻关的主要方式。很多企业在DevOps转型后,功能开发和交付的速度大大加快,但是由于大多数DevOps实践重点是功能(代码)开发,相应支持文档的开发往往有所滞后,这导致了产品功能与相应支持文档交付节奏的不匹配,从而阻碍了快速向客户交付价值以荣国平副研究员为第一作者,邵栋副教授为通讯作者,联合中兴通讯的研究者发表在国际软件工程大会(ICSE2019)以及Software: Practice and Experience国际期刊上的论文[1, 2]提出了一种用于自动化的文档持续构建的方法DevDocOps(交付方式如图1所示),由DevOps项目中的各种角色在开发过程中同时创建支持文档的关键元素,通过事先定义好的模板,实现文档的持续构建,提高了文档的交付速度。DevDocOps在中兴通讯中得到了广泛的应用,版本和文档发布之间的延迟时间平均从1个月减少到不到2天,来自15条主要产品线中的5000多名开发者从中受益。


图 1 DevDocOps交付版本的方式


       以学术的视角观察企业中的新工程实践,系统性分析其优势与不足,进而提出改进,为企业提供优化实践的理论依据并在此过程中提炼普适化的软件工程方法,这是软件研发效能实验室对于产学研融合的另一探索方向。为了减少项目管理的开销、提高软件开发团队的效率,华为的几大研究所内部形成并制度化了一种小型化团队实践——微战队。以张贺教授和学术型研究生黄璜为首的团队结合了档案分析,访谈和调查等研究方法(如图2所示),实证研究了微战队在华为内部实践的特征和影响,识别了4项关键过程和3点主要问题,讨论了微战队在华为软件开发活动中的持续改进的方向,并针对是否需要在实践中使用小型团队,形成了公司-部门-技术三级维度的考虑项。这项研究已被欧洲软件工程大会/软件工程基础国际会议(ECSE/FSE 2020)录用[3]。


图 2 微战队合作研究的方法与过程


       除了以上两项校企深度合作研究的典型范例,软件研发效能实验室还与多家国内一流的互联网企业以双向或多向联合的方式对DevOps课程设计、软件过程的仿真与改进、微服务架构的设计与改进等方面进行了多角度多维度的合作研究,研究成果不仅得到了学术界的高水平认可,还产生了广泛的工业界影响。



[1] Guoping Rong, Zefeng Jin, He Zhang, and Dong Shao, "DevDocOps: Towards Automated Documentation for DevOps", in Proceedings of 41st International Conference on Software Engineering (ICSE’19), Montreal, Canada: IEEE, 2019, pp.243-252.

[2] Guoping Rong, Zefeng Jin, He Zhang, Youwen Zhang, Wenhua Ye and Dong Shao*, "DevDocOps: Enabling continuous documentation in alignment with DevOps", Software: Practice and Experience, 50(3):210-226, 2020. (doi:10.1002/spe.2770)

[3] He Zhang, Huang Huang, Dong Shao and Xin Huang, "Fireteam: A small-team development practice in industry", in Proceedings of 28th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE’20), Sacramento, CA, USA: ACM, 2020. (to appear)