既存の複数のシステム(人間も含む)を組み合わせて、より高度な自動化を図る、という事が最近はやっている。大げさには、このような統合はワークフロー、ビジネスプロセスオーケストレーションと呼ばれるが、手近なところでは、メーリングリストに加入する時の電子メールによる本人照合などもこれに含まれる。 現在、ワークフローの開発にはBPELなどの専用言語を用いる方法と、イベント駆動的にプログラムを書くという2つの方法がある。 専用言語方式は敷居が高い。一方イベント駆動方式は、「AをしてBを待ってからCをする」といった手続き的な記述方法と違って記述が煩雑になる嫌いがあり、どちらも望ましくない。 なぜ手続き的に記述できないかというと、ワークフローには、一つの「会話」が始まってから完結するまでは比較的長い時間を要し、また1つのシステムが同時に多くの会話を平行して処理する事が多いという特性のためである。この為に、