【正文】
過(guò)程定義工具被用來(lái)創(chuàng)建計(jì)算機(jī)可處理的業(yè)務(wù)過(guò)程描述。它可以是形式化的過(guò)程定義語(yǔ)言或?qū)ο箨P(guān)系模型,也可以是簡(jiǎn)單地規(guī)定用戶間信息傳輸?shù)囊唤M路由命令。過(guò)程定義(數(shù)據(jù))包含了所有使業(yè)務(wù)過(guò)程能被工作流執(zhí)行子系統(tǒng)執(zhí)行的必要信息。這些信息包括起始和終止條件、各個(gè)組成活動(dòng)、活動(dòng)調(diào)度規(guī)則、各業(yè)務(wù)的參與者需要做的工作、相關(guān)應(yīng)用程序和數(shù)據(jù)的調(diào)用信息等。工作流執(zhí)行子系統(tǒng)也稱為(業(yè)務(wù))過(guò)程執(zhí)行環(huán)境,包括一個(gè)或多個(gè)工作流引擎。工作流引擎是WFMS的核心軟件組元。它的功能包括:解釋過(guò)程定義,創(chuàng)建過(guò)程實(shí)例并控制其執(zhí)行,調(diào)度各項(xiàng)活動(dòng),為用戶工作表添加工作項(xiàng),通過(guò)應(yīng)用程序接口(API,Application Program Interface)調(diào)用應(yīng)用程序,提供監(jiān)督和管理功能等。工作流執(zhí)行子系統(tǒng)可以包括多個(gè)工作流引擎,不同工作流引擎通過(guò)協(xié)作共同執(zhí)行工作流。指被工作流執(zhí)行子系統(tǒng)和工作流引擎管理的系統(tǒng)數(shù)據(jù),例如工作流實(shí)例的狀態(tài)信息、每一活動(dòng)的狀態(tài)信息等。指與業(yè)務(wù)過(guò)程相關(guān)的數(shù)據(jù)。WFMS使用這些數(shù)據(jù)確定工作流實(shí)例的狀態(tài)轉(zhuǎn)移,例如過(guò)程調(diào)度決策數(shù)據(jù)、活動(dòng)間的傳輸數(shù)據(jù)等。工作流相關(guān)數(shù)據(jù)既可以被工作流引擎使用,也可以被應(yīng)用程序調(diào)用。工作表列出了與業(yè)務(wù)過(guò)程的參與者相關(guān)的一系列工作項(xiàng),工作表處理程序則對(duì)用戶和工作表之間的交互進(jìn)行管理。工作表處理程序完成的功能有:支持用戶在工作表中選取一個(gè)工作項(xiàng),重新分配工作項(xiàng),通報(bào)工作項(xiàng)的完成,在工作項(xiàng)被處理的過(guò)程中調(diào)用相應(yīng)的應(yīng)用程序等。應(yīng)用程序可以直接被WFMS調(diào)用或通過(guò)應(yīng)用程序代理被間接調(diào)用。通過(guò)應(yīng)用程序調(diào)用,WFMS部分或完全自動(dòng)地完成一個(gè)活動(dòng),或者對(duì)業(yè)務(wù)參與者的工作提供支持。與工作流控制數(shù)據(jù)和相關(guān)數(shù)據(jù)不同,應(yīng)用數(shù)據(jù)對(duì)應(yīng)用程序來(lái)講是局部數(shù)據(jù),對(duì)WFMS的其他部件來(lái)說(shuō)是不可見(jiàn)的。術(shù)語(yǔ)解釋表1工作流管理系統(tǒng)術(shù)語(yǔ)解釋術(shù)語(yǔ)/縮寫解釋過(guò)程定義由過(guò)程定義工具所定義的一個(gè)工作流過(guò)程過(guò)程實(shí)例過(guò)程定義運(yùn)行之后轉(zhuǎn)化為過(guò)程實(shí)例,一個(gè)過(guò)程定義可以產(chǎn)生多個(gè)過(guò)程實(shí)例活動(dòng)一個(gè)相對(duì)獨(dú)立的工作的描述,它是過(guò)程定義的一個(gè)重要組成部分活動(dòng)實(shí)例活動(dòng)運(yùn)行之后的一個(gè)實(shí)例工作項(xiàng)在一個(gè)活動(dòng)實(shí)例中,工作流參與者所需執(zhí)行的工作工作項(xiàng)列表一個(gè)參與者所負(fù)責(zé)的所有工作項(xiàng)的詳細(xì)描述信牌箱活動(dòng)之間傳遞信息的驛站轉(zhuǎn)移從活動(dòng)到信牌箱或從信牌箱到活動(dòng),描述信牌箱與活動(dòng)之間關(guān)系的連接工作流控制數(shù)據(jù)表示過(guò)程實(shí)例、活動(dòng)實(shí)例的狀態(tài)信息工作流相關(guān)數(shù)據(jù)與業(yè)務(wù)過(guò)程相關(guān)的數(shù)據(jù),工作流引擎根據(jù)它們來(lái)確定過(guò)程實(shí)例的狀態(tài)轉(zhuǎn)移日志數(shù)據(jù)系統(tǒng)中所有發(fā)生的事件及相應(yīng)數(shù)據(jù)的記錄運(yùn)行服務(wù)器負(fù)責(zé)整個(gè)過(guò)程的運(yùn)行、調(diào)度、查詢及日志的記錄等過(guò)程定義狀態(tài)表示過(guò)程定義目前所處的狀態(tài),如:是否已發(fā)布等過(guò)程實(shí)例狀態(tài)表示過(guò)程實(shí)例目前所處的狀態(tài),如:運(yùn)行、掛起等活動(dòng)實(shí)例狀態(tài)表示活動(dòng)實(shí)例目前所處的狀態(tài),如:運(yùn)行、掛起等工作項(xiàng)狀態(tài)表示工作項(xiàng)目前所處的狀態(tài),如:運(yùn)行、掛起等引擎運(yùn)行服務(wù)器的核心,負(fù)責(zé)過(guò)程實(shí)例的執(zhí)行、調(diào)度引擎容器包含了多個(gè)引擎,并提供多引擎管理功能4工作流管理系統(tǒng)功能分析前面已經(jīng)介紹過(guò),一個(gè)完整的通用工作流管理系統(tǒng)應(yīng)當(dāng)包括七個(gè)部件,這里限于篇幅的原因,只對(duì)工作流管理系統(tǒng)的核心部分:工作流執(zhí)行子系統(tǒng)和工作流引擎進(jìn)行分析。工作流管理系統(tǒng)核心功能工作流管理系統(tǒng)的核心組成部分稱為工作流執(zhí)行子系統(tǒng),它為創(chuàng)建、初始化和執(zhí)行過(guò)程實(shí)例提供了一個(gè)運(yùn)行環(huán)境。在一個(gè)工作流執(zhí)行子系統(tǒng)中可以包括一個(gè)或多個(gè)工作流引擎,前者是一種集中式的實(shí)現(xiàn)方式,而后者是一種分布式的實(shí)現(xiàn)方式。分布式的實(shí)現(xiàn)方式又可以分為同構(gòu)和異構(gòu)兩種不同的情況。所謂同構(gòu)是指在一個(gè)運(yùn)行服務(wù)系統(tǒng)中包含了多個(gè)兼容的工作流引擎;所謂異構(gòu)是指在工作流管理系統(tǒng)中包含了兩個(gè)以上異構(gòu)的工作流執(zhí)行子系統(tǒng)。工作流引擎是工作流管理系統(tǒng)的核心軟件部件。它的主要功能有:解釋過(guò)程定義,控制過(guò)程實(shí)例(創(chuàng)建、激活、掛起、終止等),按照過(guò)程定義已確定的業(yè)務(wù)邏輯調(diào)用各項(xiàng)活動(dòng),為用戶工作表添加工作項(xiàng),維護(hù)工作流控制數(shù)據(jù)和工作流相關(guān)數(shù)據(jù),調(diào)用應(yīng)用程序,提供監(jiān)督,管理和審計(jì)功能。工作流執(zhí)行子系統(tǒng)涉及四種數(shù)據(jù):工作流控制數(shù)據(jù)、工作流相關(guān)數(shù)據(jù)、組織/角色模型數(shù)據(jù)和工作表。第一種,工作流控制數(shù)據(jù)。指只由工作流執(zhí)行子系統(tǒng)維護(hù)的內(nèi)部控制數(shù)據(jù),主要用于表示過(guò)程實(shí)例與活動(dòng)實(shí)