一種復(fù)雜業(yè)務(wù)流程動(dòng)態(tài)圖形化監(jiān)控的方法與系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供了一種復(fù)雜業(yè)務(wù)流程動(dòng)態(tài)圖形化監(jiān)控的方法和系統(tǒng),方法包括:根據(jù)實(shí)時(shí)采集的多個(gè)業(yè)務(wù)信息確定已發(fā)生的業(yè)務(wù)流程;其中,每個(gè)所述業(yè)務(wù)信息包括:業(yè)務(wù)標(biāo)識(shí)和任務(wù)名稱、以及任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;每個(gè)所述業(yè)務(wù)流程包括:執(zhí)行的任務(wù)信息、執(zhí)行的任務(wù)狀態(tài)、和觸發(fā)的任務(wù)信息;所述任務(wù)信息包括:任務(wù)名稱、任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;通過所述已發(fā)生的業(yè)務(wù)流程和未發(fā)生的業(yè)務(wù)流程中含有與所述采集的業(yè)務(wù)信息中任務(wù)名稱的關(guān)聯(lián)關(guān)系,確定將發(fā)生的業(yè)務(wù)流程,得到所述已發(fā)生的業(yè)務(wù)流程和所述將發(fā)生的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系;將所述得到的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系,以矢量圖的形式展示。本發(fā)明還提供一種復(fù)雜業(yè)務(wù)流程動(dòng)態(tài)圖形化監(jiān)控的系統(tǒng)。
【專利說明】一種復(fù)雜業(yè)務(wù)流程動(dòng)態(tài)圖形化監(jiān)控的方法與系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,具體而言,涉及一種復(fù)雜業(yè)務(wù)流程動(dòng)態(tài)圖形化監(jiān)控的方法與系統(tǒng)。
【背景技術(shù)】
[0002]目前大多數(shù)系統(tǒng)的流程監(jiān)控軟件,大都回避了復(fù)雜流程圖形化監(jiān)控問題,提供都是基于表格信息,只有少數(shù)系統(tǒng)提供簡(jiǎn)單、演示性的圖片動(dòng)畫流程展示,比如航天地面應(yīng)用系統(tǒng)的信息流轉(zhuǎn)關(guān)系,主要強(qiáng)調(diào)示意性,實(shí)用性相對(duì)較差。
[0003]雖然多數(shù)工作流系統(tǒng)(例如JBPM等)、辦公系統(tǒng)中提供了圖形化流程設(shè)計(jì)工具,以及對(duì)應(yīng)的圖形化流程監(jiān)控工具,只能支持一般順序、簡(jiǎn)單分支和合并流程監(jiān)控能力。一般來說復(fù)雜業(yè)務(wù)流程具有較多分支和合并、以及循環(huán),如果詳細(xì)考慮到各種可能出現(xiàn)的情況,使用流程設(shè)計(jì)工具設(shè)計(jì)出來的流程圖十分龐大,很難理清流程脈絡(luò),基本不可讀;極端情況下使用流程設(shè)計(jì)工具設(shè)計(jì)一個(gè)復(fù)雜的流程圖,由于節(jié)點(diǎn)和連線比較多,到實(shí)際業(yè)務(wù)流程監(jiān)控時(shí)會(huì)發(fā)現(xiàn)業(yè)務(wù)監(jiān)控流程圖只能作為示意,失去了業(yè)務(wù)監(jiān)控的實(shí)用性。因此,現(xiàn)有技術(shù)中,不能通過圖形化技術(shù)處理復(fù)雜的業(yè)務(wù)流程關(guān)系,展示的流程關(guān)系有限。
【發(fā)明內(nèi)容】
[0004]本發(fā)明旨在提供一種復(fù)雜業(yè)務(wù)流程動(dòng)態(tài)圖形化監(jiān)控的方法和系統(tǒng),以解決上述不能通過圖形化技術(shù)處理復(fù)雜的業(yè)務(wù)流程關(guān)系,展示的流程關(guān)系有限的問題。
[0005]本發(fā)明提供一種復(fù)雜業(yè)務(wù)流程動(dòng)態(tài)圖形化監(jiān)控的方法,包括:
[0006]根據(jù)采集的多個(gè)業(yè)務(wù)信息確定已發(fā)生的業(yè)務(wù)流程;其中,每個(gè)所述業(yè)務(wù)信息包括;業(yè)務(wù)標(biāo)識(shí)和任務(wù)名稱、以及任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;每個(gè)所述業(yè)務(wù)流程包括:執(zhí)行的任務(wù)信息、執(zhí)行的任務(wù)狀態(tài)、和觸發(fā)的任務(wù)信息;所述任務(wù)信息包括:任務(wù)名稱、任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;通過所述已發(fā)生的業(yè)務(wù)流程和未發(fā)生的業(yè)務(wù)流程中含有與所述采集的業(yè)務(wù)信息中任務(wù)名稱的關(guān)聯(lián)關(guān)系,確定將發(fā)生的業(yè)務(wù)流程,得到所述已發(fā)生的業(yè)務(wù)流程和所述將發(fā)生的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系;將所述得到的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系,以矢量圖的形式展示。
[0007]優(yōu)選地,采用貪婪算法確定出所述得到的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系。
[0008]優(yōu)選地,以矢量圖的形式展示包括:
[0009]所述矢量圖中的節(jié)點(diǎn)作為:執(zhí)行的任務(wù)信息、觸發(fā)的任務(wù)信息、執(zhí)行的任務(wù)狀態(tài);所述矢量圖中的連線用來描述任務(wù)執(zhí)行指令、或任務(wù)執(zhí)行結(jié)果;所述節(jié)點(diǎn)和所述連線通過不同顏色表示多種狀態(tài)。
[0010]優(yōu)選地,采用力導(dǎo)向算法確定所述展示的所述矢量圖中的節(jié)點(diǎn)位置;每種業(yè)務(wù)信息類型對(duì)應(yīng)一個(gè)矢量圖。
[0011]優(yōu)選地,不斷刷新當(dāng)前顯示的矢量圖;接受用戶對(duì)所述矢量圖中的節(jié)點(diǎn)或連線的調(diào)整;按照調(diào)整后的結(jié)構(gòu)關(guān)系執(zhí)行相應(yīng)的業(yè)務(wù)流程。[0012]優(yōu)選地,所述確定已發(fā)生的業(yè)務(wù)流程的過程包括:
[0013]通過實(shí)時(shí)采集的業(yè)務(wù)信息中的任務(wù)名稱在全部的多個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則的任務(wù)名稱中遍歷;將同類任務(wù)名稱進(jìn)行關(guān)聯(lián),確定可能已經(jīng)執(zhí)行的流轉(zhuǎn)規(guī)則;在多個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則中的任意兩個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則,如果存在其中一個(gè)執(zhí)行的任務(wù)信息中的任務(wù)名稱和另一個(gè)觸發(fā)的任務(wù)信息的任務(wù)名稱相同,則確定在業(yè)務(wù)流程中所述兩個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則具有先后的流轉(zhuǎn)關(guān)系;根據(jù)得到的多個(gè)具有先后的流轉(zhuǎn)關(guān)系的流轉(zhuǎn)規(guī)則、及已經(jīng)產(chǎn)生的任務(wù)信息,采用貪婪算法處理,得到一個(gè)已發(fā)生的業(yè)務(wù)流程。
[0014]優(yōu)選地,所述確定將發(fā)生的業(yè)務(wù)流程的過程包括:
[0015]已發(fā)生的業(yè)務(wù)流程中最新的業(yè)務(wù)信息的業(yè)務(wù)名稱、以及確定的可能發(fā)生的業(yè)務(wù)流轉(zhuǎn)規(guī)則,按照最短路徑到達(dá)流程終點(diǎn)策略,開始試探下一個(gè)合理的狀態(tài),同時(shí)在回溯檢查已經(jīng)執(zhí)行過或?qū)?gòu)成死循環(huán)的業(yè)務(wù)流轉(zhuǎn)規(guī)則,將其剔除,反復(fù)進(jìn)行推算,直到達(dá)到流程終點(diǎn)位置的業(yè)務(wù)名稱,從而預(yù)測(cè)了后續(xù)的流程走向,得到將發(fā)生的業(yè)務(wù)流程。
[0016]本發(fā)明提供一種復(fù)雜業(yè)務(wù)流程動(dòng)態(tài)圖形化監(jiān)控的系統(tǒng),包括:
[0017]業(yè)務(wù)確定模塊,用于根據(jù)采集的多個(gè)業(yè)務(wù)信息確定已發(fā)生的業(yè)務(wù)流程;其中,每個(gè)所述業(yè)務(wù)信息包括:業(yè)務(wù)標(biāo)識(shí)和任務(wù)名稱、以及任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;每個(gè)所述業(yè)務(wù)流程包括:執(zhí)行的任務(wù)信息、執(zhí)行的任務(wù)狀態(tài)、和觸發(fā)的任務(wù)信息;所述任務(wù)信息包括:任務(wù)名稱、任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;業(yè)務(wù)推測(cè)模塊,用于通過所述已發(fā)生的業(yè)務(wù)流程和未發(fā)生的業(yè)務(wù)流程中含有與所述采集的業(yè)務(wù)信息中任務(wù)名稱的關(guān)聯(lián)關(guān)系,確定將發(fā)生的業(yè)務(wù)流程;業(yè)務(wù)關(guān)系模塊,用于根據(jù)所述已發(fā)生的業(yè)務(wù)流程和所述將發(fā)生的業(yè)務(wù)流程,得到所述已發(fā)生的業(yè)務(wù)流程和所述將發(fā)生的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系;展示模塊,用于將所述得到的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系,以矢量圖的形式展示。
[0018]優(yōu)選地,還包括:刷新模塊,用于不斷刷新當(dāng)前顯示的矢量圖;調(diào)整模塊,用于接受用戶對(duì)當(dāng)前或刷新后的所述矢量圖中的節(jié)點(diǎn)或連線的調(diào)整;執(zhí)行模塊,用于按照調(diào)整后的結(jié)構(gòu)關(guān)系執(zhí)行相應(yīng)的業(yè)務(wù)流程。
[0019]通過上述步驟,將復(fù)雜的業(yè)務(wù)流程關(guān)系以簡(jiǎn)單的圖形方式展示給用戶,便于用戶更直觀的了解當(dāng)前的業(yè)務(wù)流程。
[0020]在本發(fā)明的實(shí)施例中,提供了業(yè)務(wù)系統(tǒng)復(fù)雜流程的一種圖形化監(jiān)控手段。因?yàn)椴捎秘澙匪惴ㄓ?jì)算已經(jīng)發(fā)生流程和預(yù)測(cè)即將發(fā)生的流程,形成一個(gè)可信、完整業(yè)務(wù)流程,加上采用力導(dǎo)向算法和圖形化技術(shù)手段,動(dòng)態(tài)生成矢量的流程圖,實(shí)現(xiàn)了業(yè)務(wù)流程可視化,所以克服了復(fù)雜流程的動(dòng)態(tài)圖形化展現(xiàn)的難題,達(dá)到了業(yè)務(wù)系統(tǒng)監(jiān)控變得準(zhǔn)確、直觀效果。
【專利附圖】
【附圖說明】
[0021]此處所說明的附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
[0022]圖1示出了實(shí)施例的流程圖;
[0023]圖2是復(fù)雜業(yè)務(wù)流程的動(dòng)態(tài)圖形化監(jiān)控總體流程圖;
[0024]圖3是業(yè)務(wù)流程構(gòu)建預(yù)測(cè)不例彳目息圖;
[0025]圖4是業(yè)務(wù)流程矢量模型示例信息圖;
[0026]圖5是業(yè)務(wù)流程矢量圖形顯不不例圖;[0027]圖6是復(fù)雜業(yè)務(wù)流程圖形化監(jiān)控系統(tǒng)界面示例圖;
[0028]圖7是復(fù)雜業(yè)務(wù)流程圖形化監(jiān)控系統(tǒng)的結(jié)構(gòu)示意圖;
[0029]圖8是復(fù)雜業(yè)務(wù)流程圖形化監(jiān)控系統(tǒng)的實(shí)施例的示意圖。
【具體實(shí)施方式】
[0030]下面將參考附圖并結(jié)合實(shí)施例,來詳細(xì)說明本發(fā)明。
[0031]參見圖1,包括:
[0032]Sll:根據(jù)采集的多個(gè)業(yè)務(wù)信息確定已發(fā)生的業(yè)務(wù)流程;
[0033]其中,每個(gè)所述業(yè)務(wù)信息包括:業(yè)務(wù)標(biāo)識(shí)和任務(wù)名稱、以及任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;每個(gè)所述業(yè)務(wù)流程包括:執(zhí)行的任務(wù)信息、執(zhí)行的任務(wù)狀態(tài)、和觸發(fā)的任務(wù)信息;所述任務(wù)信息包括:任務(wù)名稱、任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;
[0034]S12:通過所述已發(fā)生的業(yè)務(wù)流程和未發(fā)生的業(yè)務(wù)流程中含有與所述采集的業(yè)務(wù)信息中任務(wù)名稱的關(guān)聯(lián)關(guān)系,確定將發(fā)生的業(yè)務(wù)流程,得到所述已發(fā)生的業(yè)務(wù)流程和所述將發(fā)生的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系;
[0035]S13:將所述得到的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系,以矢量圖的形式展示。
[0036]通過上述步驟,將復(fù)雜的業(yè)務(wù)流程關(guān)系以簡(jiǎn)單的圖形方式展示給用戶,便于用戶更直觀的了解當(dāng)前的業(yè)務(wù)流程。特別是對(duì)于航天地面應(yīng)用系統(tǒng)的信息流轉(zhuǎn)關(guān)系,能很清晰的展示。
[0037]下面通過詳細(xì)的實(shí)施例具體說明上述實(shí)施例的詳細(xì)過程,參見圖2,包括:
[0038]1:收集實(shí)時(shí)的業(yè)務(wù)信息,每個(gè)業(yè)務(wù)信息包括:〈業(yè)務(wù)標(biāo)示ID、任務(wù)名稱TN、任務(wù)執(zhí)行指令TC|任務(wù)執(zhí)行結(jié)果TRX計(jì)算機(jī)處理指定的任務(wù)或活動(dòng)過程中產(chǎn)生的數(shù)據(jù),例如;數(shù)據(jù)庫的數(shù)據(jù)接收,包含的數(shù)據(jù)種類、類型等,都可統(tǒng)稱為業(yè)務(wù)信息。
[0039]2:在全部的多個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則中遍歷,然后利用收集的實(shí)時(shí)業(yè)務(wù)信息中的任務(wù)名稱TN進(jìn)行業(yè)務(wù)流轉(zhuǎn)規(guī)則遍歷,關(guān)聯(lián)同類任務(wù),獲取與之相關(guān)的業(yè)務(wù)流轉(zhuǎn)規(guī)則,〈執(zhí)行的任務(wù)/[目息ET、執(zhí)行任務(wù)狀態(tài)ES、觸發(fā)的任務(wù)/[目息TT>。觸發(fā)的任務(wù)彳目息除了是普通任務(wù)/[目息,還可以是流程終點(diǎn)/[目息。
[0040]例如:以數(shù)據(jù)管理系統(tǒng)的數(shù)據(jù)接收入庫策略為例:〈數(shù)據(jù)接收任務(wù)信息ΕΤ、成功完成接收SS、數(shù)據(jù)入庫任務(wù)ΤΤ>,其中數(shù)據(jù)接收任務(wù)信息包含數(shù)據(jù)接收任務(wù)ΤΝ、接收調(diào)度指令TC、接收完成結(jié)果TR。
[0041]實(shí)時(shí)業(yè)務(wù)信息業(yè)定義為二元組:〈業(yè)務(wù)標(biāo)識(shí)ID、任務(wù)名稱ΤΝ、任務(wù)執(zhí)行指令TC I任務(wù)執(zhí)行結(jié)果TR>,其中業(yè)務(wù)標(biāo)識(shí)ID是業(yè)務(wù)發(fā)生時(shí)產(chǎn)生的唯一標(biāo)識(shí),貫穿業(yè)務(wù)處理整個(gè)流程。
[0042]以數(shù)據(jù)接收業(yè)務(wù)信息為例,包含〈當(dāng)前業(yè)務(wù)標(biāo)識(shí)ID、數(shù)據(jù)接收任務(wù)TN、數(shù)據(jù)接收調(diào)度指令 > 和〈當(dāng)前業(yè)務(wù)標(biāo)識(shí)ID、數(shù)據(jù)接收任務(wù)TN、數(shù)據(jù)接收結(jié)果TR>。
[0043]3:確定流程/[苜息
[0044]以一個(gè)數(shù)據(jù)管理服務(wù)的任務(wù)流程為例,它包含了數(shù)據(jù)接收(DataRecTask)、數(shù)據(jù)發(fā)送(DataSendTask)、數(shù)據(jù)入庫(DataInTask)、數(shù)據(jù)輸出(DataOutTask)、數(shù)據(jù)備份(DataBakTask)、數(shù)據(jù)恢復(fù)(DataRestTask)、數(shù)據(jù)歸檔(DataArchTask)、數(shù)據(jù)回取(DataUnArchTask)等活動(dòng)任務(wù),定義的業(yè)務(wù)流轉(zhuǎn)規(guī)則包含:
[0045](I)數(shù)據(jù)接收入庫策略〈DataRecTask、SuccFinState、DatalnTask〉、(2)數(shù)據(jù)接收轉(zhuǎn)發(fā)策略〈DataRecTask、SuccFinState、DataSendTask〉、(3)數(shù)據(jù)入庫備份策略〈DatalnTask、SuccFinState、DataBakTask〉、(4)數(shù)據(jù)訂閱分發(fā)策略〈DatalnTask、SuccFinState、DataSendTask〉、(5)數(shù)據(jù)輸出服務(wù)策略〈DataOutTask、SuccFinState、DataSendTask〉、(6)數(shù)據(jù)恢復(fù)輸出策略〈DataOutTask、SuccFinState、DataSendTask〉、(7)數(shù)據(jù)發(fā)送結(jié)束策略〈DataSendTask、SuccFinState、EndBussFlow〉、(8)數(shù)據(jù)備份結(jié)束策略〈DataBakTask、SuccFinState、EndBussFlow〉等其它各種情況的策略。
[0046]當(dāng)前情況下按時(shí)序收集到的業(yè)務(wù)信息包括(I)數(shù)據(jù)接收任務(wù)信息〈FlowOOOl、DataRecTask、DataRecTaskCtrl (接收指令)>、(2)數(shù)據(jù)接收任務(wù)信息〈FlowOOOl、DataRecTask、DataRecTaskSuccState (成功接收結(jié)果)>、(3)數(shù)據(jù)入庫任務(wù)信息<F1owOOOl、DatalnTask、DataInTaskCtrl (入庫指令)>、(4)數(shù)據(jù)發(fā)送任務(wù)信息〈FlowOOOl、DataSendTask、DataSendTaskCtrl (入庫指令)>、(5)數(shù)據(jù)入庫任務(wù)信息〈FlowOOOl、DatalnTask、DatalnTaskSuccState (成功入庫結(jié)果)>、(6)數(shù)據(jù)發(fā)送任務(wù)信息〈FlowOOOl、DataSendTask、DataSendTaskSuccState (成功入庫結(jié)果) >,根據(jù)已有的業(yè)務(wù)信息,通過同類任務(wù)關(guān)聯(lián),可以得出業(yè)務(wù)流程已產(chǎn)生了三個(gè)已發(fā)生的任務(wù):數(shù)據(jù)接收任務(wù)、數(shù)據(jù)入庫任務(wù)、數(shù)據(jù)發(fā)送任務(wù)。
[0047]流程構(gòu)造預(yù)測(cè)過程包括:
[0048]通過所述已發(fā)生的業(yè)務(wù)流程和未發(fā)生的業(yè)務(wù)流程中含有與所述采集的業(yè)務(wù)信息中任務(wù)名稱的關(guān)聯(lián)關(guān)系,確定將發(fā)生的業(yè)務(wù)流程,得到確定出的多個(gè)業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系;
[0049]確定已發(fā)生的業(yè)務(wù)流程的過程包括:
[0050]A通過采集的業(yè)務(wù)信息的任務(wù)名稱在全部的多個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則的任務(wù)名稱中遍歷;
[0051]B將同類任務(wù)名稱進(jìn)行關(guān)聯(lián),確定可能已經(jīng)執(zhí)行的流轉(zhuǎn)規(guī)則;
[0052]在多個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則中的任意兩個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則,如果存在其中一個(gè)執(zhí)行的任務(wù)信息中的任務(wù)名稱和另一個(gè)觸發(fā)的任務(wù)信息的任務(wù)名稱相同,則確定在業(yè)務(wù)流程中所述兩個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則具有先后的流轉(zhuǎn)關(guān)系;
[0053]C根據(jù)得到的多個(gè)具有先后的流轉(zhuǎn)關(guān)系的流轉(zhuǎn)規(guī)則、及已經(jīng)產(chǎn)生的任務(wù)信息,采用貪婪算法處理,得到一個(gè)已發(fā)生的業(yè)務(wù)流程。
[0054]確定將發(fā)生的業(yè)務(wù)流程的過程包括:
[0055]已發(fā)生的業(yè)務(wù)流程中最新的業(yè)務(wù)信息的業(yè)務(wù)名稱、以及確定的可能發(fā)生的業(yè)務(wù)流轉(zhuǎn)規(guī)則,按照最短路徑到達(dá)流程終點(diǎn)策略,開始試探下一個(gè)合理的狀態(tài),同時(shí)在回溯檢查已經(jīng)執(zhí)行過或?qū)?gòu)成死循環(huán)的業(yè)務(wù)流轉(zhuǎn)規(guī)則,將其剔除,反復(fù)進(jìn)行推算,直到達(dá)到流程終點(diǎn)位置的業(yè)務(wù)名稱,從而預(yù)測(cè)了后續(xù)的流程走向,得到將發(fā)生的業(yè)務(wù)流程。
[0056]由于執(zhí)行任務(wù)信息ET的任務(wù)名稱TN和觸發(fā)任務(wù)信息TT的任務(wù)名稱TN相同時(shí),確定兩個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則在該業(yè)務(wù)中可能具有先后的流轉(zhuǎn)關(guān)系,進(jìn)而認(rèn)定對(duì)應(yīng)收集兩個(gè)業(yè)務(wù)信息〈業(yè)務(wù)標(biāo)示ID、任務(wù)名稱TN、任務(wù)執(zhí)行指令TC|任務(wù)執(zhí)行結(jié)果TR>的流程上可能存在先后關(guān)系。
[0057]據(jù)此,首先構(gòu)建已發(fā)生業(yè)務(wù)信息的流程。從業(yè)務(wù)產(chǎn)生的起點(diǎn)開始梳理,選擇下一步候選對(duì)象,依據(jù)業(yè)務(wù)流轉(zhuǎn)規(guī)則,拋棄一些不合理或不會(huì)發(fā)生的流轉(zhuǎn)關(guān)系、不合理循環(huán),自此反復(fù)計(jì)算,直至最后所有已經(jīng)發(fā)送的業(yè)務(wù)信息均梳理到一個(gè)流程之上。
[0058]然后根據(jù)現(xiàn)有流程包含的業(yè)務(wù)信息預(yù)測(cè)流程走向。將已發(fā)生流程中最新的業(yè)務(wù)信息〈業(yè)務(wù)標(biāo)示ID、任務(wù)名稱TN、任務(wù)執(zhí)行指令TC I任務(wù)執(zhí)行結(jié)果TR> (可能是未合并的各個(gè)分支上最新節(jié)點(diǎn)),按照最短路徑到達(dá)流程終點(diǎn)策略,開始試探下一個(gè)合理的節(jié)點(diǎn)狀態(tài),同時(shí)在回溯檢查這些備選流轉(zhuǎn)規(guī)則是否已經(jīng)執(zhí)行過或?qū)?gòu)成死循環(huán),將其剔除,反復(fù)進(jìn)行推算,直到達(dá)到流程終點(diǎn)位置,從而預(yù)測(cè)了后續(xù)的流程走向。
[0059]最后將已有的業(yè)務(wù)流程信息和即將可能會(huì)發(fā)生的業(yè)務(wù)信息流程進(jìn)行串聯(lián)整合,從而形成了 一個(gè)可信的業(yè)務(wù)流程。
[0060]通過基于貪婪算法進(jìn)行的流程推導(dǎo)和任務(wù)策略排除,排除了可能存在數(shù)據(jù)訂閱分發(fā)策略、數(shù)據(jù)輸出服務(wù)策略執(zhí)行的可能性,得出可能執(zhí)行策略有數(shù)據(jù)接收入庫策略、數(shù)據(jù)接收轉(zhuǎn)發(fā)策略、數(shù)據(jù)入庫備份策略、數(shù)據(jù)發(fā)送結(jié)束策略等四個(gè)。
[0061]根據(jù)現(xiàn)有流程包含的業(yè)務(wù)信息預(yù)測(cè)流程走向。將已發(fā)生流程中最新的業(yè)務(wù)信息〈業(yè)務(wù)標(biāo)示ID、任務(wù)名稱TN、任務(wù)執(zhí)行指令TC I任務(wù)執(zhí)行結(jié)果TR> (即未合并的各個(gè)分支上最新節(jié)點(diǎn)),按照最短路徑到達(dá)流程終點(diǎn)策略,開始試探下一個(gè)合理的節(jié)點(diǎn)狀態(tài),同時(shí)在回溯檢查這些備選流轉(zhuǎn)規(guī)則是否已經(jīng)執(zhí)行過或?qū)?gòu)成死循環(huán),將其剔除,反復(fù)進(jìn)行推算,直到達(dá)到流程終點(diǎn)位置,從而預(yù)測(cè)了后續(xù)的流程走向。最后將已有的業(yè)務(wù)流程信息和即將可能會(huì)發(fā)生的業(yè)務(wù)信息流程進(jìn)行串聯(lián)整合,從而形成了 一個(gè)可信的業(yè)務(wù)流程。
[0062]預(yù)測(cè)將會(huì)產(chǎn)生數(shù)據(jù)備份任務(wù),因此形成一個(gè)可信的業(yè)務(wù)流程為(數(shù)據(jù)接收任務(wù)DataRecTask)—(數(shù)據(jù)入庫任務(wù)DatalnTask)—(數(shù)據(jù)備份任務(wù)DataBakTask)—(結(jié)束EndBussFlow)和(數(shù)據(jù)接收任務(wù)DataRecTask)—(數(shù)據(jù)發(fā)送任務(wù)DataSendTask)—(結(jié)束EndBussFlow)的復(fù)合流程。
[0063]4.0:通過得到的流程信息生成矢量流程圖
[0064]采用力導(dǎo)向(Force-directed)算法,用于生成直觀的矢量流程圖。主要使用有向圖來描述業(yè)務(wù)流程圖,按照任務(wù)節(jié)點(diǎn)圖元之間的作用力由任務(wù)節(jié)點(diǎn)本身相互之間的吸引力和斥力以及狀態(tài)信息連線上的彈力所決定,通過多次迭代計(jì)算,最終形成達(dá)到一個(gè)力的平衡狀態(tài),進(jìn)而為流程圖生成了幾何信息,包含幾何圖形基本位置信息和屏幕相對(duì)位置信息,將表述同一個(gè)流程要素信息的多個(gè)小圖元(幾何圖元和文本描述圖元)進(jìn)行范圍合并、不同流程要素之間的幾何相交信息進(jìn)行切分隔離等優(yōu)化處理手段,避免出現(xiàn)后續(xù)流程要素操作響應(yīng)丟失、重復(fù)等情況,從而生成了一個(gè)準(zhǔn)確、合理的業(yè)務(wù)流程矢量模型,為矢量圖生成奠定基礎(chǔ)。
[0065]依照上述數(shù)據(jù)管理服務(wù)的業(yè)務(wù)流程監(jiān)控中產(chǎn)生的業(yè)務(wù)流程,由于存在不對(duì)稱分支,確立有向圖的水平布局和橫向擴(kuò)展的算法參數(shù),將流程要素信息(包括任務(wù)名稱、指令信息、執(zhí)行結(jié)果、任務(wù)狀態(tài)等)轉(zhuǎn)換為指定規(guī)則圖元,確定幾何形狀和大小信息,通過力導(dǎo)向(Force-directed)算法進(jìn)行迭代計(jì)算圖元的幾何位置,并通過屏幕像素的位置換算(矢量幾何長(zhǎng)度與實(shí)際像素長(zhǎng)度的固定換算比約為1.42),最終獲得了各個(gè)圖元的顯示信息,繼而完成了該業(yè)務(wù)流程的顯示布局。
[0066]4.1:生成業(yè)務(wù)流程矢量模型
[0067]由于復(fù)雜業(yè)務(wù)流程很難完整規(guī)約或枚舉所有流程的可能走向,因此流程模型需要通過簡(jiǎn)單、精練。為此將業(yè)務(wù)流程矢量模型定義要素為圖Graph、節(jié)點(diǎn)Node、連線Edge等以及要素的幾何位置關(guān)系,其中圖用于說明整個(gè)流程的業(yè)務(wù)信息類型,節(jié)點(diǎn)用來描述主要執(zhí)行業(yè)務(wù)觸發(fā)信息、任務(wù)信息ET和執(zhí)行任務(wù)狀態(tài)ES (說明:觸發(fā)任務(wù)信息TT在業(yè)務(wù)流程矢量模型中表達(dá)為執(zhí)行任務(wù)信息ET),連線用來描述任務(wù)執(zhí)行指令TC、任務(wù)執(zhí)行結(jié)果TR或業(yè)務(wù)流程必備要素信息,各個(gè)要素顏色與反應(yīng)的業(yè)務(wù)信息掛鉤(比如失敗或停滯任務(wù)對(duì)應(yīng)節(jié)點(diǎn)顯示紅色),最后通過幾何的點(diǎn)、矩形、帶箭頭來標(biāo)識(shí)這些要素,并賦予每個(gè)實(shí)體要素幾何信肩、O
[0068]以上述數(shù)據(jù)管理服務(wù)的業(yè)務(wù)流程為例,產(chǎn)生的業(yè)務(wù)流程矢量模型信息如圖3所
/Jn ο
[0069]最后通過業(yè)務(wù)標(biāo)識(shí)ID從收集到業(yè)務(wù)信息從獲取與流程圖上要素相關(guān)的信息,最終形成了帶有流程圖的圖元顯示信息和業(yè)務(wù)信息的業(yè)務(wù)流程矢量模型,示例生成的業(yè)務(wù)流程矢量模型如圖4所示。
[0070]5:通過矢量圖形進(jìn)行流程動(dòng)態(tài)繪制顯示
[0071]生成的矢量流程圖是遵循SVG的矢量圖形規(guī)范格式,通過SVG繪制渲染引擎,即可完成繪制,形成直觀的監(jiān)視信息(例如圖5所示,全面反映了該數(shù)據(jù)管理服務(wù)的實(shí)際業(yè)務(wù)運(yùn)行情況);通過動(dòng)態(tài)業(yè)務(wù)變化及時(shí)產(chǎn)生新的矢量圖形,并及時(shí)完成界面繪制,從而實(shí)現(xiàn)了動(dòng)態(tài)流程繪制顯示,提供流程監(jiān)視的手段。
[0072]6:根據(jù)圖元信息對(duì)流程圖進(jìn)行操作響應(yīng)
[0073]用戶通過監(jiān)視流程圖變化,選定相關(guān)的圖元,定位響應(yīng)的圖元信息,進(jìn)而追溯到業(yè)務(wù)流程圖節(jié)點(diǎn)和連線,繼而顯示對(duì)應(yīng)的業(yè)務(wù)信息。
[0074]7:查詢流程要素信息
[0075]8:根據(jù)業(yè)務(wù)提示對(duì)流程進(jìn)行控制
[0076]接受用戶對(duì)所述矢量圖中的節(jié)點(diǎn)或連線的調(diào)整;按照調(diào)整后的結(jié)構(gòu)關(guān)系執(zhí)行相應(yīng)的業(yè)務(wù)流程。
[0077]根據(jù)業(yè)務(wù)信息狀態(tài)情況(比如任務(wù)失敗),提示進(jìn)行相應(yīng)的操作處理(比如對(duì)應(yīng)有重啟操作,例如圖6所示),最后用戶可以根據(jù)提示完成相應(yīng)的業(yè)務(wù)控制。
[0078]在圖5、圖6中,還可根據(jù)節(jié)點(diǎn)、連線通過不同顏色表示多種狀態(tài)。以提示用戶當(dāng)前的流程狀態(tài),便于用戶調(diào)整。
[0079]上面詳細(xì)描述了本發(fā)明的方法實(shí)施例,下面說明本發(fā)明的系統(tǒng)結(jié)構(gòu)的實(shí)施例。
[0080]本發(fā)明的系統(tǒng)結(jié)構(gòu)可根據(jù)圖7中的架構(gòu)流程構(gòu)建,圖8示出了其中的一種結(jié)構(gòu),包括:
[0081]業(yè)務(wù)確定模塊,用于根據(jù)采集的多個(gè)業(yè)務(wù)信息確定已發(fā)生的業(yè)務(wù)流程;
[0082]其中,每個(gè)所述業(yè)務(wù)信息包括:業(yè)務(wù)標(biāo)識(shí)和任務(wù)名稱、以及任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;每個(gè)所述業(yè)務(wù)流程包括:執(zhí)行的任務(wù)信息、執(zhí)行的任務(wù)狀態(tài)、和觸發(fā)的任務(wù)信息;所述任務(wù)信息包括:任務(wù)名稱、任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;
[0083]業(yè)務(wù)推測(cè)模塊,用于通過所述已發(fā)生的業(yè)務(wù)流程和未發(fā)生的業(yè)務(wù)流程中含有與所述采集的業(yè)務(wù)信息中任務(wù)名稱的關(guān)聯(lián)關(guān)系,確定將發(fā)生的業(yè)務(wù)流程;
[0084]業(yè)務(wù)關(guān)系模塊,用于根據(jù)所述已發(fā)生的業(yè)務(wù)流程和所述將發(fā)生的業(yè)務(wù)流程,得到所述已發(fā)生的業(yè)務(wù)流程和所述將發(fā)生的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系;
[0085]展示模塊,用于將所述得到的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系,以矢量圖的形式展示。[0086]優(yōu)選地,還包括:
[0087]刷新模塊,用于不斷刷新當(dāng)前顯示的矢量圖;
[0088]調(diào)整模塊,用于接受用戶對(duì)當(dāng)前或刷新后的所述矢量圖中的節(jié)點(diǎn)或連線的調(diào)整;
[0089]執(zhí)行模塊,用于按照調(diào)整后的結(jié)構(gòu)關(guān)系執(zhí)行相應(yīng)的業(yè)務(wù)流程。
[0090]從以上的描述中可以看出,本發(fā)明實(shí)現(xiàn)了如下技術(shù)效果:
[0091]根據(jù)實(shí)時(shí)采集的業(yè)務(wù)信息,依照業(yè)務(wù)流轉(zhuǎn)規(guī)則,通過計(jì)算和推測(cè)得出業(yè)務(wù)關(guān)系,形成業(yè)務(wù)流程;通過可視化處理,輔助動(dòng)態(tài)調(diào)整和刷新,最終生成了動(dòng)態(tài)圖形化的流程,具有實(shí)時(shí)、直觀、準(zhǔn)確等監(jiān)控特點(diǎn),為面向復(fù)雜業(yè)務(wù)流程的動(dòng)態(tài)圖形化監(jiān)控提供了有效的技術(shù)手段。顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計(jì)算裝置來實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來實(shí)現(xiàn),從而,可以將它們存儲(chǔ)在存儲(chǔ)裝置中由計(jì)算裝置來執(zhí)行,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
[0092]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種復(fù)雜業(yè)務(wù)流程動(dòng)態(tài)圖形化監(jiān)控的方法,其特征在于,包括: 根據(jù)實(shí)時(shí)采集的多個(gè)業(yè)務(wù)信息確定已發(fā)生的業(yè)務(wù)流程; 其中,每個(gè)所述業(yè)務(wù)信息包括:業(yè)務(wù)標(biāo)識(shí)和任務(wù)名稱、以及任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;每個(gè)所述業(yè)務(wù)流程包括:執(zhí)行的任務(wù)信息、執(zhí)行的任務(wù)狀態(tài)、和觸發(fā)的任務(wù)信息;所述任務(wù)信息包括:任務(wù)名稱、任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果; 通過所述已發(fā)生的業(yè)務(wù)流程和未發(fā)生的業(yè)務(wù)流程中含有與所述采集的業(yè)務(wù)信息中任務(wù)名稱的關(guān)聯(lián)關(guān)系,確定將發(fā)生的業(yè)務(wù)流程,得到所述已發(fā)生的業(yè)務(wù)流程和所述將發(fā)生的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系; 將所述得到的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系,以矢量圖的形式展示。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,采用貪婪算法確定出所述得到的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,以矢量圖的形式展示包括: 所述矢量圖中的節(jié)點(diǎn)作為:執(zhí)行的任務(wù)信息、觸發(fā)的任務(wù)信息、執(zhí)行的任務(wù)狀態(tài); 所述矢量圖中的連線用來描述任務(wù)執(zhí)行指令、或任務(wù)執(zhí)行結(jié)果; 所述節(jié)點(diǎn)和所述連線通過不同顏色表示多種狀態(tài)。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,采用力導(dǎo)向算法確定所述展示的所述矢量圖中的節(jié)點(diǎn)位置; 每種業(yè)務(wù)信息類型對(duì)應(yīng)一個(gè)矢量圖。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,不斷刷新當(dāng)前顯示的矢量圖; 接受用戶對(duì)所述矢量圖中的節(jié)點(diǎn)或連線的調(diào)整; 按照調(diào)整后的結(jié)構(gòu)關(guān)系執(zhí)行相應(yīng)的業(yè)務(wù)流程。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述確定已發(fā)生的業(yè)務(wù)流程的過程包括: A利用實(shí)時(shí)采集業(yè)務(wù)信息中的任務(wù)名稱在全部的多個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則的任務(wù)名稱中遍歷; B將同類任務(wù)名稱進(jìn)行關(guān)聯(lián),確定可能已經(jīng)執(zhí)行的流轉(zhuǎn)規(guī)則; 在多個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則中的任意兩個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則,如果存在其中一個(gè)執(zhí)行的任務(wù)信息中的任務(wù)名稱和另一個(gè)觸發(fā)的任務(wù)信息的任務(wù)名稱相同,則確定在業(yè)務(wù)流程中所述兩個(gè)業(yè)務(wù)流轉(zhuǎn)規(guī)則具有先后的流轉(zhuǎn)關(guān)系; C根據(jù)得到的多個(gè)具有先后的流轉(zhuǎn)關(guān)系的流轉(zhuǎn)規(guī)則、及已經(jīng)產(chǎn)生的任務(wù)信息,采用貪婪算法處理,得到一個(gè)已發(fā)生的業(yè)務(wù)流程。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述確定將發(fā)生的業(yè)務(wù)流程的過程包括: 已發(fā)生的業(yè)務(wù)流程中最新的業(yè)務(wù)信息的業(yè)務(wù)名稱、以及確定的可能發(fā)生的業(yè)務(wù)流轉(zhuǎn)規(guī)貝U,按照最短路徑到達(dá)流程終點(diǎn)策略,開始試探下一個(gè)合理的狀態(tài),同時(shí)在回溯檢查已經(jīng)執(zhí)行過或?qū)?gòu)成死循環(huán)的業(yè)務(wù)流轉(zhuǎn)規(guī)則,將其剔除,反復(fù)進(jìn)行推算,直到達(dá)到流程終點(diǎn)位置的業(yè)務(wù)名稱,從而預(yù)測(cè)了后續(xù)的流程走向,得到將發(fā)生的業(yè)務(wù)流程。
8.一種復(fù)雜業(yè)務(wù)流程動(dòng)態(tài)圖形化監(jiān)控的系統(tǒng),其特征在于,包括: 業(yè)務(wù)確定模塊,用于根據(jù)采集的多個(gè)業(yè)務(wù)信息確定已發(fā)生的業(yè)務(wù)流程; 其中,每個(gè)所述業(yè)務(wù)信息包括:業(yè)務(wù)標(biāo)識(shí)和任務(wù)名稱、以及任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果;每個(gè)所述業(yè)務(wù)流程包括:執(zhí)行的任務(wù)信息、執(zhí)行的任務(wù)狀態(tài)、和觸發(fā)的任務(wù)信息;所述任務(wù)信息包括:任務(wù)名稱、任務(wù)執(zhí)行指令或任務(wù)執(zhí)行結(jié)果; 業(yè)務(wù)推測(cè)模塊,用于通過所述已發(fā)生的業(yè)務(wù)流程和未發(fā)生的業(yè)務(wù)流程中含有與所述采集的業(yè)務(wù)信息中任務(wù)名稱的關(guān)聯(lián)關(guān)系,確定將發(fā)生的業(yè)務(wù)流程; 業(yè)務(wù)關(guān)系模塊,用于根據(jù)所述已發(fā)生的業(yè)務(wù)流程和所述將發(fā)生的業(yè)務(wù)流程,得到所述已發(fā)生的業(yè)務(wù)流程和所述將發(fā)生的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系; 展示模塊,用于將所述得到的業(yè)務(wù)流程的結(jié)構(gòu)關(guān)系,以矢量圖的形式展示。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,還包括: 刷新模塊,用于不斷刷新當(dāng)前顯示的矢量圖; 調(diào)整模塊,用于接受用戶對(duì)當(dāng)前或刷新后的所述矢量圖中的節(jié)點(diǎn)或連線的調(diào)整; 執(zhí)行模塊,用于按照調(diào)整后的結(jié)構(gòu)關(guān)系執(zhí)行相應(yīng)的業(yè)務(wù)流程。
【文檔編號(hào)】G06Q10/06GK103617486SQ201310586861
【公開日】2014年3月5日 申請(qǐng)日期:2013年11月21日 優(yōu)先權(quán)日:2013年11月21日
【發(fā)明者】高龍, 賈宏, 周儉, 左大偉, 王浩, 齊志博, 張濤, 趙遠(yuǎn)方 申請(qǐng)人:中國電子科技集團(tuán)公司第十五研究所