連載 :
組み込み製品の品質を高めるシステム設計システム構造の可視化と改善
2010年8月19日(木)
DSMを用いた、システム構造における品質の確認
システムの構造をブロック図として模式的に表現すると、図3の通りになる。各モジュールは信号線で接続されており、片方向または双方向の信号により、結合している。
この図において(①)で示しているように、モジュールWで発生した変更はモジュールYに影響(②)し、モジュールYの変更はモジュールXとモジュールZに影響(③、④)している。このように、一部の変更に伴って別の部分に変更が発生する状態は、システムの構造とモジュール間インタフェースの一貫性を破壊する。この繰り返しが、アーキテクチャを維持できなくなる原因となる。
図3: システムの構造を示したブロック図(クリックで拡大) |
DSMでは、こうしたモジュールの関係を依存関係表として表現し、管理する。モジュールA~Dの関係図(図4の左)を、DSM(図4の右)で示している。
図4: モジュールの関係を依存関係表として表現するDSM |
モジュール関連図において、モジュールAからBへの矢印は、AがBを利用するという関係を示している。すなわち、AはBに処理(制御)を依頼している。
DSMの表は、縦のA~Dが"使われる側"であり、横のA~Dが"使う側"を示している。従って、AがBを利用している部分は、DSM上のA列B行を"x"印で表記する(A→C、C→B、C→Dを、左図では赤矢印とし、DSMでは赤"x"としている)。
これらの図は双方向で変換可能であり、UMLやSysMLによるモジュール構造に関する図があれば、ほぼ自動的に生成できる。また、ソフトウエアの分析に用いる際は、UML図面がなくても、ソース・コードさえあれば、依存関係をより正確に抽出できる。開発現場で作成した設計文書をSysMLを用いて記述することで、DSMによる設計品質の確認が容易かつ正確にできるようになる。
図5: UML/SysMLとDSMは双方向に自動生成可能 |
次ページでは、どのように品質を確認していくのか、その方法を、より具体的に示す。
連載バックナンバー
Think ITメルマガ会員登録受付中
Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。