[發明專利]一種支持多模式驅動的工作流引擎有效
| 申請號: | 201410191910.2 | 申請日: | 2014-05-08 |
| 公開(公告)號: | CN104091222B | 公開(公告)日: | 2017-07-04 |
| 發明(設計)人: | 胡銳;沈江濤;鄧躍進;鄧玉鋒;黃敏;梁毅;付彥召;劉少波 | 申請(專利權)人: | 武大吉奧信息技術有限公司 |
| 主分類號: | G06Q10/06 | 分類號: | G06Q10/06 |
| 代理公司: | 北京天奇智新知識產權代理有限公司11340 | 代理人: | 劉黎明 |
| 地址: | 湖北省武漢市東湖開*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 支持 模式 驅動 工作流 引擎 | ||
1.一種支持多模式驅動的工作流引擎,其特征在于:所述引擎包括業務流程定義模塊和業務流程驅動模塊,所述業務流程定義模塊用于描述業務流程,所述業務流程驅動模塊,用于創建流程實例,并根據業務流程定義,創建流程的每一個活動實例和路由實例,為每一個活動設置實際參與者和應用程序實例;
(一)業務流程定義方法
S10:創建流程模板
流程模板是同類型業務流程的容器;每個流程模板包括名稱、分類及描述基本信息;
S20:添加流程/子流程
在流程模板中添加流程,每個流程包括名稱、分類、狀態、驅動模式、期限和描述基本信息,其中流程狀態有禁用、啟用兩個狀態,表明當前流程是否可用,驅動模式包括固定流模式、自由流模式和混合流模式,期限信息描述了當前流程辦理的總期限;
進一步地,在流程中可以添加關聯的子流程,其方法與添加流程的方法類似;
S30:配置流程屬性
每個流程除包括名稱、分類、狀態、驅動模式、期限和描述基本信息外,還可以配置高級屬性,包括流程主管部門、負責人、內部編碼、流轉控制、表單控制、參與者和擴展參數信息,其中:
流程內部編碼可以用于流程的識別和統計,流轉控制有允許更改和不允許更改兩種模式;在流程流轉提交時,允許更改模式可以更改提交的活動/步驟;表單控制也有允許增加和不允許增加兩種模式;在流程流轉提交時,允許增加模式可以更改下一活動/步驟運行的表單;參與者可以是單個職員、崗位、或是一個角色;參與者為崗位或角色,則所屬崗位或角色下的所有職員具備相應的權限;參與者的參與方式分為主辦和分發兩種方式;主辦為當前程序的辦理者,即流程的創建者;分發表示當前用戶是程序的全程負責人,在流程設置為“全程負責”模式時有效;參與者控制有允許另選和不允許另選兩種模式;在流程流轉提交時,允許另選模式可以自定義更改下一活動/步驟的辦理人;擴展參數用于為流程設置擴展屬性;
S40:添加開始活動
每個流程包含一個開始活動;每個活動由多個屬性組成;
S50:配置開始活動屬性
每個活動由基本屬性、參與者、應用程序和參數四個方面組成,其中,基本屬性包括:
活動名稱:當前活動/步驟的名稱;
活動類型:當前活動/步驟的類型屬性;
執行期限:當前活動/步驟的辦理期限;
執行策略:控制流程流轉辦理者,分為共享工作模式、平行會簽模式、流程創建者模式和上步執行者模式四種;共享模式為當前活動/步驟按流程設置的參與者辦理;平行會簽模式為當前活動/步驟為平行會簽,必須所有的參與者都辦理完成才可提交至下一步驟;流程創建者模式表示當前活動/步驟只有流程創建者可以辦理;上步執行者則表示當前活動/步驟只有上一步的執行者才能辦理;
啟動約束:設置當前流程步驟辦理的約束條件,分為前續步驟全部完成、前續步驟完成一步和前續必選步驟完成、強制合并進入步驟四種約束條件;其中,第四種約束條件是指如果當前步驟已創建,并有新的步驟需要提交到本步驟時將不新創建步驟,而是直接指向當前已創建的步驟;
提交約束:設置當前活動/步驟提交的約束條件,分為只能選擇一條路徑和可以選擇所有路徑這兩種模式;只能選擇一條路徑表示業務提交時,下一活動/步驟只能選擇一個;可以選擇所有路徑表示業務提交時,可以自定義選擇多個下一活動/步驟;說明:如果路由線上面設置為必選時,對應步驟提交時是不可取消選中的,如果路由線上面設置為默認,那么就是默認選中但可以取消;
必須附件:當前步驟提交時,必須提供的附件,活動/步驟提交時,系統將給出提示;辦理土地登記業務,收件時需提供相應附件,有多個附件時以“;”分開設置;
備選附件:當前流程的備選附件清單,多個附件時以“;”分開設置;
參與者屬性描述了當前活動的參與者或辦理者,包括參與者名稱、類型、參與方式和描述信息;其中,參與者類型可以是角色、也可以是具體的職員;參與方式可以是主辦、分發、協辦、督辦、查詢,并可以根據業務系統需要進行設置;
應用程序屬性描述了當前活動/步驟的應用程序,包含了應用程序名稱、類型、所屬分類、用途和描述信息;應用程序可能運行在不同類型的設備上;
活動的參數屬性用于設置每個活動的初始化參數,并可以根據這些參數進行業務控制和功能操作控制;
S601:如果流程定義為固定流模式,添加后續的活動;其添加方法與添加開始活動的方法類似;
S602:如果流程定義為自由流模式,轉步驟S100;
S603:如果流程定義為混合流模式,添加后續的活動,其添加方法與添加開始活動的方法類似;
S701:對于固定流模式,配置后續活動的屬性;其屬性配置方法與配置開始活動屬性的方法類似;
S703:對于混合流模式,配置后續活動的屬性;其屬性配置方法與配置開始活動屬性的方法類似;所有活動設置完成后,轉步驟S100;
S801:對于固定流模式,添加路由;
路由表達了各個活動的流轉順序或觸發條件,可以包括名稱和類型信息;流轉順序可以有分支、聚合、單雙向、循環形式;
S901:對于固定流模式,配置路由控制;每條路由可以為普通、缺省和必選三種類型,路由的分支控制也可以進行人工控制;所有活動和路由設置完成后,轉步驟S100;
S100:保存流程信息,流程定義結束;
(二)固定流模式驅動
固定流模式是目前市面上絕大多數工作流引擎的工作模式,適用的業務流程場景為:預先知曉要干什么、誰來干、誰先干的場景;工作流引擎需要預先定義工作流驅動模板,并在模板里面預先規劃好某次某類工作需要經歷的步驟、先后順序、分支觸發條件、辦理人、辦理事項內容,然后再實例化此預先定義好的工作流模板,根據預定義的路由線索及事件條件參數驅動業務實例按預定的規則流轉,如果在流轉過程中出現例外情況,則通過提供召回、退回、續辦、補辦、掛起、恢復、廢棄、終止、辦結、激活、跳轉、會簽、抄送、掛接例外處理機制來應對;
在固定流模式下,要辦理的業務一般具有可量化的過程,需要預先定義流程相關信息,包括名稱、時限、事項;還需要預先定義好涉及的活動信息,其中每個活動需要預先設定本活動需要完成什么任務、可以由哪些人來完成內容;然后還需要定義好每一個活動可以跳轉路由到下一哪些活動,路由條件及事件觸發策略是什么的內容,這些相關參數定義好后,在實際驅動時,所有的內容都必須按這些預定義好的參數予以執行;
每一個預定義好的流程可以實例化多個實例;每個實例創建后,按順序實例化具體的活動,每個活動由對應的應用程序執行完成后,提交到下一活動時,必須按照流程定義的路由線路進行,并激活下一活動;
在這種固定流模式下,如果因其它外部原因需要調整流程實例狀態時,可以通過有限的例外處理策略來完成,但例外處理策略也不能偏離流程預定義好的規則范圍;常見例外處理策略包括:召回、退回、續辦、補辦、掛起、恢復、廢棄、終止、辦結、激活、跳轉、會簽、抄送、掛接;
(三)自由流模式驅動
所述自由流模式是針對實際工作中業務流程定義不嚴格的情況提出的一種業務流程驅動模式,是對固定流模式的擴展;適用的業務流程場景為:無法預知要干什么、誰來干、干多久、干多少、誰先干的場景;工作流引擎不需要預先定義流程相關的活動或路由信息,可以任意實例化啟動流程;此類流程驅動時,后續步驟要干什么及誰來干、干多久,在每一次都是未知的,而且每一次實例化后,到辦結時,所經歷的過程都將是不同的,是完完全全的自由驅動模式,可以勝任所有預先無法固化流程模板的業務需求;
自由流驅動模式解決的需求都是無序的、無法預先定義的業務流轉需求,所以這類業務流在開始時不需要進行工作流預定義工作,工作流引擎最多提供一個便于實例化的人機交互界面即可;
自由流的驅動比固定流要復雜,其運轉的邏輯規則有下面關鍵幾點:
1)流程實例化時,首先初始化流程相關的信息,包括事項名稱、辦理時限,然后進入第一步初始化;
2)第一步初始化時,首先決定本步驟要辦理的事項、辦理的時限內容,然后分配給辦理的執行者;本步驟的名稱需要通過選定的角色或人員以及選定的應用程序信息動態地確定;假設選定的應用程序為某一個名稱叫“預審單”的表單,而選定的負責辦理本步驟的角色為“局長”或者選定的人員職務級別為“局長”,那么工作流引擎將智能地根據這些信息將步驟名稱創建為“局長預審”,同理如果選擇的角色是“處長”,那么本步驟名稱創建為“處長預審”,如果選定的角色為辦事員或普通職員,那么本步驟稱創建為“處室承辦預審單”;
3)每一步辦理完成后,支持無限多次提交下一步辦理,其規則與流程第一步類似;選定應用程序、選定執行者、設定時限附加參數后可以提交本步驟操作,由工作流引擎根據應用程序和執行者動態地確定下一步的步驟名稱并同時記錄流轉線索;
4)當流轉到某一步時,執行者如果判斷自己的事情已經辦結,也不需要提交下一步來完成其他任務時,可以通過調用工作流的辦結功能將本步驟予以辦結,當所有路由分支線路上的步驟都辦結后,整個自由流實例就辦結了;
(四)混合流模式驅動
所述混合流模式為前述固定流模式和自由流模式的折中表現,適用的業務流程場景為:知曉要干什么,但無法確定它們誰先干、干多少的場景;工作流引擎將預先定義已知的步驟、辦理事項、辦理人信息,但不指定這些步驟之間的路由順序,在實際實例化后,工作流流轉時將只能在這些候選的步驟之間進行零次或多次的流轉驅動,但不能隨意的創建新的步驟;相對上述的自由流,其受到了部分預定義條件的限制,可避免流程運轉發生失控;
混合流驅動模式綜合了固定流和自由流的部分特點,采取了部分固定部分自由的驅動模式,其中對于流程的定義、活動的定義;予以預先定義好,在實際實例化時,對于預先已定義好的參數必須予以參照執行,而對于路由線索、條件事件不需要預先定義,類似于自由流模式在實際運轉過程中,通過自動或手動的模式決定后續辦理哪些步驟、何時辦結;
預先定義流程相關信息,然后預定義本流程可能需要執行的步驟,但是不設定這些活動/步驟之間的先后順序、執行次數路由信息;
在混合流程驅動時,部分具備固定流的特征,部分有自由流的特征,其實例化及驅動遵循的規則要點包括:
1)流程創建后,再創建活動實例時,只能從流程預定義的活動里面選擇一個或多個進行創建,活動創建規則按預先定義好的參數進行創建;
2)活動提交時,也只能在預先定義好的活動中選擇一個或多個進行提交并創建,創建完成后,工作流引擎動態創建路由實例信息;
3)活動可以按上述規則無限制的往下提交,當某一步辦理者認為不需要繼續提交事情時,直接調用工作流引擎予以辦結當前步驟;當所有分支步驟都選擇辦結后,整個流程就辦結了;
(五)工作流引擎組件庫
所述工作流引擎以組件方式開發,組件對象包括工作流模板、工作流過程、工作流活動、流程關系樹、候選執行者、實例執行者、應用程序、過程實例、活動實例、工作流跳轉、狀態追蹤、擴展參數、運行日志。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武大吉奧信息技術有限公司,未經武大吉奧信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410191910.2/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種產品跟蹤方法
- 下一篇:建筑物地板表面溫度預測方法及系統
- 同類專利
- 專利分類
G06Q 專門適用于行政、商業、金融、管理、監督或預測目的的數據處理系統或方法;其他類目不包含的專門適用于行政、商業、金融、管理、監督或預測目的的處理系統或方法
G06Q10-00 行政;管理
G06Q10-02 .預定,例如用于門票、服務或事件的
G06Q10-04 .預測或優化,例如線性規劃、“旅行商問題”或“下料問題”
G06Q10-06 .資源、工作流、人員或項目管理,例如組織、規劃、調度或分配時間、人員或機器資源;企業規劃;組織模型
G06Q10-08 .物流,例如倉儲、裝貨、配送或運輸;存貨或庫存管理,例如訂貨、采購或平衡訂單
G06Q10-10 .辦公自動化,例如電子郵件或群件的計算機輔助管理





