Windows Workflow Foundation

Windows Workflow Foundation(WF)がもう直ぐ出ますね。

このWFはプロセスオートメーションやヒューマンワークフローなでに利用していくのであるが、もう少し抽象的に考えると、アクティビティと呼ばれるドメインに特化したオペコードを記述・実行するためのプログラミングモデルであり、メタ実行環境ということになるらしい。

  • アクティビティ = ドメインに特化した作業単位(アクティビティはドメイン的な意味に抽象化される)
  • WFランタイムはドメイン的な意味に依存しない

あと、汎用言語と異なる点はいくつかあるが、やはり継続ベースの処理構造を持っている点がメリットである。
たとえば、受注処理→在庫引当→出荷という複数のシステムに渡るプロセスオートメーションがあった場合、通常はそれらのシステムと通信するような処理をイベントベースで処理する必要があるが、WFではあたかもそれらがシーケンシャルに処理されるように記述できる。たとえこれらの処理が1週間かかりシステムが停止するようなことがあってもである。

このようなことが可能なのは、WFが実行コンテキストの永続化や復帰メカニズムや実行スレッド制御など多くの仕組みをもっているからであるが、こうなると単なるフレームワークというよりは実行環境に近いものがある。

WFはいろいろ利用されると思うが、このアクティビティの抽象化が応用のポイントになるに違いないと考えている。