UMLやSysMLなどのモデリングは“いつ”“何を”“どうするのか”:プロジェクトを成功させるモデリングの極意(3)(5/8 ページ)
「モデリングはいつ誰が何をどのようにするのか」――今回はソフトウェア開発の現場で、モデリングを実際にどのように実施しているのか見ていきましょう。またUMLやSysMLの使いにくいところを、開発現場ではどのようにカバーしているのかも見ていきます。
工程別のモデリング
ここではウォーターフォール型開発で、工程別に使われるモデリングやモデル図を紹介します。ここで使ったモデリング名も個人によって、各組織や教科書、ツール、手法によって異なるかも知れませんが、例として考えてください。
図4に示すよう、企画・戦略工程ではビジネスモデリングを行います。要件定義では要求モデリングを行い、システムの概念モデル(機能モデル)を作ります。その粒度は概要モデルになります。システム分析とアーキテクチャ設計のときは、アーキテクチャモデリングを行い、分析モデルやアーキテクチャ設計モデルを作ります。粒度は仕様モデルのものになります。設計工程では設計モデリングを行い、設計モデルを作ります。粒度は仕様モデルから詳細モデルになります。
図5にUMLでモデリングをするときに作る工程別のモデル図を紹介します。要件定義のときは、概要レベルのユースケース図やそれを補間するシナリオ記述、アクティビティ図を描きます。システム分析やアーキテクチャ設計のときは仕様レベルのクラス図やシーケンス図を分析モデル・設計モデルとして記述します。設計では仕様モデルから詳細レベルのクラス図やシーケンス図、その他の図を描いて設計モデルを作成します。
図6にSysMLでモデリングをするときに作る工程別のモデル図を紹介します。要件定義のときは、UMLで記述した概要レベルのユースケース図やそれを補間するシナリオ記述、アクティビティ図も描きますが、それに加えて、要求図を描きます。システム分析やアーキテクチャ設計のときは図の名前が違っているものもありますがUMLと同様です。設計ではUMLと同様にクラス図やシーケンス図なども描きますが、新たに必要に応じて、パラメトリック図も描きます。
ここで言いたいことは、それぞれの工程で必要なものだけを、必要な粒度で描き、求められる目的に向かって描くことになります。
Copyright © ITmedia, Inc. All Rights Reserved.