RSA V8にみる最新UMLモデリング
インフラストラクチャーもMDDで
皆さんはインフラ(基盤)をどのように設計していますか?Excel, PowerPoint, Visio・・・多くの場合、オフィスツールを使用していると思います。設計後のインフラ構築では、この設計書を確認しながら、新たに設定ファイルなどを作成している。その一方でアプリ側はUMLツールでモデリングし、MDDを積極的に取り入れている。インフラ側でもMDDを見据えたモデリングを採用できないのでしょうか?
ここで図2を見てください。実はこれRSAのモデリング機能の1つで、デプロイメント・トポロジー・モデルといいます。この図はテスト環境へのアプリケーションのデプロイ計画を描いているのですが、ここから以下のようなことが読み取れます。
- Windowsサーバー上に、WAS 7.0とDB2 9.7がインストール済み
- WAS 7.0にDB2用のJNDI名:jdbc/CreditDBというデータソースを設定する
- DB2のTESTDB2データベースに対し、CreditDBというDDLを実行する
- WAS 7.0には1つのEARと1つのWARをインストールする
図2:RSA V8のデプロイメント・トポロジー・モデル(クリックで拡大) |
見た目にわかりやすい上に、JNDIの制約など細かなインフラ設定までもしっかりとモデリングできています。また、単にモデリングするだけでなく、その後ターゲットサーバーへのデプロイにも活用することも想定されています。これにより、インフラストラクチャーでもMDDを実践することができます。
将来的にはRational Build Forge用のデプロイ計画として利用できる予定です。またBuild Forgeと連携してIBMクラウドへのデプロイの自動化も計画されています。クラウドをツールでモデリングできるって魅力的だと思いませんか?
ITの動的モデルをシミュレーションする
今年の4月から6月まで社内の勉強会に参加していました。テーマは「アプリケーション・コンポーネントのインフラへの配置をRSA V7.5を使ってモデリングする」です。図2よりも、もう少し上流の論理的なモデルを作成していたのですが、静的な配置図を描くだけでなく、それに加えて各コンポーネントのやり取りをシーケンス図で補足していました。
チェックポイントごとにこのモデルが実現可能かウォークスルーをするのですが、そのために配置図をイメージ画像にエクスポートし、PowerPointに貼り付けて各コンポーネント間を矢印と呼ばれる順番(数字)で記述していました。配置図1つであればよいのですが、数十のケースある時にはその作業の膨大さに頭を抱えたものです。
RSA V8では「動的モデルのシミュレーション」が提供されました。図3はデプロイメント・トポロジー・モデルをシミュレーションしたものです。勉強会があと半年遅ければこの機能が使えたのにと悔やまれます(笑)。また、実行するだけでなく、ブレークポイントを使ったデバッグ、ステップ実行、イベント挿入などモデル・レベルでのデバッグが可能です。
この機能はIT分野における、UMLモデリングの強力な支援機能になると筆者は感じています。組み込みだけでなく、ITでも動的モデルのシミュレーションをしませんか?
図3:デプロイメント・トポロジー・モデルのシミュレーション(クリックで拡大) |