Skip to main content
Subnavigation

メトリクス

ソフトウェアメトリクスは、コードの品質を維持し、保守性を高めるのに役立ちます。

ソフトウェアメトリクスの精度を高め、静的解析で問題を予防

コードがソフトウェアの劣化の影響を受けないようにする方法の一つは、事前に定義されたルールに従うことです。

静的解析ツールAxivion Suiteには、一般的なソフトウェアメトリクスに関するルールセットが含まれています。これには、行やトークンに基づくメトリクス、ネスティング、サイクロマティック複雑度、制御フロー、あるいはHalsteadなどのソフトウェアメトリクスのルールセットが含まれています。HISのようなルールセット全体もサポートされています。HISのようなルールセット全体もサポートされています。

さらに、Axivion Suiteのルールエディタを使用すれば、いつでも独自のルールを追加できます。

静的解析ツールAxivion Suiteに含まれるメトリックルール

  • LOC (Lines Of Code): コード行数
  • ネスティング: 関数内の最大ネスト数をカウントします。
  • McCabe 循環的複雑度: グラフの制御フローにおいて、複数の後続ノードを持つノードの数をカウントします。switch文内のすべての空でないcase文がカウントされます。
  • McCabe Switch 複雑度: 前述のように、ここでは各switch~caseが1回だけカウントされます。
  • 循環的複雑度(拡張):ブール演算子を複雑度の指標に組み込むものです
  • NPath: 関数内で実行される可能性のあるパスの数をカウントします。
  • Number of  of Invocations: ルーチン内の関数コールの数をカウントします。
  • Number of Parameters: 関数のパラメーターの数をカウントします。
  • Statements: 関数内のステートメント数をカウントします。
  • Comment: 関数内のコメントを含む行数を数えます。
  • Metric Comment Density: 関数内のコメント密度(関数の前と関数内のコメント/ステートメント数)を計算します。
  • Halstead メトリクス

メトリクスのモニタリング方法がわからない場合

既存のルールのチェックを導入する必要があるか、独自のルールを追加したい場合でも、Qt がサポートします。
具体的な利用シナリオについてご相談したい場合やデモのスケジュールを調整したい場合は、お気軽にお問い合わせください。

お問い合わせ

Axivion Suite

詳細を読む

Axivion Suite
機能と基本仕様

資料をダウンロードする

デッドコード解析

詳細を読む

欠陥解析

詳細を読む