-
公开(公告)号:CN107066384A
公开(公告)日:2017-08-18
申请号:CN201710191917.8
申请日:2017-03-28
Applicant: 东南大学
IPC: G06F11/36
Abstract: 本发明公开了一种基于Halstead复杂度度量的软件演化评估方法,先将待评估软件源码通过代码解析生成抽象语法树;然后,根据Java语言操作符和操作数识别规则对抽象语法树中的操作符节点和操作数节点进行识别和统计,并在此基础上进行代码Halstead复杂度度量;接着,从方法层、类层和系统层三个层面对软件代码的复杂程度进行评估;最后,将软件演化前后的Halstead复杂度进行对比分析,定位复杂度变化位置,通过代码变更检测分析复杂度发生变化的原因。该发明的评估方法不仅可以自动分析源码,从软件各个层面评估代码的Halstead复杂度,对复杂度过高的模块和方法提出预警,而且可以定位引起演化中复杂度变化的位置,并分析变化原因,为软件演化评估提供参考依据。
-
公开(公告)号:CN105867906A
公开(公告)日:2016-08-17
申请号:CN201610164659.X
申请日:2016-03-22
Applicant: 东南大学
CPC classification number: G06F8/72 , G06F11/3604
Abstract: 本发明公开了一种面向软件演化的代码可替换性评估方法,对演化原因进行分析与定位,包括以下步骤:根据源代码构造相应的抽象语法树;在抽象语法树上提取表示依赖关系的边,构造出代码耦合关系图;基于程序耦合关系定义一种度量代码可替换性指标,对代码中模块的可替换性进行计算;针对演化版本中代码的可替换性发生改变的包进行分析,识别出导致代码可替换性变化的元素。该发明的评估方法不但可以自动分析源代码,度量代码的可替换性,指出代码中的核心框架,而且对演化过程中发生改变的原因进行分析定位实现了演化评估的自动化。
-
公开(公告)号:CN103200277B
公开(公告)日:2015-07-01
申请号:CN201310147178.4
申请日:2013-04-24
Applicant: 东南大学
IPC: H04L29/08
Abstract: 本发明公开了一种基于日志的云计算服务可信度评估方法,综合考虑用户评价与历史调用日志对云计算环境下服务可信度的影响,对一组相似服务进行更加客观公正的评估。本发明涉及到的关键操作包括:(1)分析历史调用日志中与可信相关的特征,根据特征对日志数据以及用户评价数据进行统计,构建关于服务的信任特征向量;(2)评价体系综合考虑用户直接交互、通过用户好友关系的间接交互以及被测者全局交互,分别计算其信任特征向量,并按用户提供的权重对各个级别的信任特征向量进行综合,得到信任评估结果。
-
公开(公告)号:CN116501639A
公开(公告)日:2023-07-28
申请号:CN202310481965.6
申请日:2023-04-28
Applicant: 东南大学
IPC: G06F11/36
Abstract: 本发明公开了一种基于依赖特征的循环代码缺陷检测方法,从多种类型的依赖关系出发,检测循环代码缺陷。该方法包括:循环代码依赖图构建,循环代码依赖特征提取,循环代码缺陷检测三个步骤:循环代码依赖图构建定义各类代码的依赖关系特征,依赖图表示实体与实体之间的依赖关系;循环代码依赖特征提取是针对分析的循环代码,从依赖图中提取信息构建循环代码的依赖特征;循环代码缺陷检测是通过分析各类依赖关系与相应的代码循环代码缺陷特征进行匹配得出是否存在该代码循环代码缺陷。
-
公开(公告)号:CN110162329B
公开(公告)日:2023-07-18
申请号:CN201910254635.7
申请日:2019-03-31
Applicant: 东南大学
IPC: G06F8/658 , G06F18/2415
Abstract: 本发明公布了一种基于双分类器结合使用的增量式软件架构更新技术,在已有软件架构视图的基础上,利用前后软件版本源代码,对其进行更新生成新版本的架构视图。本发明中软件架构视图通过文件‑模块‑组件依赖图的形式展示,抽象层次依次递增。首先通过变更检测技术分析前后版本源代码得到变更文件(变更检测分析模块),其次借助解析工具对变更文件依赖关系进行提取得到增量数据(更新预处理模块),再输入到更新模块进行图的更新,通过组件调整操作得到最终软件架构视图以及更新细节表。更新模块所使用的双分类器包括贝叶斯分类器和基于Orphan adoption算法的分类器,两者的结合使用可以使得架构更新结果更加准确,效率更高。
-
公开(公告)号:CN110705249B
公开(公告)日:2023-04-11
申请号:CN201910829315.X
申请日:2019-09-03
Applicant: 东南大学
IPC: G06F40/205 , G06F16/30
Abstract: 本发明公开了一种基于重叠度计算的NLP(Natural Language Processing,自然语言处理)库组合使用方法,针对软件文档中的自然语言,组合使用多种不同的NLP库对自然语言进行分析,NLP库组合使用技术通过单个NLP库分析、文档级别NLP库选取和语句级别优化三个步骤来结合不同NLP库的优势,从而使得NLP库的分析效果更准确,利于软件开发人员理解软件文档。
-
公开(公告)号:CN110879704A
公开(公告)日:2020-03-13
申请号:CN201910829311.1
申请日:2019-09-03
Applicant: 东南大学
Abstract: 本发明公开了一种基于类继承关系分析的API(Application Programming Interface,应用程序编程接口)推荐方法,通过对方法按其所属类之间的层次结构关系进行分类,并对方法间的依赖信息进行关联关系分析,以确定属于不同层次类的方法间的联系。通过平衡方法间类的层次结构关系,方法间的依赖关系以及层次结构间方法的使用频率,对于方法间存在较强逻辑关系的项目可以有效提高API方法推荐结果的准确率。
-
公开(公告)号:CN110297628A
公开(公告)日:2019-10-01
申请号:CN201910502764.3
申请日:2019-06-11
Applicant: 东南大学
IPC: G06F8/33 , G06F16/245
Abstract: 本发明公开了一种基于同源相关性的API(Application Programming Interface,应用程序接口)推荐方法,在得到新的API推荐需求之后,首先,根据余弦相似度从历史信息库中筛选出前k个相似的历史信息,提取这k个历史信息所对应的API,根据这些API出现频率计算推荐分数Score1。其次,按照推荐分数Score1的大小对API标记权重,计算同一第三方库中API总权重,通过归一化得到API同源影响分数Score2。最后,API推荐分数Score1和同源影响分数Score2进行求和,获得API推荐分数Score,进行API推荐。本推荐技术考虑API同源相关性,更符合实际编程场景需要,提高开发和维护效率,系统安全性更高。
-
公开(公告)号:CN109976802A
公开(公告)日:2019-07-05
申请号:CN201910254644.6
申请日:2019-03-31
Applicant: 东南大学
IPC: G06F8/72
Abstract: 本发明公布了一种面向模式的软件架构重构方法,利用模式能阐述项目中特定设计情形下反复出现的问题以及提供的解决方案的特性,定位与识别软件架构图中设计缺陷的重构点,并对这些重构点进行面向模式的重构,实施重构操作,继而得到重构效果图。针对得到的重构后的架构图,计算重构后的度量指标,分析与比较重构前后的好坏,提供给项目开发人员架构建议参考,便与开发人员实施重构。模式作为长期开发过程中对最佳实践方式的总结和提炼,包含了前人的大量劳动和智慧,为软件的重构提供了良好的指导方向。
-
公开(公告)号:CN105867906B
公开(公告)日:2018-11-27
申请号:CN201610164659.X
申请日:2016-03-22
Abstract: 本发明公开了一种面向软件演化的代码可替换性评估方法,对演化原因进行分析与定位,包括以下步骤:根据源代码构造相应的抽象语法树;在抽象语法树上提取表示依赖关系的边,构造出代码耦合关系图;基于程序耦合关系定义一种度量代码可替换性指标,对代码中模块的可替换性进行计算;针对演化版本中代码的可替换性发生改变的包进行分析,识别出导致代码可替换性变化的元素。该发明的评估方法不但可以自动分析源代码,度量代码的可替换性,指出代码中的核心框架,而且对演化过程中发生改变的原因进行分析定位实现了演化评估的自动化。
-
-
-
-
-
-
-
-
-