[摘要] 目前大多數(shù)工作流管理系統(tǒng)都是獨立地管理單個工作流,而忽視了工作流之間的資源約束關系,基于Agent的工作流管理系統(tǒng)能夠有效地解決這個問題。本文討論了基于Agent的工作流管理系統(tǒng),包括Agent技術、工作流參考模型、基于Agent技術工作流管理系統(tǒng)模型以及系統(tǒng)實現(xiàn)方案的設計思想。
[關鍵詞] Agent 工作流管理系統(tǒng) 參考模型
工作流管理系統(tǒng)是利用計算機技術和信息技術作支持,使企業(yè)等組織機構的業(yè)務流程實現(xiàn)自動化。當前,大多數(shù)工作流管理系統(tǒng)都是獨立地管理單個工作流,忽視了工作流之間的資源約束關系,而基于Agent的工作流管理系統(tǒng)能夠有效地解決這個問題。
Agent具有某種程度的類人性,其本意就是要代替人(或協(xié)助人)完成某些工作。工作流管理系統(tǒng)作為一種群件系統(tǒng)與Agent系統(tǒng)有著某種相似的特點,都滿足分布式的協(xié)同工作系統(tǒng),因此Agent系統(tǒng)非常適合應用于工作流管理系統(tǒng),尤其是設計分布式工作流控制結構。
一、Agent技術
關于Agent目前還沒有統(tǒng)一的明確定義,一般來說,Agent是指可以代替用戶完成簡單、重復的操作,具有一定代理性的智能化軟件?;贏gent的工作流管理系統(tǒng),組織機構內的每個資源(包括人員、設備和數(shù)據(jù)庫等)都有一個Agent與之相關聯(lián)。按其實現(xiàn)的功能不同,Agent可以分為以下3類:
1.接口Agent:其主要功能是管理人員資源,在其他Agent看來,它是代表用戶參與活動的主體。
2.任務Agent:其主要功能是解釋過程定義、控制過程實例的執(zhí)行(包括創(chuàng)建、激活、暫停和終止等)、活動的調度、工作流控制數(shù)據(jù)的維護,以及與執(zhí)行中的管理和監(jiān)控等等。當啟動一個工作流時,與之相對應就創(chuàng)建一個任務Agent。
3.資源Agent:與除人員資源以外的其他資源相關聯(lián),如打印機、數(shù)據(jù)庫。當接口Agent或任務Agent要訪問數(shù)據(jù)資源或使用某個設備時,它就向與之相關的資源Agent發(fā)送請求,資源Agent負責管理該項資源,它執(zhí)行請求并將操作結果返回給請求者。
利用Agent可以有效地解決工作流系統(tǒng)中的資源沖突、執(zhí)行中的模式僵化,以及用戶被動地處理工作項問題
二、工作流管理系統(tǒng)模型
一個工作流管理系統(tǒng)主要有兩個組成模塊:業(yè)務流程建模模塊和工作流執(zhí)行控制模塊。在業(yè)務流程建模階段,工作流管理人員使用過程建模工具對實際業(yè)務流程進行分析、建模,將業(yè)務流程表示為計算機可處理的形式化表示。
工作流管理系統(tǒng)的體系結構可以是集中式,也可以是分布式。
集中式工作流控制結構主要由一個工作流引擎和多個客戶應用組成,另外還有其它部件如建模工具、管理和監(jiān)控工具等,這種控制結構較為簡單,適用于小規(guī)模的群體協(xié)作活動。
分布式工作流控制結構是由分布在不同站點的多個工作流引擎組成,多個工作流引擎共同解釋執(zhí)行一個過程定義,這種控制結構比較復雜,工作流引擎之間在執(zhí)行過程中要交換應用數(shù)據(jù)和控制信息,當數(shù)據(jù)分布存儲于不同地點時涉及到數(shù)據(jù)表示和數(shù)據(jù)一致性維護問題。
盡管如此,現(xiàn)有的工作流系統(tǒng)仍然存在著適用范圍窄、靈活性差、擴展能力不足,以及對意外的情況不能及時處理等問題,因此,具有自組織、自學習和協(xié)同工作能力的智能工作流系統(tǒng)是工作流的一個發(fā)展方向。由于Agent具有自主性、交互性、主動性等智能特點。因此將Agent技術結合到工作流管理中將解決工作流的上述不足,非常適合構造結構復雜、靈活、智能的工作流管理系統(tǒng)。
三、基于Agent的工作流管理系統(tǒng)
1.在工作流管理系統(tǒng)中引入Agent
工作流系統(tǒng)的開發(fā)中可在兩方面引入Agent技術:
(1)利用Agent技術開發(fā)工作流的管理者。工作流管理者要能夠向每個工作站下達工作流程和進度計劃,主動引導各個工作站按照工作流程和進度計劃推動工作,并受理和評價個工作站進展情況的報告,以及集中管理各類數(shù)據(jù)。
(2)利用Agent開發(fā)工作流行為的執(zhí)行者。工作流中,人和Agent共同完成一個行為的情況是較多的,人是在Agent輔助下完成工作,給人提供相關的重要信息。即開發(fā)一種能給各環(huán)節(jié)設計人員提供指導和幫助功能的軟件Agent。
2.基于Agent的工作流管理系統(tǒng)模型
基于Agent 的工作流管理系統(tǒng)模型主要由四部分組成:工作流服務器,Agent服務器,工作表服務器和多個具體的Agent組成的Agent族。其結構如圖所示。
四、系統(tǒng)模型實現(xiàn)方案的設計思想
1.Agent的表示
基于Agent 的工作流管理系統(tǒng)模型中,Agent可以表示為一個五元組描述的實體,即Agent=
N為Agent的名稱,具有惟一性,并可描述Agent的類型。
I為Agent的界面定義,描述呈現(xiàn)在用戶面前的人機界面和通信接口(包括通信協(xié)議和I/O接口),一般應遵循界面與Agent功能相分離的原則。
S為Agent的狀態(tài)集,是描述Agent內部狀態(tài)的集合,Agent的行為實際上是由一狀態(tài)轉移到另一狀態(tài)的過程。
T為Agent的事務集,定義Agent的行為,體現(xiàn)Agent的職能,并包含推理機制。
K為Agent的知識源,描述Agent行為所需要的知識、數(shù)據(jù)、推理規(guī)則以及有關資源,體現(xiàn)為數(shù)據(jù)結構、數(shù)據(jù)庫和知識庫等。
2.工作流管理系統(tǒng)的表示
在Agent定義的基礎上,可以用一個四元組描述工作流管理系統(tǒng),即WfMS =< Agents,Goals,KnowledgeBase,Relations>。其中:
Agents為Agent集合,每個Agent具有一定解決問題的能力;Goals為目標集,描述所需要完成的共同任務;KnowledgeBase為知識庫,描述協(xié)同工作完成任務所需要的知識;Relations為關系集,描述Agent之間的協(xié)作關系及其他關系。實際上,設計一個基于Agent的工作流管理系統(tǒng)核心就是定義一組Agent,建立它們之間的聯(lián)系,確定它們的共同目標的過程。
3.Agent的通信機制
與傳統(tǒng)的分布式計算中各計算實體間的通信不同,Agent通信是建立在知識級別的,而實現(xiàn)這種通信手段便是使用Agent通信語言,可使Agent間的通信效率大大高于傳統(tǒng)的分布式計算中的通信。KQML(Knowledge Query and Manipulation Language)是一種用于信息和知識交換的語言和協(xié)議,KQML從形式、內容、語義、實現(xiàn)和可靠性等方面對Agent間通信給予保證,在Agent間交換含有語義的控制信息和知識,從而在基于知識的層次上描述訪問請求,提高了對象的定址方式和能力。目前,KQML是獲得最為廣泛應用的Agent通信語言,被稱為事實上的標準。因此可選用KQML作為Agent間的通信方式。
4.系統(tǒng)模型的實現(xiàn)環(huán)境
基于Agent的工作流管理系統(tǒng)模型實現(xiàn)的環(huán)境可以在基于J2EE體系下采用java技術作為主要的實現(xiàn)語言,這是因為java“一次編譯,到處運行”的平臺無關性特點非常適合用來進行工作流管理系統(tǒng)的開發(fā)。還可以選擇一個支持移動Agent的執(zhí)行環(huán)境,如選擇IBM公司的Aglet。Aglet是由IBM日本公司用純java開發(fā)的移動Agent平臺,供人們開發(fā)或執(zhí)行移動Agent系統(tǒng)。到目前為止,Aglet是最為成功和全面的系統(tǒng),主要表現(xiàn)在提供了一個簡單而全面的移動Agent編程模型,并為Agent間提供了動態(tài)和有效的通信機制,還提供了一套詳細且易用的安全機制。
五、結束語
工作流管理系統(tǒng)必須是一個開放的系統(tǒng),具有很強的互操作能力。Agent技術將會成為工作流管理系統(tǒng)的關鍵技術。Agent作為代理能夠協(xié)助或替代用戶或系統(tǒng)執(zhí)行某些功能。Agent技術的應用,將會給工作流管理系統(tǒng)帶來更好的發(fā)展前景。
參考文獻:
[1]The Workflow Management Coalition:Workflow Standard-Interoperability Abstract Specification, DocumentNumber WFMC-TC-1012, 20 October 1996, Version 1.0
[2]范玉順:工作流管理技術基礎[M].清華大學出版社,施普林格出版社,2001~4
[3]史美林等:計算機支持的協(xié)同工作理論與應用[M],電子工業(yè)出版社,2000~12
[4]朱云龍薛勁松李紅信等:基于Agent的工作流協(xié)調模型的研究.小型微型計算機系統(tǒng),2000,21(7):737~739