セマンティック・メッセージフロー図
セマンティック・メッセージフロー図は、制御フローとデータフローを単一のフロー記号で統合的に表現するための図法です。システム内部の振る舞いと情報伝播の両面を一つの因果線で示し、アーキテクチャ記述やロバストネス図の拡張などに利用できます。
セマンティック・メッセージフロー図
システム・アーキテクチャなどを記述するモデル図を作成する際に困るのが、制御フローとデータフローの取り扱いです。データを取得するというフローの場合、制御フローとデータフローの矢印の向きが逆になってしまいます。
そこで、SimpleModelingでは制御フローとデータフローを共存させることができる図としてセマンティック・メッセージフロー図を考案しました。略称はメッセージフロー図です。
この図を用いることで、以下の情報を記述することができます。
-
制御とデータの方向
-
同期・非同期
-
プッシュとプル
-
論理フローと物理フローの差異
-
キャッシュや同期などの情報構造
本図法はSimpleModeling.orgの記事やモデル解説で必要に応じて使用していきます。
文法
メッセージフロー図ではノードは任意の図形を用います。
ノード間をメッセージフロー記法 (Semantic Message Flow Notation, セマンティック・メッセージフロー記法)の線によって接続します。
メッセージ・フロー図で使用するフロー線の文法です。
制御フロー
-
送信先 : 線矢印(→)
-
送信元 : 記号なし
データ送信を伴わない制御のフローです。パラメタや軽量な情報の受け渡しは可能ですが、メインの意味は制御の移譲です。
実線の場合は同期型、破線の場合は非同期型を示します。
使用例
📄 AI協調のためのBoK生成アーキテクチャ で使用した以下の図「生成AIリファレンス・アーキテクチャ (Generative AI Reference Architecture)」はセマンティクス・メッセージ・フロー図を使用していました。
セマンティク・メッセージフロー記法
既存のUML (Unified Modeling Language)の図にセマンティク・メッセージフロー図の接続線の記法であるセマンティック・メッセージフロー記法を適用すると図の記述力が向上します。
例えばロバストネス図に適用するのは有力です。通常のロバストネス図はアクター、バウンダリ、コントロール、エンティティの各オブジェクト間の通信経路のみが分かりますが、メッセージフロー図の矢印記号を使うことで、制御の流れに加えてデータの流れも一目で把握することができます。
参照
用語集
- セマンティック・メッセージフロー図 (Semantic Message Flow Diagram, メッセージフロー図)
-
制御の方向とデータの方向を単一の接続線で統合し、プロセス・エンティティ・イベント間の意味的な情報流を可視化する図。各接続線(message flow)は、動作の契機(制御)と情報の伝達(データ)を同時に表し、行為・情報・状態変化の意味的因果構造を表現する。
- セマンティック・メッセージフロー記法 (Semantic Message Flow Notation, メッセージフロー記法)
-
制御フローとデータフローを単一の接続線で統合し、プロセス・エンティティ・イベント間の意味的な情報流を表現するための接続線記法。各接続線は動作の契機(制御)と情報の伝達(データ)を同時に表し、行為・情報・状態変化の意味的因果構造を表現する。
- 生成AIリファレンス・アーキテクチャ (Generative AI Reference Architecture)
-
生成AIが内部で実行する知識活性化・内化・表現・昇格・循環の構造を整理したアーキテクチャ。
- UML (Unified Modeling Language)
-
オブジェクト指向分析・設計のための統一モデリング言語。クラス図、シーケンス図、ユースケース図などを通じてシステム構造と動作を表現する。UPおよびCBDの基盤言語。