跳到主要导航 跳到搜索 跳到主要内容

Precfix: Large-scale patch recommendation by mining defect-patch pairs

  • Xindong Zhang
  • , Chenguang Zhu
  • , Yi Li
  • , Jianmei Guo
  • , Lihua Liu
  • , Haobo Gu
  • Alibaba Group Holding Ltd.
  • University of Texas at Austin
  • Nanyang Technological University

科研成果: 书/报告/会议事项章节会议稿件同行评审

摘要

Patch recommendation is the process of identifying errors in software systems and suggesting suitable fixes for them. Patch recommendation can significantly improve developer productivity by reducing both the debugging and repairing time. Existing techniques usually rely on complete test suites and detailed debugging reports, which are often absent in practical industrial settings. In this paper, we propose Precfix, a pragmatic approach targeting large-scale industrial codebase and making recommendations based on previously observed debugging activities. Precfix collects defect-patch pairs from development histories, performs clustering, and extracts generic reusable patching patterns as recommendations. We conducted experimental study on an industrial codebase with 10K projects involving diverse defect patterns. We managed to extract 3K templates of defect-patch pairs, which have been successfully applied to the entire codebase. Our approach is able to make recommendations within milliseconds and achieves a false positive rate of 22% confirmed by manual review. The majority (10/12) of the interviewed developers appreciated Precfix, which has been rolled out to Alibaba to support various critical businesses.

源语言英语
主期刊名Proceedings - 2020 ACM/IEEE 42nd International Conference on Software Engineering
主期刊副标题Software Engineering in Practice, ICSE-SEIP 2020
出版商IEEE Computer Society
41-50
页数10
ISBN(电子版)9781450371230
DOI
出版状态已出版 - 27 6月 2020
已对外发布
活动42nd ACM/IEEE International Conference on Software Engineering: Software Engineering in Practice, ICSE-SEIP 2020 - Virtual, Online, 韩国
期限: 27 6月 202019 7月 2020

出版系列

姓名Proceedings - International Conference on Software Engineering
ISSN(印刷版)0270-5257

会议

会议42nd ACM/IEEE International Conference on Software Engineering: Software Engineering in Practice, ICSE-SEIP 2020
国家/地区韩国
Virtual, Online
时期27/06/2019/07/20

指纹

探究 'Precfix: Large-scale patch recommendation by mining defect-patch pairs' 的科研主题。它们共同构成独一无二的指纹。

引用此