开源软件生态系统中自承认代码重构的研究与应用

来源 :武汉大学 | 被引量 : 1次 | 上传用户:YOYO654321
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
时至今日,开源软件早已经成为软件领域不可或缺的重要组成部分。在当今大数据的时代背景下,软件代码的规模也越来越庞大,这使得代码质量(可维护性、可阅读性等)的维护越来越困难。在以Github为代表的开源软件开发系统中,开发者常常在提交代码时附加与修改相关的信息。其中,开发者明确地声明代码的修改为重构(Refactoring)的现象较为普遍,本文把此类代码修改称为开发者自我承认的代码重构,即自承认重构(Self-admitted refactoring,简称 SAR)。虽然自承认重构在代码提交信息中较为寻常,然而少有相关的研究,一方面修改信息没有得到充分利用,另一方面,SAR中的的关系、SAR中代码异味的严重级别、SAR开发者数量、SAR中是否有重构发生等等。本文将基于3个大型开源的项目,使用PMD作为代码异味检测工具,并结合实验流程编写了开源软件PMDlet,它可以用来收集PMD代码异味检测报告中的代码异味、作者等信息,并且可以用来对比两个PMD检测报告间的差异。本文的案例研究得出了如下结论:(1)总体上SAR的版本中具有提高代码质量的倾向,SAR是代码质量提高的标志。(2)Dataflow Anomaly Analysis是SAR中最常发生和减少的代码异味类型,且每个项目中被影响的代码异味类型也不尽相同。(3)在SAR版本中,大多数代码异味的严重级别为“Warning High”。(4)在SAR中,被修改的源文件数量与新引入的代码异味数量无明显关联关系。(5)SAR不是常见行为,SAR的开发者占所有开发者的比例较小。(6)在本文的项目中,开发生命周期的初期和中期,SAR的发生频率较高。(7)SAR中不一定存在重构。本文对SAR现象的研究,将有助于开发者熟悉代码状况,增强开源软件的开发工作,也极大地加深了人们对自承认现象的理解。
其他文献
目的:运用三维有限元分析(D-FEA)全脊柱内镜下行不同范围及部位椎间孔成形对腰椎生物力学的影响。方法:2018年10月-12月选取健康成年人10名,男性6例,女性4例,年龄24-36岁,平
互联网技术的发展让人们的社会生活形态发生了很大变化。在这样的背景下,众包平台作为“互联网+”时期创新发展的重要源动力,以方便用户低成本广泛参与的特性,为企业与社会创新能力的提升做出了重大贡献。同时,众包平台的发展也逐渐显现出一些问题,信任问题就是其中之一。目前新型众包平台的信用监管和保障体系存在缺陷,对众包平台的发展造成了障碍。鉴于此,本文以猪八戒网用户为研究对象,对众包平台上用户信任的影响因素进
学位
在我国,研究“人才使用效率”的不是很多,用定量方法研究相对就更少一些,《基于复合DEA的人才使用效率评价模型》给出了一个用数据包络分析的定量方法研究人才使用效率,是一种
属性约简在粗糙集理论的发展进程中扮演着重要角色。属性约简就是根据不同的实际需求,按照一定规则,从数据中剔除冗余信息。然而,如今的数据往往具有多粒度、多层次特性,面对
现行远程视频取证在法律规定、核对方式、取证地点等方面存在众多困惑,间接制约了远程视频取证的拓展。在现有科技水平已能有效支持远程视频取证的情况下,通过构建专门的取证
2015年以来,随着人口、出口等红利的消失,我国经济增长开始疲软,政府出于“保增长”的需求,想要继续进行大规模的政府投资。但由于财政赤字是有限度的,政府投资不可能有一直
随着科技的迅速发展,新媒体时代的到来,各新媒体的出现和普及应用不但影响人们的生活,还改变着人们获取信息的渠道,思想及阅读习惯。新媒体环境下利用传统方式服务读者的图书
小栗子银多金属矿大地构造位置位于华北地台(Ⅰ级)北缘东段、辽东台隆(Ⅱ级)、太子河~浑江陷褶断束(Ⅲ级)、老岭断块(Ⅳ级)中段之南东翼多金属矿集区,成矿条件优越。研究区出
现代教学理论认为,教学过程是一个以心理活动为基础的情感过程和认知过程的统一。教学中,师生情感的参与有利于学生非智力因素的丌发,并直接影响着课堂效率。所谓情感教学,从
会议
矮牵牛(Petunia ×hybrida)为茄科碧冬茄属观赏植物,同时也是重要的模式植物。近年来研究发现蓝光受体隐花色素(Cryptochrome,CRY)在植物的分枝发育具有重要作用。为研究PhCRY1、PhCRY2的功能,我们从Petunia × hybrida cv Mitchell Diploid中克隆了矮牵牛PhCRY1,PhCRY2的全长序列和PhCRY1启动子序列,并对PhCRY1和