工作流的概念
WFMC: 工作流管理聯盟. 對工作流的定義: 全部或者部分由計算機支持或者處理的業(yè)務過程.
WFMS: 工作流管理系統(tǒng). 對工作流的目標: 管理工作的流程以確保工作在正確的時間被期望的人員執(zhí)行, 在自動化進行的業(yè)務過程中插入人工執(zhí)行的干預(例如 同意或不同意), 這就是工作流程管理系統(tǒng)的價值.
從開發(fā)者角度理解工作流技術
我們使用訂貨流程來舉例:
- 客戶提交采購訂單
- 業(yè)務員執(zhí)行訂單處理
- 如果缺貨, 轉工廠生產
- 倉庫出貨
- 物流發(fā)貨
流程圖看起來應該是這個樣子的:
第一種情況, 我們沒有使用工作流框架的情況下. 每一步流程可能都需要一個界面來操作. 還有就是我們需要自己來實現流轉控制, 數據持久化.
可能有人會有這樣的疑問, 說我可以在訂單處理系統(tǒng)中加入判斷, 判斷倉庫是不是缺貨, 然直接進行流轉啊.
是的, 這樣做是完全可以的. 如果你這么做的話, 已經就是自動化進行業(yè)務處理了.
下面我們看看第二種情況, 使用工作流框架的情況下. 我們會使用流程定義工具將流程畫出來, 然后再由流程引擎, 幫我們創(chuàng)建流程實例并啟動該流程, 在流程執(zhí)行過程中, 數據會自動幫我們持久化. 這也意味著所有的工作流框架都有屬于自己的表.