摘要:該文闡述了基于任務(wù)定制的可擴(kuò)展工作流平臺的設(shè)計框架、系統(tǒng)的體系結(jié)構(gòu)及各模塊的定義,并著重介紹了平臺內(nèi)嵌的Event觸發(fā)機(jī)制。整個設(shè)計和開發(fā)仔細(xì)參照了工作流管理聯(lián)盟制定的工作流標(biāo)準(zhǔn),系統(tǒng)采用的概念、提供的工作流編程接口以及構(gòu)造應(yīng)用系統(tǒng)時要求應(yīng)用系統(tǒng)提供的應(yīng)用程序調(diào)用接口等基本上符合工作流標(biāo)準(zhǔn)。
關(guān)鍵詞:任務(wù)定制;工作流;觸發(fā)機(jī)制;可擴(kuò)展
中圖分類號:TP311文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2009)04-0851-02
The Design and Realization for Expandable Work-flow Platform based on Customized Task
LIU Xiao-yun1, LIU Hui2
(1.E-Commerce Profession, Anhui University Economic College, Hefei 230039, China; 2.Hefei Cement Research Design Institute, Hefei 230051, China)
Abstract: In this paper, it descript the design frame for expandable work-flow platform based on customized task., the systme structure and the definition of each modules. It introduces the triggle mechanism based on Event which embeded in the platform in detail. It refer to the work flow standard made by the work flow management union in the process of the design and develop, include the concept adopted by the system, the programming interface of work flow offered by the system and also the program transfer interface offered by the application system when constructing it.
Key words: customized task; work flow; triggle mechanism; expandable
1 可擴(kuò)展工作流平臺概述
工作流程是對一整套規(guī)則與過程的描述,以便管理在協(xié)同工作進(jìn)程中的信息流通與業(yè)務(wù)活動。它的目標(biāo)在于根據(jù)企業(yè)實際規(guī)范和業(yè)務(wù)操作來定義電子化的工作流,以智能的方式處理過程,保證工作中的某項任務(wù)完成后,按預(yù)定的規(guī)則實時地把工作傳送給處理過程中的下一步,保留工作流轉(zhuǎn)進(jìn)程中的操作痕跡,更重要的是,保證相關(guān)數(shù)據(jù)的自動更新。
相對于其它工作流軟件,此工作流平臺更加側(cè)重于企業(yè)的業(yè)務(wù)流程和數(shù)據(jù)流轉(zhuǎn)。通過將工作、事務(wù)抽象分解成定義良好的任務(wù),然后按照一定的規(guī)則和過程來執(zhí)行這些任務(wù)并對它們進(jìn)行監(jiān)控。除了本身預(yù)先抽象定義了一些典型的tasks外,還提供了一個開放式的編程接口,允許用戶任意擴(kuò)充定制自己需要的tasks,這樣基本上就可以滿足企業(yè)的各種業(yè)務(wù)需求。
2 平臺的體系結(jié)構(gòu)
整個平臺主要由Flow Server(Flow Engine)、Flow Studio、Web(事件列表部分)、數(shù)據(jù)庫讀寫接口層、Flow DB Server等幾個模塊組成。下面分別就幾個主要模塊的組成和功能作簡要的介紹。
3 Flow Studio流程定制
Flow Studio:Flow模型定義配置工具,體現(xiàn)了工作流的解決方案,主要包含Tasks、Jobs、Plans和Events等幾個節(jié)點。Tasks中列出了系統(tǒng)預(yù)先抽象定義好的任務(wù),用戶還可以根據(jù)自己的需要按照Flow提供的編程接口任意擴(kuò)充task。
Jobs —— 靈活方便的用戶自定義工作流程方式。通過Studio,用戶可以方便、直觀、快速地定義出各種復(fù)雜的工作流程,完成諸如數(shù)據(jù)傳送,郵件發(fā)送、應(yīng)用程序和腳本執(zhí)行等業(yè)務(wù)工作。每個工作流程job由一個或多個執(zhí)行單元ExecUnit(可以為某個task或嵌套一個job)通過Relation關(guān)聯(lián)而成。此Job的執(zhí)行情況大概是這樣的:系統(tǒng)先運(yùn)行單元ExecUnit1_1、ExecUnit1_2,然后根據(jù)結(jié)果決定是否運(yùn)行單元ExecUnit1_3,繼而決定是否運(yùn)行單元ExecUnit1_4。
Plans —— 完備的scheduler調(diào)度機(jī)制。VisDa Flow為用戶提供了一個完備的Plan解決方案,通過Studio,用戶可以制定出各種計劃來執(zhí)行指定的Job,其組織結(jié)構(gòu)如圖2所示。圖2中Generic Schedules節(jié)點包含一個個Scheduler,JobMaps節(jié)點包含了關(guān)聯(lián)的Job。對應(yīng)每個Scheduler,用戶可以選擇Once(執(zhí)行一次)、Daily(按天執(zhí)行)、Weekly(按星期執(zhí)行)、Monthly(按月執(zhí)行)四種計劃方式來執(zhí)行自己的Job。
4 Event觸發(fā)機(jī)制
在平臺內(nèi)設(shè)置了一個強(qiáng)大而靈活的Event觸發(fā)執(zhí)行指定Job的功能,其組織結(jié)構(gòu)如圖3所示。圖中10000、10001分別代表一個個Event,這里需要說明的是,Event是一個比較抽象的概念,用戶可以通過Studio任意定制。
至于整個Event觸發(fā)機(jī)制如何運(yùn)作,請參見圖4所示。步驟①②如前所述,之后其它應(yīng)用程序或另外的Flow Server就可以觸發(fā)執(zhí)行Job了,如圖中步驟③。至于步驟④⑤,將由Flow Server完成。
5 結(jié)束語
本系統(tǒng)作為一款工作流軟件和信息傳送處理平臺,將在企業(yè)的EAI(Enterprise Application Integration企業(yè)應(yīng)用集成)建設(shè)中扮演著十分重要的角色,顯然其穩(wěn)定性與安全性高低將是制約其能否真正投入使用的關(guān)鍵。其中的后臺服務(wù)Flow Server具有多機(jī)容錯和負(fù)載平衡功能(提高系統(tǒng)穩(wěn)定性)以及一些在分布式應(yīng)用中的安全措施。相對于其它工作流軟件,本系統(tǒng)更加側(cè)重于企業(yè)的業(yè)務(wù)流程和數(shù)據(jù)流轉(zhuǎn)。通過將工作、事務(wù)抽象分解成定義良好的任務(wù),然后按照一定的規(guī)則和過程來執(zhí)行這些任務(wù)并對它們進(jìn)行監(jiān)控。
參考文獻(xiàn):
[1] 徐志偉,馮百明,李偉.網(wǎng)格計算技術(shù)[M].北京:電子工業(yè)出版社,2004.
[2] 米文麗,李志新.中小企業(yè)IT需求現(xiàn)狀及發(fā)展趨勢[N].電腦商情報,2005-08-09.
[3] Luckham D C,Vera J.An Event-based Architecture Definition Language[J].IEEE Transactions on Softwaer Engineering,1995,21(9):717-734.
[4] Haupt M.Towards Event-based Aspect-oriented Runtime Environments[R].Software Technology Group,Darmstadt University of Technology,Tech.Report:TUD-ST-2002-01,2002.
[5] 梅宏,陳鋒,馮耀東.ABC:基于軟件體系結(jié)構(gòu)、面向構(gòu)件的軟件開發(fā)方法[J].軟件學(xué)報,2003,14(4).
劉曉云(1968-),女,安徽合肥人,安徽大學(xué)經(jīng)濟(jì)學(xué)院電子商務(wù)專業(yè)副教授,研究方向:管理信息系統(tǒng)、決策支持系統(tǒng)、電子商務(wù);
劉蕙(1963-),女,安徽合肥人,合肥水泥研究設(shè)計院高級工程師,控制部副部長,研究方向:技術(shù)經(jīng)濟(jì)。