日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

XPDL學(xué)習(xí)與分享一_東方標(biāo)準(zhǔn)(新東方IT)學(xué)習(xí)園地提供參考的有關(guān)“XPDL學(xué)習(xí)與分享一”...

 chanvy 2008-01-30
XPDL學(xué)習(xí)與分享一

 

最近從事工作流引擎的設(shè)計(jì)與開發(fā)工作,準(zhǔn)備在學(xué)習(xí)標(biāo)準(zhǔn)入手,從而更深入的了解工作流。俗話說“教學(xué)相長(zhǎng)”,希望一起討論,一起成長(zhǎng)。如果文中有錯(cuò)誤或者版權(quán)問題,請(qǐng)指出,謝謝!

 

  XPDL是xml工作流定義語(yǔ)言,使wfmc制定的一個(gè)國(guó)際標(biāo)準(zhǔn),期望建立一個(gè)統(tǒng)一的標(biāo)準(zhǔn),并且通過此標(biāo)準(zhǔn),能夠讓不同的流程引擎能夠相互交戶。

  wfmc工作流定義的元模型如下圖:

  圖中的方框,我們稱之為實(shí)體(entity),其中Activity這里翻譯為活動(dòng),Participant翻譯為參與者,relevant data翻譯為關(guān)聯(lián)數(shù)據(jù)。

  1.1. XPDL實(shí)體概述

  數(shù)據(jù)模型呈現(xiàn)了工作流定義中的最基本的組成實(shí)體,下面逐個(gè)對(duì)每個(gè)實(shí)體簡(jiǎn)單介紹一下:

  1.1.1. 工作流定義

  工作流定義為工作流中其他實(shí)體提供了上下文描述,包含自身信息,流程制定人和管理者的信息,或者是流程運(yùn)行時(shí)需要用的數(shù)據(jù),比如說初始化參數(shù)、流程限制時(shí)間、檢查點(diǎn)、需要通知的人等。

  1.1.2. 工作流活動(dòng)(Activity)

  工作流是由一個(gè)或多個(gè)活動(dòng)組成的,每個(gè)活動(dòng)都是由一個(gè)有邏輯的、自包含的工作組成。活動(dòng)體現(xiàn)為工作,工作可以是參與者參與的,也可以是計(jì)算機(jī)的應(yīng)用程序。其他的可選的信息包含活動(dòng)是否由流程管理系統(tǒng)自動(dòng)開始或者結(jié)束,活動(dòng)相對(duì)于同一個(gè)流程中其他活動(dòng)的對(duì)資源的優(yōu)先級(jí),活動(dòng)也可以指定流程中特殊的關(guān)聯(lián)數(shù)據(jù),也可以指定為一個(gè)子流程。

  一個(gè)活動(dòng)可以包含子流程,子流程可以是同一個(gè)流程引擎解析,也可以是遠(yuǎn)程調(diào)用其他流程引擎解析。子流程定義清楚了該子流程包含的活動(dòng)、trasition、參與者等信息。子流程成中的關(guān)聯(lián)數(shù)據(jù)可以作為子流程輸入和輸出。

  活動(dòng)可以包含一個(gè)活動(dòng)塊,這個(gè)活動(dòng)塊執(zhí)行一組活動(dòng),活動(dòng)和活動(dòng)之間有Transition,這些活動(dòng)與transition共用相同的命名空間。

  1.1.3. Transition信息

  活動(dòng)與活動(dòng)之間通過Transition連接的。一個(gè)Transition有三部分組成,起始活動(dòng)(From-Activity)、終止活動(dòng)(To-Activity)以及轉(zhuǎn)換條件(Condition),連接活動(dòng)與活動(dòng)之間的Transition可以通過條件判斷是否允許通過。Transition能連接串行的或者并行的活動(dòng)。Transition的連接類型有split和join兩種。Split是指由活動(dòng)分出去的類型,Join是連接到活動(dòng)的類型。

  1.1.4. 工作流參與者定義

  參與者定義了各個(gè)關(guān)卡的執(zhí)行者,參與者可以為預(yù)先定義好的人、也可以為計(jì)算機(jī)的應(yīng)用程序或者是計(jì)算機(jī)設(shè)備。參與者為人時(shí),不一定是一個(gè)人,也可以為一組人。

  1.1.5. 資源庫(kù)

  資源庫(kù)使得參與者能夠?yàn)槿?、設(shè)備或者是應(yīng)用程序,經(jīng)典的資源庫(kù)就是組織模型。

  1.1.6. 工作流應(yīng)用程序定義

  工作流應(yīng)用程序定義的是一個(gè)工作流程、或者活動(dòng)能調(diào)用的應(yīng)用程序或者是接口。這些應(yīng)用程序可能是設(shè)備、企業(yè)中其他應(yīng)用程序或者是接口。工作流應(yīng)用程序定義指的是連接工作流引擎的應(yīng)用程序或者接口,其中包含需要傳遞的參數(shù)。

  1.1.7. 工作流關(guān)聯(lián)數(shù)據(jù)

  流程執(zhí)行過程中流程實(shí)例產(chǎn)生或者用到的數(shù)據(jù),這些數(shù)據(jù)可能作用于運(yùn)行過程中的活動(dòng),也可能是用于顯示的數(shù)據(jù),也可能是用于決定活動(dòng)與活動(dòng)之間Transition中條件的數(shù)據(jù),也可能是用戶獲取參與人的數(shù)據(jù)。XPDL定義了基礎(chǔ)或者復(fù)雜類型的關(guān)聯(lián)數(shù)據(jù),活動(dòng)、應(yīng)用程序、Transition中的條件會(huì)引用這些數(shù)據(jù)。

  1.1.8. 系統(tǒng)與環(huán)境數(shù)據(jù)

  系統(tǒng)與環(huán)境數(shù)據(jù)是通過工作流管理系統(tǒng)或者本地系統(tǒng)維護(hù)的,這些數(shù)據(jù)可以被活動(dòng)訪問到,也會(huì)用戶Transition中條件的判斷。

  1.1.9. 數(shù)據(jù)類型和表達(dá)式

  工作流模型定義了一組數(shù)據(jù)類型,比如字符型、引用型、整型、浮點(diǎn)型、日期型等,這些類型將會(huì)用于定義關(guān)聯(lián)數(shù)據(jù)、環(huán)境數(shù)據(jù)以及參與者數(shù)據(jù)。通過這些類型的數(shù)據(jù),Transition中的條件能執(zhí)行表達(dá)式。數(shù)據(jù)類型能通過xml或者擴(kuò)展資源擴(kuò)展。

  1.1.10. 流程與包

  上圖所示,流程由各種各樣的實(shí)體組成,通常情況下,參與者、關(guān)聯(lián)數(shù)據(jù)經(jīng)常會(huì)被多個(gè)流程引用到。數(shù)據(jù)模型呈現(xiàn)了關(guān)聯(lián)工作流管理系統(tǒng)的,控制組成流程的各種類型實(shí)體的流程定義的庫(kù)的用處。

  包就是一個(gè)容器,包含了一些公共屬性,比如作者、版本、狀態(tài)等。包中的每個(gè)流程定義都可以繼承這些公共屬性,如果他們自己定義了,則不再繼承。

  包中會(huì)定義一些全局的實(shí)體,以便其他流程可以引用,這些實(shí)體一般為:

  n 工作流參與者

  n 工作流應(yīng)用程序定義

  n 工作流關(guān)聯(lián)數(shù)據(jù)定義

  包允許引用包內(nèi)部定義的實(shí)體,也可以引用其他包定義的東西,比如:

  n 其他包中的流程id作為子流程

  n 工作流參與者定義

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多