一种基于机器学习和静态分析的软件集成测评方法技术

技术编号:45041321 阅读:18 留言:0更新日期:2025-04-22 17:29
本发明专利技术涉及软件工程与软件质量测评技术领域,公开了一种基于机器学习和静态分析的软件集成测评方法,包括以下步骤:S1:对软件源代码进行静态分析,生成候选缺陷列表;S2:基于所述候选缺陷列表,执行动态验证,采集运行时数据;S3:将所述静态分析结果与动态验证数据进行特征融合,形成缺陷评估特征向量;S4:将所述缺陷评估特征向量输入机器学习模型,评估缺陷的真实性与严重性;S5:输出缺陷检测报告。本发明专利技术中,通过结合静态分析和动态验证,能够进一步确认缺陷及其影响范围,有效降低了静态分析中的误报率,同时弥补了动态验证路径覆盖不足的缺陷,提高了缺陷检测的全面性与准确性。

【技术实现步骤摘要】

本专利技术涉及软件工程与软件质量测评,尤其涉及一种基于机器学习和静态分析的软件集成测评方法


技术介绍

1、随着软件系统规模和复杂度的不断提高,软件质量问题逐渐成为制约软件开发效率和系统稳定性的重要因素。为了保障软件的正确性和可靠性,软件集成检测技术被广泛应用于软件开发生命周期中。

2、目前,静态分析是最常用的缺陷检测方法,通过扫描源代码快速识别潜在缺陷,如空指针、数组越界等问题。然而,由于静态分析依赖于代码规则匹配和静态逻辑推导,其缺陷检测结果存在以下不足:误报率高:静态分析工具往往无法精准判断缺陷的实际可触发性,导致大量误报,给开发人员带来额外的分析负担。缺乏运行时验证:静态分析仅基于代码结构进行推理,无法捕获程序运行时的动态行为,难以判断缺陷在实际执行中的影响。覆盖范围有限:在复杂路径条件、多模块调用关系的场景下,静态分析难以完整覆盖所有潜在缺陷路径,存在漏报问题。

3、与此同时,近年来,机器学习技术为缺陷检测带来了新的解决方案。通过对历史缺陷数据的训练,机器学习模型能够实现缺陷的真实性判定和严重性量化,提供智能化评估结果。然本文档来自技高网...

【技术保护点】

1.一种基于机器学习和静态分析的软件集成测评方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于机器学习和静态分析的软件集成测评方法,其特征在于,所述S1步骤还包括:

3.根据权利要求2所述的一种基于机器学习和静态分析的软件集成测评方法,其特征在于,所述S1.4中代码复杂度通过圈复杂度公式计算,具体为:

4.根据权利要求1所述的一种基于机器学习和静态分析的软件集成测评方法,其特征在于,所述S2步骤还包括:

5.根据权利要求1所述的一种基于机器学习和静态分析的软件集成测评方法,其特征在于,所述S3步骤还包括:

6.根...

【技术特征摘要】

1.一种基于机器学习和静态分析的软件集成测评方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于机器学习和静态分析的软件集成测评方法,其特征在于,所述s1步骤还包括:

3.根据权利要求2所述的一种基于机器学习和静态分析的软件集成测评方法,其特征在于,所述s1.4中代码复杂度通过圈复杂度公式计算,具体为:

4.根据权利要求1所述的一种基于机器学习和静态分析的软件集成测评方法,其特征在于,所述s2步骤还包括:

5.根据权利要求1所述的一种基于机器学习和静态分析的软件集成测评方法,其特征在于,所述s3步骤还包括:

6.根据权利要求1所述的一种基于机器学习和静态分析的软件集成测评方法,其特征在于,所述s4步骤还包括:

7.根据权利...

【专利技术属性】
技术研发人员:邵孔苏泓锦戚北望邵云鹏宗雨薇
申请(专利权)人:上海雾见安全科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1