モデリングの新潮流 1

最新モデリング動向

仮想化としてのモデリングThink ITの2008年4月の特集「伝わる!モデリング」では、さまざまな角度からモデリングを取り上げています。本連載では、モデリングの最新動向や話題の最新技術などを紹介していきます。第1回はモデリングの最新動向について説明しましょう。UMLも(実はXMLも)登場してから

羽生田 栄一

2008年4月7日 20:00

仮想化としてのモデリング

Think ITの2008年4月の特集「伝わる!モデリング」では、さまざまな角度からモデリングを取り上げています。本連載では、モデリングの最新動向や話題の最新技術などを紹介していきます。第1回はモデリングの最新動向について説明しましょう。

UMLも(実はXMLも)登場してから早や10年が過ぎ、モデル表記法としてはソフトウェア業界を中心に定着・常識化しつつあるといえます。

一方、モデリングの技法やそれを実践するスキルが普及したかというとやや心もとない気がします。ソフトウェア設計でコーディングの前に UMLでポイントを描いて確認するという使い方だけに留まらず、システム分析やビジネスプロセスの改善にもモデリングを活用するといった「モデリング・マ インド」の浸透が今後さらに必要です。

具体的には、経営課題の解決のためのIT化の要求との関係を確認する手段として、ある事業部のビジネスプロセスをモデリングをする、あるい は経営者たちが自分達の戦略を見直すためのベースとして現状を見える化するためにモデリングする、といった利用方法です。現実は、UMLのダイアグラムの 知識が若干普及したかな、という程度の感触でしょうか。

ただ一方でモデルの威力(上流における仮想化の力!)に気づいて対応を進める組織的な活動もいくつか始まっています。特にビジネス分野での プロセスモデリングとSOAを繋げていく動きと、製造業を中心にシステムエンジニアリング全般にモデル駆動の考え方を適用しようという動きです。ここで は、それらを全体としてどう位置付けて理解すればよいかを簡単にご紹介していきたいと思います。

図1:最新モデリング動向の見取り図
(画像をクリックすると別ウィンドウに拡大図を表示します)

モデリング動向の見える化

ここでは、近年のモデリングに関わる大きな動きを見える化してみましょう。図1では縦方向が「概念的なアプローチ⇔実現技術」の軸を示しま す。横方向がドメインの違いを示し、左が「製造業・モノづくり」で右が「経営・組織づくり」の軸です。上半分(第2象限、第1象限)が要求モデリングを表 わし、下半分(第3象限、第4象限)が設計・実装モデリングを表わします。

とりあえず、中心にUMLを置きました。いろいろ問題はあるにせよ、現在、汎用的なモデリング言語の標準といえるものは他に考えられないか らです。そしてそのUMLを広く包むようにMDA(Model Driven Architecture)を置きました。モデルを使って分析/設計する、システム検証する、コード生成するというモデル駆動ないしはモデルベースエンジ ニアリングの考え方が今後のITの中核に位置づけられるという思いからです。

第1象限にビジネスモデリング(BM)とその記述言語(UML、BPMN)が、第2象限にシステムエンジニアリング(SE)とその記述言語 SysMLが入ります。第3象限には組み込みリアルタイム設計のための技術(MARTE)およびモノづくりのための戦略的なソフトウェア資産マネージメン ト手法であるプロダクトラインエンジニアリング(PLE)が、第4象限にはビジネスモデルを実際に実現するためのエンタープライズアーキテクチャ(EA) やサービス指向アーキテクチャ(SOA)が入ることになるでしょう。

第1、2象限はどちらもある産業の対象(部品、製品、装置、業務、組織)をシステムとしてきちんと捉えなおしてモデルを構築することで、エ ンジニアリングの対象として取り扱う試みと位置づけられます。システムエンジニアリングもビジネスモデリングもともに今後大きなうねりになっていくことで しょう。

一番下のほうに横に広がる形で「仮想化技術」を配置しています。「仮想化(virtualization)」は今後、アプリケーション、言 語、プロセス、CPU、メモリ、外部記憶、通信を含めて広く技術が発展し、ゆくゆくは世界全体の計算資源をある意味で「サービス」として利用可能にするだ ろうと考えます。このことは、SOAを真の意味で実現するためにも非常に重要なことです。EAを実現するにもこの仮想化の視点は欠かせないでしょう。 SOAにおけるサービスは、こうした仮想化の最終APIということができるのではないでしょうか。

DSL(Domain Specific Language)もそういう意味ではモデリング言語の仮想化の試みといえます。DSLは、対象業務に登場する概念やその業務の構造に特化したモデル要素 を言語として提供します。ただ毎回そのような言語を用意するのも、また利用する側でもその言語を覚えるのも大変ですから、できれば汎用の言語に埋め込む形 で軽量にお手軽に扱えるDSLが望ましいのです。そこで最近では汎用のプログラミング言語であるRubyやGroovy、Scala、Java(やや難し いですが)などに埋め込む形でDSLを設定するという動きが出てきています。

またDSLの動きは、以前のMDA(モデル駆動アーキテクチャ)と組み合わさって、ソフトウェアファクトリというアプローチにも繋がってい ます。DSLコンパイラとプラットフォーム依存のPSM(プラットフォーム依存モデル)を組み合わてモデル管理することでトータルの生産性をあげようとい う試みです。

さらに形式化手法もMDAを補強する上で重要な技術です。モデル要素間の制約を正確に表現したり、モデルを正確に記述することで整合性や要求仕様の検証をモデル上で実行することが可能になります。

この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る