软件维护规模和可维护性程度预测方法研究

来源 :杭州电子科技大学 | 被引量 : 0次 | 上传用户:kings0578
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件可维护性是指软件维护人员理解、改正、改动和改进软件的难易程度,是决定软件质量的关键属性。及时且准确地预测软件的可维护性对提高软件维护效率具有重要意义。然而,随着软件系统日益复杂,软件可维护性的预测也越来越困难。一方面,在软件维护规模的预测中,现有工作所使用度量套件对预测维护规模的有效性未得到统计学上的验证,且由于方法过于简单使得预测效果不够稳定。另一方面,在可维护性程度的预测中,大多数研究未考虑软件演化历史对软件可维护性程度的影响,且缺乏对可维护性程度的有效标注。本文针对以上问题展开研究,使用统计学方法对软件属性度量和软件维护规模之间的关系进行验证,在此基础上通过构建混合模型实现软件维护规模的预测。之后,根据融合软件维护规模和基于技术债务的可维护性等级获取可维护性程度,进一步研究了基于历史版本度量序列的软件可维护性程度预测方法。本文的主要工作包括如下两个方面:(1)为了预测软件维护规模,首先提取软件中每一个类的度量集合、两个版本之间的代码更改行数(即维护规模),然后使用趋势图、Pearson相关系数以及显著性水平分析软件度量和维护规模之间的相关性。在此基础上,提出了一种基于双层机器学习的预测方法,该方法使用Stacking集成技术,将Light GBM、XGBoost和GBDT模型进行融合,通过构建双层混合预测模型实现软件维护规模的预测。基于真实数据集的大量实验表明,相比于最佳对比方法,该模型在平均相对误差、均方根误差、平均绝对误差上的下降率分别为22.57%、6.25%、17.05%,且在Pred(30)和R~2上分别高出12.17%、2.71%。(2)为了预测软件可维护性程度,从历史版本度量序列出发,提出基于注意力机制和双向深度记忆网络的可维护性程度预测方法。该方法首先提取软件中每一个类的历史版本度量序列,然后计算获取相应版本的可维护性程度标签,最后使用融合卷积神经网络和门循环单元的模型学习软件版本演化过程中的度量变化规律,据此预测当前软件版本的可维护性程度。特别地,在训练模型过程中添加了注意力机制,并使用Focal Loss损失函数来解决样本分布不均衡的问题。基于真实数据集的大量实验表明,该方法在所有数据集上的平均精确率、平均召回率、平均F1值达到了86.19%、76.05%、79.84%,分别比对比方法中的最大值高出1.4%、2.23%、1.62%。
其他文献
<正>改革开放以后,随着经济的腾飞,临沂城市迅速崛起,成为我国北方发展最快的新兴城市,也成为了革命老区和欠发达地区崛起的代表,产生了临沂速度,形成了临沂模式。一、临沂的城市发展临沂是改革开放以来从小城镇发展起来的特大城市,是我国北方发展速度最快的城市。2014年城市人口达到200万,建成区达到210平方公里。30多年来,临沂城市人口增长近40倍,建成区面积增长40多倍。她是科学发展和跨越式发展的代
期刊
随着深度学习的研究与创新不断取得新突破,神经网络结构和数据集规模均呈现指数级增长,单设备的计算和存储资源有限,已不能满足现实任务需求。因此,跨设备实现深度学习模型分布式并行训练成为必然趋势,分布式并行策略的自动搜索和调优也成为近年来的研究热点。现有深度学习分布式并行训练主要基于专家经验设计,缺少对并行空间的探索求解过程,导致并行策略的最优性无法保证。因此有学者提出深度学习分布式并行策略自动搜索和调
学位
为满足我国各类舰船深远海航行的需求,助力智能船舶航线规划的实施,面对广阔海域缺乏长期海浪统计信息的现状,集成涵盖40°E~100°W、0°~60°N区域的广阔海域的长期统计数据,并基于该实海域风浪数据库,采用Python开源语言开发一套以船舶在波浪中的运动响应幅频特性(RAO)为系统输入的长期耐波性预报系统软件。采用挪威船级社开发的WASIM势流求解器,以S175标准集装箱船为算例,求解其RAO,
期刊
图像信息隐藏技术将大量秘密数据嵌入到载体图像中,其最基本特点就是人们对此无法感知,可以在不受第三方怀疑的状况下实现隐蔽通信。近年来,深度学习方法已应用于图像信息隐藏领域,并取得了一些研究成果。但仍然存在未充分利用图像频域信息的问题,因而导致高视觉质量难以满足和信息隐藏容量低。针对上述问题,本文基于拥有高容量特性的信息隐藏网络模型Stegano GAN,并结合深度学习中的注意力机制以及传统信息隐藏方
学位
随着计算机技术的快速发展,各种移动终端设备(如智能手机、平板电脑等)已经广泛普及,在线视频成为一种流行的传播媒介。在终端设备发展的过程中,它的软硬件性能不断提高,给用户带来了更好的使用体验,但同时也加剧了它的能耗问题。一方面,由于终端设备屏幕的增大以及视频应用使用比例的增加,屏幕的能耗不断增大。另一方面,观看在线视频时由于传输大量的网络数据也会造成终端较大的网络能耗。研究发现,屏幕和网络能耗已经成
学位
随着软件即服务的云计算概念迅速升温,面向服务的系统平台得到广泛应用,系统规模和复杂性也随之急剧增加,为系统监控设计带来更高的挑战。同时,在国家海洋信息化的大力推进下,舟山市渔业局为实现对渔业安全的精细化管理,建立了舟山市智慧海渔平台,以便实时掌握渔业生产动态、保障海上作业安全以及规范渔业生产秩序。其系统复杂性及数据时效性要求高的特点对海渔平台监控设计提出更高的要求。传统监控系统在告警通知上存在告警
学位
数字光场(Light Field)作为下一代虚拟现实的核心技术,受到了越来越广泛的关注。然而,受到硬件技术的限制,当前的光场成像设备在时间(帧率)、空间(子光圈图像分辨率)、角度(子光圈阵列)维度上的成像分辨率仍然较低。因此,高分辨率的光场绘制一直是计算成像领域中的一个热点。本文结合深度学习中的最新进展,围绕光场图像在时-空-角维度的超分辨率重建方法开展研究。虽然目前已提出了许多基于深度学习的光场
学位
城市路网交通数据的分析与预测与人们的日常出行息息相关,在智慧城市的建设与发展过程中,路网交通的智能化进程也扮演着极其重要的作用。通过对交通数据的分析与预测,可以及时掌握路网中的即时交通状况,极大提升交通调度及处理突发事件的能力。随着城市化进程的大大加快,传统的数据分析和预测方法已经不能满足庞大交通数据的处理需求,目前越来越多的研究工作趋向于基于深度学习进行建模交通数据进行分析与预测,因此深度学习算
学位
随着我国信息产业的不断发展,信息产业与传统产业的融合不断深入。如何利用信息化来促进传统物流产业的转型升级,是临沂市实现高质量发展的关键。本文基于产业融合的视角,以临沂市为例,探索适合临沂市的信息化与物流产业深度融合的发展途径。通过实地走访临沂市物流产业园区,分析临沂市物流业发展现状,找出存在的问题;并通过实证研究,证明信息化对临沂市物流产业的发展存在正向的促进作用;通过鱼骨图分析法对制约临沂市信息
期刊
代码异味是指源代码的次优设计或实现。迫于时间压力或其他因素,代码异味经常不可避免地被引入到软件项目中,给软件维护带来了隐患。采用人工的方式检测软件中的代码异味并提供移除建议是一项十分耗时且困难的工作。相反,自动识别代码异味并根据其表现特征进行移除推荐不仅可以提高维护工作的效率,并且可以减少开发人员的负担。基于以上背景,本文分别提出了一种基于图神经网络的代码异味检测方法,以及一种基于机器学习的异味移
学位