代码审查自动化研究综述  

Survey on Code Review Automation Research

在线阅读下载全文

作  者:花子涵 杨立[1] 陆俊逸 左春 HUA Zi-Han;YANG Li;LU Jun-Yi;ZUO Chun(Integrated Innovation Center,Institute of Software,Chinese Academy of Sciences,Beijing 100190,China;School of Computer Science and Technology,University of Chinese Academy of Sciences,Beijing 100049,China;Sinosoft Co.Ltd.,Beijing 100190,China)

机构地区:[1]中国科学院软件研究所集成创新中心,北京100190 [2]中国科学院大学计算机科学与技术学院,北京100049 [3]中科软科技股份有限公司,北京100190

出  处:《软件学报》2024年第7期3265-3290,共26页Journal of Software

基  金:中国科学院-东莞科技服务网络计划(202016002000032);国家重点研发计划(2021YFC3340204);“一带一路”国际科学组织联盟联合研究合作专项计划(ANSO-CR-KP-2022-03)。

摘  要:随着现代软件规模的不断扩大,协作开发成为软件开发的主流趋势,代码审查成为现代化软件开发的重要工作流程.但由于人工代码评审往往耗费审查者较大精力,且存在审查者不匹配或审查者水平有限等问题,人工代码评审的质量和效率难以保证,且审查后的代码修复也十分费时费力.因此,亟需研究人员为代码审查流程进行改进,提供自动化思路.对代码审查自动化相关研究进行系统梳理和总结,并重点介绍4种主要方向:审查者推荐、代码变更质量评估、审查意见生成和代码自动修复.整理了相关方向的148篇研究,对每个方向的研究进行技术分类与分析.随后,整理了各方向研究任务的评估方法,并整理出常用的数据集与开源工具.最后,对代码审查自动化领域面临的问题进行梳理,并对未来研究进行展望.During software development,collaborative development has become the mainstream trend for large-scale software development,and code review has become an important workflow of it.However,there are some problems in manual code review such as mismatch and knowledge limitations of reviewers,then the quality and efficiency of code review may be poor,and the code repair after review also takes time and effort for developers.It is urgently needed for researchers to improve the code review process and make it automated.This study provides a systematic survey of research related to code review automation,and focuses on 4 main directions:Reviewer recommendation,automated code quality estimation,review comment generation,and automated code refinement.The 148 high-quality publications related to this topic have been collected,and a technical classification and analysis have been carried out in this research field.Then,the evaluation methods of each task in directions are briefly summarized,and some benchmarks and open-source tools are listed.Finally,the key challenges and insights are proposed for future research.

关 键 词:代码审查自动化 审查者推荐 代码变更质量评估 审查意见生成 代码自动修复 

分 类 号:TP311[自动化与计算机技术—计算机软件与理论]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象