Polyspace Code Prover

Code Prover の結果とソースコードの色を使用。

重大なランタイムエラーが存在しないことを証明

コードを実行せずに、可能性のあるすべての入力に対してすべてのコードパスを解析します。ランタイム条件にかかわらず、ランタイムエラーが決して発生しないステートメントを特定し、それ以外の注意が必要なステートメントを検出します。

ランタイム条件について指定可能な範囲を示すツールヒントの表示。

ソフトウェア設計とコードの理解度の向上

C/C++ コードの制御フローおよびデータフローを調べ、変数と演算子に関連する範囲情報を確認します。

ロジックおよびプログラム構造のデッドコードを検出。

ソフトウェアのパフォーマンスの最適化

ゼロ除算やオーバーフローなどについて安全かつセキュアな演算を特定することで、防衛的コードを削除します。あらゆる実行パスを介しても到達できないコード分岐を検出します。ロジックやプログラム構造のエラーを検出し、それらを削除することで、メモリフットプリントを縮小します。

[変数アクセス] 表示ペイン。

グローバル変数の使用の解析

タスクやスレッドで共有される変数など、グローバル変数の読み取り/書き込み操作のデバッグに費やす時間を短縮します。
同時アクセスグラフを使用して、データレースの問題につながる制御フローおよびデータフローを理解します。コードを最適化するために、使用していないグローバル変数を特定します。

それぞれに安全規格が表示された複数の六角形。

認証サポート

業界標準の認証プロセスを完了するために必要なアーティファクトを作成します。IEC 61508 および ISO 26262 規格に準拠した使用のための、TÜV SÜD 認証を取得しています。DO-178C プロセスには、レポートとアーティファクトを使用します。

[変数アクセス] 表示ペイン。

Simulink および Stateflow との統合

生成されたコードに対して解析を実行し、得られた調査結果をソースの Simulink モデルブロックおよび Stateflow チャートにトレースできます。Simulink 環境から Polyspace® 解析を起動します。

デスクトップでの対話形式の解析。

デスクトップでの対話形式の解析

ソフトウェア プロジェクト全体またはサブセットに対して静的コード解析を実行します。デスクトップツールを使用してレポートを作成し、結果を確認して問題を重大度により順位付けします。
デバッガーに似たビューを使用して、ランタイムエラーにつながる各ステートメント内をステップバイステップで移動し、複雑なバグの根本原因を見つけます。60 以上の C および C++ コンパイラのネイティブサポートと、プロジェクトのビルドシステムから抽出された Polyspace 解析の自動セットアップを使用して、プロジェクトを整理し構成できます。

コードを背景に表示されたセキュリティバッジ。

静的アプリケーション セキュリティ テスト

バッファー オーバーフロー、メモリアクセス、数値オーバーフローなどの重大なセキュリティの脆弱性が存在しないことを証明します。コードを実行せずに、すべてのコードパスと入力でコードを解析することにより、ファズテストの必要性を削減します。

影響分析

影響分析

指定されたグローバル変数やローカル変数が他の変数や特定のステートメントに与える影響を形式的に追跡し、検証します。OBD 関連ソフトウェアに関する CARB からの要件を満たすための信号解析、ISO 26262 のコンテキストで干渉がないことの証明、およびキャリブレーション パラメーターの影響分析を行います。ソフトウェア セキュリティのコンテキストでは、汚染解析を実行し、機密データフローを追跡します。