[发明专利]一种无监督的软件复杂度评估方法有效
| 申请号: | 201910846500.X | 申请日: | 2019-09-09 |
| 公开(公告)号: | CN110647353B | 公开(公告)日: | 2023-04-28 |
| 发明(设计)人: | 柯文俊;王坤龙;杨雨婷;陈旭;陈静 | 申请(专利权)人: | 北京计算机技术及应用研究所 |
| 主分类号: | G06F8/77 | 分类号: | G06F8/77;G06F17/18 |
| 代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 张然 |
| 地址: | 100854*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 监督 软件 复杂度 评估 方法 | ||
本发明涉及一种本发明一种无监督的软件复杂度评估方法,其中,包括:步骤一、针对软件程序复杂度的度量,总结提炼常用的程序复杂度度量元;步骤二、基于高斯混合模型的度量元概率归一化,包括:首先,针对数据中的各个度量元的频率分布,使用无监督的最大期望算法进行高斯混合建模,拟合该度量元的概率密度函数,基于该度量元的概率密度函数计算其累积分布函数,使用累积分布函数的值作为该度量元的归一化处理后的数值;步骤三、评估基于AOV网络的软件复杂度。
技术领域
本发明涉及软件复杂度评估技术,特别涉及无监督的软件复杂度评估方法。
背景技术
软件复杂度度量作为软件工程的重要组成部分,可为软件的控制和降解、软件测试的资源分配和高质量软件的研制提供支撑。软件复杂性度量作为软件度量的重要分支,可以有效评估软件产品的复杂性。通过复杂性度量对软件复杂性进行预警,可以帮助人们客观地分析和评估软件生命周期不同阶段的复杂度情况,并采取一定的复杂度控制和降解措施,来降低软件缺陷率,提高软件质量。软件复杂度度量元数据是一种客观存在的集合,如何针对客观数据,制定无监督的综合评估模型,成为现阶段软件工程领域的难题。
当前软件复杂度相关研究多集中在软件复杂度度量体系,对于软件复杂度的评估研究还比较少,且已有的关于软件复杂度评估大多依赖少量度量元或者人工设置各度量元的超参数权重,工作量大且准确度难以保证。
发明内容
本发明的目的在于提供一种无监督的软件复杂度评估方法,用于解决上述现有技术的问题。
本发明一种无监督的软件复杂度评估方法,其中,包括:步骤一、针对软件程序复杂度的度量,总结提炼常用的程序复杂度度量元;步骤二、基于高斯混合模型的度量元概率归一化,包括:首先,针对数据中的各个度量元的频率分布,使用无监督的最大期望算法进行高斯混合建模,拟合该度量元的概率密度函数,基于该度量元的概率密度函数计算其累积分布函数,使用累积分布函数的值作为该度量元的归一化处理后的数值;步骤三、评估基于AOV网络的软件复杂度,包括:在基于高斯混合模型对度量元数据进行概率归一化的基础上,借助AOV网络,基于度量元在软件复杂度评估中的重要程度来赋予不同的权重,通过线性组合来计算软件的整体复杂度,对软件复杂度进行评估。
根据本发明的无监督的软件复杂度评估方法的一实施例,其中,基于度量元在软件复杂度评估中的重要程度来赋予不同的权重,包括:通过皮尔逊相关系数度量两个变量间的线性相关性,其值在-1与1之间,首先,计算不同度量元间的皮尔逊相关系数,评估其相关关系的大小,得到度量元的皮尔逊相关系数矩阵P;然后,基于线性拟合方法得到不同度量元间线性相关关系的斜率大小,得到度量元的斜率矩阵K;继而,基于皮尔逊相关系数的大小与斜率的大小对斜率进行过滤处理,剔除不相关或者斜率值小于阈值的斜率,得到斜率矩阵T;进而,将斜率矩阵转化为一个有向有环图,度量元作为图中的节点,斜率矩阵中度量元间的斜率作为图中对应边的权重;接下来,通过最大生成树算法将有向有环图转换为AOV网;最后,基于AOV的权重计算每个度量元的影响域,根据度量元影响域的大小分配每个度量元的权重。
根据本发明的无监督的软件复杂度评估方法的一实施例,其中,基于AOV网络对软件复杂度进行评估包括:输入:归一化后的软件度量样本集为R={R1,R2,...,Rn},其中第i个软件度量样本是共m个度量元,是第i个样本的第j个度量元的归一化度量值,第i个度量元的数据集是j∈[1,m]且j∈N+,N+为正整数;用户设定的域值β和γ;输出:样本各度量元权重集合W={W1,W2,...,Wp};计算不同度量元间的皮尔逊相关系数矩阵P=Pm*m,pab为样本集R中第a个和第b个度量元的数据集Sa、Sb间的皮尔逊相关系数,计算方式见公式(5)所不:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京计算机技术及应用研究所,未经北京计算机技术及应用研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910846500.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据移植的方法、终端及存储介质
- 下一篇:设备运行控制方法、装置及设备





