実行可能モデル

実行可能モデル

最近、モデル駆動型開発アプローチの世界では、実行可能モデルを「Executable Model」と呼び、実行可能モデルを設計することを「Executable Design」と呼び始めています。BPMNにおいても、ビジネス・プロセス・モデリングの最終成果を実行可能モデルと呼んでいます。

実行可能モデルの構造は、分析モデルと比べて、視覚的にはほとんど変わりません。"間違い探しゲーム"のように、あえてビジュアルな変化を挙げるとすれば、"人の作業"の前後に"システムの作業"が追加されている場合があることです。

実行可能モデルの作成を担当するシステム・アーキテクトは、"システムの作業"の実行可能性を評価しながら、対象のプラットフォームやサービス部品ごとに最適なシステム連携方法を考え、モデルを改良することになります。

システム・アーキテクトの主な設計作業は、BPMN図形要素の裏に隠れている属性(実装仕様)を定義することです。

例えば、"人の作業"では、ロールに割り当てられた人が入出力するデータ項目を定義します。"システムの作業"では、サービス・インタフェースのデータ項目を定義します。このほか、ひし形図形で示す"条件判断"に必要なデータ項目と条件式も定義します。

これらのデータ項目は、プロセス変数またはプロセス・データ・オブジェクトと呼ばれます。BPMSがプロセスを起動するたびに、メモリー空間上にデータ・プールとして、これらの記憶領域を確保します。つまり、プロセス上の作業の流れとは、「データを適切な人やシステムから収集し、適切な人やシステムに配信する」コントロール・フローという見方も成り立ちます。

詳細は後述するBPMN 2.0では、これらの詳細な実装仕様を、以下の言語で定義するように規定しています。

  • データ・タイプ定義言語はXMLスキーマ
  • サービス・インタフェース定義言語はWSDL
  • データ・アクセス言語はXPath

データ・モデル

プロセス・モデルは、プロセスを視覚化します。しかし、取り扱うデータ項目やデータ構造までを一緒に視覚化することは困難です。このため、実行可能モデルでは、データ・モデルが別途必要になります。

データ・モデルとは、データ・プール内で保持するデータに対する型と構造の定義です。データベースの設計モデルではありません。

システム・アーキテクトは、プロセスの入出力対象となるデータ・オブジェクト(図8の例では、"見積もり依頼"と"見積もり回答"が相当)を分析し、このデータ・オブジェクトを構成するデータ項目の型と構造を、XMLスキーマ・ファイルに定義します。

XMLスキーマで定義した、データを可視化したモデルの例を、図9に示します。

図9: XMLスキーマを使ったデータ定義の例(クリックで拡大)

図9は、分析モデルの例(図8)で対象にしていた"見積もり依頼"と"見積もり回答"を構成するデータ項目の型と構造を、ビジュアルに表現したデータ・モデルの例です*1。

  • [*1] 筆者はXMLのテキスト編集が苦手なので、XML専用のビジュアル・エディタを使い、ER(Entity Relationship)図とまったく同じ感覚でXMLスキーマを設計しています。

生成したXMLスキーマ・ファイルは、後工程である実装段階で、BPMSのデータ・カタログにインポートします。こうしてインポートしたXMLスキーマ・ファイルは、画面設計の定義やプロセス・データ・オブジェクトの定義として参照します。

データ・モデルは、データ項目の名称や型/構造を、プロセス単位ではなく、複数のプロセスを横断して一元的に定義します。これにより、データ仕様の統一と標準化が可能です。BPMNでは、「データ・モデルはビジネス・プロセス・モデルとは分離・独立して管理されるべきもの」という考え方に立っています。

この記事のキーワード :

人気記事トップ10

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

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30