Helix QAC/QAC++—代码静态测试工具介绍—符合功能安全标准MISRA ISO26262
Helix QAC是静态代码分析工具,依据C和C++编码规则自动扫描代码对规则的违背。开发团队在开发过程的早期就可以用它来检测缺陷,因为此时修改代码是最方便也最经济的。Helix QAC因此自动化强制实施代码编程标准,比如MISRA,保证代码的合规性。
功能特性
● 遵循代码标准
遵循编码和工业标准。Helix QAC自动审查代码,确保它们符合用户选择的编码标准。合规性报告可视化地提醒用户哪些代码需要多加留意。Helix QAC支持多种C和C++编码标准,提供相应的合规性模块,也支持标准的客户化定制。
● 检查更多缺陷
在开发早期检查编译器没有发现的关键缺陷。Helix QAC为用户的软件建立了精确的行为模型,跟踪代码中的变量值,如同运行时一样。因此这种分析最大化地覆盖了代码,使误报和漏报最低。它甚至能识别极端复杂的代码引起的问题。
● 提高代码质量
提供任何应用程序的整体质量和安全。Helix QAC识别必须修改的缺陷,提供详细的指导帮助开发人员修改问题。这是不需要运行程序的。开发人员既然获得了即时的上下文反馈,他们将因此从错误中获得学习,下一次编写新的代码(或者评审代码)时,能力将得到提升。
● 协同代码审查
Helix QAC的仪表盘提供了协同代码审查的能力,用户能够在Helix QAC检查出的诊断上添加注解,为其他用户分配需要他们采取的动作。
● 适应数百万行代码
让静态分析适应你的环境。Helix QAC有能力处理数百万行代码,保证你的产品无论代码由多么复杂它都是安全的。
● 重用代码
重用质量信得过的代码。Helix QAC检测代码移植性问题,所以你能重用让你放心的代码,帮助你的快速开发。
● 加速开发过程
降低瓶颈加速开发。Helix QAC能集成在构建系统和持续集成环境中,尽早且频繁地发现缺陷,从而避免了在开发后期往往需要花费甚巨的错误。它也加速了当前代码的评审,你甚至可以只让它检查新的代码变化,快速提供反馈。
● 监视整体代码质量
使用Helix QAC的仪表盘监视代码质量。你能够用它监视代码质量度量,获得质量趋势。仪表盘还能帮你为利益相关方创建属于他们的报告。
编程标准合规性
● MISRA
MISRA编码标准检查安全关键系统的潜在问题。MSIRA C和MISRA C++合规性模块指出违背这些规则的代码段。
MISRA C模块强制实施MISRA C:1998、MISRA C:2004和MISRA C:2012。
MISRA C++模块强制实施MISRA C++:2008。
在MISRA规则检查方面,Helix QAC的准确性远高于其他工具。它对规则的违背划分出严重度的优先级,你可以据此修改最重要的问题。
MISRA C
MISRA C++
● AUTOSAR
自动化检查AUTOSAR C++编码标准的合规性。
AUTOSAR编码规则识别C++14的安全问题。
AUTOSAR C++模块指出违背这些规则的代码段。
AUTOSAR
● CERT
自动检查代码对CERT C和C++标准的合规性。
CERT编码规则识别代码中的安全漏洞。
CERT C和C++合规性模块指出违背这些规则的代码段,帮助你消除未定义的行为,应用安全编码的最佳实践。
Helix QAC通过详细的说明和示例,帮助你优先解决最严重的问题。所以你将能开发安全可靠的软件系统,且能够追踪和报告CERT合规性。
调用树
CERT C++
● CWE
自动检查代码是否属于CWE安全脆弱性列表里的行为。
CWE识别C和C++中常见的安全脆弱性。
CWE合规性模块指出代码是否有这些行为,有助于用户优先解决关键错误,提升代码整体质量。
热点图
CWE C++
● HIC++
自动检查代码是否符合High Integrity C++编码标准,它是原PRQA代码专家开发的标准。
HIC++标准确保C++11和C++14的高质量代码。
HIC++
● JSF AV C++
自动检查代码是否符合Joint Striker Fight Air Vehicle(JSF AV)C++编码标准。
JSF AV C++用于安全关键的开发。Helix QAC提供了对该标准规则的理解最为深刻的诊断信息。
JSF AV C++
● 客户化规则
自动检查代码是否符合定制规则。
你能够为你自己的C/C++编码规则定制一个合规性模块,Helix QAC自动实施这些规则。
静态分析优越性
● 编码问题的早期检测
在新的代码和以前的代码中发现编码问题。比较其他静态代码分析器,Helix QAC发现更多的编程错误,包括C/C++的未定义或未指定的行为,且适用于数百万行的大型项目。
● 风险优先级
以风险的严重程度划分编码问题的优先级。Helix QAC使用过滤器、抑制和基线的手段帮助你关注最为关键的代码缺陷,提供精确的诊断和可操作的结果。用户因此能够首先修改最重要的问题。
● 消除安全漏洞
在源代码上消除安全漏洞。编程错误往往导致犯罪分子利用软件中的漏洞窃取信息,但Helix QAC使你看到并控制编程错误,因此能在源代码级别上就消除了漏洞。
● 协同代码审查
协同代码审查,包括人工的和自动的静态分析。你能够为团队成员分配任务。
● 监控代码质量
监控代码整体质量。Helix QAC确保团队所有成员使用的是一致的编码规则,你能控制规则的偏离和诊断的抑制,也能测量、跟踪和记录质量度量及其趋势。
● 集成其它工具集
将静态代码分析集成到其它开发工具。Helix QAC支持大多数编译器。你可以把它集成到许多开发工具中,包括集成开发环境(比如Microsoft Visual Studio)、版本控制系统(比如Helix Core)、以及持续集成构建服务器(比如Jenkins)。
工业标准认证
Helix QAC经过了独立的标准认证,Helix QAC是由Programming Research开发的,后者现在是Perforce的组成之一。
SGS-TÜV Saar认证
Helix QAC经过SGS-TÜV Saar符合如下功能安全标准:
● ISO 26262 (automotive) up to ASIL level D.
● IEC 61508 (general industrial) up to SIL 4.
● EN 50128 (railways) up to SW-SIL 4.
● IEC 62304 (medical devices) up to Software Safety Class C.
● IEC 60880 (nuclear power).
ISO 9001 | TickIT认证
Helix QAC也通过了ISO 9001 | TickIT plus Foundation Level认证。
ISO 9001是广被采用的标准,确保企业组织通过持续改进来满足和超过客户的需求和满意度。
工具试用链接:http://qa-systems.cn/
Helix QAC/QAC++—代码静态测试工具介绍—符合功能安全标准MISRA ISO26262的更多相关文章
- [原创]Java静态代码检查工具介绍
[原创]Java静态代码检查工具介绍 一 什么是静态代码检查? 静态代码分析是指无需运行被测代码,仅通过分析或检查源程序的语法.结构.过程.接口等来检查程序的正确性,找出代码隐藏的错误和缺陷,如参数 ...
- Helix QAC — 软件静态测试工具
Helix QAC 是Perforce 公司(原PRQA 公司)产品,主要用于C/C++ 代码的完全自动化静态分析工作,可以提供编码规则检查.代码质量度量.软件结构分析.测试结果管理等功能.Helix ...
- 代码管理工具-Git基础介绍及常用技巧
目录 Git起源 基本概念 Branch.HEAD和Commit tree Git分支 git merge 和 git rebase 的区别和抉择 与远程仓库的交互 关于一些实际开发场景的问题和解决方 ...
- 代码检查工具sonarqube介绍及使用
亲测有效 环境:springboot+gradle+jdk1.8+sonarqube7.4 一.说明: SonarQube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速 ...
- 常用 Java 静态代码分析工具的分析与比较
常用 Java 静态代码分析工具的分析与比较 简介: 本文首先介绍了静态代码分析的基 本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBu ...
- eclipse lint工具介绍
一.基本介绍 作为移动应用开发者,我们总希望发布的apk文件越小越好,不希望资源文件目录中没有用到的图片等资源也被打包进apk,不希望应用中使用了高于minSdk的api,也不希望AndroidMan ...
- 代码静态分析工具PC-LINT安装配置
代码静态分析工具PC-LINT安装配置--step by step 作者:ehui928 ...
- [转载] 常用 Java 静态代码分析工具的分析与比较
转载自http://www.oschina.net/question/129540_23043 简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代 ...
- python接口自动化(四)--接口测试工具介绍(详解)
简介 “工欲善其事必先利其器”,通过前边几篇文章的介绍,大家大致对接口有了进一步的认识.那么接下来让我们看看接口测试的工具有哪些. 目前,市场上有很多支持接口测试的工具.利用工具进行接口测试,能够提供 ...
随机推荐
- Seaborn基础1
import seaborn as sns import numpy as np import matplotlib.pyplot as plt # # 折线图 def sinplot(flip = ...
- Python os.lseek() 方法
概述 os.lseek() 方法用于设置文件描述符 fd 当前位置为 pos, how 方式修改.高佣联盟 www.cgewang.com 在Unix,Windows中有效. 语法 lseek()方法 ...
- Python os.fstatvfs() 方法
概述 os.fstatvfs() 方法用于返回包含文件描述符fd的文件的文件系统的信息,类似 statvfs().高佣联盟 www.cgewang.com Unix上可用. fstatvfs 方法返回 ...
- PDO::query
PDO::query — 执行 SQL 语句,返回PDOStatement对象,可以理解为结果集(PHP 5 >= 5.1.0, PECL pdo >= 0.2.0) 说明 语法 publ ...
- 获取判断IE版本 TypeError: Cannot read property 'msie' of undefined
注意:以下方法只适用于IE11 以下: TypeError: Cannot read property 'msie' of undefined jquery1.9去掉了 $.browser 所以报错 ...
- 阿里云Redis的开发规范
作者:付磊-起扬 来源:https://yq.aliyun.com/articles/531067 本文主要介绍在使用阿里云Redis的开发规范,从下面几个方面进行说明. 键值设计 命令使用 客户端使 ...
- rabbitMQ结合spring-boot使用(1)
从这一节开始我们进入rabbitMQ的实战环节,项目环境是spring-boot 加maven.首先让我们创建一个spring-boot项目,然后引入web依赖和 rabbitMQ的依赖 <de ...
- 浅析FMT,CMT, SMT区别
FMT(fine-grained multithreading)又叫交叉多线程或指令交错多线程 – 每个时钟周期都进行线程的切换,多个线程交替执行,同一个周期只从一个线程发射指令到功能部件 ...
- 17、Observer 观察者模式
以一个实例给大家引入观察者,大家多多少少都写过html或者java中的swing.我们定义一个按钮,给他增加一个点击事件,那么这个方法是怎么被触发到呢,对了,就是利用了观察者设计模式 观察者模式 当对 ...
- C#算法设计排序篇之11-二叉树排序(附带动画演示程序)
二叉树排序(Binary Tree Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/695 访问. 二叉树排序 ...