モデリングの抽象度に応じて、(a1)概要モデル(概念モデル)、(a2)仕様モデル、(a3)詳細モデル(実装モデル)があります。またモデリングの目的に応じて、(b1)概念モデル(機能モデル)、(b2)分析モデル、(b3)実装モデルがあります。またモデリング対象に応じて、(c1)ビジネスモデリング、(c2)要求モデリング、(c3)アーキテクチャモデリング、(c4)設計モデリング、(c5)データモデリングなどがあります。
実施するモデリングの種類を明示してモデリングをしないと、その目的がぼやけてしまいます。例えば、要求モデリングならば「要求を明らかにすること」が第一目的になります。実装などは副次的に必要か、または必要ないものです。
企画・戦略、要件定義、アーキテクチャ設計、設計の各工程で行うモデリングとしては、ビジネスモデリング、要求モデリング、アーキテクチャモデリング、設計モデリング、データモデリングなどがあります。これを第3回記事の図4で紹介していますので、参照してください。またUMLとSysMLに特化した工程別のモデリングもそれぞれ第3回記事の図5と図6で紹介しています。
現在の工程に必要なモデル図を描くようにします。そうしないと無駄なモデル図を描くことになり、また必要なモデル図が存在しないことになります。
アジャイル開発は短期間での作業を繰り返すことを基本とします。このためモデリングもこの期間で必要となるギリギリの最小限のものを作ることになり、この「最小モデリング」の考えが重要になります。
一方、アジャイル開発ではプログラムコードをより価値のあるものとしますが、モデリングとコードは車の両輪みたいなもので、相互補完するべきものです。アジャイル開発ではコードも最小にすべきで、「最小コードと最小モデリングがアジャイル開発の命」になります。
派生開発のモデリングでは、基本部のモデル図からの差分を抽出する必要があります。計画的に派生部のモデリングができていないときは、「図のレイアウトが乱れていて、図が複雑になっているところを見つけること」で派生部が見つかります。これが派生開発でのモデリングのコツになります。
派生開発をアドホックに行っているか、プロアクティブで行っているかで、モデリングの方法も変わってきます。アドホックなモデリングでのコツと、プロアクティブなモデリングのコツは違いますので、どちらで開発しているかで使い分けてください。
Copyright © ITmedia, Inc. All Rights Reserved.