原创 代码静态测试工具Helix QAC

2023-3-3 11:22 1127 6 6 分类: MCU/ 嵌入式



随着现代车辆的智能化发展(ADAS, Telematics, Infotainment, Cloud Services),车载代码量呈指数级增长,代码静态分析的自动化势在必行,且人们对功能安全的要求日益严格,符合行业编码规范是对车载代码的基础要求。

美国PerforcePRQA)公司是嵌入式静态分析领域公认的行业领导及先驱,拥有30多年软件开发及测试经验,是MISRA编码委员会创始会员及最具影响力的会员,同时是AUTOSAR组织在代码静态分析领域的唯一会员,负责功能安全软件架构的相关标准制定工作,参与编写了C++14编码指南,制定了AUTOSAR测试方案。

PerforceHelix QAC作为业内为人熟知的自动代码静态分析工具,可以支持MISRA C/C++AUTOSAR C++CERT C/C++CWE C/C++HICPPJSF AV C++编码规范包,其精准的诊断消息和强大的软件生命周期管理平台为全球3000多个整车厂和零部件供应商所信赖。

北汇信息作为Perforce的合作伙伴,将为中国客户提供专业的静态代码测试解决方案。


Helix QAC特性

Helix QAC是静态分析领域公认的行业先驱,旨在帮助开发和测试人员在Coding阶段实现高效的自动化静态测试,发现代码潜在缺陷,衡量代码质量,缩减开发时间,降低开发成本。Helix QAC包含3部分主体:

HelixQAC/C++静态分析器可以兼容数百万行代码,高速执行静态分析;

编码规范包可选组件,配合静态分析器实现代码的合性测试;

项目管理平台Helix QAC Dashboard全生命周期软件开发管理。


代码静态分析

Helix QAC借助特有的深度数据流分析引擎,模拟代码运行时机制,检测C/C++语言中会降低代码复用性、导致功能安全问题、产生网络安全漏洞的危险代码结构,最大限度提高代码检测覆盖率,最小化漏报误报率。

Helix QAC目前提供多达4107条诊断消息,其中针对C语言2156条,C++1951条,这意味着对编码规范更全面更精准的覆盖,因为每一条诊断消息都对应具体的编码规则可以有效诊断指针操作、类型转换、溢出/零除、未定义行为、数据流等等问题,并提供在线help,开发工程师可以根据help实时修改源码。



度量元指标

度量是对源代码某些可量化属性的度量,每个度量元从不同角度反映代码质量,比如复杂性、可读性、残留的bug或可测试性Helix QAC提供基于函数以及文件的度量元118个,其中针对C语言65个,C++53个,为企业制定度量元标准控制度量元数值掌控代码质量提供强有力的依据。


HelixQAC支持的编码规范

Helix QAC可以自动遵循以下编码规范,并对诊断消息划分严重等级,帮助用户最先解决严重问题,使其软件符合ISO26262要求。
1MISRA C 2004MISRA C 2012MISRA C++ 2008:嵌入式系统最理想的编码规范,防止会导致功能安全问题及网络安全漏洞的错误编码。

2AUTOSAR C++ 14为应用现代C++语言编写安全和任务关键型嵌入式系统提供有效指导。

3CERT C/C++旨在清除代码中可能导致网络安全的编码惯例以及未定义行为。

4CWE C/C++从架构、设计、乃至编码层面描述代码中常见的网络安全问题可以作为识别、减少、预防漏洞的基线。

Helix QAC基于以上编码规范良好的执行力和覆盖度,帮助全球各大整车厂、零部件供应商及其他行业如航空、军工、医疗等领域的企业提高代码质量,实现对编码规范及相关行业标准的最佳实践。



Helix QAC Dashboard

Helix QAC Dashboard基于网页端的项目质量管理平台,可实现异地团队项目信息共享,核心开发人员、开发经理、高级管理人员可以在此平台查看源码诊断消息、进行基线/版本管理、添加修改注释、热力图快速定位问题源码、关注代码质量走势、设置项目权限、查看代码合情况、定制报告等等,给客户呈现一种更广义的质量管理概念。




集成环境

IDE集成环境:MicrosoftVisualStudioEclipse

CI环境:JenkinsJira等通过命令行实现交互


支持的操作系统

Windows

Linux


多样化的本地报告

报告:给出代码对编码规范的遵循情况,直观定位问题代码

代码审查报告总结基于文件和函数的度量元数据函数调用信息

Metrics数据报告提供XML文件,用作进一步检查代码质量度量数据

抑制报告提供分析工程期间诊断消息的抑制情况



资质认证

Helix QAC得到SGS-TÜV SAAR认证,可用于安全相关软件的开发,符合IEC 61508SIL4 ISO 26262(ASIL D) EN 50128(SW-SIL4) IEC 60880以及IEC 62304(Software Safety Class C)标准,帮助客户用更少的时间完成产品认证。



客户列表(部分)

 

作者: 北汇信息, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-3998886.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

文章评论0条评论)

登录后参与讨论
我要评论
0
6
关闭 站长推荐上一条 /2 下一条