ワークフロー
1980年ごろには、これまでのワークフローの2つの問題が指摘されるようになっていた。
第1にテイラー以来の手法では、人間を一種の自動機械のように概念化していた。人間の自己実現や成長への欲求を考慮すると、従来的な工業的作業スタイルは、人間性の喪失であると同時に人間の可能性を無視しているとして批評された(アブラハム・マズローの自己実現理論がこのような主張の基盤となっている)。
第2の問題は、品質である。ワークフローはどんなにうまく合理的に構築されたとしても、作業条件の変化に対しては、一種の非合理的な慣性と非柔軟性を示すと考えられた。
第1の問題はそれほど重視されなかったものの、品質に関しては分析的意味でも合成的意味でも、TQMからシックス・シグマまで、さらにはビジネスプロセス・リエンジニアリングのより品質的な観点まで様々な運動を通して仕事の性質の変換が行われた (Hammers and Champy, 1991)。品質向上運動の影響下で、ワークフローは多くの精査と最適化の主題となった。ワークフローにおける要求の動的に変化する認識は、クリティカルパスや変化するボトルネックと関連する現象の認識という形で明らかとなった (E. Goldratt, 1996)。
ワークフローから具体的なアプリケーションを構築するワークフローアプリケーション(英語版)には様々なものがあり、人間と機械(あるいはソフトウェア)が協調してデータの処理を行う。例えば、何らかの購入要求を考えてみれば、様々な部門での承認を経て最終的に購入が行われる。その要求は一種のメッセージとして扱われ、各種の待ち行列に置かれて処理を待つ。ワークフロープロセスは常に変更され更新される。他に影響を与えずに新たな要素を追加することも可能である。
ワークフローアプリケーションの開発には二つの方法がある。一つは、ワークフローモデルを専用言語で設計し、そのモデル内の各タスクを人間やソフトウェアに割り当てる方式である。ワークフロー言語はグラフィカルな記法であることが多いが、一部はテキストまたはXMLベースである。ワークフロー定義に使える言語としては以下のものがある。
ワークフロー記述言語: XPDL YAWL
21世紀初頭のインターネットバブルの崩壊により、高度なワークフローの概念化に対する不信感が生まれた。今日、様々な人々が、合理的で柔軟で国際化(作業場所の分散)に対応可能で人間の可能性を十分に生かす新たな作業モデルの開発という問題に立ち返っている。その中でも、オープンソースコミュニティで育ってきた、一見して無政府主義的なシステムに対する真剣な考察は重要である。
ワークフロー問題は、ペトリネットのようなグラフ理論に基づく形式化によってモデル化され解析可能である。
2000年代初期、バイオインフォマティクスやケモインフォマティクスにおいてワークフローが広く採用され、様々なデータフォーマットと膨大なデータ量を効率的に処理することに貢献している。また、科学的ワークフローのパラダイムは生命科学研究におけるPerlスクリプト利用の伝統にも近いので、科学におけるワークフローの導入は、より構造化された基盤構築への自然な流れといえる。