[00334827]基于Halstead复杂度度量的软件演化评估方法
交易价格:
面议
所属行业:
分析仪器
类型:
发明专利
技术成熟度:
通过小试
专利所属地:中国
专利号:CN201710191917.8
交易方式:
资料待完善
联系人:
东南大学
进入空间
所在地:江苏南京市
- 服务承诺
- 产权明晰
-
资料保密
对所交付的所有资料进行保密
- 如实描述
技术详细介绍
摘要:本发明公开了一种基于Halstead复杂度度量的软件演化评估方法,先将待评估软件源码通过代码解析生成抽象语法树;然后,根据Java语言操作符和操作数识别规则对抽象语法树中的操作符节点和操作数节点进行识别和统计,并在此基础上进行代码Halstead复杂度度量;接着,从方法层、类层和系统层三个层面对软件代码的复杂程度进行评估;最后,将软件演化前后的Halstead复杂度进行对比分析,定位复杂度变化位置,通过代码变更检测分析复杂度发生变化的原因。该发明的评估方法不仅可以自动分析源码,从软件各个层面评估代码的Halstead复杂度,对复杂度过高的模块和方法提出预警,而且可以定位引起演化中复杂度变化的位置,并分析变化原因,为软件演化评估提供参考依据。
摘要:本发明公开了一种基于Halstead复杂度度量的软件演化评估方法,先将待评估软件源码通过代码解析生成抽象语法树;然后,根据Java语言操作符和操作数识别规则对抽象语法树中的操作符节点和操作数节点进行识别和统计,并在此基础上进行代码Halstead复杂度度量;接着,从方法层、类层和系统层三个层面对软件代码的复杂程度进行评估;最后,将软件演化前后的Halstead复杂度进行对比分析,定位复杂度变化位置,通过代码变更检测分析复杂度发生变化的原因。该发明的评估方法不仅可以自动分析源码,从软件各个层面评估代码的Halstead复杂度,对复杂度过高的模块和方法提出预警,而且可以定位引起演化中复杂度变化的位置,并分析变化原因,为软件演化评估提供参考依据。