McCabe Complexity measure に類似したメトリックがあり、ルーチンの凝集度を測定し、ルーチンが同じコードベースの他のコードにどの程度緩く(または密に)結合しているかを測定しますか?
あなたが探しているメトリックはLCOM4だと思いますが、それはクラスにより多く適用されます。
ソナーはそれをうまく説明しています ここ :
... metric:LCOM4(Lack Of Cohesion Methods)は、凝集性クラスの程度を測定します。この指標の解釈は非常に簡単です。値1はクラスに1つの責任(良好)しかないことを意味し、値XはクラスにおそらくXの責任(不良)があることを意味し、リファクタリング/分割する必要があります。
ここには魔法はなく、常識のみです。 Driverクラスの簡単な例を見てみましょう。このクラスには、CarとBrainの2つのフィールドと、drive()、goTo()、stop()、getAngry()、drinkCoffee()の5つのメソッドがあります。これらのコンポーネント間の依存関係グラフを次に示します。関連するコンポーネントには3つのブロックがあるため、LCOM4 = 3なので、クラスには3つの異なる責任があり、単一の責任の原則に違反しているようです。
...
使えるなら素晴らしいツールです。 :)
不安定性は、さまざまなコードメトリックツールでサポートされています。