ワークフロー
ワークフロー（）は、リソース（資源）を体系的に組織化した反復可能な業務活動のパターンである。ワークフローは、物質の加工、サービスの提供、情報の処理など、何らかの具体的意図をもって設計される。ワークフローは、例えば、操作の列、個人またはグループの定まった作業、従業員の組織、複数の機械の機構などで表現しうる。
ワークフローは組織構造に関する各種概念（サイロ、機能、チーム、プロジェクト、階層）と密接な関係がある。ワークフローは組織の基本的構成要素と見ることもできる。これら概念の関係については後述する。
ワークフローは明らかに現代になって登場した概念である。ピラミッドのような歴史的建造物の建設でも、労働者の集団における各人の業績が存在したと想像することはできる。しかし、仕事の性質を研究することで価値を生み出し、組織をよりよく機能させようという考え方は、おそらくアダム・スミスを起源とする明らかに現代的な思考である。以下では、大まかに年代を区切って、ワークフローの観念が発展していった経緯を簡単に解説する。
ワークフローの観念は、仕事自体の概念化の歴史的発展と共に発展した。現代的なワークフローの起源は、フレデリック・テイラー (Taylor, 1919) とヘンリー・ガントまで遡る。彼らは製造業において、計画的かつ合理的な作業組織の研究を共同で立ち上げた。テイラーらが興味をもったワークフローは、主に物質とエネルギーに関するものであり、それらは時間研究（Time Study）と動作研究（Motion Study）を使って研究され、改善された。
一方、同時期に情報に関するワークフローも成長を開始している。特に、デューイ十進分類法やハンギングフォルダの発明で知られるメルヴィル・デューイが重要な役割を果たした。
この時代から既に工場の組立てラインがワークフローの主要な例であったが、仕事に関する当時の考察は一般に理解されているよりずっと進んでおり、単なる処理の逐次的なブレークダウン以上のフローの概念が既に生まれていた。現代のオペレーションズリサーチにおける概念モデルであるフローショップ、ジョブショップ、キューイングシステム (Pinedo, 2001) は20世紀初頭に既に発展していた。
この時代は「情報」のフローに関する観念が比較的未発達であったことが足かせとなり、ワークフローの最適化と生産性については、スループットと資源活用という最も単純な観念しかなかった。
ワークフローの文化への影響は、チャップリンの『モダン・タイムス』のような映画に見て取ることができる。これらの概念は製造業の現場だけに留まることはなかった。例えばある雑誌は、主婦に一度に2枚のパンの片面を焼ける網で3枚のパンを効率よく焼く方法を問うパズルを掲載していた。
製造業の現場から始まった労働の合理化は、タイプライターと複写機の発明により、さらに適用範囲が広まっていった。ファイリングシステムや物理的に明白な情報のフローを管理する洗練されたシステムが発展していった。情報に関するワークフローの定式化の範囲が広がりを見せる中で、第二次世界大戦とアポロ計画という2つのイベントがワークフローの飛躍的発展をもたらした。特に数学的な最適化技法の進歩が顕著であった。当時のワークフローの文化的影響は、W・H・ホワイトの『組織の中の人間』などに見て取ることができる。
1980年ごろには、これまでのワークフローの2つの問題が指摘されるようになっていた。
第1にテイラー以来の手法では、人間を一種の自動機械のように概念化していた。人間の自己実現や成長への欲求を考慮すると、従来的な工業的作業スタイルは、人間性の喪失であると同時に人間の可能性を無視しているとして批評された（アブラハム・マズローの自己実現理論がこのような主張の基盤となっている）。
第2の問題は、品質である。ワークフローはどんなにうまく合理的に構築されたとしても、作業条件の変化に対しては、一種の非合理的な慣性と非柔軟性を示すと考えられた。
第1の問題はそれほど重視されなかったものの、品質に関しては分析的意味でも合成的意味でも、TQMからシックス・シグマまで、さらにはビジネスプロセス・リエンジニアリングのより品質的な観点まで様々な運動を通して仕事の性質の変換が行われた (Hammers and Champy, 1991)。品質向上運動の影響下で、ワークフローは多くの精査と最適化の主題となった。ワークフローにおける要求の動的に変化する認識は、クリティカルパスや変化するボトルネックと関連する現象の認識という形で明らかとなった (E. Goldratt, 1996)。
品質管理運動を経て、情報のフローは最初のワークフローの形式を生み出した物質やエネルギーのそれとは根本的に異なることを明らかにした。情報フローの低コスト性と適用性により、ワークフローの高度な合理化は瞬時に達成でき、高度な柔軟性と適用性と反応性をもたせることができると思われた。このような洞察から、情報技術のワークフロー利用は広範囲にわたるようになり、製造業、サービス業、純粋な情報処理などに適用されるようになった。多品種少量生産、ジャストインタイム生産システム、その他の高度に敏捷で適用性のあるワークフローシステムがこの時代の産物である。
21世紀初頭のインターネットバブルの崩壊により、高度なワークフローの概念化に対する不信感が生まれた。今日、様々な人々が、合理的で柔軟で国際化（作業場所の分散）に対応可能で人間の可能性を十分に生かす新たな作業モデルの開発という問題に立ち返っている。その中でも、オープンソースコミュニティで育ってきた、一見して無政府主義的なシステムに対する真剣な考察は重要である。
ワークフロープロセスを理解することによってビジネスで得られる最大の利点は、作業経路のスループットが、独自のビジネス属性やルールの個別制御を増大させて潜在的に低効率な部分を減らすようにモデル化される点である。物理的リソースと人的リソースの評価は、作業間のスムーズな変化を形成する可能性やハンドオフポイントの評価の基本である。いくつかのワークフロー改善理論が提案され、既に職場で実施されている。例えば、以下のものがある。ギャップを埋める方法として、様々な成果を盛り込んだ「ワークフローパターン」が定義され、各種ワークフローエンジンの比較に利用される。
ワークフローは一般に形式的か否かによらず、何らかのフロー図（処理ステップ間の有向フローを示す図）作成技法として説明される。1つの処理ステップやワークフローの構成要素は、基本的には以下の3つのパラメータで定義される。
各要素は、その前の要素の出力が自身の要素の入力と一致する場合だけ接続可能である。したがって、入出力のデータ型とその意味（意味論）が最も基本的な属性である。アルゴリズムやルールは、ある入力セットからある出力セットへと変換する方法がいくつもあり、しかもそれらの間で正確性や速度に違いがある場合だけ意味をもつ。
構成要素がコンピュータネットワークを経由したWebサービスのような遠隔サービスの場合、QoS や可用性といった属性も考慮する必要がある。
ワークフローから具体的なアプリケーションを構築するワークフローアプリケーションには様々なものがあり、人間と機械（あるいはソフトウェア）が協調してデータの処理を行う。例えば、何らかの購入要求を考えてみれば、様々な部門での承認を経て最終的に購入が行われる。その要求は一種のメッセージとして扱われ、各種の待ち行列に置かれて処理を待つ。ワークフロープロセスは常に変更され更新される。他に影響を与えずに新たな要素を追加することも可能である。
ワークフローアプリケーションの開発には二つの方法がある。一つは、ワークフローモデルを専用言語で設計し、そのモデル内の各タスクを人間やソフトウェアに割り当てる方式である。ワークフロー言語はグラフィカルな記法であることが多いが、一部はテキストまたはXMLベースである。ワークフロー定義に使える言語としては以下のものがある。
もう一つのワークフローアプリケーション定義の方法は、タスク間の関係を抽象化したインタフェースやライブラリを備えたプログラミング言語を使うものである。以下は、そのようなライブラリやインタフェースの例である。
また、ビジネスプロセスモデル用の言語（例えば、Business Process Modeling Notation）をワークフローに使うこともできる。しかし、ビジネスプロセスモデル用言語は抽象度が高く、実装に近い詳細なワークフローを記述するには不十分である。
設計時の意味論的間違いを検出するなど、静的解析のため、ワークフローをペトリネットのような数学的形式を使って形式的に表現することもできる。