工作流簡(jiǎn)介:
§工作流是業(yè)務(wù)流程的全部或部分自動(dòng)化,在此過(guò)程中,文檔、信息或任務(wù)按照一定的過(guò)程規則流轉,實(shí)現組織成員間的協(xié)同工作,以達到業(yè)務(wù)的整體目標。
§工作流管理系統是支持企業(yè)經(jīng)營(yíng)過(guò)程高效執行并監控其執行過(guò)程的計算機軟件系統。
§典型的WFMS至少由如下幾個(gè)模塊組成:業(yè)務(wù)流程建模定義工具、過(guò)程定義、工作流執行環(huán)境(引擎)、任務(wù)管理。當然還會(huì )包括應用和IT工具。
§目前開(kāi)源工作流項目眾多(shark、osworkflow、jbpm、ofbiz、werkflow、willow……)
§規范問(wèn)題
工作流參考模型(參見(jiàn)WMFC):
OSWorkflow簡(jiǎn)介:
§所有相關(guān)的osworkflow的文檔大家可以到http://wiki.opensymphony.com/space/OSWorkflow處得到
§Osworkflow與目前絕大多數的工作流系統是不同的,而最大的不同點(diǎn)體現在它的韌性上和靈活程度上 。osworkflow所提供的解決方案能夠提供足夠的靈活度來(lái)滿(mǎn)足一個(gè)大型各種應用的所有需求。
§OSWorkflow是只是一個(gè)workflow engine的內核體。我們都說(shuō)osworkflow非常的易擴展,但是這也同樣說(shuō)明了,用osworkflow去實(shí)現一個(gè)能夠運行的工作流系統是非常繁瑣的事情。
§Osworkflow 的api部分將會(huì )支持jdk1.3+
§工作流的持久存儲(memorystore(默認)自帶的例子就是如此,SerializableStore,JDBCStore,ofbizstore,和EJBStore. )另外還可以自己實(shí)現。
§工作流定義部分(核心)通過(guò)osworkflow自帶例子理解
主要是osworkflow.xml 、workflows.xml以及***.xml文件
osworkflow核心概念:
§OSWorkflow是基于FSM(finite state machine,有限狀態(tài)機)理論
§理解state,理解doAction。
§一個(gè)state到另一個(gè)state的轉移(Transtion),依賴(lài)于action的發(fā)生。在一個(gè)workflow的生命周期中,總會(huì )存在至少一個(gè)或多個(gè)state:這就是osworkflow engine的最核心理念。和我們通常所理解的Engine并不是很一樣 ,在一個(gè)訪(fǎng)問(wèn)請求中,一個(gè)Workfow對象負責維護一個(gè)流程實(shí)例的管理和操作。
核心名詞概念解釋?zhuān)?br>
§step,status,actions ,result,join,split,Functions ,Validators,Registers,Conditions
§Common and global actions
§Unconditional Result 和conditional Result
§pre function、post function和Trigger Functions
§Validators (不符合條件,拋InvalidInputException)
§TransientVars和PropertySet
§Register
§Permissions and Restrictions
§Auto actions
§Workflow Instance State(CREATED, ACTIVATED, SUSPENDED, KILLED 和 COMPLETED)
§step,status,actions ,result,join,split,Functions ,Validators,Registers,Conditions
§Common and global actions
§Unconditional Result 和conditional Result
§pre function、post function和Trigger Functions
§Validators (不符合條件,拋InvalidInputException)
§TransientVars和PropertySet
§Register
§Permissions and Restrictions
§Auto actions
§Workflow Instance State(CREATED, ACTIVATED, SUSPENDED, KILLED 和 COMPLETED)
核心概念圖見(jiàn)銀狐blog
osworkflow的GUI:
§Osworkflow在2.5.0版本就開(kāi)始支持圖形操作(designer),2.6.0和2.7.0做了許多改進(jìn)。打算在3.0中正式推出。所以現在在使用GUI操作時(shí)候還是需要進(jìn)行一些適當的預防手段的。
§可以把osworkflow看做一個(gè)低層次的工作流實(shí)現。在其他工作流系統中像loops和conditions這樣的情況可以以圖形圖標形式展現出來(lái),在osworkflow中必須進(jìn)行編碼。就是說(shuō)最起碼的腳本語(yǔ)言必須來(lái)如此設定。所以并不希望非技術(shù)人員來(lái)修改工作流。盡管一些系統提供了GUI操作來(lái)完成簡(jiǎn)單的工作流編輯,但是這種做法并不是十全十美的,如當這樣改變流程后,此工作流周邊的應用往往被破壞。所以osworkflow始終認為最好的變更控制辦法就是以開(kāi)發(fā)人員(前提:熟知每個(gè)變化)來(lái)做這些操作。
可以把osworkflow看做一個(gè)低層次的工作流實(shí)現。在其他工作流系統中像loops和conditions這樣的情況可以以圖形圖標形式展現出來(lái),在osworkflow中必須進(jìn)行編碼。就是說(shuō)最起碼的腳本語(yǔ)言必須來(lái)如此設定。所以并不希望非技術(shù)人員來(lái)修改工作流。盡管一些系統提供了GUI操作來(lái)完成簡(jiǎn)單的工作流編輯,但是這種做法并不是十全十美的,如當這樣改變流程后,此工作流周邊的應用往往被破壞。所以osworkflow始終認為最好的變更控制辦法就是以開(kāi)發(fā)人員(前提:熟知每個(gè)變化)來(lái)做這些操作。
聯(lián)系客服