| ポリスペース | |
|---|---|
| 開発者 | マスワークス[ 1 ] |
| 安定版リリース | R2022b / 2022年9月15日 ( 2022-09-15 ) |
| オペレーティング·システム | クロスプラットフォーム[ 2 ] |
| タイプ | 静的コード分析 |
| ライセンス | 独自の |
| Webサイト | www.mathworks.com/products/polyspace.html |
Polyspaceは、 C、C++、Adaプログラミング言語のソースコードにおける特定の実行時エラーを検出、または存在しないことを証明するための、抽象解釈による大規模解析のための静的コード解析ツールです。また、ソースコードが適切なコード標準に準拠しているかどうかもチェックします。[ 3 ]
PolyspaceはもともとフランスのPolySpace Technologies社によって開発され、同社は2007年にMathWorks社に買収されました。[ 4 ]その後、この製品はMATLABに統合されました。
Polyspaceはソースコードを検査し、算術オーバーフロー、バッファオーバーラン、ゼロ除算などの潜在的な実行時エラーが発生する可能性のある箇所を特定します。ソフトウェア開発者や品質保証マネージャーは、この情報を使用して、コードのどの部分に欠陥があり、どの部分に信頼性が実証されているかを特定します。コードのその他の部分は未検証チェックとしてマークされ、個別にレビューする必要があります。[ 5 ] [ 6 ]
MISRA Cなどのコード標準やガイドラインは、コードの品質、移植性、信頼性に焦点を当てています。本製品は、CおよびC++のソースコードがこれらのコーディング標準の規則のサブセットに準拠しているかどうかを検査します。[ 7 ]
この製品ファミリーは、Polyspace Code ProverとPolyspace Bug Finderで構成されています。Code Proverモジュールは、ソースコードに色分けされた注釈を付け、コード内の各要素の状態を示します。[ 8 ]形式手法に基づく静的コード解析を用いて、言語レベルでプログラムの実行を検証します。[ 6 ]このツールは、コード内のあらゆるポイントですべての変数のすべての可能な値を考慮して各コード命令をチェックし、通常の使用状況と異常な使用状況の両方において、コード内の各操作について正式な診断を提供します。[ 9 ]
Bug Finderモジュールは、ソースコードに対して静的プログラム解析を実行することで、ソフトウェアのバグを特定します。数値計算、プログラミング、メモリ、その他のエラーなどの欠陥を検出します。また、ソースファイルのコメント密度、循環的複雑度、関数の行数、パラメータ数、呼び出し回数などのソフトウェアメトリクス、ソフトウェアの実行時エラーの特定といったメトリクスも生成します。[ 10 ]