メトリクス

Understand

Lattix/Understandのメトリクスをデータ分析してみた(Understandメトリクスの簡単な可視化・分析)

はじめに 本シリーズではLattixとUnderstandのメトリクスを活用した様々な分析方法を、分析スクリプトとして紹介しております。前回のテーマ(Sturtevantの構造複雑度を使用したメトリクス分析)に続き、今回は分析スクリ...
2023.09.01
Understand

Understand 5.1 バージョンアップ版の新機能・改善点 – 既存機能の拡張

Understand 5.1 バージョンアップ版 (Build 1022) では、既存機能にいくつかの拡張がおこなわれました。 メトリクス詳細説明の拡張検索機能の適用範囲の拡張プロジェクトレポート (HTML) の拡張 ...
Understand

C言語プリプロセッサ定義に基づく解析

Understand では、#ifdef 等のプリプロセッサ定義により、マクロ有無を判定し、マクロが有効なコード部分に対して解析をおこないます。下記の機能などで、#ifdef 等を認識した解析結果を確認することができます。 グラフィ...
Understand

メトリクスブラウザーでファイル、関数ごとのメトリクスを確認する

Understandでは、「メトリクスブラウザー」の表示により、個々のエンティティ(ディレクトリ、ファイル、関数など)に関するメトリクスを一覧で確認できます。今回は「メトリクスブラウザー」の表示方法と機能について紹介します。 ...
Understand

メトリクスの計測方法 | CountPath パス (経路) 数

Understand で取得可能なメトリクス CountPath は、有効/到達可能なコードに基づく、実行可能パス数を計測し、メソッドの経路の複雑さを表す指標です。ただし、exit や goto 文で終了するケースは計測の対象外となり、カ...
Understand

本質的複雑度 (Essential) の縮退アルゴリズム

以前、「本質的複雑度の評価」についてご紹介しました。 今回は、本質的複雑度の縮退アルゴリズム(折り畳みの仕組み)について、サンプルコードを用いて紹介したいと思います。 構造の例は、前回と同じです。この構造では、do-while...
Understand

Understand 3.0 新機能 – メトリクスツリーマップ

Understandのメトリクス測定について、以前ご紹介したメトリクスツリーマップの新機能をご紹介します。 Understand 2.6 ではファイル単位のメトリクスに対するツリーマップの生成に対応していました。そして、お伝えしてい...
Understand

本質的複雑度の評価

以前、Cyclomatic複雑度によるソースコードの品質評価についてご紹介しました。 Cyclomatic複雑度についてはご存じの方も多く、利用機会も多いメトリクスかと思います。 では、同じCyclomatic複雑度「6」を持...
Understand

Count系メトリクスのカウント方式

Understand では、Count 系メトリクスを含む、多くのメトリクスを計測できます。今日は、これらの Count 系メトリクスがどの様に測定されているかを紹介します。 以下の例は、簡単な C/C++ において、それぞれの C...
Understand

ソースコードの複雑さの評価

Understandのメトリクス機能は、ソースコードの品質を定量的に評価する機能です。Understandは70種類以上の項目で指標値を算出します。そして、その中で最もよく使われる項目の一つが「Cyclomatic複雑度」です。 C...
タイトルとURLをコピーしました
Close Bitnami banner
Bitnami