DSM - Dependency Structure Matrix

いつのEAPビルドから出来るようになったか忘れたが,IDEAのDSM分析の使い方がわかってきた。というか,使い方は「DSM Guide(PDF)」に書いてあるんで,ようやっと書いてることが理解できた。というのが正しい。


DSM(Dependency Structure Matrix)ってのは,寡聞にして知らなかったのだが,ソフトウェア(パッケージとかクラスとか)の依存関係を表すマトリックスなんだそうな。実際に見た方がわかりがいいだろう。


こんな感じで,モジュールの一覧が表示され,行からは自身に依存している相手とその依存数,列からは自身が依存している相手とその依存数が読み取れる(循環参照もわかる)。これ,なかなか見やすくて良い。

ちゃんとガイド読んでなかったんで,最近気付いたのが,特定の行を選択し「Limit Scope To Selection」を選ぶと,その対象だけのDSMを描いてくれる。これが,すごく便利で,やっとDSMの使い方に目覚めたというワケだ。

    ↓


もともとIDEAには,いろんな依存分析方法があるんだけど,どれもイマイチ閲覧性がよろしくなくて使ってなかったけど,DSMは見やすくて良い。まあ,依存分析したからって,何がどうなるワケではないが,リファクタリングするときに判断材料には使えるかな。あとは,人様のコードを分析するときにも,役に立ちそう。


ps.
↓たくさんあって,使いこなせないIDEAの分析メニュー。:-)