Ksenia (Ryndina) Wahler氏、Jochen Kuester氏およびAurelien Monot氏がAlphaWorksから「Object Lifecycle Explorer」(source)for IBM WebSphere Business Modeler(トライアル(source)バージョンが利用可能 [1])と呼ばれている実験的Eclipseプラグインをリリースした。Object Life Cycle Explorer for WebSphere Business Modelerは、プロセスおよびオブジェクトライフサイクルモデリングを統合するためIBM Zurich Research Laboratoryで開発された複数の技法を実装 する。
Object Lifecycle(またの名をState Machine)の概念は、方法論とプログラミングの概念(参考記事)の両方の観点から発生する。たとえば、Praxeme Enterprise Methodologyはこの概念に大いに依存しているが(source)、IBM Process ServerおよびMicrosoftのWorkflow Foundationは、組織化に変換可能な状態マシン形式を提供する。
以下のようにKsenia氏は述べる。
ビジネス上の目標を達成する一部として、一般的にビジネスプロセスは複数のビジネスオブジェクトを巧みに扱い、プロセスが進行するにつれて、その状態を一変させる。
1つのビジネスオブジェクトが展開していく状態を理解するには、モニターしたり、管理したり、コンプライアンスの目的などを必要とすることが多いが、複雑なプロセスからそのようなオブジェクトライフサイクルの情報を正しく引き出すことは難しい。
IBM Business State Machineメタモデルに基づき、以下の内容のObject Lifecycle Explorerを開発した。
- モデリングおよび可視化を可能にする
- ビジネスプロセスモデルからオブジェクトライフサイクルを抽出する
- オブジェクトライフサイクルに対するプロセスモデルの整合性を確認して、非整合の状態変化を特定する
- オブジェクトライフサイクルからプロセスモデルを生成する
特に、オブジェクトライフサイクルとビジネスプロセス間において決定論的関係を築く。
そしてプロセスモデルのアクティビティーをオブジェクトライフサイクルの状態遷移にマップし、各ライフサイクルの最初と最後の状態を特定する変換ルールを適用することで、オブジェクトライフサイクルが抽出される。
昨年Jochen Kuester氏とその同僚によって発表された研究結果(PDF・英語)には、以下のようなことが書かれている。
IAA [IBM Insurance Application Architecture]での試みによって、かなり大きなリファレンスモデルのアプローチの実行可能性明らかになった。全体的に見ると、われわれのソ リューションはプロセスとオブジェクトモデリング間のギャップを埋めるのに一役買ったと見ることができる。
状態マシン形式はまだたいてのデベロッパには目新しく、一般には使用されていない。こんにち、ビジネスオブジェクトに固有であるすべての状態と遷移は、臨 時の形式を使用するか、形式をまったく使用せずに、どことなくハードコーディングされている。特に、Model-View-Controllerパターン を使用するとき、正式な方法でコントローラーのアクションをモデルの状態と関連付ける試みがない。Object Lifecycle Explorerのようなツールがこの形式の重要性と簡易性の両方の中継に役立つことを期待することができる。
[1] プラグインは簡単にWBMトライアルバージョンにインストールでき、完全なチュートリアルが付属している。