TensorFlow开源软件社区中贡献修订的实证研究
作者:
作者单位:

作者简介:

通讯作者:

中图分类号:

基金项目:

科技创新2030-“新一代人工智能”重大项目(2021ZD0112900);国家自然科学基金(62141209).


An Empirical Study on Pull-requests Revisions in Open Source Artificial Intelligence Projects
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    人工智能(Artificial Intelligence,AI)的飞速发展得益于开源社区的开放协同,大量的开发者通过提交PR (Pull-request,PR)为AI开源软件做贡献.然而,外部贡献者所提交的PR质量参差不齐,开源项目管理团队需要对PR进行代码审查,并要求贡献者根据审查意见对PR进行修订.PR的修订过程对AI开源软件的质量有着重要的影响,因此对该过程进行更加全面、深入的实证研究很有必要.首先,从TensorFlow开源软件社区中收集了一组PR的修订历史,通过对PR的代码提交信息以及审查评论进行定性分析,归纳总结了PR修订类型的分类体系.其次,根据此分类体系人工标注了一组修订数据集,并基于此数据集定量分析了不同修订类型的频率分布、次序分布以及关联关系.研究结果表明:TensorFlow开源社区中的PR存在3大类共11种不同类型的修订,其中完善类修订出现的频率最高;此外,相比于其它类修订和完善类修订,修正类修订更常发生在PR的早期更新中;与结构相关的修订更有可能与其它类型的修订同现或邻现,配置修订以及变基修订有较大概率会接连出现.实证研究结果可帮助AI开源实践者和研究者更好地理解PR的修订过程,特别是有助于引导PR的审查和修订行为、提高开源群体协同效率.

    Abstract:

    The recent boom in artificial intelligence (AI) benefits from the open source software (OSS) community. An increasing number of OSS developers are contributing to AI projects by submitting Pull-requests. However, the quality of pull-requests submitted by external contributors varies and the AI project management team has to review the pull-requests and ask contributors to revise them, if necessary. Since the process of revisions has a direct impact on the review efficiency and acceptance of pull-requests, it is important to achieve a better undersanding of pull request revisions. In this paper, we conducted an empirical study based on a set of pull-requests as well as their revision histories collected from the TensorFlow project.We first manually analyzed a sample of commit messages and review comments of pull-request and constructed a taxonomy of revision types.Then, according to the defined taxonomy, we manually labeled a large set of pull-request revisions.Based on the dataset, we explored the frequency and order of each type of revisions.We also investigated the co-occurrence and ajd-occurrenceprobability between different types of revisions.The emprirical findings show that: There are 11 different types of revisions which can be classified into three categories. Evolvability revisions occur more frequently than revisions of other types, and functional revisions are more likely to occur in the early updates of pull requests than evolvability revisions and other revisions. Structure-related revisions have a high chance to co-occur or ajd-occur with other revisions. Configuration-related revisions or rebasing revisions are more likely to appear in succession.

    参考文献
    相似文献
    引证文献
引用本文

李志星,余跃,王涛,蔡孟栾,王怀民. TensorFlow开源软件社区中贡献修订的实证研究.软件学报,2023,34(9):0

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2022-09-04
  • 最后修改日期:2022-12-14
  • 录用日期:
  • 在线发布日期: 2023-01-13
  • 出版日期:
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号