欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種支持多模式驅(qū)動的工作流引擎的制作方法

文檔序號:6545887閱讀:602來源:國知局
一種支持多模式驅(qū)動的工作流引擎的制作方法
【專利摘要】本發(fā)明公開了一種支持固定流、自由流和混合流三種模式驅(qū)動的工作流引擎,包括業(yè)務(wù)流程定義和業(yè)務(wù)流程驅(qū)動模塊。在固定流模式驅(qū)動下,業(yè)務(wù)流程定義規(guī)定了流程的所有活動、路由信息等參數(shù),在業(yè)務(wù)流程驅(qū)動時,必須根據(jù)定義的參數(shù)予以執(zhí)行。在自由流模式驅(qū)動下,不需要預(yù)先定義流程相關(guān)的活動或路由信息,在業(yè)務(wù)流程驅(qū)動時,每一個活動和路由通過選定的角色或人員以及選定的應(yīng)用程序信息動態(tài)地確定。在混合流模式驅(qū)動下,業(yè)務(wù)流程定義僅規(guī)定了流程可能涉及的活動信息參數(shù),在業(yè)務(wù)流程驅(qū)動時,對于已定義的活動參數(shù)必須參照執(zhí)行,對于路由線索、觸發(fā)條件等則通過選定的活動、角色或人員動態(tài)地確定。
【專利說明】一種支持多模式驅(qū)動的工作流引擎

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于計算機信息【技術(shù)領(lǐng)域】,更具體是一種支持多模式驅(qū)動的工作流引擎, 用于業(yè)務(wù)流程信息化系統(tǒng)的實現(xiàn)。

【背景技術(shù)】
[0002] 目前國內(nèi)外多數(shù)的工作流引擎模式比較單一,一般都是基于預(yù)先設(shè)定好的流轉(zhuǎn)線 索或事件觸發(fā)進(jìn)行流程的驅(qū)動,比如工作流管理聯(lián)盟(WFMC)就制定了詳細(xì)的工作流定義 及驅(qū)動等方面的規(guī)范,在此規(guī)范指導(dǎo)下,市場上存在很多工作流引擎產(chǎn)品,比如國外開源的 shark、osworkflow、jbpm,商業(yè)的ultimus,微軟的WF,國內(nèi)協(xié)同數(shù)碼、東蘭等公司的產(chǎn)品 等。
[0003] 這些產(chǎn)品都具備一些通用的特征,比如都是預(yù)先定義好流程模板,包括涉及的步 驟、步驟之間的先后關(guān)系、事件觸發(fā)的條件等,然后在流程實例化后根據(jù)預(yù)先定義好的模板 參數(shù)進(jìn)行驅(qū)動。這種工作流的驅(qū)動模式能適合多數(shù)需要工作流參與的場景,也在很多系統(tǒng) 里面有成功的案例。
[0004] 在普通應(yīng)用場景下,常規(guī)的通過預(yù)定義模板來驅(qū)動流程運轉(zhuǎn)的模式雖然能適應(yīng)一 般應(yīng)用需求。但是,在中國目前的體制環(huán)境下,尤其面對復(fù)雜的業(yè)務(wù)審批機制,這種常規(guī)的 工作流驅(qū)動模式就很難滿足實際需求。很多業(yè)務(wù)應(yīng)用并沒有良好的規(guī)范或標(biāo)準(zhǔn)可以遵循, "人治"而非"法治"階段特點明顯,意味著即使同樣的事情,在不同人或不同時間的執(zhí)行下 其所經(jīng)歷的環(huán)節(jié)都可能存在巨大差異,尤其是很多審批業(yè)務(wù)如何流轉(zhuǎn)都是由領(lǐng)導(dǎo)臨時發(fā)話 或者多人會簽意見來臨時動態(tài)決定的。比如政府機關(guān)的公文審批,正常的流程可能是簡單 的擬稿、審核、簽發(fā)、核稿、印發(fā),但在實際工作中,可能某個領(lǐng)導(dǎo)會隨意地簽發(fā)意見,從而改 變這種固有的流轉(zhuǎn)模式,完全無序或半無序地影響流程的運轉(zhuǎn)。此時常規(guī)的工作流引擎就 無法應(yīng)對這種需求了。為此,發(fā)明了支持固定流、自由流和混合流三種模式驅(qū)動的工作流引 擎。
[0005] 本發(fā)明的工作流引擎通過引入自由流和混合流的概念,不需要預(yù)先確定業(yè)務(wù)該怎 么辦、誰來辦、辦多久和怎么辦等參數(shù),而是將這些需要預(yù)先設(shè)定的參數(shù)下放到流程驅(qū)動環(huán) 節(jié),由上一環(huán)節(jié)的相關(guān)數(shù)據(jù)來智能決定,這樣以不變應(yīng)萬變的模式能很好的適應(yīng)所有的不 確定情況,使應(yīng)用系統(tǒng)更加的靈活和適應(yīng)用戶需求。
[0006] 本發(fā)明涉及到流程定義和流程驅(qū)動的基本概念如下:
[0007] 1)流程或子流程:一組實現(xiàn)一個企業(yè)目標(biāo)或策略目標(biāo)的相關(guān)聯(lián)的程序和活動,其 表現(xiàn)為一組活動、驅(qū)動線索等相關(guān)參數(shù)設(shè)定的集合。
[0008] 2)活動/步驟:流程定義中的最小單元,表示一個相對獨立的邏輯步驟,包括人工 活動和自動活動。
[0009] 3)路由:各個活動的串聯(lián)線索,表達(dá)了各個活動的流轉(zhuǎn)順序或觸發(fā)條件,包括分 支、聚合、單雙向、循環(huán)等類型。
[0010] 4)應(yīng)用程序:活動的附加參數(shù),定義活動需要干什么,比如填寫一個或多個表單 或打印一份文稿等。
[0011] 5)候選參與者:活動的附加參數(shù),定義由誰來執(zhí)行活動,可以是具體的人、角色或 系統(tǒng)。
[0012] 6)流程實例:即流程實例化后的具體對象,一個流程可以實例化多個流程實例。
[0013] 7)活動實例:及活動實例化后的對象,包括具體做了什么事、由誰花了多久來完 成的等內(nèi)容。
[0014] 8)路由實例:流程實際流轉(zhuǎn)的路線,記錄了流程實際流轉(zhuǎn)的路線信息。當(dāng)為固定 流時,路由實例為固定流定義里面的路徑之一,當(dāng)為自由流或混合流時,路由實例動態(tài)生 成。
[0015] 9)實際參與者:記錄了活動實際的辦理人,一般為人或者系統(tǒng)。
[0016] 10)應(yīng)用程序?qū)嵗夯顒訄?zhí)行時實際涉及的表單或其它任務(wù)。
[0017] 11)角色/分組:一組權(quán)限或人員的集合,對一群具有某些共同屬性的對象予以描 述。
[0018] 12)人員/用戶:具體的自然人描述或系統(tǒng)使用者的標(biāo)識。
[0019] 13)組織/崗位:行政單位設(shè)置。
[0020] 14)表單/處理:活動要填寫的電子表單或要完成的運算或其它事項。


【發(fā)明內(nèi)容】

[0021] 為了實現(xiàn)上述目的,本發(fā)明采取的技術(shù)方案是:
[0022] 本發(fā)明的工作流引擎包括業(yè)務(wù)流程定義和業(yè)務(wù)流程驅(qū)動二個部分,支持固定流、 自由流和混合流三種模式驅(qū)動。工作流引擎以組件方式開發(fā),組件對象包括流程模板、流 程、活動、路由、候選執(zhí)行者、應(yīng)用程序、流程實例、活動實例、路由實例、實際執(zhí)行者、擴展參 數(shù)等。
[0023] 所述業(yè)務(wù)流程定義部分用于描述業(yè)務(wù)流程,包括以下操作步驟:
[0024] S10:創(chuàng)建流程模板,所述流程模板是同類型業(yè)務(wù)流程的集合,用于方便管理同類 型節(jié)點的流程。
[0025] S20 :在流程模板中添加一個流程/子流程,所述流程/子流程是一系列相關(guān)活動 的有序組合,支持固定流模式、自由流模式和混合流模式驅(qū)動。
[0026] S30 :對上述流程/子流程配置屬性,每個流程除包括名稱、分類、狀態(tài)、驅(qū)動模式、 期限和描述等基本信息外,還可以配置高級屬性,包括流程主管部門、負(fù)責(zé)人、內(nèi)部編碼、流 轉(zhuǎn)控制、表單控制、參與者和擴展參數(shù)等信息。
[0027] S40 :對上述流程添加開始活動。
[0028] S50 :配置開始活動屬性,包括開始活動的基本屬性、候選參與者、應(yīng)用程序和參數(shù) 四個方面,其中,基本屬性包括名稱、類型、期限、執(zhí)行策略、啟動條件、提交條件等。候選參 與者類型可以是角色、也可以是具體的職員。參與方式可以是主辦、分發(fā)、協(xié)辦、督辦、查詢 等,并可以根據(jù)業(yè)務(wù)系統(tǒng)需要進(jìn)行設(shè)置。應(yīng)用程序(如表單或者應(yīng)用程序的URL地址)可 以運行在不同類型的設(shè)備上,如桌面電腦、智能手機等終端設(shè)備。
[0029] S601 :如果流程定義為固定流模式,添加后續(xù)的活動。其添加方法與添加開始活動 的方法類似。轉(zhuǎn)步驟S701。
[0030] S602 :如果流程定義為自由流模式,轉(zhuǎn)步驟S100。
[0031] S603 :如果流程定義為混合流模式,添加后續(xù)的活動。。其添加方法與添加開始活 動的方法類似。轉(zhuǎn)步驟S703。
[0032] S701 :對于固定流模式,配置后續(xù)活動的屬性。其屬性配置方法與配置開始活動屬 性的方法類似。轉(zhuǎn)步驟S801。
[0033] S703 :對于混合流模式,配置后續(xù)活動的屬性。其屬性配置方法與配置開始活動屬 性的方法類似。
[0034] 轉(zhuǎn)步驟S603,繼續(xù)添加相關(guān)的活動。所有活動設(shè)置完成后,轉(zhuǎn)步驟S100。
[0035] S801 :對于固定流模式,添加路由。路由表達(dá)了各個活動的流轉(zhuǎn)順序或觸發(fā)條件。 其中,流轉(zhuǎn)順序可以有分支、聚合、單雙向、循環(huán)等形式。
[0036] S901 :對于固定流模式,配置路由控制。每條路由可以為普通、缺省和必選三種類 型,路由的分支控制也可以進(jìn)行人工控制。
[0037] 轉(zhuǎn)步驟S601,繼續(xù)添加相關(guān)的活動和路由。所有活動和路由設(shè)置完成后,轉(zhuǎn)步驟 S100。
[0038] S100 :保存流程信息,流程定義結(jié)束。
[0039] 進(jìn)一步,在業(yè)務(wù)流程定義時,還包括權(quán)限管理配置、表單管理配置等模塊。權(quán)限管 理配置模塊負(fù)責(zé)管理業(yè)務(wù)流程、活動涉及的組織結(jié)構(gòu)設(shè)置、機構(gòu)職員構(gòu)成、職員、角色分組, 以及設(shè)置相應(yīng)的權(quán)限。表單是活動過程中要填寫的電子表格或要完成的運算,通過配置應(yīng) 用程序?qū)?yīng)的表單路徑(包括表單標(biāo)識或表單對應(yīng)的URL地址),使活動與應(yīng)用程序關(guān)聯(lián)。
[0040] 所述業(yè)務(wù)流程驅(qū)動部分,用于創(chuàng)建流程實例,并根據(jù)業(yè)務(wù)流程定義,創(chuàng)建流程的每 一個活動實例、路由實例,為每一個活動設(shè)置實際參與者和應(yīng)用程序?qū)嵗取?br> [0041] 對于固定流模式驅(qū)動,每一個預(yù)定義好的流程可以實例化多個實例。每個實例創(chuàng) 建后,按順序?qū)嵗唧w的活動,每個活動由對應(yīng)的應(yīng)用程序執(zhí)行完成后,提交到下一活動 時,必須按照流程定義的路由線路進(jìn)行,并激活下一活動。
[0042] 對于自由流模式驅(qū)動,其運轉(zhuǎn)的邏輯規(guī)則有下面關(guān)鍵幾點:
[0043] 1)流程實例化時,首先初始化流程相關(guān)的信息,包括事項名稱、辦理時限等,然后 進(jìn)入第一步初始化。
[0044] 2)第一步初始化時,首先決定本步驟要辦理的事項(比如填寫哪個表單)、辦理的 時限等內(nèi)容,然后分配給辦理的執(zhí)行者(如角色或人員)。本步驟的名稱需要通過選定的角 色或人員以及選定的應(yīng)用程序信息動態(tài)地確定。假設(shè)選定的應(yīng)用程序為某一個名稱叫"預(yù) 審單"的表單,而選定的負(fù)責(zé)辦理本步驟的角色為"局長"或者選定的人員職務(wù)級別為"局 長",那么工作流引擎將智能地根據(jù)這些信息將步驟名稱創(chuàng)建為"局長預(yù)審",同理如果選擇 的角色是"處長",那么本步驟名稱創(chuàng)建為"處長預(yù)審",如果選定的角色為辦事員或普通職 員,那么本步驟稱創(chuàng)建為"處室承辦預(yù)審單"等。
[0045] 3)每一步辦理完成后,支持無限多次提交下一步辦理(或同時提交到多步辦理), 其規(guī)則與流程第一步類似。選定應(yīng)用程序(如表單應(yīng)用程序)、選定執(zhí)行者(如角色或人 員)、設(shè)定時限等附加參數(shù)后可以提交本步驟操作,由工作流引擎根據(jù)應(yīng)用程序和執(zhí)行者動 態(tài)地確定下一步的步驟名稱并同時記錄流轉(zhuǎn)線索。
[0046] 4)當(dāng)流轉(zhuǎn)到某一步時,執(zhí)行者如果判斷自己的事情已經(jīng)辦結(jié),也不需要提交下一 步來完成其他任務(wù)時,可以通過調(diào)用工作流的辦結(jié)功能將本步驟予以辦結(jié),當(dāng)所有路由分 支線路上的步驟都辦結(jié)后,整個自由流實例就辦結(jié)了。
[0047] 對于混合流模式驅(qū)動,其實例化及驅(qū)動遵循的規(guī)則要點包括:
[0048] 1)流程創(chuàng)建后,再創(chuàng)建活動實例時,只能從流程預(yù)定義的活動里面選擇一個或多 個進(jìn)行創(chuàng)建,活動創(chuàng)建規(guī)則按預(yù)先定義好的參數(shù)進(jìn)行創(chuàng)建。
[0049] 2)活動提交時,也只能在預(yù)先定義好的活動中選擇一個或多個進(jìn)行提交并創(chuàng)建 (已創(chuàng)建的也可以再次被創(chuàng)建),創(chuàng)建完成后,工作流引擎動態(tài)創(chuàng)建路由實例信息。
[0050] 3)活動可以按上述規(guī)則無限制的往下提交,當(dāng)某一步辦理者認(rèn)為不需要繼續(xù)提交 事情時,直接調(diào)用工作流引擎予以辦結(jié)當(dāng)前步驟。當(dāng)所有分支步驟都選擇辦結(jié)后,整個流程 就辦結(jié)了。
[0051] 有益效果
[0052] 本發(fā)明主要解決了常規(guī)工作流引擎無法適應(yīng)中國特色環(huán)境下隨意性強的業(yè)務(wù)審 批過程。
[0053] 常規(guī)固定流模式能適應(yīng)多數(shù)有規(guī)則可循的業(yè)務(wù)流程定義及驅(qū)動,適應(yīng)規(guī)范的推進(jìn) 和績效監(jiān)控。
[0054] 自由流模式能適應(yīng)國內(nèi)行政審批流程難固化的現(xiàn)狀,滿足了多數(shù)行政審批千變?nèi)f 化的需求,進(jìn)一步擴展了工作流引擎管控的范圍。
[0055] 混合模式能適應(yīng)部分業(yè)務(wù)流程重復(fù)但無序的現(xiàn)狀,既能有效的限定業(yè)務(wù)的流轉(zhuǎn)范 圍,也能為流轉(zhuǎn)的順序、次數(shù)、時限等留下了足夠的靈活調(diào)整空間,又進(jìn)一步擴展和強化了 工作流引擎管控的范圍。
[0056] 本發(fā)明通過在常規(guī)固定工作流模式下,創(chuàng)新發(fā)明了自由流和混合流的管控模式, 大幅度的擴展了工作流引擎可以管控的范圍,將一切只要結(jié)果上表現(xiàn)出線索等關(guān)鍵特征的 業(yè)務(wù)信息都統(tǒng)一管理監(jiān)控起來,提高了應(yīng)用系統(tǒng)的管理能力,也縮短了系統(tǒng)的研發(fā)周期,降 低了程序研發(fā)的復(fù)雜度,也節(jié)約了管理的成本和研發(fā)的成本。

【專利附圖】

【附圖說明】
[0057] 此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā) 明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。
[0058] 圖1是根據(jù)本發(fā)明施例中的業(yè)務(wù)流程定義示意圖;
[0059] 圖2是根據(jù)本發(fā)明實施例中的固定流定義的示意圖;
[0060] 圖3是根據(jù)本發(fā)明實施例中的固定流定義實例化的示意圖;
[0061] 圖4是根據(jù)本發(fā)明實施例中的自由流定義實例化的示意圖;
[0062] 圖5是根據(jù)本發(fā)明實施例中的混合流定義的示意圖;
[0063] 圖6是根據(jù)本發(fā)明實施例中的混合流定義實例化的示意圖;
[0064] 圖7是本發(fā)明的工作流引擎組件對象圖。

【具體實施方式】
[0065](一)業(yè)務(wù)流程定義方法 [0066] 業(yè)務(wù)流程定義的步驟如圖1所示。
[0067] S10 :創(chuàng)建流程模板
[0068] 流程模板是同類型業(yè)務(wù)流程的容器。每個流程模板包括名稱、分類及描述等基本 信息。
[0069] S20 :添加流程/子流程
[0070] 在流程模板中添加流程。每個流程包括名稱、分類、狀態(tài)、驅(qū)動模式、期限和描述等 基本信息。其中流程狀態(tài)有禁用、啟用兩個狀態(tài),表明當(dāng)前流程是否可用。驅(qū)動模式包括固 定流模式、自由流模式和混合流模式。期限信息描述了當(dāng)前流程辦理的總期限。
[0071] 進(jìn)一步地,在流程中可以添加關(guān)聯(lián)的子流程,其方法與添加流程的方法類似。
[0072] S30 :配置流程屬性
[0073] 每個流程除包括名稱、分類、狀態(tài)、驅(qū)動模式、期限和描述等基本信息外,還可以配 置高級屬性,包括流程主管部門、負(fù)責(zé)人、內(nèi)部編碼、流轉(zhuǎn)控制、表單控制、參與者和擴展參 數(shù)等信息。其中:
[0074] 流程內(nèi)部編碼可以用于流程的識別和統(tǒng)計。流轉(zhuǎn)控制有允許更改和不允許更改兩 種模式。在流程流轉(zhuǎn)提交時,允許更改模式可以更改提交的活動/步驟。表單控制也有允許 增加和不允許增加兩種模式。在流程流轉(zhuǎn)提交時,允許增加模式可以更改下一活動/步驟 運行的表單。參與者可以是單個職員、崗位、或是一個角色。如果參與者為崗位或角色,則 所屬崗位或角色下的所有職員具備相應(yīng)的權(quán)限。參與者的參與方式分為主辦和分發(fā)兩種方 式。主辦為當(dāng)前程序的辦理者,即流程的創(chuàng)建者;分發(fā)表示當(dāng)前用戶是程序的全程負(fù)責(zé)人, 在流程設(shè)置為"全程負(fù)責(zé)"模式時有效。參與者控制有允許另選和不允許另選兩種模式。在 流程流轉(zhuǎn)提交時,允許另選模式可以自定義更改下一活動/步驟的辦理人。擴展參數(shù)用于 為流程設(shè)置擴展屬性。
[0075] S40 :添加開始活動
[0076] 每個流程包含一個開始活動。每個活動由多個屬性組成。
[0077] S50 :配置開始活動屬性
[0078] 每個活動(包括開始活動)由基本屬性、參與者、應(yīng)用程序和參數(shù)四個方面組成。 其中,基本屬性包括:
[0079] 活動名稱:當(dāng)前活動/步驟的名稱,如"收件"。
[0080] 活動類型:當(dāng)前活動/步驟的類型屬性。
[0081] 執(zhí)行期限:當(dāng)前活動/步驟的辦理期限。
[0082] 執(zhí)行策略:控制流程流轉(zhuǎn)辦理者,分為共享工作模式、平行會簽?zāi)J健⒘鞒虅?chuàng)建者 模式和上步執(zhí)行者模式四種。共享模式為當(dāng)前活動/步驟按流程設(shè)置的參與者辦理;平行 會簽?zāi)J綖楫?dāng)前活動/步驟為平行會簽,必須所有的參與者都辦理完成才可提交至下一步 驟;流程創(chuàng)建者模式表示當(dāng)前活動/步驟只有流程創(chuàng)建者可以辦理;上步執(zhí)行者則表示當(dāng) 前活動/步驟只有上一步的執(zhí)行者才能辦理。
[0083]啟動約束:設(shè)置當(dāng)前流程步驟辦理的約束條件,分為前續(xù)步驟全部完成、前續(xù)步驟 完成一步和前續(xù)必選步驟完成、強制合并進(jìn)入步驟四種約束條件。其中,第四種約束條件是 指如果當(dāng)前步驟已創(chuàng)建,并有新的步驟需要提交到本步驟時將不新創(chuàng)建步驟,而是直接指 向當(dāng)前已創(chuàng)建的步驟。
[0084] 提交約束:設(shè)置當(dāng)前活動/步驟提交的約束條件,分為只能選擇一條路徑和可以 選擇所有路徑這兩種模式。只能選擇一條路徑表示業(yè)務(wù)提交時,下一活動/步驟只能選擇 一個(界面表現(xiàn)為單選框);可以選擇所有路徑表示業(yè)務(wù)提交時,可以自定義選擇多個下一 活動/步驟(界面表現(xiàn)為復(fù)選框)。說明:如果路由線上面設(shè)置為必選時,對應(yīng)步驟提交時 是不可取消選中的,如果路由線上面設(shè)置為默認(rèn),那么就是默認(rèn)選中但可以取消。
[0085] 必須附件:當(dāng)前步驟提交時,必須提供的附件,如沒有提供相應(yīng)附件,活動/步驟 提交時,系統(tǒng)將給出提示。例如辦理土地登記業(yè)務(wù),收件時 [0086] 需提供相應(yīng)附件。有多個附件時以";"分開設(shè)置。
[0087] 備選附件:當(dāng)前流程的備選附件清單,多個附件時以";"分開設(shè)置。
[0088] 參與者屬性描述了當(dāng)前活動的參與者或辦理者,包括參與者名稱、類型、參與方式 和描述信息等。其中,參與者類型可以是角色、也可以是具體的職員。參與方式可以是主辦、 分發(fā)、協(xié)辦、督辦、查詢等,并可以根據(jù)業(yè)務(wù)系統(tǒng)需要進(jìn)行設(shè)置。
[0089] 應(yīng)用程序?qū)傩悦枋隽水?dāng)前活動/步驟的應(yīng)用程序(如表單或者應(yīng)用程序的URL地 址),包含了應(yīng)用程序名稱、類型、所屬分類、用途和描述等信息。應(yīng)用程序可能運行在不同 類型的設(shè)備上,如桌面電腦、智能手機等終端設(shè)備。
[0090] 活動的參數(shù)屬性用于設(shè)置每個活動的初始化參數(shù),并可以根據(jù)這些參數(shù)進(jìn)行業(yè)務(wù) 控制和功能操作控制。
[0091] S601 :如果流程定義為固定流模式,添加后續(xù)的活動。其添加方法與添加開始活動 的方法類似。
[0092] S602 :如果流程定義為自由流模式,轉(zhuǎn)步驟S100。
[0093] S603 :如果流程定義為混合流模式,添加后續(xù)的活動。。其添加方法與添加開始活 動的方法類似。
[0094] S701 :對于固定流模式,配置后續(xù)活動的屬性。其屬性配置方法與配置開始活動屬 性的方法類似。
[0095] S703 :對于混合流模式,配置后續(xù)活動的屬性。其屬性配置方法與配置開始活動屬 性的方法類似。所有活動設(shè)置完成后,轉(zhuǎn)步驟S100。
[0096] S801 :對于固定流模式,添加路由。
[0097] 路由表達(dá)了各個活動的流轉(zhuǎn)順序或觸發(fā)條件,可以包括名稱和類型信息。流轉(zhuǎn)順 序可以有分支、聚合、單雙向、循環(huán)等形式。
[0098] S901 :對于固定流模式,配置路由控制。每條路由可以為普通、缺省和必選三種類 型,路由的分支控制也可以進(jìn)行人工控制。所有活動和路由設(shè)置完成后,轉(zhuǎn)步驟S100。
[0099] S100 :保存流程信息,流程定義結(jié)束。
[0100] (二)固定流模式驅(qū)動
[0101] 固定流模式是目前市面上絕大多數(shù)工作流引擎的工作模式,適用的業(yè)務(wù)流程場景 為:預(yù)先知曉要干什么、誰來干、誰先干的場景。工作流引擎需要預(yù)先定義工作流驅(qū)動模板, 并在模板里面預(yù)先規(guī)劃好某次某類工作需要經(jīng)歷的步驟(事件)、先后順序(路由線索)、 分支觸發(fā)條件、辦理人、辦理事項等內(nèi)容,然后再實例化此預(yù)先定義好的工作流模板,根據(jù) 預(yù)定義的路由線索及事件條件等參數(shù)驅(qū)動業(yè)務(wù)實例按預(yù)定的規(guī)則流轉(zhuǎn)。如果在流轉(zhuǎn)過程 中出現(xiàn)例外情況,則通過提供召回、退回、續(xù)辦、補辦、掛起、恢復(fù)、廢棄、終止、辦結(jié)、激活、跳 轉(zhuǎn)、會簽、抄送、掛接等例外處理機制來應(yīng)對。
[0102] 在固定流模式下,要辦理的業(yè)務(wù)一般具有可量化的過程,需要預(yù)先定義流程相關(guān) 信息,包括名稱、時限、事項等;還需要預(yù)先定義好涉及的活動信息,其中每個活動需要預(yù)先 設(shè)定本活動需要完成什么任務(wù)(比如要填寫哪些表單)、可以由哪些人來完成(角色或用 戶)等內(nèi)容;然后還需要定義好每一個活動可以跳轉(zhuǎn)路由到下一哪些活動,路由條件及事 件等觸發(fā)策略是什么等內(nèi)容,這些相關(guān)參數(shù)定義好后,在實際驅(qū)動時,所有的內(nèi)容都必須按 這些預(yù)定義好的參數(shù)予以執(zhí)行。
[0103] 圖2為一個典型的固定流定義示意圖,其中ABCDEFGHI為預(yù)定好的活動,它們之間 的連線為路由線索。在流程中的某一步還可以關(guān)聯(lián)子流程。圖2中,在實際路由經(jīng)過F這 一步活動時,可以選擇啟動子流程。其中,子流程的定義、實例化和驅(qū)動與主流程一致。
[0104] 每一個預(yù)定義好的流程可以實例化多個實例。每個實例創(chuàng)建后,按順序?qū)嵗?體的活動,每個活動由對應(yīng)的應(yīng)用程序執(zhí)行完成后,提交到下一活動時,必須按照流程定義 的路由線路進(jìn)行,并激活下一活動。
[0105] 圖3為上述流程實例化的示意圖,其中以粗實線表示的節(jié)點代表此流程實例的活 動,以粗實線箭頭表示的路由組成此實例的路由線路。每個流程實例包括流程的實例信息、 活動的實例信息(包括表單實例和參與者實例)、路由的實例等相關(guān)信息。在流程監(jiān)控時即 可根據(jù)這些實例記錄對流程的運轉(zhuǎn)情況進(jìn)行監(jiān)控。
[0106] 在這種固定流模式下,如果因其它外部原因需要調(diào)整流程實例狀態(tài)時,可以通過 有限的例外處理策略來完成,但例外處理策略也不能偏離流程預(yù)定義好的規(guī)則范圍。常見 例外處理策略包括:召回、退回、續(xù)辦、補辦、掛起、恢復(fù)、廢棄、終止、辦結(jié)、激活、跳轉(zhuǎn)、會簽、 抄送、掛接等。
[0107] (三)自由流模式驅(qū)動
[0108] 所述自由流模式是本發(fā)明針對實際工作中業(yè)務(wù)流程定義不嚴(yán)格的情況提出的一 種業(yè)務(wù)流程驅(qū)動模式,是對固定流模式的擴展。,適用的業(yè)務(wù)流程場景為:無法預(yù)知要干什 么、誰來干、干多久、干多少、誰先干的場景。工作流引擎不需要預(yù)先定義流程相關(guān)的活動或 路由信息,可以任意實例化啟動流程。此類流程驅(qū)動時,后續(xù)步驟要干什么及誰來干、干多 久,在每一次都是未知的,而且每一次實例化后,到辦結(jié)時,所經(jīng)歷的過程都將是不同的,是 完完全全的自由驅(qū)動模式,可以勝任所有預(yù)先無法固化流程模板的業(yè)務(wù)需求。
[0109] 自由流驅(qū)動模式解決的需求都是無序的、無法預(yù)先定義的業(yè)務(wù)流轉(zhuǎn)需求,所以這 類業(yè)務(wù)流在開始時不需要進(jìn)行工作流預(yù)定義工作,工作流引擎最多提供一個便于實例化的 人機交互界面即可。
[0110] 自由流的驅(qū)動比固定流要復(fù)雜,其運轉(zhuǎn)的邏輯規(guī)則有下面關(guān)鍵幾點:
[0111] 1)流程實例化時,首先初始化流程相關(guān)的信息,包括事項名稱、辦理時限等,然后 進(jìn)入第一步初始化。
[0112] 2)第一步初始化時,首先決定本步驟要辦理的事項(比如填寫哪個表單)、辦理的 時限等內(nèi)容,然后分配給辦理的執(zhí)行者(如角色或人員)。本步驟的名稱需要通過選定的角 色或人員以及選定的應(yīng)用程序信息動態(tài)地確定。假設(shè)選定的應(yīng)用程序為某一個名稱叫"預(yù) 審單"的表單,而選定的負(fù)責(zé)辦理本步驟的角色為"局長"或者選定的人員職務(wù)級別為"局 長",那么工作流引擎將智能地根據(jù)這些信息將步驟名稱創(chuàng)建為"局長預(yù)審",同理如果選擇 的角色是"處長",那么本步驟名稱創(chuàng)建為"處長預(yù)審",如果選定的角色為辦事員或普通職 員,那么本步驟稱創(chuàng)建為"處室承辦預(yù)審單"等。
[0113] 3)每一步辦理完成后,支持無限多次提交下一步辦理(或同時提交到多步辦理), 其規(guī)則與流程第一步類似。選定應(yīng)用程序(如表單應(yīng)用程序)、選定執(zhí)行者(如角色或人 員)、設(shè)定時限等附加參數(shù)后可以提交本步驟操作,由工作流引擎根據(jù)應(yīng)用程序和執(zhí)行者動 態(tài)地確定下一步的步驟名稱并同時記錄流轉(zhuǎn)線索。
[0114] 4)當(dāng)流轉(zhuǎn)到某一步時,執(zhí)行者如果判斷自己的事情已經(jīng)辦結(jié),也不需要提交下一 步來完成其他任務(wù)時,可以通過調(diào)用工作流的辦結(jié)功能將本步驟予以辦結(jié),當(dāng)所有路由分 支線路上的步驟都辦結(jié)后,整個自由流實例就辦結(jié)了。
[0115] 圖4為一個自由流實例的示意圖,其中每一步活動都是動態(tài)創(chuàng)建完成的。
[0116] (四)混合流模式驅(qū)動
[0117] 所述混合流模式為前述固定流模式和自由流模式的折中表現(xiàn),適用的業(yè)務(wù)流程場 景為:知曉要干什么,但無法確定它們誰先干、干多少的場景。工作流引擎將預(yù)先定義已知 的步驟(事件)、辦理事項、辦理人等信息,但不指定這些步驟之間的路由順序,在實際實例 化后,工作流流轉(zhuǎn)時將只能在這些候選的步驟之間進(jìn)行零次或多次的流轉(zhuǎn)驅(qū)動,但不能隨 意的創(chuàng)建新的步驟。相對上述的自由流,其受到了部分預(yù)定義條件的限制,可避免流程運轉(zhuǎn) 發(fā)生失控。
[0118] 混合流驅(qū)動模式綜合了固定流和自由流的部分特點,采取了部分固定部分自由的 驅(qū)動模式,其中對于流程的定義、活動的定義(含應(yīng)用程序、參與者、時限等)予以預(yù)先定義 好,在實際實例化時,對于預(yù)先已定義好的參數(shù)必須予以參照執(zhí)行,而對于路由線索、條件 事件等不需要預(yù)先定義,類似于自由流模式在實際運轉(zhuǎn)過程中,通過自動或手動的模式?jīng)Q 定后續(xù)辦理哪些步驟、何時辦結(jié)等。
[0119] 圖5為一個混合流的流程定義示意圖,在圖5中,預(yù)先定義流程相關(guān)信息(如名 稱、時限等參數(shù)),然后預(yù)定義本流程可能需要執(zhí)行的步驟(包括名稱、應(yīng)用程序、實現(xiàn)、參 與者等),但是不設(shè)定這些活動/步驟之間的先后順序、執(zhí)行次數(shù)等路由信息。
[0120] 在混合流程驅(qū)動時,部分具備固定流的特征,部分有自由流的特征,其實例化及驅(qū) 動遵循的規(guī)則要點包括:
[0121] 1)流程創(chuàng)建后,再創(chuàng)建活動實例時,只能從流程預(yù)定義的活動里面選擇一個或多 個進(jìn)行創(chuàng)建,活動創(chuàng)建規(guī)則按預(yù)先定義好的參數(shù)進(jìn)行創(chuàng)建。
[0122] 2)活動提交時,也只能在預(yù)先定義好的活動中選擇一個或多個進(jìn)行提交并創(chuàng)建 (已創(chuàng)建的也可以再次被創(chuàng)建),創(chuàng)建完成后,工作流引擎動態(tài)創(chuàng)建路由實例信息。
[0123] 3)活動可以按上述規(guī)則無限制的往下提交,當(dāng)某一步辦理者認(rèn)為不需要繼續(xù)提交 事情時,直接調(diào)用工作流引擎予以辦結(jié)當(dāng)前步驟。當(dāng)所有分支步驟都選擇辦結(jié)后,整個流程 就辦結(jié)了。
[0124] 圖6為一個混合流實例的示意圖。其中,每一個活動實例都是根據(jù)圖5預(yù)定義好 的某一個活動創(chuàng)建的實例,而不是獨立動態(tài)創(chuàng)建的活動實例。
[0125] (五)工作流引擎組件庫
[0126] 本發(fā)明的工作流引擎以組件方式開發(fā),組件對象包括工作流模板、工作流過程、工 作流活動、流程關(guān)系樹、候選執(zhí)行者、實例執(zhí)行者、應(yīng)用程序、過程實例、活動實例、工作流跳 轉(zhuǎn)、狀態(tài)追蹤、擴展參數(shù)、運行日志等,如圖7所示。
[0127] 最后應(yīng)說明的是:顯然,上述實施例僅僅是為清楚地說明本申請所作的舉例,而并 非對實施方式的限定。對于所屬領(lǐng)域的普通技術(shù)人員來說,在上述說明的基礎(chǔ)上還可以做 出其它不同形式的變化或變動。這里無需也無法對所有的實施方式予以窮舉。而由此所引 申出的顯而易見的變化或變動仍處于本申請型的保護(hù)范圍之中。
【權(quán)利要求】
1. 一種支持多模式驅(qū)動的工作流引擎,其特征在于:所述引擎包括業(yè)務(wù)流程定義模塊 和業(yè)務(wù)流程驅(qū)動模塊,所述業(yè)務(wù)流程定義模塊用于描述業(yè)務(wù)流程,所述業(yè)務(wù)流程驅(qū)動模塊, 用于創(chuàng)建流程實例,并根據(jù)業(yè)務(wù)流程定義,創(chuàng)建流程的每一個活動實例和路由實例,為每一 個活動設(shè)置實際參與者和應(yīng)用程序?qū)嵗?br> 2. 根據(jù)權(quán)利要求1所述的工作流引擎,其特征在于:所述工作流引擎以組件方式開發(fā), 組件對象包括流程模板、流程、活動、路由、候選執(zhí)行者、應(yīng)用程序、流程實例、活動實例、路 由實例、實際執(zhí)行者和擴展參數(shù)。
3. 根據(jù)權(quán)利要求1所述的工作流引擎,其特征在于,所述業(yè)務(wù)流程定義模塊,包括以下 步驟: S10創(chuàng)建流程模板,所述流程模板是同類型業(yè)務(wù)流程的集合,用于方便管理同類型節(jié)點 的流程; S20在流程模板中添加一個流程或子流程,所述流程或子流程是一系列相關(guān)活動的有 序組合,支持固定流模式、自由流模式和混合流模式驅(qū)動; S30對上述流程或子流程配置屬性,每個流程除包括名稱、分類、狀態(tài)、驅(qū)動模式、期限 和描述基本信息外,還能夠配置高級屬性,所述高級屬性包括流程主管部門、負(fù)責(zé)人、內(nèi)部 編碼、流轉(zhuǎn)控制、表單控制、參與者和擴展參數(shù)信息; S40對上述流程添加開始活動; S50配置開始活動屬性,包括開始活動的基本屬性、候選參與者、應(yīng)用程序和參數(shù)四個 方面,其中,基本屬性包括名稱、類型、期限、執(zhí)行策略、啟動條件、提交條件;候選參與者類 型是角色或是具體的職員;參與方式是主辦、分發(fā)、協(xié)辦、督辦、查詢,并能夠根據(jù)業(yè)務(wù)系統(tǒng) 需要進(jìn)行設(shè)置;應(yīng)用程序能夠運行在不同類型的設(shè)備上。 S601如果流程定義為固定流模式,添加后續(xù)的活動,其添加方法與添加開始活動的方 法類似,轉(zhuǎn)步驟S701 ; S602如果流程定義為自由流模式,轉(zhuǎn)步驟S100 ; S603如果流程定義為混合流模式,添加后續(xù)的活動,其添加方法與添加開始活動的方 法類似,轉(zhuǎn)步驟S703 ; S701對于固定流模式,配置后續(xù)活動的屬性,其屬性配置方法與配置開始活動屬性的 方法類似,轉(zhuǎn)步驟S801 ; S703對于混合流模式,配置后續(xù)活動的屬性,其屬性配置方法與配置開始活動屬性的 方法類似; 轉(zhuǎn)步驟S603,繼續(xù)添加相關(guān)的活動,所有活動設(shè)置完成后,轉(zhuǎn)步驟S100 ; S801對于固定流模式,添加路由,路由表達(dá)了各個活動的流轉(zhuǎn)順序或觸發(fā)條件,其中, 流轉(zhuǎn)順序可以有分支、聚合、單雙向或循環(huán)形式; S901對于固定流模式,配置路由控制,每條路由可以為普通、缺省和必選三種類型,路 由的分支控制也可以進(jìn)行人工控制; 轉(zhuǎn)步驟S601,繼續(xù)添加相關(guān)的活動和路由,所有活動和路由設(shè)置完成后,轉(zhuǎn)步驟S100 ; S100保存流程信息,流程定義結(jié)束。
4. 根據(jù)權(quán)利要求3所述的工作引擎,其特征在于:S50中所述設(shè)備包括桌面電腦、智能 手機終端設(shè)備;所述業(yè)務(wù)流程定義模塊,還包括權(quán)限管理配置、表單管理配置模塊;權(quán)限管 理配置模塊負(fù)責(zé)管理業(yè)務(wù)流程、活動涉及的組織結(jié)構(gòu)設(shè)置、機構(gòu)職員構(gòu)成、職員、角色分組, 以及設(shè)置相應(yīng)的權(quán)限;表單是活動過程中要填寫的電子表格或要完成的運算,通過配置應(yīng) 用程序?qū)?yīng)的表單路徑,使活動與應(yīng)用程序關(guān)聯(lián)。
5.根據(jù)權(quán)利要求1所述的工作引擎,其特征在于:所述固定流模式驅(qū)動,每一個預(yù)定義 好的流程可以實例化多個實例,每個實例創(chuàng)建后,按順序?qū)嵗唧w的活動,每個活動由對 應(yīng)的應(yīng)用程序執(zhí)行完成后,提交到下一活動時,必須按照流程定義的路由線路進(jìn)行,并激活 下一活動。
【文檔編號】G06Q10/06GK104091222SQ201410191910
【公開日】2014年10月8日 申請日期:2014年5月8日 優(yōu)先權(quán)日:2014年5月8日
【發(fā)明者】胡銳, 沈江濤, 鄧躍進(jìn), 鄧玉鋒, 黃敏, 梁毅, 付彥召, 劉少波 申請人:武大吉奧信息技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
乐陵市| 三原县| 永川市| 萨嘎县| 文山县| 青岛市| 广德县| 石景山区| 永安市| 玉龙| 宜兰县| 武胜县| 贵南县| 舟曲县| 麻阳| 金川县| 襄汾县| 高州市| 汤原县| 土默特左旗| 修武县| 伊金霍洛旗| 如皋市| 万盛区| 景谷| 凤庆县| 永宁县| 柞水县| 康乐县| 鄄城县| 襄城县| 营口市| 凭祥市| 绿春县| 安庆市| 凤山市| 汕头市| 屏山县| 株洲县| 余姚市| 嘉黎县|