工作流理論資料
之前做了一個簡單的工作流引擎,干完了活做點理論總結(jié)。項目見工作流應(yīng)用---理論基礎(chǔ)篇、工作流應(yīng)用---概念、模型
這個工作流引擎主要是根據(jù)項目需求和網(wǎng)上看到的一些文章提到的概念做出來的,估計比較野路子,想著把概念和名詞向大師靠攏。
過了年剛來不忙,這幾天抽空看了兩本工作流方面的書,《工作流管理技術(shù)基礎(chǔ)》和《工作流管理:模型、方法和系統(tǒng)》,講的比較細致、對基礎(chǔ)概念講的很清楚,就是書老了點。
書中對XPDL標準做了詳細描述,對新出的BPEL沒有涉及。
我自己項目中用到的概念和大師們基本一致,大方向不錯,看來網(wǎng)上找到的那幾篇文章挺靠譜的,當時應(yīng)該隨手整理出來。
工作流引擎做的比較簡單,沒有使用主流的petri技術(shù),只支持項目需求更負責的需求就夠嗆了,回頭有空再改一版。看了書才發(fā)現(xiàn)有這么多種模型實現(xiàn)方法早都有人研究很多年了。
這兩本書在超星網(wǎng)站都能找到電子版。
IPO模型,過程中的每一個活動都由輸入(I)、處理(P)、輸出(O)三部分組成。
理論來自《科學管理》提出的科學管理原則:
一個組織的工作可以描述為一系列的任務(wù),每個任務(wù)都是工人們具體、嚴謹?shù)幕顒舆^程,管理就是在一定的計劃下讓這些任務(wù)以最優(yōu)的方式進行。
常用的工作流模型:
1.基于活動網(wǎng)絡(luò)的過程模型
組成模型的元素包括過程、活動、模塊、控制連接弧、數(shù)據(jù)連接弧和條件。
以活動作為構(gòu)成過程的基本單元,以連接弧體現(xiàn)過程邏輯,可以靈活的實現(xiàn)企業(yè)經(jīng)營過程的建模,我做的那個基本上采用的就是這種模型。
過程:為完成目標而定義的一系列步驟;
活動:過程中的步驟;
模塊:跟過程的概念類似;區(qū)別在于是否可以多次重復使用
控制鏈接弧:定義兩個活動間的執(zhí)行順序
數(shù)據(jù)連接弧:定義兩個活動間的信息流
條件:定義過程執(zhí)行中的約束
定義在控制連接弧上的條件:轉(zhuǎn)移條件
活動可以執(zhí)行和活動被執(zhí)行:開始條件、結(jié)束條件。
優(yōu)點:
從系統(tǒng)分析的角度來看,有利于通過過程模型提取功能視圖和信息視圖、便于深入分析
從系統(tǒng)實現(xiàn)的角度來看,控制流管理和數(shù)據(jù)流管理分離,是不同性質(zhì)的流管理獨立。
2.事件驅(qū)動的過程鏈模型
兼顧模型描述能力強和模型易讀兩個方面。
業(yè)務(wù)事件、業(yè)務(wù)功能、控制流、邏輯操作符、信息對象、組織單元
3.基于語言行為理論的工作流模型
IPO模型對于觀察信息和物流的流動過程比較合適,但不利于不同角色間的委托和承擔行為。
語言行為理論則側(cè)重與解決,數(shù)據(jù)、物、人協(xié)作中IPO模型對人直接協(xié)作描述不足的情況。
聽上去不錯,實際中沒有看到用這種模型的,google了一下相關(guān)資料,還只是一個理論在軟件領(lǐng)域用來進行協(xié)作過程建模的很少。
簡單了解一下先,等大師們研究明白了咱再學習。
4.基于petri網(wǎng)的工作流模型
這個東西看著挺復雜的,不過好多人都說是好東西,研究一下先。
找了兩本有關(guān)petri的書,都太理論化看不懂。還是《工作流管理:模型、方法和系統(tǒng)》講得比較通俗。
petri基本概念很好理解,不同于過程化分析,更接近面向?qū)ο蟮乃枷搿?雌饋砦以谶@個項目中采用的分析方法更接近與petri,原來俺們樸素的想法跟大師很接近哦。
一般的面向?qū)ο蠓治龈鼈?cè)重與靜態(tài)結(jié)構(gòu),在動態(tài)模型部分描述的都不夠清楚。petri在動態(tài)過程方面感覺很細致有效。據(jù)說還是經(jīng)過嚴格熟悉驗證的分析方法,不過那些公式?jīng)]看懂,太費勁。分析時用petri分析建模方法就可以了。
.....