Main Content

このページは前リリースの情報です。該当の英語のページはこのリリースで削除されています。

Polyspace Bug Finder と Code Prover のドキュメンテーション

Polyspace Bug Finder

Polyspace® Bug Finder™ は、C および C++ 組み込みソフトウェアにおけるランタイム エラー、同時実行の問題、セキュリティの脆弱性などの欠陥を特定します。Polyspace Bug Finder では、セマンティクス解析などの静的解析を使用して、ソフトウェア制御、データ フロー、および手続き間の動作を解析します。欠陥を検出して直ちに強調表示することにより、開発プロセスの初期段階でバグを重大度により順位付けし、修正を行うことができます。

Polyspace Bug Finder は、MISRA C®、MISRA C++、JSF++、CERT® C、CERT C++、カスタム命名規則などのコーディング ルール規約への準拠をチェックします。検出したバグやコード ルール違反、および循環的複雑度などのコード品質メトリクスから構成されるレポートを生成します。Polyspace Bug Finder は、Eclipse™ IDE と共にデスクトップでのコード解析に使用できます。

自動生成されたコードについては、Polyspace の検証結果を Simulink® モデルおよび dSPACE® TargetLink® ブロックまで遡って追跡できます。

業界標準には、IEC Certification Kit (for ISO 26262 and IEC 61508)DO Qualification Kit (for DO-178) によって対応しています。

Bug Finder の全ドキュメンテーション

すべてのワークフローを確認します。たとえば、以下があります。

  • 解析の設定。

  • 検証結果のレビューとレポートの生成。

解析オプション (PolyspaceBug Finder)

解析前に構成するオプションを確認します。たとえば、以下があります。

  • ターゲットおよびコンパイラ オプション。

  • 調査する欠陥。

検証結果 (Polyspace Bug Finder)

解析から取得する検証結果を確認します。たとえば、以下があります。

  • 欠陥。

  • コーディング ルール。

リリース ノート (Polyspace Bug Finder)

各リリースの新機能を確認します。

デスクトップ特有のワークフローについては、以下を参照してください。

Polyspace Bug Finder と Polyspace Code Prover の違いも参照してください。

Polyspace Code Prover

Polyspace Code Prover™ は安定性の高い静的解析ツールで、C および C++ ソース コード内のオーバーフロー、ゼロ除算、配列の範囲外へのアクセスおよびその他のランタイム エラーの有無が証明されます。プログラムの実行、コード計測またはテスト ケースを必要とすることなく、結果が生成されます。Polyspace Code Prover では、セマンティクスの解析および形式的手法に基づく抽象的な解釈が使用され、ソフトウェアの手続き間のフロー、制御フロー、およびデータ フローの動作が検証されます。また、手書きのコード、生成されたコードまたはその 2 つの組み合わせの検証に使用できます。各コード ステートメントは色分けされ、ランタイム エラーなし、エラーと証明、到達不能、または未証明のいずれかであることが示されます。

Polyspace Code Prover では、変数および関数の戻り値の範囲情報が表示され、指定された範囲限界値を超えた変数を証明できます。コード検証の結果を使用して品質メトリクスを追跡し、ソフトウェア品質目標との一致をチェックできます。Polyspace Code Prover は Eclipse IDE と共に使用して、デスクトップ上でコードを検証できます。

業界標準には、IEC Certification Kit (for IEC 61508 and ISO 26262) と DO Qualification Kit (for DO-178) によって対応しています。

Code Prover の全ドキュメンテーション

すべてのワークフローを確認します。たとえば、以下があります。

  • 解析の設定。

  • 検証結果のレビューとレポートの生成。

解析オプション (Polyspace Code Prover)

解析前に構成するオプションを確認します。たとえば、以下があります。

  • ターゲットおよびコンパイラ オプション。

  • 検証の前提条件に関連するオプション。

検証結果 (Polyspace Code Prover)

解析から取得する検証結果を確認します。たとえば、以下があります。

  • 実行時チェック。

  • グローバル変数の使用。

リリース ノート (Polyspace Code Prover)

各リリースの新機能を確認します。

デスクトップ特有のワークフローについては、以下を参照してください。

Polyspace Bug Finder と Polyspace Code Prover の違いも参照してください。

Polyspace Bug Finder Server

Polyspace Bug Finder Server™ は、ランタイム エラー、同時実行に関する問題、その他のコーディングの欠陥など、C および C++ で一般的なバグを特定する静的解析エンジンです。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 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 が含まれます。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 特有のワークフローについては、以下を参照してください。