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的更多相关文章

  1. [原创]Java静态代码检查工具介绍

    [原创]Java静态代码检查工具介绍 一  什么是静态代码检查? 静态代码分析是指无需运行被测代码,仅通过分析或检查源程序的语法.结构.过程.接口等来检查程序的正确性,找出代码隐藏的错误和缺陷,如参数 ...

  2. Helix QAC — 软件静态测试工具

    Helix QAC 是Perforce 公司(原PRQA 公司)产品,主要用于C/C++ 代码的完全自动化静态分析工作,可以提供编码规则检查.代码质量度量.软件结构分析.测试结果管理等功能.Helix ...

  3. 代码管理工具-Git基础介绍及常用技巧

    目录 Git起源 基本概念 Branch.HEAD和Commit tree Git分支 git merge 和 git rebase 的区别和抉择 与远程仓库的交互 关于一些实际开发场景的问题和解决方 ...

  4. 代码检查工具sonarqube介绍及使用

    亲测有效 环境:springboot+gradle+jdk1.8+sonarqube7.4 一.说明: SonarQube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速 ...

  5. 常用 Java 静态代码分析工具的分析与比较

    常用 Java 静态代码分析工具的分析与比较 简介: 本文首先介绍了静态代码分析的基 本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBu ...

  6. eclipse lint工具介绍

    一.基本介绍 作为移动应用开发者,我们总希望发布的apk文件越小越好,不希望资源文件目录中没有用到的图片等资源也被打包进apk,不希望应用中使用了高于minSdk的api,也不希望AndroidMan ...

  7. 代码静态分析工具PC-LINT安装配置

    代码静态分析工具PC-LINT安装配置--step by step                             作者:ehui928                             ...

  8. [转载] 常用 Java 静态代码分析工具的分析与比较

    转载自http://www.oschina.net/question/129540_23043 简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代 ...

  9. python接口自动化(四)--接口测试工具介绍(详解)

    简介 “工欲善其事必先利其器”,通过前边几篇文章的介绍,大家大致对接口有了进一步的认识.那么接下来让我们看看接口测试的工具有哪些. 目前,市场上有很多支持接口测试的工具.利用工具进行接口测试,能够提供 ...

随机推荐

  1. Python日期和时间_什么是Tick_什么是时间元组_获取当前时间

    Python 日期和时间_什么是 Tick _什么是时间元组: 时间和日期:某年某月某日某时某分某秒 Tick: 时间间隔以 秒 为单位的浮点小数,起始时间为:1970年1月1日0点0分开始 # Ti ...

  2. HDU 6787 Chess 2020百度之星 初赛三 T5 题解 dp

    传送门:HDU 6787 Chess Problem Description 你现在有一个棋盘,上面有 n 个格子,格子从左往右,1,-,n 进行标号.你可以在棋盘上放置恰好 m 个传送器,并且对于每 ...

  3. Raft协议理解

    raft协议最关键的部分是领导选举和日志复制 日志复制 日志匹配原则:如果两个日志在相同索引位置的entry的任期号相同,那么这两个日志从头到这个索引位置之前完全相同. 日志匹配原则可以解释为如下两条 ...

  4. github 错误

    Push failed: Unable to access 'https://github.com/infoo/Neo4j.git/': The requested URL returned erro ...

  5. 找工作的你不容错过的45个PHP面试题附答案(下篇)

    找工作的你不容错过的45个PHP面试题附答案(上篇) Q28:你将如何使用PHP创建Singleton类? /** * Singleton class * */ final class UserFac ...

  6. LeetCode 89,因为题目晦涩而被点了1500+反对的搜索问题

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是LeetCode专题第55篇文章,我们一起来看看LeetCode中的第89题 Gray Code(格雷码). 这题的官方难度是Medi ...

  7. 基于Qt实现的TCP端口数据转发服务器

    对于Qt,比较喜欢qt的sdk框架,我也是用于做一些工作中用到的工具软件,基于qt的sdk做起来也比较快: 一.概述 今天要说的这个tcp端口转发服务器,主要是用于将监听端口的数据转发到另外一个服务器 ...

  8. 一文说通C#中的异步编程补遗

    前文写了关于C#中的异步编程.后台有无数人在讨论,很多人把异步和多线程混了. 文章在这儿:一文说通C#中的异步编程 所以,本文从体系的角度,再写一下这个异步编程.   一.C#中的异步编程演变 1. ...

  9. 暑期java(面向对象设计)学习第一阶段总结

    0.前言 本次博客针对的是暑假学习java(面向对象设计)的前三次作业的小结,第一次作业:7-1 对三个整数排序 7-2 对四个整数排序 7-3 对十个整数进行排序 7-4 对多个整数进行排序 第二次 ...

  10. 连通图算法详解之① :Tarjan 和 Kosaraju 算法

    相关阅读: 双连通分量 ,割点和桥 简介 在阅读下列内容之前,请务必了解 图论相关概念 中的基础部分. 强连通的定义是:有向图 G 强连通是指,G 中任意两个结点连通. 强连通分量(Strongly ...