主要内容

用于桌面端和服务器端的 Polyspace 产品

Polyspace Bug Finder

Polyspace® Bug Finder™ 可标识 C 和 C++ 嵌入式软件中的运行时错误、并发性问题、安全漏洞和其他缺陷。Polyspace Bug Finder 使用静态分析(包括语义分析)来分析软件控制、数据流和过程间行为。通过在检测到缺陷后立即突出显示缺陷,您可以在开发过程的早期对 Bug 进行分类和修复。

Polyspace Bug Finder 可检查您的代码是否符合编码规则标准,例如 MISRA C™、MISRA C++、JSF++、CERT® C、CERT C++ 以及自定义命名约定。它将生成报告,其中包含发现的 Bug、代码违规,以及代码质量度量(包括圈复杂度)。Polyspace Bug Finder 可以与 Eclipse™ IDE 配合使用以在桌面端分析代码。

对于自动生成的代码,可以从 Polyspace 结果追溯到 Simulink® 模型和 dSPACE® TargetLink® 模块。

通过 IEC Certification Kit (for ISO 26262 and IEC 61508)DO Qualification Kit (for DO-178) 实现对行业标准的支持。

对于特定于桌面端的工作流,请参阅:

另请参阅Polyspace Bug Finder 与 Polyspace Code Prover 之间的差别

Polyspace Code Prover

Polyspace Code Prover™:是一个可靠的静态分析工具,可证明 C 和 C++ 源代码中不存在溢出、除以零、数组访问越界和其他运行时错误。它无需程序执行、代码插桩或测试用例即可生成结果。Polyspace Code Prover 使用基于形式化方法的语义分析和抽象解释来验证软件的过程间行为、控制行为和数据流行为。您可以用它来验证手写代码、生成的代码或这两者的组合。每个代码语句都进行了着色,以指示它是否存在运行时错误、是否已证明失败、是否不可达或是否未经证明。

Polyspace Code Prover 会显示变量和函数返回值的范围信息,并且可以证明哪些变量超出了指定的范围限制。代码验证结果可用于跟踪质量度量并检查是否符合您的软件质量目标。Polyspace Code Prover 可与 Eclipse IDE 配合使用以验证桌面端代码。

通过 IEC Certification Kit (for IEC 61508 and ISO 26262) 和 DO Qualification Kit (for DO-178)实现对行业标准的支持。

对于特定于桌面端的工作流,请参阅:

另请参阅Polyspace Bug Finder 与 Polyspace Code Prover 之间的差别

Polyspace Bug Finder Server

Polyspace Bug Finder Server™ 是一个静态分析引擎,可以识别 C 和 C++ 中常见的 Bug 类,包括运行时错误、并发性问题和其他编码缺陷。Polyspace Bug Finder Server 还会检查源代码是否遵循编码规则(MISRA C、MISRA C++、JSF++)、安全规则(CWE、CERT-C、CERT-C++、ISO/IEC 17961)和自定义规则。

使用 Polyspace Bug Finder Server,您可以在工程、文件和函数级别监控代码度量(包括圈复杂度和 HIS 度量)。您可以配置服务器,以用于各种编译器、目标处理器和 RTOS 环境,并使用 Jenkins 等工具通过持续集成系统实现执行自动化。可以将代码分析结果发布到 Polyspace Bug Finder Access™ 以进行分类和解决。

通过 IEC Certification Kit (for IEC 61508 and ISO 26262) 和 DO Qualification Kit (for DO-178) 实现对行业标准的支持。

对于特定于服务器的工作流,请参阅:

Polyspace Code Prover Server

Polyspace Code ProverServer 是一个可靠的静态分析引擎,可证明 C 和 C++ 代码中不存在溢出、除以零、数组访问越界和其他运行时错误。它对所有可能的控制流和数据流(包括多线程代码)执行过程间分析,以将每个运算标识为始终安全、始终出错、不可达或易受攻击。Polyspace Code Prover Server 会标识没有运行时错误、已证明失败、不可达或未经证明的代码段。

Polyspace Code Prover Server 可以在服务器级别的计算机上运行,并且可以集成到编译和持续集成系统中,以使用 Jenkins 等工具进行自动验证。可以将分析结果发布到 Polyspace Code Prover Access 以进行分类和解决。

通过 IEC Certification Kit (for IEC 61508 and ISO 26262) 和 DO Qualification Kit (for DO-178)实现对行业标准的支持。

对于特定于服务器的工作流,请参阅:

Polyspace Access

使用 Polyspace Access,软件工程团队可以在软件开发生命周期中检查其代码质量。它包括 Polyspace as You Code,这是一个 IDE 插件,开发人员可以使用它在提交代码进行集成之前检测代码合规性偏差、软件缺陷和安全漏洞。还可以通过它来访问一个 Web 界面,审查由 Polyspace Bug Finder ServerPolyspace Code Prover Server 产生的集成源代码的静态代码分析结果。

Polyspace as You Code 可检测严重缺陷和安全漏洞,并检查代码是否符合各种编码规则标准,例如 MISRA C、MISRA™ C++、AUTOSAR C++14、CERT C、CERT C++ 以及自定义命名约定。我们会将其作为插件集成到开发人员 IDE(例如 Visual Studio®、Visual Studio Code 或 Eclipse)中,用于在源代码视图中报告检查结果。当连接到 Polyspace Access 中央存储库时,它可以与开发基线比较并只突出显示由开发人员引入的的新问题。

利用该 Web 界面,开发人员和 QE 可以针对静态代码分析结果进行跨工程协作。通过从工程仪表板了解检查结果详细信息,团队成员可以监控质量趋势并分析、审查软件漏洞、代码度量、严重的运行时错误以及是否遵守各种编码标准,并分配责任人。与工程管理工具(例如 JIRA)集成实现了代码质量的团队协作。Polyspace Access 包括一个中央存储库(托管在本地或基于云),该存储库与身份验证系统(例如 LDAP)集成来控制对工程数据的访问。

对于特定于 Web 浏览器的工作流,请参阅:

对于特定于 IDE 的工作流,请参阅: