メインコンテンツ

Polyspace を使用したコード複雑度メトリクスの計算

このトピックでは、すべてのコード複雑度メトリクスを計算して、指定されているしきい値を超えているメトリクスを確認する方法を説明します。しきい値を超えているメトリクス値のみを確認するには、ソフトウェアの複雑度のガイドラインを確認してください。Polyspace チェッカーを使用してソフトウェアの複雑度を低減するを参照してください。

コード複雑度メトリクスとは、C/C++ プログラムの複雑度を数量化する数値のセットです。次に例を示します。

  • 循環的複雑度が高い関数では含まれている分岐の数が多すぎる。

  • return ステートメントの数が多い関数では終了点の数が多すぎる。

複雑なプログラムは、デバッグ、解析、テスト、保守を行うのが困難です。複雑度が高くなりすぎないようにするため、コーディングの段階で複雑度メトリクスに制限を適用します。

Polyspace® はコード複雑度メトリクスの計算を既定では行いません。解析時に計算を行うには、オプション [コード メトリクスの計算] (-code-metrics) を使用します。

解析後、本ソフトウェアはプロジェクト メトリクス、ファイル メトリクス、および関数メトリクスを [結果のリスト] ペインに表示します。計算されたメトリクスの値を事前定義された範囲と比較できます。メトリクスの値が範囲を超える場合、コードを再設計してメトリクスの値を下げることができます。たとえば、呼び出される関数の数が多く、それらの関数の一部が常に一緒に呼び出されている場合、それらの関数の本体を結合した 1 つの関数を作成できます。一緒に呼び出される関数のグループの代わりに、その 1 つの関数を呼び出します。

メトリクスの範囲設定

特定のしきい値を超えるコーディング メトリクスをチェックするには、Polyspace ユーザー インターフェイスでガイドライン チェッカーを使用します。ガイドライン チェッカーは、Polyspace Bug Finder™ でサポートされるコード メトリクスに対応しています。サポートされているコード メトリクスでの許容値を指定し、指定した値を超えるコードがないかチェックできます。

ガイドライン チェッカーを有効にしてしきい値を指定するには、[チェッカーの選択] ダイアログ ボックスを使用します。詳細については、Polyspace チェッカーを使用してソフトウェアの複雑度を低減するを参照してください。ガイドライン チェッカーのリストについては、ガイドラインを参照してください。

メトリクスの範囲設定 (サーバー製品および Access 製品)

Polyspace Access™ Web インターフェイスでは、コード複雑度メトリクスの範囲が事前定義されています。[ダッシュボード] パースペクティブで、[コード メトリクス] を選択する場合、[コード メトリクス] ウィンドウにメトリクスの値と範囲が表示されます。

使用されている範囲を求めるには、HIS コード複雑度メトリクスを参照してください。

Polyspace Access Web インターフェイスのコード メトリクス ダッシュボード (Polyspace Access)も参照してください。

参考

トピック