Windows Workflow Foundation (WF) は、マイクロソフトの技術であり、ワークフローを定義・実行・管理する。この技術は.NET Framework 3.0 の一部であり、Windows Vista に含まれている。また、Windows XP SP2 およびWindows Server 2003 にもインストール可能である。
ワークフローの構造を記述する言語としては、XMLベースのXAMLがよく使われている。しかし、任意の .NET 用言語(VB.NET、C#、C++/CLI など)のコードでワークフローを表現することが可能である。
ワークフローは「アクティビティ」から構成される。開発者は固有のアクティビティを書くことができ、それをワークフローに使用する。WF には汎用のアクティビティとしていくつかの制御構造が用意されている。
Windows Workflow Foundation の拡張セットがMicrosoft Visual Studio 2005 でサポートされている。それには、ビジュアル・ワークフロー・デザイナーやワークフローのデバッグも可能なビジュアル・デバッガ、ワークフロー用のプロジェクトシステムが含まれる。
.NET Framework 3.0 ワークフロー・ランタイムは、ワークフローの実行と管理を行うファシリティであり、任意のCLRアプリケーションドメイン(Windows Service として、Console Service として、Web Application として)で実行される。
ホストは、シリアライズなどのサービスも必要に応じて提供する。ワークフローのインスタンスのイベント(アイドルとなった、停止したなど)を契機として捉えることもできる。
WFワークフローには、外界と通信するためのメソッドとイベントのインタフェースが定義されている。ホストアプリケーションはワークフローを実行するまえに環境を設定し、それらインタフェースを実装したオブジェクトを提供する。
それらインタフェースを実装したオブジェクトがイベントを発生させると、対応するワークフローがそれに反応し、データを受け渡す。
インタフェース上のメソッドはホストとの通信のためにワークフローから呼び出される。
マイクロソフトのAPIとフレームワーク | |
|---|---|
| グラフィック | |
| オーディオ | |
| マルチメディア | |
| ウェブ | |
| データアクセス | |
| ネットワーク | |
| コミュニケーション | |
| 管理 | |
| コンポーネントモデル | |
| ライブラリ | |
| デバイスドライバ | |
| セキュリティ | |
| .NET | |
| ソフトウェアファクトリー | |
| IPC | |
| アクセシビリティ | |
テキストと多言語 サポート | |
| 人工知能 | |
| アーキテクチャ | |
|---|---|
| 共通言語基盤 | |
| 言語 | |
| パッケージマネージャ | |
| 関連技術 | |
| その他のCLI実装 | |
| 組織 | |
| 開発環境 | |
| その他 | |