Lattixのテクノロジー 〜DSMとは〜
Lattixは、DSMアプローチをベースにしています。DSMとは、Dependency Structure Matrixの略であり、繰り返しやフィードバックが多い開発プロセスをわかりやすく表現するために開発された、プロセス改善のための分析技法です。DSMは、1968年にDonald Steward氏によって開発され、以後、マサチューセッツ工科大学、ハーバード大学、イリノイ大学などの数多くの大学で研究が続けられ、ここ10年の間、Boeing、Lockheed Martin、Intelなどの企業において、多様な分野で幅広く用いられてきました。
DSMを利用することで、これまでは分析が困難だったシステムの依存関係をより直感的に可視化・分析することが可能になります。
DSMを利用することで、これまでは分析が困難だったシステムの依存関係をより直感的に可視化・分析することが可能になります。
Lattixは、DSMをソフトウェアアーキテクチャの分析に適用した初めてのツールです。ソフトウェアアーキテクチャの構造分析を行い、サブシステム間の依存関係を簡潔な表形式(マトリクス)で表現します。
DSMの基本的な考え方
DSMは、ソフトウェアのモジュール構成を展開して、それぞれの依存関係をマトリクス表示します。この図は、あるシステムが、Module A、B、C、D、Eの5つのモジュールで構成されていることを示しています。そして、モジュール間の依存関係を「X」で表示しています。Module Aの依存関係は列1に表示され、2行目、3行目、4行目に「X」があることで、Module Aが Module B、C、Dに依存していることがわかります。 上記のDSMに示されているすべての依存関係は次のようになります。
- Module Aは Module B、C、Dに依存します。
- Module Bは他のモジュールに依存しません。
- Module Cは Module A、Bに依存します。
- Module Dは Module Bに依存します。
- Module Eは Module B、C、Dに依存します。
この例はDSMの概念を示すためにシンプルにしてありますが、実際のDSMはもっと大きくなります。 しかし、このアプローチの主な利点の1つは、可視化と保守性に優れている点で、より柔軟に拡大縮小できることなのです。これに対して、これまでの有向グラフという表現方法 (サブシステムを四角形で、サブシステム間の依存関係を矢印で表す) は、規模が大きくなるにつれて乱雑になり、理解するのが困難になります。 DSMでは、ソフトウェア構造 (編成) と依存関係の情報がマトリックスで表示されるため、直感的でわかりやすく、ソフトウェアのアーキテクチャの理解および保守が容易になります。
DSMによる分析
DSMを用いてソフトウェアアーキテクチャをモデル化する作業は、繰り返しのプロセスです。 この作業には、システムのドメインについての知識と、アーキテクチャを確認するためのDSMテクニックの知識が必要です。 DSMの作成において重要なのは、正しいシステムの構成を見い出す作業です。この作業には、以下のようなステップがあります。- 全体構造の俯瞰
通常使用されるダイアグラムでは困難な全体構造の俯瞰、モジュール間の関連の俯瞰
- 階層化状態の評価
ソフトウェアを構成するモジュール・コンポーネントなどが適切に分割されているかの評価
- 循環依存の発見
循環している依存関係の発見
イベント・セミナー
アーキテクチャ分析ツール Lattixに
関するお問い合わせ
テクマトリックス株式会社
東京本社ソフトウェアエンジニアリング事業部
03-4405-7853
- メールでのお問い合わせ
- lattix-info@techmatrix.co.jp