資源描述:
《輕量級工作流引擎的設計與實現(xiàn)(1)本科論文.doc》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在學術論文-天天文庫。
1、窗體頂端第一章引言1.1輕量級工作流引擎的概念輕量級的工作流引擎指的是從夠用、靈活和低成本的設計原則出發(fā),不追求工作流引擎的功能的完備和復雜,只是實現(xiàn)其中必不可少的功能和特征。在設計工作流引擎時主要考慮對其數(shù)據(jù)模型的定義和解釋、活動之間的協(xié)調(diào)以及任務的分配和控制等功能提供支持,而不支持諸如提供內(nèi)建(built-in)的應用開發(fā)工具、對應用資料的定義和完整性維護、完善的異常處理以及長事務控制等功能。輕量級工作流引擎的概念的提出,給開發(fā)工作流管理系統(tǒng)的開發(fā)人員開辟了一條新的道路。工作流管理技術本身就是一項抽象復雜的技術,它致力追求從企
2、事業(yè)各種各樣的業(yè)務中抽取出一個通用的模型,由這個模型去描述所有業(yè)務的一致性,以達到“放之四海皆可用”的程度。不過,要把眾多的而又錯綜復雜的業(yè)務都集中在這個模型中,這是一件非常困難的工作,要經(jīng)過一段漫長的摸索歷程。而輕量級的概念讓我們認識到可以從一般性的而又簡單的業(yè)務入手,為企事業(yè)快速的開發(fā)出一個適應他們本身業(yè)務需求的而又帶有可擴展性可移植性的信息管理系統(tǒng),為他們提高工作效率,并保證在一段很長的時間內(nèi)滿足不斷增加的業(yè)務需求。1.2工作流管理系統(tǒng)的分類及本文的側(cè)重點根據(jù)工作流過程本身的特點、系統(tǒng)建模的方式、所使用的底層支撐技術、以及工
3、作流過程的執(zhí)行方式等的不同而對工作流管理系統(tǒng)進行相應的分類。1.2.1面向文檔的與面向過程的前者的側(cè)著點在于將電子形式的文件、圖像等在有關的人員之間進行分發(fā),以便能夠得到不同人的處理與審閱?,F(xiàn)有的文件管理與映像管理系統(tǒng)均屬此類。在面向過程的WFMS中,工作流被描述成一序列執(zhí)行環(huán)節(jié)。與各環(huán)節(jié)相應都有待處理的資料對象。各環(huán)節(jié)的資料對象可以按不同的方式分發(fā)到其它環(huán)節(jié)中去,如可以將資料對象的值作為控制條件、或者依此資料對象組裝成其它的資料對象等。高端的WFMS一般都屬此類系統(tǒng)。1.2.2結(jié)構化的與即席的結(jié)構化工作流指的是在實際工作過程中會
4、反復重復、嚴格按照某個固定的步驟進行的業(yè)務過程。定義此種工作流所需要的各種類型的信息可以通過對業(yè)務過程進行詳細的分析而得到,從而得到完整的過程定義并在以后的應用過程中反復使用。大量的辦公程序,如公文處理、審批等都屬此類。即席工作流則是針對那些重復性不是很強或沒有重復性的工作流程的,關于這類流程執(zhí)行所需的有關參數(shù)(如參加者等)事先無法確定,而必須推遲到過程實例運行時才能確定,同時在執(zhí)行過程中間還可能會發(fā)生一些意外的情況。這種動態(tài)多變的特點在提供更高靈活性的同時,也為過程的建模與執(zhí)行帶來更多的復雜性。1.2.3基于郵件和基于數(shù)據(jù)庫前者
5、使用電子郵件來完成過程實例執(zhí)行過程中消息的傳遞、資料的分發(fā)與事件的通知。低端的系統(tǒng)所使用的經(jīng)常就是此種方法,它可以充分發(fā)揮電子郵件系統(tǒng)在廣域環(huán)境下的資料分發(fā)功能,但整個系統(tǒng)將運行于一種松散耦合的模式下。在基于數(shù)據(jù)庫的WFMS中,所有的資料都保存在某種類型的DBMS中,過程的執(zhí)行實際上就是對這些資料的查詢與處理。高端的大規(guī)模系統(tǒng)所使用的一般都是此種方法。1.2.4任務推動的與目標拉動的前者指的是從過程的開始逐步地一個環(huán)節(jié)一個環(huán)節(jié)的執(zhí)行,當某個活動實例被處理完之后,后續(xù)的有關活動將被創(chuàng)建并被激活,由此直至整個工作流程的完成。這是目前大
6、多數(shù)面向過程的WFMS所使用的執(zhí)行方式。而在目標拉動的WFMS中,一個業(yè)務流程被看成是一個目標。過程實例執(zhí)行時,該目標將被分解得到多個相互之間按一定約束條件的關聯(lián)起來的可執(zhí)行的多個環(huán)節(jié),其中各環(huán)節(jié)還可以當成是子目標而進一步進行分解。在各環(huán)節(jié)均執(zhí)行完畢之后,整個過程也就完成了。目標拉動是一種全新的執(zhí)行方式,下一代的WFMS將具有此種特征。應該說明的是:上述分類只是從不同的角度入手的。一般來說,后面那些特點將給WFMS帶來更好的靈活性,同時也將成為那些能夠支持跨機構的大規(guī)模復雜工作流管理、面向關鍵任務的WFMS不可缺少的特征。1.2.
7、5本文的側(cè)重點本文的側(cè)重點不在于完全實現(xiàn)其中一種工作流管理系統(tǒng)的所有功能,更不在于實現(xiàn)所有種類的工作流管理系統(tǒng)的全部功能,前文已經(jīng)說過,這是一件非常困難的事情。那么我們的側(cè)重點在哪里呢?就在于綜合以上四種工作流管理系統(tǒng)的主要特點,是一個面向文件的,基于數(shù)據(jù)庫的,由目標拉動的結(jié)構化的工作流管理系統(tǒng),并且由此去設計和實現(xiàn)工作流管理系統(tǒng)的核心――工作流引擎。從一般性來說,目前大多數(shù)的企事業(yè)的業(yè)務都是事務申請,公文流轉(zhuǎn),各項通知等等,這些業(yè)務或者需要查看,或者需要審批,而這些業(yè)務的資料基本上是以文件的形式保存在計算機上,而其中一些格式化的
8、資料是保存在數(shù)據(jù)庫中,所以面向文件和面向數(shù)據(jù)庫是輕量級工作流引擎的一個重要特征。業(yè)務的發(fā)起和結(jié)束是一項過程化的任務,任務又可以分解成一個一個環(huán)節(jié)任務,而任務是帶有目的性的,由這個目的去拉動這個過程中的一個一個的環(huán)節(jié)任務,促使環(huán)節(jié)任務的推進,最終達到