一種圖形化流程建模工具設(shè)計方法
【專利摘要】本發(fā)明公開了一種圖形化流程建模工具設(shè)計方法,其具體實現(xiàn)過程為:設(shè)置核心層,該核心層包括繪圖區(qū)和基本屬性區(qū)兩個層,其中繪圖區(qū)負責注冊、監(jiān)聽標準事件,選擇工具繪制各種圖形,維護圖形信息;基本屬性區(qū)負責觸發(fā)相應(yīng)類型事件,設(shè)置圖元的基本屬性,維護模型信息;根據(jù)具體業(yè)務(wù)進行擴展開發(fā),形成擴展層,該擴展層基于云表單,擴展開發(fā)形成云表單插件;上述核心層和擴展層之間通過注冊、調(diào)用相應(yīng)事件,完成組件之間的數(shù)據(jù)交互,這里的組件包括上述繪圖區(qū)、基本屬性區(qū)和擴展層。該一種圖形化流程建模工具設(shè)計方法與現(xiàn)有技術(shù)相比,解決現(xiàn)有流程建模工具針對不同業(yè)務(wù)特點不能重用的問題,實用性強。
【專利說明】一種圖形化流程建模工具設(shè)計方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及流程建模工具【技術(shù)領(lǐng)域】,具體地說是一種實用性強、圖形化流程建模工具設(shè)計方法。
【背景技術(shù)】
[0002]作為工作流管理系統(tǒng)的重要組成部分,工作流過程定義工具即工作流建模工具,為工作流的實施提供了一個實現(xiàn)流程定義的接口和建模環(huán)境。圖形化流程建模工具,給用戶呈現(xiàn)了可視化的工作流流程設(shè)計界面。不僅簡化了流程建模的難度,提高了工作流實施者的工作效率;而且有效的降低了手工編程的錯誤率,提高了工作流系統(tǒng)的穩(wěn)定性。
[0003]現(xiàn)有的圖形化流程建模工具,大都是針對自己的工作流產(chǎn)品,結(jié)合特定的業(yè)務(wù)特點,進行量身定做,因此該類流程建模工具擴展較為困難,重用性不高。
[0004]基于此,現(xiàn)提出一種解決現(xiàn)有流程建模工具針對不同業(yè)務(wù)特點不能重用問題的圖形化流程建模工具設(shè)計方法。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的技術(shù)任務(wù)是針對以上不足之處,提供一種實用性強、圖形化流程建模工具設(shè)計方法。
一種圖形化流程建模工具設(shè)計方法,其具體實現(xiàn)過程為:
設(shè)置核心層,該核心層包括繪圖區(qū)和基本屬性區(qū)兩個層,其中繪圖區(qū)負責注冊、監(jiān)聽標準事件,選擇工具繪制各種圖形,維護圖形信息;基本屬性區(qū)負責觸發(fā)相應(yīng)類型事件,設(shè)置圖元的基本屬性,維護模型信息;
根據(jù)具體業(yè)務(wù)進行擴展開發(fā),形成擴展層,該擴展層基于云表單,擴展開發(fā)形成云表單插件;
上述核心層和擴展層之間通過注冊、調(diào)用相應(yīng)事件,完成組件之間的數(shù)據(jù)交互,這里的組件包括上述繪圖區(qū)、基本屬性區(qū)和擴展層。
[0006]所述云表單插件的形成過程為:云表單觸發(fā)事件,實現(xiàn)云表單功能;云表單自定義業(yè)務(wù)模型;保存云表單模型到云表單的數(shù)據(jù)表中,形成云表單插件。
[0007]所述數(shù)據(jù)交互過程為:
流程設(shè)計工具初始化,各組件綁定相應(yīng)事件;
屬性區(qū)環(huán)節(jié)名稱變更,觸發(fā)繪圖區(qū)綁定事件;
繪圖區(qū)響應(yīng)觸發(fā)的事件,然后觸發(fā)擴展組件綁定事件,通知其它組件更新環(huán)節(jié)名稱; 基本屬性區(qū)、擴展層響應(yīng)擴展組件綁定事件,更改環(huán)節(jié)名稱。
[0008]所述核心層維護流程基于BPMN模型,擴展層云表單組件維護CForm自定義模型,各組件的模型獨立存儲,分別存儲到各自的數(shù)據(jù)庫表中。
[0009]本發(fā)明的一種圖形化流程建模工具設(shè)計方法,具有以下優(yōu)點:
該發(fā)明的一種圖形化流程建模工具設(shè)計方法采用組件化形式,用戶可以根據(jù)業(yè)務(wù)需求,選擇所需要的組件,各組件獨立維護XML模型,提升了流程建模工具的可伸縮性;支持擴展開發(fā),使得開發(fā)人員可以基于該流程設(shè)計工具核心類庫,開發(fā)符合業(yè)務(wù)特點的流程設(shè)計工具,提高了開發(fā)效率;參與者可配置、可擴展,根據(jù)客戶的需求,配置、擴展開發(fā)相應(yīng)的參與者類型,提高了參與者設(shè)置的靈活性;基于HTML技術(shù),采用通用js類庫,保證兼容主流瀏覽器,支持國產(chǎn)化操作系統(tǒng);實用性強,適用范圍廣泛,易于推廣。
【專利附圖】
【附圖說明】
[0010]附圖1為本發(fā)明的實現(xiàn)流程圖。
[0011]附圖2為本發(fā)明的組件交互圖。
[0012]附圖3為本發(fā)明的參與者擴展開發(fā)示意圖。
【具體實施方式】
[0013]下面結(jié)合附圖和具體實施例對本發(fā)明作進一步說明。
[0014]本發(fā)明提供一種圖形化流程建模工具設(shè)計方法,采用組件化設(shè)計思想,支持擴展開發(fā);該流程設(shè)計工具核心組件提供基本繪圖、基本屬性設(shè)置功能,并提供了 ap1、注冊標準事件等,擴展層首先引入流程設(shè)計工具核心組件,調(diào)用相應(yīng)的api獲取、修改流程基本信息,注冊或監(jiān)聽相應(yīng)標準事件來實現(xiàn)核心組件與擴展組件之間的數(shù)據(jù)交互;各組件分別對應(yīng)自己的業(yè)務(wù)模型,各模型相互獨立,通過事件機制進行交互數(shù)據(jù),各模型獨立存儲到對應(yīng)組件的數(shù)據(jù)表中;為實現(xiàn)參與者設(shè)置的靈活性、多樣性,該發(fā)明提供了參與者類型的擴展開發(fā)和動態(tài)配置機制,參與者模型期、運行期分離,實現(xiàn)了參與者與流程的松耦合;該發(fā)明基于HTML技術(shù),采用通用js類庫,保證兼容主流瀏覽器,并支持國產(chǎn)化操作系統(tǒng)。基于上述設(shè)計思路,該方法的具體實現(xiàn)過程為:
為了實現(xiàn)該流程建模工具的擴展性,該框架采用分層組件化思想,各組件維護自己的模型信息,各模型獨立存儲,組件之間使用事件通知機制,如附圖1所示。
[0015]I)分層機制。
[0016]流程核心分繪圖區(qū)和基本屬性區(qū)兩個層,之上基于具體業(yè)務(wù)進行擴展開發(fā),形成各個擴展層,如附圖1,基于云表單,擴展開發(fā)形成云表單插件,層與層之間引用方式如下所示:
<jsp:1nclude page=〃〃>〈/jsp:1nclude)
為了實現(xiàn)各層之間的數(shù)據(jù)交互,各組件暴露自己的api,注冊相應(yīng)的事件,來供各組件之間相互調(diào)用。
[0017]2)圖形、模型分離機制。
[0018]可視化流程設(shè)計工具分繪圖區(qū)和屬性區(qū),繪圖區(qū)用于繪制圖元,屬性區(qū)用于設(shè)置圖元的屬性信息,為了實現(xiàn)圖形和模型的松耦合,該發(fā)明將流程圖形信息與模型信息分離,繪圖區(qū)維護圖形信息,屬性區(qū)維護模型信息。
[0019]3)事件通知機制。
[0020]為了實現(xiàn)各組件之間的松耦合,該流程設(shè)計工具采用事件通知機制,各組件通過注冊、調(diào)用相應(yīng)事件,完成組件之間的數(shù)據(jù)交互。核心層提供標準事件類:
1、注冊事件類型,核心層綁定該事件,供其他組件調(diào)用,如: Il綁定自定義事件:增加節(jié)點時觸發(fā)。
[0021]WFEvent.bind (^wfd_add_element//, funct1n (event) {});
2、提供調(diào)用事件類型,由其他組件注冊綁定,核心層調(diào)用,如:
//增加節(jié)點/遷移線,觸發(fā)事件,構(gòu)建業(yè)務(wù)模型。
[0022]WF_ADD_M0DEL: "wf_event_add_model"。
[0023]各擴展組件可以根據(jù)實際的需要,注冊、監(jiān)聽相應(yīng)的事件,來完成各組件之間的數(shù)據(jù)交互。
[0024]附圖2所示,流程基本屬性修改后,各組件之間的交互過程:
A、流程設(shè)計工具初始化,各組件綁定相應(yīng)事件;如繪圖區(qū)綁定事件WF_UPDATE_DIAGRAM,基本屬性區(qū)、擴展組件綁定事件WF_UPDATE_MODEL ;
B、屬性區(qū)環(huán)節(jié)名稱變更,觸發(fā)事件WF_UPDATE_DIAGRAM;
C、繪圖層響應(yīng)事件WF_UPDATE_DIAGRAM,然后觸發(fā)事件WF_UPDATE_MODEL,通知其他組件更新環(huán)節(jié)名稱;
D、基本屬性區(qū)、擴展組件響應(yīng)WF_UPDATE_MODEL事件,更改環(huán)節(jié)名稱。
[0025]4)模型獨立存儲機制。
[0026]該流程設(shè)計工具的組件化設(shè)計,使得各個組件可能分離在不同的應(yīng)用系統(tǒng)中,因此該發(fā)明采用各組件獨立維護自己的模型,如附圖1,核心層維護流程基本BPMN模型,而擴展層CForm組件維護CForm自定義模型,并且各組件的模型獨立存儲,分別持久化到各自的數(shù)據(jù)庫表中。
[0027]參與者擴展機制。
[0028]為了實現(xiàn)工作流系統(tǒng)對“組織模型”的支持,滿足客戶個性化的需求,本發(fā)明在提供對通用組織模型支持的基礎(chǔ)上,采用松耦合方式,提供參與者擴展開發(fā)、動態(tài)配置機制,如附圖3所示:
流程建對應(yīng)模型期,流程流轉(zhuǎn)引擎對應(yīng)運行期,該系統(tǒng)提供參與者注冊功能,在流程設(shè)計工具中調(diào)用參與者頁面設(shè)置對應(yīng)的參與者,在運行期調(diào)用所注冊的參與者解析類,對參與者進行解析,轉(zhuǎn)換為實際的處理人。針對客戶的個性化需求,可以擴展開發(fā)對應(yīng)的參與者選擇頁面及對應(yīng)的參與者解析類。其中參與者選擇頁面返回值類型如下所示:
{typeld, typeName, itemld, itemName}。
[0029]參與者解析類返回值類型如下所示:
{organld, organName}
在上述技術(shù)方案中,整個方法基于html技術(shù),采用通用js類庫,使用XML模型,存儲于關(guān)系數(shù)據(jù)庫,前后臺交互使用ajax技術(shù)。
[0030]為了實現(xiàn)該流程建模工具的擴展性,該框架采用分層組件化架構(gòu)模式,各組件之間使用事件通知機制。如圖一所示,核心層繪圖區(qū)與屬性區(qū)分層,圖形和模型分離;核心層與業(yè)務(wù)層分層管理,獨立維護XML模型,并分庫進行存儲;層與層之間通過事件通知消息機制進行通信。
[0031]繪圖時采用SVG、VML格式的矢量圖,使用raphael.js類庫進行操作,實現(xiàn)BPMN基本圖元的展現(xiàn)。
[0032]上述步驟中提到的事件機制則基于jquery類庫,使用事件綁定、觸發(fā)方法,實現(xiàn)事件通知機制;在此基礎(chǔ)上實現(xiàn)圖形拖拽、大小縮放、參考線對其、層與層事件通知等功能。
[0033]上述步驟基于HTML圖形化流程建模工具核心類庫,可以根據(jù)實際的業(yè)務(wù)特點,進行擴展開發(fā),形成符合業(yè)務(wù)特點的流程建模工具,從而提高開發(fā)效率。
[0034]上述【具體實施方式】僅是本發(fā)明的具體個案,本發(fā)明的專利保護范圍包括但不限于上述【具體實施方式】,任何符合本發(fā)明的一種圖形化流程建模工具設(shè)計方法的權(quán)利要求書的且任何所屬【技術(shù)領(lǐng)域】的普通技術(shù)人員對其所做的適當變化或替換,皆應(yīng)落入本發(fā)明的專利保護范圍。
【權(quán)利要求】
1.一種圖形化流程建模工具設(shè)計方法,其特征在于其具體實現(xiàn)過程為: 設(shè)置核心層,該核心層包括繪圖區(qū)和基本屬性區(qū)兩個層,其中繪圖區(qū)負責注冊、監(jiān)聽標準事件,選擇工具繪制各種圖形,維護圖形信息;基本屬性區(qū)負責觸發(fā)相應(yīng)類型事件,設(shè)置圖元的基本屬性,維護模型信息; 根據(jù)具體業(yè)務(wù)進行擴展開發(fā),形成擴展層,該擴展層基于云表單,擴展開發(fā)形成云表單插件; 上述核心層和擴展層之間通過注冊、調(diào)用相應(yīng)事件,完成組件之間的數(shù)據(jù)交互,這里的組件包括上述繪圖區(qū)、基本屬性區(qū)和擴展層。
2.根據(jù)權(quán)利要求1所述的一種圖形化流程建模工具設(shè)計方法,其特征在于:所述云表單插件的形成過程為:云表單觸發(fā)事件,實現(xiàn)云表單功能;云表單自定義業(yè)務(wù)模型;保存云表單模型到云表單的數(shù)據(jù)表中,形成云表單插件。
3.根據(jù)權(quán)利要求1所述的一種圖形化流程建模工具設(shè)計方法,其特征在于:所述數(shù)據(jù)交互過程為: 流程設(shè)計工具初始化,各組件綁定相應(yīng)事件; 屬性區(qū)環(huán)節(jié)名稱變更,觸發(fā)繪圖區(qū)綁定事件; 繪圖區(qū)響應(yīng)觸發(fā)的事件,然后觸發(fā)擴展組件綁定事件,通知其它組件更新環(huán)節(jié)名稱; 基本屬性區(qū)、擴展層響應(yīng)擴展組件綁定事件,更改環(huán)節(jié)名稱。
4.根據(jù)權(quán)利要求1所述的一種圖形化流程建模工具設(shè)計方法,其特征在于:所述核心層維護流程基于BPMN模型,擴展層云表單組件維護CForm自定義模型,各組件的模型獨立存儲,分別存儲到各自的數(shù)據(jù)庫表中。
【文檔編號】G06F9/44GK104199651SQ201410423428
【公開日】2014年12月10日 申請日期:2014年8月26日 優(yōu)先權(quán)日:2014年8月26日
【發(fā)明者】鄭洋, 王文英, 陳娟妮, 吳玉雁 申請人:浪潮軟件股份有限公司