《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > 工作流技術(shù)及其在工程設(shè)計(jì)管理系統(tǒng)中的應(yīng)用

工作流技術(shù)及其在工程設(shè)計(jì)管理系統(tǒng)中的應(yīng)用

2009-09-27
作者:陳金水 薛海燕

  摘? 要: 論述了工作流的相關(guān)概念、參考模型和分類,介紹了一個(gè)工作流技術(shù)支持的工程設(shè)計(jì)管理系統(tǒng)的實(shí)現(xiàn),分析了工作流技術(shù)的優(yōu)勢(shì)。

  關(guān)鍵詞: 工作流? 管理系統(tǒng)? 工程設(shè)計(jì)管理

?

  隨著計(jì)算機(jī)的廣泛應(yīng)用,越來(lái)越多的工作依靠計(jì)算機(jī)而得以完成。與此同時(shí),各種類型的信息系統(tǒng)也被廣泛地使用以支持這些工作。由于這些系統(tǒng)基本上獨(dú)立運(yùn)行,相互之間缺乏必要的交互、協(xié)作與感知,所以,系統(tǒng)在協(xié)調(diào)多個(gè)人的活動(dòng)及協(xié)同完成某個(gè)共同的任務(wù)方面存在嚴(yán)重不足。這也就是工作流管理系統(tǒng)(Workflow Management System,WfMS)自20世紀(jì)90年代以來(lái)引起來(lái)自研究機(jī)構(gòu)與產(chǎn)業(yè)界廣泛關(guān)注的重要原因。無(wú)論是生產(chǎn)系統(tǒng)的工作流,還是辦公自動(dòng)化和電子商務(wù)的工作流系統(tǒng)都為軟件界所關(guān)注。工作流的概念是從生產(chǎn)和商務(wù)的過(guò)程(Process)概念演化而來(lái)。把工作活動(dòng)分解為明確定義的任務(wù)(Tasks)、角色(Roles)、規(guī)則(Rules)和子過(guò)程(Procedures),通過(guò)它們對(duì)整個(gè)過(guò)程進(jìn)行控制和調(diào)節(jié)。起初,整個(gè)過(guò)程都是由人來(lái)完成的。隨著信息技術(shù)的發(fā)展,部分過(guò)程或全部過(guò)程已開(kāi)始由計(jì)算機(jī)自動(dòng)完成。

1? 工作流介紹

1.1 相關(guān)概念

  工作流管理聯(lián)盟(Workflow Management Coliation,WfMC)對(duì)工作流所作的定義是:工作流是指整個(gè)或局部商務(wù)過(guò)程的自動(dòng)執(zhí)行過(guò)程。在這個(gè)過(guò)程中,各種文本、信息和任務(wù)都根據(jù)設(shè)定的過(guò)程規(guī)則從一個(gè)人(地方)傳送到另一個(gè)人(地方)。也就是說(shuō),工作流所要解決的主要問(wèn)題是使多個(gè)參與者之間按照某種預(yù)定義的規(guī)則傳遞文檔、信息或任務(wù)的過(guò)程自動(dòng)進(jìn)行,從而實(shí)現(xiàn)某個(gè)預(yù)期的業(yè)務(wù)目標(biāo),或者是促使此目標(biāo)的實(shí)現(xiàn)。WfMS的作用就是將現(xiàn)實(shí)世界中的業(yè)務(wù)過(guò)程轉(zhuǎn)化成某種計(jì)算機(jī)化的形式表示,并在此形式表示的驅(qū)動(dòng)下完成工作流的執(zhí)行和管理。工作流中的概念有:工作流模型、活動(dòng)、過(guò)程實(shí)例等。

  (1)工作流模型(也稱作過(guò)程定義):是業(yè)務(wù)過(guò)程的計(jì)算機(jī)化的形式表示。它定義的是過(guò)程運(yùn)行中涉及到的各種參數(shù),如業(yè)務(wù)過(guò)程的開(kāi)始和終止條件、各個(gè)工作環(huán)節(jié)及相互之間的控制流動(dòng)與數(shù)據(jù)流動(dòng)關(guān)系等。

  (2)活動(dòng):是指工作流中的一個(gè)邏輯步驟或稱環(huán)節(jié)。它既可以由計(jì)算機(jī)自動(dòng)執(zhí)行,也可以由人完成。它所含的信息包括:開(kāi)始和結(jié)束條件;可參與到此環(huán)節(jié)中的用戶;完成此活動(dòng)所需的應(yīng)用程序或數(shù)據(jù)以及關(guān)于此活動(dòng)應(yīng)如何完成的一些限制條件(如時(shí)間上的限制等)。

  (3)過(guò)程實(shí)例:是指某個(gè)工作流過(guò)程的一次執(zhí)行。在實(shí)例的執(zhí)行過(guò)程中,WfMS將解釋相應(yīng)的過(guò)程定義,生成有關(guān)的活動(dòng)實(shí)例并根據(jù)過(guò)程定義中的控制規(guī)則協(xié)調(diào)這些活動(dòng)實(shí)例之間的順序關(guān)系,同時(shí)根據(jù)數(shù)據(jù)流動(dòng)關(guān)系的定義完成活動(dòng)實(shí)例之間的數(shù)據(jù)傳送。一般情況下每一個(gè)活動(dòng)實(shí)例都將表現(xiàn)為一個(gè)工作項(xiàng)(WorkItem),由某個(gè)或某組用戶負(fù)責(zé)完成。

1.2 工作流參考模型

  一個(gè)龐大的商業(yè)過(guò)程往往要有許多實(shí)體的參與,且各個(gè)實(shí)體負(fù)責(zé)不同的工作。雖然各實(shí)體為一個(gè)自主的實(shí)體,其使用的工作流系統(tǒng)可能不一樣,但是對(duì)于一個(gè)完整的商業(yè)過(guò)程來(lái)說(shuō),它們并不是孤立的。因?yàn)閷?shí)體之間需要進(jìn)行信息交換,需要相互協(xié)作才能完成整個(gè)商業(yè)過(guò)程。為了實(shí)現(xiàn)不同工作流系統(tǒng)之間的信息交換和協(xié)作,工作流管理聯(lián)盟定義了工作流參考模型,圖1描述了該模型的基本部件和基本接口。

?

?

  圖1中的工作流系統(tǒng)有五個(gè)基本部件:

  (1)工作流定義工具。即提供一種描述工作流過(guò)程的軟件,它把實(shí)際的過(guò)程步驟用圖示化的方法或簡(jiǎn)單的文本描述出來(lái),并產(chǎn)生或轉(zhuǎn)化成規(guī)范的、可被計(jì)算機(jī)處理的形式化描述(過(guò)程定義)。

  (2)工作流執(zhí)行服務(wù)(Workflow Enactment Service)。由一個(gè)或多個(gè)工作流引擎(Workflow Engine)組成,是工作流的核心,負(fù)責(zé)創(chuàng)建、管理和執(zhí)行工作流實(shí)例。各種工作流應(yīng)用通過(guò)工作流應(yīng)用編程接口(Workflow API,WAPI)訪問(wèn)它。邏輯上它一共提供5個(gè)接口(圖中的雙向箭頭表示接口),分別是:與過(guò)程定義模塊的接口、與工作流客戶端應(yīng)用模塊的接口、與管理和監(jiān)視工作流工具的接口、與供調(diào)用的各種功能服務(wù)的接口以及與其他工作流系統(tǒng)的接口。工作流引擎是工作流實(shí)例提供運(yùn)行時(shí)的執(zhí)行環(huán)境。它解釋過(guò)程定義,控制工作流實(shí)例的運(yùn)行,根據(jù)工作流的定義和狀態(tài)導(dǎo)航(Navigate)工作流,分派各種角色,維護(hù)工作流的控制數(shù)據(jù)及調(diào)用各種應(yīng)用等。

  (3)供調(diào)用的應(yīng)用(Invoked Application)。它是一些功能應(yīng)用的集合,每一個(gè)應(yīng)用可能負(fù)責(zé)完成工作流的某個(gè)子過(guò)程的執(zhí)行或完成某項(xiàng)(些)任務(wù)。工作流引擎根據(jù)工作流的運(yùn)行情況調(diào)用它們來(lái)完成工作流的執(zhí)行。

  (4)工作流的客戶應(yīng)用(Workflow Client Application)。它可以通過(guò)工作列表訪問(wèn)(Worklist Access)接口訪問(wèn)工作列表(Worklist)庫(kù),而工作流引擎可以把工作(任務(wù))分配到工作列表庫(kù)而由用戶去訪問(wèn)此列表庫(kù)以接受分配給自己的任務(wù)。工作流客戶應(yīng)用部件在實(shí)現(xiàn)時(shí)是可選的,但在需要人參與完成工作流中某些非完全自動(dòng)過(guò)程時(shí)應(yīng)提供此應(yīng)用。

  (5)工作流的管理和監(jiān)視。負(fù)責(zé)管理監(jiān)視工作流,包括用戶管理、角色管理、運(yùn)行記錄、錯(cuò)誤恢復(fù)、停止和刪除工作流等。

  工作流執(zhí)行服務(wù)與其他基本部件的接口統(tǒng)稱為Workflow API(WAPI),為標(biāo)準(zhǔn)接口。這些標(biāo)準(zhǔn)接口對(duì)實(shí)現(xiàn)由不同廠家開(kāi)發(fā)的工作流管理系統(tǒng)的互聯(lián)與互操作性問(wèn)題具有重要的意義。

1.3 工作流系統(tǒng)的分類與應(yīng)用現(xiàn)狀

  根據(jù)工作流過(guò)程本身的特點(diǎn)、系統(tǒng)建模的方式、所使用的底層支撐技術(shù)以及工作流過(guò)程的執(zhí)行方式等的不同,文獻(xiàn)[1]將現(xiàn)有的幾百種具有工作流管理功能的商品化軟件產(chǎn)品及原型系統(tǒng)進(jìn)行了相應(yīng)的分類,具體分類如下:

  (1)結(jié)構(gòu)化的與即席的:結(jié)構(gòu)化工作流指的是在實(shí)際工作過(guò)程中會(huì)反復(fù)重復(fù)、嚴(yán)格按照某個(gè)固定的步驟進(jìn)行的業(yè)務(wù)過(guò)程。辦公程序(如公文處理、審批等)都屬此類。即席工作流則是針對(duì)那些重復(fù)性不是很強(qiáng)或沒(méi)有重復(fù)性的工作流程的,關(guān)于這類流程執(zhí)行所需的有關(guān)參數(shù)(如參加者等)事先無(wú)法確定,必須推遲到過(guò)程實(shí)例運(yùn)行時(shí)才能確定。同時(shí)在執(zhí)行過(guò)程中還可能會(huì)發(fā)生一些意外的情況。

  (2)面向文檔的與面向過(guò)程的:前者的側(cè)重點(diǎn)是將電子形式的文檔、圖像等在有關(guān)人員之間進(jìn)行分發(fā),以便得到不同人員的處理與審閱?,F(xiàn)有的文檔管理與映象管理系統(tǒng)均屬此類。在面向過(guò)程的WfMS中,工作流被描述成一系列執(zhí)行環(huán)節(jié),與各環(huán)節(jié)相應(yīng)都存在待處理的數(shù)據(jù)對(duì)象。各環(huán)節(jié)的數(shù)據(jù)對(duì)象可以按不同的方式分發(fā)到其他環(huán)節(jié)中去,如可以將數(shù)據(jù)對(duì)象的值作為控制條件或者依此數(shù)據(jù)對(duì)象組裝成其他的數(shù)據(jù)對(duì)象等。

  (3)基于郵件的和基于數(shù)據(jù)庫(kù)的:前者使用電子郵件來(lái)完成過(guò)程實(shí)例執(zhí)行過(guò)程中消息的傳遞、數(shù)據(jù)的分發(fā)與事件的通知。在基于數(shù)據(jù)庫(kù)的WfMS中,所有的數(shù)據(jù)都保存在某種類型的BMS中,過(guò)程的執(zhí)行實(shí)際上就是對(duì)這些數(shù)據(jù)的查詢與處理。

  (4)任務(wù)推動(dòng)的與目標(biāo)拉動(dòng)的:前者指的是從過(guò)程開(kāi)始處逐個(gè)環(huán)節(jié)地執(zhí)行,當(dāng)某個(gè)活動(dòng)實(shí)例被處理完后,后續(xù)的有關(guān)活動(dòng)將被創(chuàng)建并被激活,由此直至整個(gè)工作流程的完成。這是目前大多數(shù)面向過(guò)程的WfMS所使用的執(zhí)行方式。而在目標(biāo)拉動(dòng)的WfMS中,一個(gè)業(yè)務(wù)流程被看成是一個(gè)目標(biāo)。過(guò)程實(shí)例執(zhí)行時(shí),該目標(biāo)將被分解為多個(gè)相互之間按一定約束條件關(guān)聯(lián)起來(lái)的可執(zhí)行的多個(gè)環(huán)節(jié),其中各環(huán)節(jié)還可以作為子目標(biāo)而進(jìn)行進(jìn)一步分解。在各環(huán)節(jié)均執(zhí)行完畢之后,整個(gè)過(guò)程也就完成了。目標(biāo)拉動(dòng)是一種全新的執(zhí)行方式,下一代的WfMS將具有此種特征。

  WfMS巨大的潛在市場(chǎng)和廣闊的應(yīng)用領(lǐng)域(例如辦公、電子業(yè)務(wù)、協(xié)作研究、CIMS等)吸引了越來(lái)越多的科研機(jī)構(gòu)與軟件廠商投入到這方面的研究和開(kāi)發(fā)中。據(jù)不完全統(tǒng)計(jì),目前通用WfMS及具有工作流功能的系統(tǒng)已經(jīng)有幾百種之多,其中包括Action Workflow、Visual Workflow、FlowMark、Ultimus以及Inconcert等。國(guó)內(nèi)目前也有不少單位在從事這方面的研究。

2?工作流技術(shù)支持的工程設(shè)計(jì)管理系統(tǒng)

  工程設(shè)計(jì)管理中設(shè)計(jì)圖檔的流轉(zhuǎn)過(guò)程是一個(gè)典型的工作流過(guò)程,因此應(yīng)用工作流技術(shù)來(lái)管理是非常合適的。

2.1 工程設(shè)計(jì)管理的特點(diǎn)

  工程設(shè)計(jì)管理系統(tǒng)實(shí)現(xiàn)了工程設(shè)計(jì)流程的計(jì)算機(jī)化與自動(dòng)化管理。工程設(shè)計(jì)過(guò)程具有極強(qiáng)的流程特性。如圖2所示,任何一個(gè)設(shè)計(jì)圖檔都要先經(jīng)過(guò)設(shè)計(jì),然后再進(jìn)行校對(duì)、校核,最后審查、審定之后才能被采用并歸檔保存,其中任何一個(gè)環(huán)節(jié)出錯(cuò)都將導(dǎo)致設(shè)計(jì)圖檔的重新修改設(shè)計(jì)。設(shè)計(jì)圖檔流轉(zhuǎn)過(guò)程中包含的活動(dòng)有:設(shè)計(jì)、校對(duì)、校核、審查、審定、歸檔等,這些活動(dòng)需要不同部門的參與。以作者參與的某水利工程設(shè)計(jì)為例,一個(gè)工程的設(shè)計(jì)過(guò)程中需要水文、水工、水電、水機(jī)、地質(zhì)等不同部門的參與。

?

?

  隨著工程的變化,設(shè)計(jì)過(guò)程中,有時(shí)會(huì)修改設(shè)計(jì)流程、增加或者減少業(yè)務(wù)環(huán)節(jié),例如地質(zhì)部門的勘測(cè)圖檔只需經(jīng)過(guò)校對(duì)無(wú)誤即可審定歸檔,省去了校核、審查二個(gè)業(yè)務(wù)環(huán)節(jié)。然而有的設(shè)計(jì)圖檔需要多個(gè)責(zé)任人進(jìn)行多次反復(fù)審查之后才能進(jìn)行審定,這就增加了多個(gè)業(yè)務(wù)環(huán)節(jié)。考慮到設(shè)計(jì)出的軟件要具有通用性,能適應(yīng)不同工程的需要,因此希望設(shè)計(jì)出的管理系統(tǒng)具有如下特點(diǎn):

  (1)靈活性。表示系統(tǒng)能以最少的代價(jià)來(lái)適應(yīng)和處理各種變化的過(guò)程,如能根據(jù)需要隨時(shí)改變業(yè)務(wù)處理流程;

  (2)敏捷反應(yīng)能力。表示系統(tǒng)能縮短業(yè)務(wù)處理過(guò)程的運(yùn)轉(zhuǎn)周期,提高處理的效率;

  (3)良好的可擴(kuò)展能力。表示能方便地在系統(tǒng)中增加新的業(yè)務(wù)或刪除已有業(yè)務(wù),或者為已有的業(yè)務(wù)增加或刪除一些處理功能。

2.2 系統(tǒng)結(jié)構(gòu)

  從2.1節(jié)的分析中可看出,工程設(shè)計(jì)是一個(gè)典型的工作流處理過(guò)程,它有一個(gè)固定的處理模式,即工作流過(guò)程定義。每一種業(yè)務(wù)的處理均可由一個(gè)對(duì)應(yīng)的過(guò)程定義來(lái)描述,每一個(gè)設(shè)計(jì)圖檔的處理就是該種業(yè)務(wù)的一個(gè)過(guò)程實(shí)例。該業(yè)務(wù)有多個(gè)處理步驟,它與工作流中的一項(xiàng)活動(dòng)相對(duì)應(yīng),各項(xiàng)活動(dòng)由不同的角色來(lái)完成。隨著工程的變化,業(yè)務(wù)過(guò)程可能被修改,即修改工作流過(guò)程定義等。考慮這些特點(diǎn),在構(gòu)建工程設(shè)計(jì)管理系統(tǒng)時(shí),可完全遵照工作流的思想對(duì)系統(tǒng)進(jìn)行分析設(shè)計(jì)和實(shí)現(xiàn)。

  在設(shè)計(jì)系統(tǒng)時(shí),出于各方面的考慮,沒(méi)有選擇商品化的工作流管理系統(tǒng)來(lái)做二次開(kāi)發(fā),而是采用數(shù)據(jù)庫(kù)等技術(shù)自行開(kāi)發(fā)一個(gè)工作流管理系統(tǒng)。如圖3所示,該工作流管理系統(tǒng)有如下構(gòu)成及功能:

?

  (1)一個(gè)執(zhí)行服務(wù)。負(fù)責(zé)工作流過(guò)程的實(shí)例化、任務(wù)的分配、過(guò)程的調(diào)度等(通過(guò)解釋過(guò)程定義腳本來(lái)完成),同時(shí)提供了一套角色管理與授權(quán)機(jī)制,以保障系統(tǒng)安全運(yùn)行。

  (2)一個(gè)簡(jiǎn)單的過(guò)程定義工具??梢杂脕?lái)設(shè)置和修改業(yè)務(wù)的處理過(guò)程,過(guò)程描述采用一種自定義的簡(jiǎn)單的腳本語(yǔ)言。

  (3)一個(gè)管理監(jiān)控工具。供工程設(shè)計(jì)單位和客戶查詢業(yè)務(wù)的處理工具,實(shí)現(xiàn)查詢功能,使客戶可以隨時(shí)了解處理進(jìn)度。同時(shí)工程設(shè)計(jì)單位使用該監(jiān)控工具,可以動(dòng)態(tài)改變業(yè)務(wù)的處理流程。

  (4)多個(gè)業(yè)務(wù)功能模塊。如客戶應(yīng)用功能模塊負(fù)責(zé)處理客戶與系統(tǒng)之間的交互操作。隨著業(yè)務(wù)過(guò)程的變化,可以隨時(shí)增加功能模塊。每一個(gè)功能模塊中有一個(gè)任務(wù)列表(Task List),工作流執(zhí)行服務(wù)通過(guò)該任務(wù)列表給各功能模塊分配任務(wù)。工作人員登錄進(jìn)入某個(gè)功能模塊后,可從任務(wù)列表選取任務(wù),并按規(guī)定執(zhí)行。

整個(gè)系統(tǒng)是以工作流執(zhí)行服務(wù)為核心,由工作流執(zhí)行服務(wù)中的工作流引擎來(lái)負(fù)責(zé)任務(wù)的調(diào)配工作。

2.3 系統(tǒng)的優(yōu)點(diǎn)

  前面介紹了系統(tǒng)所需要具有的性能:靈活性、敏捷性與可擴(kuò)展性。下面將分析基于工作流的方法是如何滿足這些性能要求的。

  (1)靈活性。在工作流系統(tǒng)中,過(guò)程模型和組織模型是相互分離的,可以隨時(shí)使用工作流定義功能模塊改變工作流過(guò)程定義,從而改變業(yè)務(wù)的處理流程。同時(shí),在一個(gè)業(yè)務(wù)過(guò)程實(shí)例的處理當(dāng)中,可以通過(guò)管理和監(jiān)控模塊動(dòng)態(tài)改變業(yè)務(wù)處理流程,這些均反應(yīng)了系統(tǒng)具有很好的靈活性。

  (2)敏捷反應(yīng)能力。從圖3中可看出,系統(tǒng)是以工作流執(zhí)行服務(wù)為核心來(lái)協(xié)調(diào)各個(gè)功能模塊的處理活動(dòng)。工作流執(zhí)行服務(wù)可以很好地監(jiān)控各個(gè)功能模塊,對(duì)各項(xiàng)活動(dòng)的分配與執(zhí)行均有記錄,可以避免部門之間的扯皮。同時(shí)也能方便地統(tǒng)計(jì)各項(xiàng)活動(dòng)的處理時(shí)間,尋找瓶頸所在,從而根據(jù)出現(xiàn)的問(wèn)題尋找解決辦法。客戶可以隨時(shí)查詢業(yè)務(wù)的處理狀態(tài)并與相應(yīng)部門聯(lián)系。這些途徑都能較好地提高系統(tǒng)的效率,提高業(yè)務(wù)處理的反應(yīng)能力。

  (3)良好的可擴(kuò)展能力。系統(tǒng)的靈活性是實(shí)現(xiàn)系統(tǒng)可擴(kuò)展性的手段之一,因?yàn)榭梢允褂霉ぷ髁鞫x功能模塊方便地修改業(yè)務(wù)的處理流程、增加新的處理業(yè)務(wù)或刪除已有的業(yè)務(wù)。同時(shí)系統(tǒng)是以工作流執(zhí)行服務(wù)為核心來(lái)協(xié)調(diào)各個(gè)功能模塊的處理活動(dòng),因此系統(tǒng)是一個(gè)二級(jí)結(jié)構(gòu),這也是系統(tǒng)規(guī)??蓴U(kuò)展的重要手段。

實(shí)踐證明,該系統(tǒng)的設(shè)計(jì)思想具有一定的參考價(jià)值,對(duì)開(kāi)發(fā)類似的系統(tǒng)可起到一定的借鑒作用。

?

參考文獻(xiàn)

1?? 史美林,楊光信,向勇等.WfMS:工作流管理系統(tǒng).計(jì)算機(jī)學(xué)報(bào),1999;22(3)

2?? 胡錦敏,張申生.支持企業(yè)動(dòng)態(tài)聯(lián)盟的敏捷工作流系統(tǒng).計(jì)算機(jī)研究與發(fā)展,1999;36(12)

3?? Workflow Management Coalition.Workflow Reference?Model.WfMC-TC-1003.Http://www.wfmc.org

4?? 范玉順,吳澄.工作流管理技術(shù)研究與產(chǎn)品現(xiàn)狀及發(fā)展趨勢(shì).計(jì)算機(jī)集成制造系統(tǒng)-CIMS,2000;6(1)

5?? 羅海濱,范玉順,吳澄.工作流技術(shù)綜述.軟件學(xué)報(bào),2000;11(7)

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。