[发明专利]基于K-Truss的复杂软件关键模块识别方法在审

专利信息
申请号: 202210262823.6 申请日: 2022-03-17
公开(公告)号: CN114706558A 公开(公告)日: 2022-07-05
发明(设计)人: 汪烨;周澳回;宋师哲;姜波 申请(专利权)人: 浙江工商大学
主分类号: G06F8/10 分类号: G06F8/10;G06F8/41
代理公司: 杭州浙科专利事务所(普通合伙) 33213 代理人: 陈洁
地址: 310018 浙江*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 truss 复杂 软件 关键 模块 识别 方法
【权利要求书】:

1.一种基于K-Truss的复杂软件关键模块识别方法,其特征在于,包括如下步骤:

步骤1:对原始软件预处理并转换为格式化软件模块网络:分析原始软件中各个模块之间的依赖关系,将其转换为算法可识别的软件模块网络;

步骤2:使用K-Truss算法对软件模块网络进行结构分析并挖掘关键节点:将软件模块网络输入到K-Truss算法中,获取关键节点的相关信息;

步骤3:关键类识别输出:根据设定阈值将K-Truss子图中的节点进行提取并输出。

2.根据权利要求1所述的基于K-Truss的复杂软件关键模块识别方法,其特征在于,所述步骤1包括如下具体步骤:

将类作为关键模块识别的最小粒度,简称关键类,对原始软件进行预处理,将软件项目文件中的无关文件进行排除,仅保留后缀名为“.java”的文件用以生成软件模块网络,对软件模块网络进行定义:

SMN=(N,E,T)

其中,N表示网络的节点集合,包含软件中的类和抽象接口元素,E表示网络的边集合,包含各个节点之间的关系,T是一个三元组集合,表示边集合中各个边的属性及类型。

3.根据权利要求2所述的基于K-Truss的复杂软件关键模块识别方法,其特征在于,所述步骤1包括对各个节点之间的关系类型定义,包括继承关系、实现关系、依赖关系、关联关系;所述继承关系指一个类a继承另一个类b,在JAVA中以extends关键字实现;所述实现关系指一个类a实现一个接口b的功能,在JAVA中以implements关键字实现;所述依赖关系指一个类a中使用了类b,其中类b作为类a的方法参数;所述关联关系指一个类的实例a使用了另一个类的实例b。

4.根据权利要求3所述的基于K-Truss的复杂软件关键模块识别方法,其特征在于,所述步骤1包括一个源代码片段转化为软件模块网络的过程,每个类对应一个节点,若源代码中的两个类之间存在继承关系、实现关系、依赖关系、关联关系的一种关系,则在软件模块网络的对应节点之间增加一条边,使用上述规则进行转化,得到软件模块网络SMN。

5.根据权利要求4所述的基于K-Truss的复杂软件关键模块识别方法,其特征在于,所述步骤2包括如下具体步骤:

对于软件模块网络图SMN=(N,E,T),图中任意一条边可表示为Ei=(u,v),其中Ei表示边,u和v分别表示这条边连接的两个节点,定义支持度Support(Ei)用来表示边Ei在图中参与构成的三角形的个数,定义图KT是图SMN的一个子图,若KT满足图中任意一条边的支持度Support均满足Support(Ei)≥k-2,则称KT为一个k-truss子图。

6.根据权利要求5所述的基于K-Truss的复杂软件关键模块识别方法,其特征在于,所述步骤3包括如下具体步骤:

获得k-truss子图后,对子图中的节点进行关键度排序,对于图中的任意节点,对其关键度进行如下定义:

其中,Criv表示节点v的关键度值,m表示包含该节点的k-truss子图中节点数最小的子图所对应的k值,Nm和Nm+1分别表示m-truss和(m+1)-truss子图所包含的节点数量,若(m+1)-truss子图不存在,则Nm+1取0;

最后,根据上述方法计算出每个节点及其对应模块的关键度值并进行排序,选取前n个模块信息进行输出,n值根据需求确定。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工商大学,未经浙江工商大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202210262823.6/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top