Software package metrics とは

モジュラープログラミングでは、さまざまなソフトウェアパッケージメトリックが使用されます。彼らはロバートセシルマーティン(Robert Cecil Martin)が2002年に出版したアジャイルソフトウェア開発の原則、パターン、実践の中で言及されています。
ソフトウェアパッケージという用語は、オブジェクト指向プログラミングにおける関連クラスのグループを指します。
 クラスおよびインタフェースの数:パッケージ内の具象クラスおよび抽象クラス(およびインタフェース)の数は、パッケージの拡張性の指標です。求心性結合(Ca):パッケージ内のクラスに依存する他のパッケージ内のクラスの数は、パッケージの責任の指標です。求心性カップリングは内向きに信号を送る。エフェメントカップリング(Ce):パッケージ内のクラスが依存する他のパッケージ内のクラスの数は、パッケージの外部性への依存性の指標です。偶然のカップリングは外側に信号を送る。抽象度(A):分析されたパッケージ内の抽象クラス(およびインタフェース)の数と分析されたパッケージ内のクラスの総数との比。このメトリックの範囲は0〜1です.A = 0は完全な具象パッケージを示し、A = 1は完全抽象パッケージを示します。不安定性(I):I = Ce /(Ce + Ca)となるような全カップリング(Ce + Ca)に対する遠心性カップリング(Ce)の比。このメトリックは、変更するパッケージの回復力の指標です。このメトリックの範囲は0〜1であり、I = 0は完全に安定したパッケージを示し、I = 1は完全に不安定なパッケージを示す。主系列からの距離(D):理想線A + I = 1からのパッケージの垂直距離。DはD = A + I – 1 |である。このメトリックは、抽象度と安定性の間のパッケージのバランスの指標です。メインシーケンス上に正方形のパッケージがその抽象性と安定性に関して最適にバランスされています。理想的なパッケージは、完全に抽象的で安定しています(I = 0、A = 1)か完全にコンクリートで不安定です(I = 1、A = 0)。このメトリックの範囲は0から1であり、D = 0はメインシーケンスと一致するパッケージを示し、D = 1はメインシーケンスからできるだけ遠いパッケージを示す。パッケージ依存サイクル:パッケージ依存サイクルは、パッケージ依存サイクルに参加するパッケージの階層パスとともに報告されます。