亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種基于業(yè)務(wù)的流程處理方法及系統(tǒng)的制作方法

文檔序號:6364334閱讀:203來源:國知局
專利名稱:一種基于業(yè)務(wù)的流程處理方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本申請涉及數(shù)據(jù)處理技術(shù),特別是涉及一種基于業(yè)務(wù)的流程處理方法及系統(tǒng)。
背景技術(shù)
對于一個業(yè)務(wù)流程處理,通常包括多個階段,每個階段處理結(jié)束后進(jìn)入下一個階段,最后一個階段完成后,整個業(yè)務(wù)處理結(jié)束。例如,參照圖1所示,是現(xiàn)有技術(shù)中某個業(yè)務(wù)流程的示意圖。該業(yè)務(wù)的整體流程可分解為3個任務(wù),如圖1中的任務(wù)1、任務(wù)2和任務(wù)3,每個任務(wù)完成之后開始執(zhí)行下一個任務(wù)。其中,某些任務(wù)可以拆解成更小的任務(wù)而成為子流程,如圖1中的任務(wù)I拆解為任務(wù)4 (Task4)和任務(wù)5 (Task5)構(gòu)成的子流程,任務(wù)2拆解為任務(wù)6(Task6)和任務(wù)7(Task7)構(gòu)成的子流程。針對這種場景,目前的處理方法是對這個業(yè)務(wù)過程記錄一個訂單(Order),該訂單跟蹤整個業(yè)務(wù)處理過程的所有進(jìn)度信息,包括每一個階段的狀態(tài),并最終由一個狀態(tài)表示該訂單的終結(jié)點(diǎn)。如圖2所示,是一個訂單示意圖。所述訂單記錄了流程I中涉及到的字段I和字段2的信息,以及流程I的狀態(tài),然后進(jìn)入流程2 ;記錄流程2中涉及到的字段3和字段4的信息,以及流程2的狀態(tài),然后進(jìn)入最后一個流程,記錄字段5和字段6的信息,并記錄整個業(yè)務(wù)過程結(jié)束時的整體狀態(tài),最后由該整體狀態(tài)表示該訂單的終結(jié)。這種針對一個業(yè)務(wù)過程記錄一個訂單的處理方法,由于訂單本身跟蹤的信息過多,容易造成訂單本身屬性復(fù)雜,訂單本身表示的意義過多。而且,每個階段的處理,還會對訂單本身進(jìn)行頻繁讀寫,使得訂單的復(fù)雜度整體上升,維護(hù)起來極其繁瑣艱難。

發(fā)明內(nèi)容
本申請?zhí)峁┝艘环N基于業(yè)務(wù)的流程處理方法及系統(tǒng),以解決現(xiàn)有的處理方法使得訂單的復(fù)雜度和維護(hù)度上升的問 題。為了解決上述問題,本申請公開了一種基于業(yè)務(wù)的流程處理方法,包括:將整體流程細(xì)分為各個子流程,每個子流程作為一個原子過程,整體流程也作為一個原子過程;針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,每個原子訂單用于跟蹤對應(yīng)的原子過程;根據(jù)預(yù)設(shè)的訂單狀態(tài)關(guān)聯(lián)配置信息,當(dāng)某個原子訂單的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的原子訂單狀態(tài)同步變遷。其中,整體流程對應(yīng)的原子訂單狀態(tài)變遷由相關(guān)聯(lián)的子流程對應(yīng)的原子訂單狀態(tài)變遷而觸發(fā)。優(yōu)選的,所述將整體流程細(xì)分為各個子流程包括:按照整體流程涉及到的各個不同角色,將整體流程細(xì)分為各個子流程,每個子流程對應(yīng)一個角色。優(yōu)選的,所述針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,包括:在流程初始化時,針對所有的原子過程,對其中每個原子過程分別創(chuàng)建單獨(dú)的原子訂單。
優(yōu)選的,所述針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,包括:在每一個原子過程結(jié)束時,觸發(fā)創(chuàng)建下一個相關(guān)聯(lián)的原子過程對應(yīng)的原子訂單。優(yōu)選的,所述根據(jù)預(yù)設(shè)的訂單狀態(tài)關(guān)聯(lián)配置信息,當(dāng)某個原子訂單的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的原子訂單狀態(tài)同步變遷,包括:所述訂單狀態(tài)關(guān)聯(lián)配置信息中的每條配置信息都預(yù)設(shè)了相關(guān)聯(lián)的兩個原子訂單的狀態(tài)位以及狀態(tài)位的同步關(guān)系描述;當(dāng)其中一個原子訂單的狀態(tài)位的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的另一個原子訂單的狀態(tài)位按照所述狀態(tài)位的同步關(guān)系描述進(jìn)行狀態(tài)同步變遷。本申請還提供了一種基于業(yè)務(wù)的流程處理系統(tǒng),包括:業(yè)務(wù)劃分模塊,用于將整體流程細(xì)分為各個子流程,每個子流程作為一個原子過程,整體流程也作為一個原子過程;訂單創(chuàng)建模塊,用于針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,每個原子訂單用于跟蹤對應(yīng)的原子過程;訂單關(guān)聯(lián)配置模塊, 用于預(yù)設(shè)訂單狀態(tài)關(guān)聯(lián)配置信息;訂單狀態(tài)同步器,用于根據(jù)預(yù)設(shè)的訂單狀態(tài)關(guān)聯(lián)配置信息,當(dāng)某個原子訂單的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的原子訂單狀態(tài)同步變遷。優(yōu)選的,所述系統(tǒng)還包括:流程初始化器,用于流程初始化;所述訂單創(chuàng)建模塊設(shè)置在所述流程初始化器中,在流程初始化時,針對所有的原子過程,對其中每個原子過程分別創(chuàng)建單獨(dú)的原子訂單。優(yōu)選的,所述系統(tǒng)還包括:訂單業(yè)務(wù)處理器,每個原子訂單對應(yīng)一個訂單業(yè)務(wù)處理器,用于原子訂單的數(shù)據(jù)管理和狀態(tài)變遷;所述訂單創(chuàng)建模塊設(shè)置在所述訂單業(yè)務(wù)處理器中,在每一個原子過程結(jié)束時,觸發(fā)下一個相關(guān)聯(lián)的訂單業(yè)務(wù)處理器創(chuàng)建對應(yīng)的原子訂單。優(yōu)選的,各個訂單業(yè)務(wù)處理器實(shí)現(xiàn)原子訂單的狀態(tài)變遷后,通知所述訂單狀態(tài)同步器,訂單狀態(tài)同步器再觸發(fā)相關(guān)聯(lián)的訂單業(yè)務(wù)處理器觸發(fā)狀態(tài)變遷。與現(xiàn)有技術(shù)相比,本申請包括以下優(yōu)點(diǎn):首先,本申請通過對業(yè)務(wù)的原子過程抽取,生成多個原子訂單,再把這些原子訂單進(jìn)行狀態(tài)關(guān)聯(lián),當(dāng)某個原子訂單的狀態(tài)變更時,關(guān)聯(lián)訂單狀態(tài)同步變遷,從而解決現(xiàn)有技術(shù)中單一訂單的復(fù)雜度與維護(hù)度的問題,最終達(dá)到簡化業(yè)務(wù)流程處理機(jī)制的目的。其次,本申請按照整體流程涉及到的各個不同角色,將整體流程細(xì)分為各個子流程,每個子流程對應(yīng)一個角色,使得各個角色只處理單一原子訂單的業(yè)務(wù),從而使整體流程的業(yè)務(wù)處理粒度化,可重用性提高,復(fù)雜度降低。再次,本申請這種對流程的處理機(jī)制,也可推廣到很多不同的流程處理需求之中。當(dāng)然,實(shí)施本申請的任一產(chǎn)品不一定需要同時達(dá)到以上所述的所有優(yōu)點(diǎn)。


圖1是現(xiàn)有技術(shù)中某個業(yè)務(wù)流程的示意圖;圖2是現(xiàn)有技術(shù)中一個訂單示意圖3是現(xiàn)有技術(shù)中各個角色對一個訂單進(jìn)行讀寫的示意圖;圖4是本申請實(shí)施例所述一種基于業(yè)務(wù)的流程處理方法流程圖;圖5是本申請實(shí)施例中針對某個業(yè)務(wù)創(chuàng)建的原子訂單示意圖;圖6是圖5所示實(shí)施例中參與角色對應(yīng)原子訂單的示意圖;圖7是本申請實(shí)施例中的訂單狀態(tài)轉(zhuǎn)移圖;圖8是本申請實(shí)施例中流程初始化器創(chuàng)建訂單的示意圖;圖9是本申請實(shí)施例中訂單業(yè)務(wù)處理器創(chuàng)建訂單的示意圖;圖10是本申請實(shí)施例中狀態(tài)同步機(jī)制的示意圖;圖11是本申請實(shí)施例中包含訂單創(chuàng)建和訂單狀態(tài)同步的整體方案示意圖;圖12是本申請實(shí)施例所述一種基于業(yè)務(wù)的流程處理系統(tǒng)結(jié)構(gòu)圖。
具體實(shí)施例方式為使本申請的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對本申請作進(jìn)一步詳細(xì)的說明。為了解決單一訂單的復(fù)雜度與維護(hù)度的問題,本申請首先分析了其原因,如下:—個業(yè)務(wù)處理過程涉及到多 個角色的參與,包括多個參與角色和受益角色,而參與角色一般只關(guān)心自己涉及到的業(yè)務(wù)階段,受益角色也只關(guān)心整體訂單的處理情況。例如,銀行卡綁定商戶平臺賬戶的業(yè)務(wù),用戶作為受益角色關(guān)心的是綁定本身是否完成,而其中很多個細(xì)分階段,包括了不同的各種參與角色,或許是商戶平臺和銀行間的信息交互過程、或許是商戶平臺的內(nèi)部處理過程、或許是審核人員的審核過程,這些細(xì)分階段的處理對作為最終受益角色的用戶并不關(guān)心。而單一訂單本身的信息包含很多細(xì)分階段的業(yè)務(wù)過程信息,如處理過程的數(shù)據(jù)、階段狀態(tài)等,同時也包含對用戶(受益角色)可見的訂單整體數(shù)據(jù)、狀態(tài)等。在業(yè)務(wù)處理的各個階段,不同角色都可能對這個訂單進(jìn)行讀寫,而用戶通過界面操作也對整體訂單進(jìn)行讀寫。例如,參照圖3所示,是現(xiàn)有技術(shù)中各個角色對一個訂單進(jìn)行讀寫的示意圖。圖中,參與角色I(xiàn)會對流程I中的字段1、字段2和流程I狀態(tài)進(jìn)行讀寫。參與角色3會對流程I的中字段2和流程I狀態(tài)進(jìn)行讀寫,并對流程2中的字段4和流程2狀態(tài)進(jìn)行讀寫。而受益角色4會對流程2中的字段3和流程2狀態(tài)進(jìn)行讀寫,并對整體流程的字段6和整體狀態(tài)進(jìn)行讀與?;趫D3的示例,對于程序的處理,需要區(qū)分每個階段數(shù)據(jù)狀態(tài)對每個角色的可見度,這樣每個角色才能對訂單屬于其階段的數(shù)據(jù)狀態(tài)進(jìn)行讀寫,但是這使得訂單的復(fù)雜度整體上升,維護(hù)起來極其繁瑣艱難。由上述分析可知,造成單一訂單的復(fù)雜度和維護(hù)度問題的主要原因是:訂單本身跟蹤的信息過多,每個階段都有不同角色對訂單進(jìn)行讀寫,甚至還存在多個角色對同一字段的重復(fù)讀寫,而且程序還要區(qū)分每個階段數(shù)據(jù)狀態(tài)對每個角色的可見度,由此造成訂單的復(fù)雜度和維護(hù)度上升。根據(jù)以上分析,本申請?zhí)岢隽艘环N通過原子訂單關(guān)聯(lián)來處理業(yè)務(wù)流程的方法,該方法通過對業(yè)務(wù)的原子過程抽取,生成多個原子訂單,再把這些原子訂單進(jìn)行狀態(tài)關(guān)聯(lián),當(dāng)某個原子訂單的狀態(tài)變更時,關(guān)聯(lián)訂單狀態(tài)同步變遷,從而解決現(xiàn)有技術(shù)中單一訂單的復(fù)雜度與維護(hù)度的問題,最終達(dá)到簡化業(yè)務(wù)流程處理機(jī)制的目的。下面通過實(shí)施例對本申請所述方法的實(shí)現(xiàn)流程進(jìn)行詳細(xì)說明。參照圖4,其為本申請實(shí)施例所述一種基于業(yè)務(wù)的流程處理方法流程圖。步驟401,將整體流程細(xì)分為各個子流程,每個子流程作為一個原子過程,整體流程也作為一個原子過程;即從整體業(yè)務(wù)流程中,細(xì)分出各個子流程,每個子流程作為一個原子過程,都有其單獨(dú)的原子訂單來跟蹤其狀態(tài),而整體流程本身也退化成一個原子過程,有其原子訂單。其中,所述原子過程是指為達(dá)到一定目的,有開始和結(jié)束狀態(tài)的簡單過程,如校驗(yàn)一張銀行卡、銀行通信、給用戶打款等。原子過程基于定義的不同,有不同的層級與嵌套。所述原子訂單是指為記錄原子過程的變更過程而生成的訂單記錄。進(jìn)一步地,還可以按照整體流程涉及到的各個不同角色,如參與角色和受益角色,將整體流程細(xì)分為各個子流程,每個子流程對應(yīng)一個角色。這種按照角色的業(yè)務(wù)流程劃分,可以將一個原子訂單的讀寫操作定位到一個角色,使得各個角色只處理單一原子訂單的業(yè)務(wù),從而使整體流程的業(yè)務(wù)處理粒度化,可重用性提高,復(fù)雜度降低。步驟402,針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,每個原子訂單用于跟蹤對應(yīng)的原子過程;具體的,對每個子流程分別創(chuàng)建單獨(dú)的原子訂單,對整體流程也創(chuàng)建一個單獨(dú)的原子訂單。例如,參照圖5所示,是本申請實(shí)施例中針對某個業(yè)務(wù)創(chuàng)建的原子訂單示意圖。一共創(chuàng)建了 4個原子訂單·,其中原子訂單I是針對整體流程而創(chuàng)建,原子訂單2至原子訂單4是分別針對子流程I至子流程3而創(chuàng)建。每一個原子訂單記錄一個原子過程的狀態(tài)、數(shù)據(jù)信息。按照業(yè)務(wù)流程的處理,一個子流程處理完畢后會進(jìn)入下一個子流程的處理,因此各原子訂單間存在狀態(tài)的關(guān)聯(lián),例如:原子訂單I與原子訂單2、原子訂單2與原子訂單3、原子訂單3與原子訂單4關(guān)聯(lián),此外原子訂單I還與原子訂單3、原子訂單I還與原子訂單4分別關(guān)聯(lián)。進(jìn)一步地,每個原子訂單還可以面對單一的角色,參與角色不跨界,盡量做到訂單管理的業(yè)務(wù)是單一的。這樣使得對原子訂單的讀寫相對單一。例如,參照圖6所示,一個參與角色對應(yīng)一個原子訂單,可對原子訂單中的字段I至字段5以及訂單狀態(tài)進(jìn)行讀寫。需要說明的是,上述圖5所示的示例中,原子訂單I至原子訂單4都包含相同的字段I至字段5,但這4個原子訂單也可以各自包含不同的字段,例如原子訂單I包含字段1、字段2,原子訂單2包含字段2、字段3,原子訂單3包含字段4,原子訂單4包含字段4、字段5。步驟403,根據(jù)預(yù)設(shè)的訂單狀態(tài)關(guān)聯(lián)配置信息,當(dāng)某個原子訂單的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的原子訂單狀態(tài)同步變遷。其中,整體流程對應(yīng)的原子訂單狀態(tài)變遷由相關(guān)聯(lián)的子流程對應(yīng)的原子訂單狀態(tài)變遷而觸發(fā)。如前所述,各原子訂單間存在狀態(tài)關(guān)聯(lián),在業(yè)務(wù)處理流程中,一個原子訂單的狀態(tài)變遷會引起相關(guān)聯(lián)訂單的狀態(tài)變遷,因此需要實(shí)現(xiàn)各個原子訂單之間的狀態(tài)同步。例如,原子訂單I狀態(tài)達(dá)到終態(tài)END,同時原子訂單I和原子訂單2之間的狀態(tài)有關(guān)聯(lián)關(guān)系,原子訂單I的終態(tài)END同時觸發(fā)原子訂單2的中間狀態(tài)INTER。訂單狀態(tài)的關(guān)聯(lián)建立是通過訂單狀態(tài)關(guān)聯(lián)配置來完成,所述訂單狀態(tài)關(guān)聯(lián)配置信息是預(yù)先按照業(yè)務(wù)流程的處理進(jìn)行設(shè)置,其中每條配置信息都預(yù)設(shè)了相關(guān)聯(lián)的兩個原子訂單的狀態(tài)位以及狀態(tài)位的同步關(guān)系描述。當(dāng)其中一個原子訂單的狀態(tài)位的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的另一個原子訂單的狀態(tài)位按照所述狀態(tài)位的同步關(guān)系描述進(jìn)行狀態(tài)同步變遷。配置的狀態(tài)關(guān)聯(lián)表示如下:[(原子訂單1〈STATUS>_ 原子訂單 2〈STATE>)(狀態(tài)A-狀態(tài)X)(狀態(tài)B-狀態(tài)S)]上述表示方式的含義是:原子訂單I和原子訂單2存在狀態(tài)關(guān)聯(lián)和同步關(guān)系,狀態(tài)位分別為STATUS、STATE,同步的狀態(tài)為原子訂單I的狀態(tài)A與原子訂單2的狀態(tài)X,原子訂單I的狀態(tài)B與原子訂單2的狀態(tài)S。具體的,原子訂單I的狀態(tài)位STATUS可以變更為狀態(tài)A或狀態(tài)B,當(dāng)變更為狀態(tài)A時,與其關(guān)聯(lián)的原子訂單2的狀態(tài)位需要同步變更為狀態(tài)X ;當(dāng)原子訂單I的狀態(tài)位變更為狀態(tài)B時,與其關(guān)聯(lián)的原子訂單2的狀態(tài)位需要同步變更為狀態(tài)S。上述表示方式中,一個原子訂單可具有兩個狀態(tài),當(dāng)然,每個原子訂單也可以只具有一個狀態(tài)。基于以上內(nèi)容,為了更清楚地描述上述原子訂單間的狀態(tài)關(guān)聯(lián)和同步,下面將以銀行卡綁定商戶平臺賬戶的業(yè)務(wù)為例,并通過圖7所示的狀態(tài)轉(zhuǎn)移圖進(jìn)行說明。近年來 ,銀行卡代扣的電子支付方式越來越普及:用戶提供銀行卡信息并與商戶平臺的賬號綁定,然后商戶平臺與銀行合作,通過銀行代扣的方式進(jìn)行網(wǎng)上支付。這種方式由于不需要網(wǎng)銀的參與,提高了安全性和便利性,受到越來越多的平臺和用戶的選擇。但是,實(shí)現(xiàn)銀行卡賬號與商戶平臺賬號的綁定,商戶平臺首先是要鑒定銀行卡的真實(shí)性、合法性。本實(shí)施例通過以下幾個步驟完成鑒定過程,具體如下:步驟1,用戶將銀行卡信息(如用戶名、銀行卡賬號等)發(fā)給商戶平臺;步驟2,商戶平臺將用戶的銀行卡信息轉(zhuǎn)發(fā)給銀行,銀行進(jìn)行審核和驗(yàn)證;步驟3,銀行驗(yàn)證通過后,商戶平臺請求銀行向該銀行卡中匯入一筆金額;步驟4,金額匯入后,用戶自行查詢銀行卡中的入賬金額數(shù);步驟5,用戶登錄商戶平臺,將查詢到的入賬金額數(shù)輸入商戶平臺提供的輸入界面中;步驟6,商戶平臺將用戶輸入的金額數(shù)與銀行實(shí)際匯入的金額數(shù)進(jìn)行比較,如果兩者相等,表明該銀行卡為該用戶真實(shí)擁有;如果兩者不相等,表明該銀行卡的真實(shí)性或合法性存在疑義,也許是銀行卡本身有問題,也許是該銀行卡是其他用戶的銀行卡而非該用戶所有。經(jīng)過以上六個步驟的鑒定處理,就可以將盜取他人銀行卡或提供虛假銀行卡等行為鑒別出來,從而為銀行卡代扣的電子支付提供更高的安全性?;谏鲜鲢y行卡鑒定的業(yè)務(wù)過程,針對該鑒定業(yè)務(wù)的訂單狀態(tài)轉(zhuǎn)移圖如圖7所示。其中,原子訂單I是主體流程訂單(也是一個原子訂單),跟蹤主體流程的狀態(tài)。原子訂單2、3、4則管理不同涉眾的交互過程,跟蹤不同階段的訂單狀態(tài)。原子訂單1、2、3、4的狀態(tài)之間進(jìn)行同步關(guān)聯(lián),即同步關(guān)聯(lián)的兩個訂單狀態(tài)之間是同時到達(dá),同時出現(xiàn)。例如:當(dāng)原子訂單I的狀態(tài)位變更為“1:初始”狀態(tài)時,與其關(guān)聯(lián)的原子訂單2的狀態(tài)位需要同步變更為“CD:創(chuàng)建”;當(dāng)原子訂單2的狀態(tài)位變更為“RS:成功”狀態(tài)時,與其關(guān)聯(lián)的原子訂單3的狀態(tài)位需要同步變更為“CD:創(chuàng)建”;當(dāng)原子訂單3的狀態(tài)位變更為“RS:返回成功”狀態(tài)時,與其關(guān)聯(lián)的原子訂單4的狀態(tài)位需要同步變更為“CD:創(chuàng)建”,與其關(guān)聯(lián)的另一原子訂單I的狀態(tài)位需要同步變更為“S:已簽約”;當(dāng)原子訂單4的狀態(tài)位變更為“VS:校驗(yàn)成功”狀態(tài)時,與其關(guān)聯(lián)的原子訂單I的狀態(tài)位需要同步變更為“A:已激活”;當(dāng)原子訂單4的狀態(tài)位變更為“VF:校驗(yàn)失敗”狀態(tài)時,與其關(guān)聯(lián)的原子訂單I的狀態(tài)位需要同步變更為“A:已撤銷”?;谏鲜鰞?nèi)容,為了使本領(lǐng)域技術(shù)人員更加了解本申請的內(nèi)容,下面通過另一個實(shí)施例進(jìn)行說明。在該實(shí)施例中,主要說明原子訂單的創(chuàng)建和狀態(tài)同步管理。1、原子訂單的創(chuàng)建本實(shí)施例主要提 供了兩種創(chuàng)建方法,如下:一種創(chuàng)建方法是,在流程初始化時,針對所有的原子過程,對其中每個原子過程分別創(chuàng)建單獨(dú)的原子訂單。簡而言之,就是在流程初始化的時候創(chuàng)建所有的原子訂單。另一種創(chuàng)建方法是,在每一個原子過程結(jié)束時,觸發(fā)創(chuàng)建下一個相關(guān)聯(lián)的原子過程對應(yīng)的原子訂單。簡而言之,原子訂單的創(chuàng)建,是通過前一個原子訂單達(dá)到終態(tài)再創(chuàng)建下一個原子訂單。下面分別詳細(xì)說明。整個業(yè)務(wù)的過程,有一個初始化操作,最基本的工作是把整體業(yè)務(wù)流程的原子訂單創(chuàng)建出來,流程初始化器負(fù)責(zé)實(shí)現(xiàn)這樣的操作。每一個原子訂單有各自的訂單業(yè)務(wù)處理器,訂單業(yè)務(wù)處理器是管理原子訂單本身的業(yè)務(wù),并實(shí)現(xiàn)訂單狀態(tài)變遷的程序模塊。原子訂單的創(chuàng)建,可以通過以下兩種方式:1.1流程初始化器創(chuàng)建即流程剛開始初始化,則把所有相關(guān)的原子訂單創(chuàng)建出來。訂單業(yè)務(wù)處理器不負(fù)責(zé)創(chuàng)建訂單,只負(fù)責(zé)訂單數(shù)據(jù)管理和狀態(tài)變遷。例如,參照圖8所示,流程初始化器將所有相關(guān)的3個原子訂單都創(chuàng)建出來,這3個原子訂單中包含整體流程的原子訂單和子流程的原子訂單。對于每個原子訂單,都有相應(yīng)的訂單業(yè)務(wù)處理器負(fù)責(zé)訂單數(shù)據(jù)管理和狀態(tài)變遷。1.2訂單業(yè)務(wù)處理器創(chuàng)建即每一個原子訂單業(yè)務(wù)結(jié)束,觸發(fā)下一個原子訂單的訂單業(yè)務(wù)處理器創(chuàng)建訂單記錄。訂單業(yè)務(wù)處理器除需要負(fù)責(zé)訂單數(shù)據(jù)管理和狀態(tài)變遷外,還負(fù)責(zé)創(chuàng)建原子訂單。
例如,參照圖9所示,流程開始后,先由流程初始化器觸發(fā)訂單業(yè)務(wù)處理器I創(chuàng)建原子訂單I (整體流程訂單),當(dāng)原子訂單I的業(yè)務(wù)結(jié)束達(dá)到終態(tài)后,訂單業(yè)務(wù)處理器I觸發(fā)訂單業(yè)務(wù)處理器2創(chuàng)建原子訂單2。同樣,當(dāng)原子訂單2的業(yè)務(wù)結(jié)束達(dá)到終態(tài)后,訂單業(yè)務(wù)處理器2觸發(fā)訂單業(yè)務(wù)處理器3創(chuàng)建原子訂單3。2、原子訂單的狀態(tài)同步管理有一個專門管理訂單狀態(tài)同步的機(jī)制:訂單狀態(tài)同步器。訂單狀態(tài)同步器根據(jù)訂單狀態(tài)關(guān)聯(lián)配置,來執(zhí)行訂單同步問題。如前所述,訂單狀態(tài)關(guān)聯(lián)配置提供相關(guān)聯(lián)的2個訂單的狀態(tài)位、狀態(tài)位的同步關(guān)系描述,可表示如下:[(訂單I〈STATUS〉-訂單 2〈STATE>)(狀態(tài)A-狀態(tài)X)(狀態(tài)B-狀態(tài)S)]實(shí)現(xiàn)狀態(tài)同步的機(jī)制是各個訂單業(yè)務(wù)處理器實(shí)現(xiàn)狀態(tài)變遷后,通知訂單狀態(tài)同步器,訂單狀態(tài)同步器再觸發(fā)其他訂單業(yè)務(wù)處理器,觸發(fā)業(yè)務(wù)執(zhí)行,狀態(tài)同步變遷。例如,參照圖10所示,根據(jù)訂單狀態(tài)關(guān)聯(lián)配置,訂單業(yè)務(wù)處理器I實(shí)現(xiàn)原子訂單I的狀態(tài)變遷后,通知訂單狀態(tài)同步器,訂單狀態(tài)同步器再觸發(fā)訂單業(yè)務(wù)處理器2。同樣,訂單業(yè)務(wù)處理器2實(shí)現(xiàn)原子訂單2的狀態(tài)變遷后,通知訂單狀態(tài)同步器,訂單狀態(tài)同步器再觸發(fā)訂單業(yè)務(wù)處理器3。 下面給出一個包含訂單創(chuàng)建和訂單狀態(tài)同步的整體方案。參照圖11所示,流程開始后,流程初始化器創(chuàng)建所有相關(guān)的原子訂單1、原子訂單2和原子訂單3,每個原子訂單的數(shù)據(jù)數(shù)據(jù)管理和狀態(tài)變遷由各自對應(yīng)的訂單業(yè)務(wù)處理器負(fù)責(zé),各個訂單業(yè)務(wù)處理器實(shí)現(xiàn)狀態(tài)變遷后,通知訂單狀態(tài)同步器,訂單狀態(tài)同步器再觸發(fā)其他訂單業(yè)務(wù)處理器實(shí)現(xiàn)狀態(tài)變遷。綜上所述,上述各個實(shí)施例提出的通過原子訂單關(guān)聯(lián)來處理業(yè)務(wù)流程的方法,使得各個角色處理業(yè)務(wù)單一,最終達(dá)到簡化業(yè)務(wù)流程處理機(jī)制的目的。而且,這種對流程的處理機(jī)制,也可推廣到很多不同的流程處理需求之中。需要說明的是,對于前述的方法實(shí)施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本申請并不受所描述的動作順序的限制,因?yàn)橐罁?jù)本申請,某些步驟可以采用其他順序或者同時進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動作并不一定是本申請所必需的。基于上述方法實(shí)施例的說明,本申請還提供了相應(yīng)的基于業(yè)務(wù)的流程處理系統(tǒng)實(shí)施例。參照圖12,是本申請實(shí)施例所述一種基于業(yè)務(wù)的流程處理系統(tǒng)結(jié)構(gòu)圖。所述基于業(yè)務(wù)的流程處理系統(tǒng)可以包括以下模塊:業(yè)務(wù)劃分模塊10,用于將整體流程細(xì)分為各個子流程,每個子流程作為一個原子過程,整體流程也作為一個原子過程;訂單創(chuàng)建模塊20,用于針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,每個原子訂單用于跟蹤對應(yīng)的原子過程;訂單關(guān)聯(lián)配置模塊30,用于預(yù)設(shè)訂單狀態(tài)關(guān)聯(lián)配置信息;訂單狀態(tài)同步器40,用于根據(jù)預(yù)設(shè)的訂單狀態(tài)關(guān)聯(lián)配置信息,當(dāng)某個原子訂單的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的原子訂單狀態(tài)同步變遷。
具體地,所述訂單狀態(tài)關(guān)聯(lián)配置信息中的每條配置信息都預(yù)設(shè)了相關(guān)聯(lián)的兩個原子訂單的狀態(tài)位以及狀態(tài)位的同步關(guān)系描述;當(dāng)其中一個原子訂單的狀態(tài)位的狀態(tài)變遷后,訂單狀態(tài)同步器40可觸發(fā)相關(guān)聯(lián)的另一個原子訂單的狀態(tài)位按照所述狀態(tài)位的同步關(guān)系描述進(jìn)行狀態(tài)同步變遷。其中,整體流程對應(yīng)的原子訂單狀態(tài)變遷由相關(guān)聯(lián)的子流程對應(yīng)的原子訂單狀態(tài)變遷而觸發(fā)??蛇x地,所述業(yè)務(wù)劃分模塊10可以按照整體流程涉及到的各個不同角色,將整體流程細(xì)分為各個子流程,每個子流程對應(yīng)一個角色。這樣使得各個角色對原子訂單的讀寫
相對單一。進(jìn)一步地,所述訂單創(chuàng)建模塊20可通過以下兩種方式創(chuàng)建原子訂單:一種是,在流程初始化時,針對所有的原子過程,對其中每個原子過程分別創(chuàng)建單獨(dú)的原子訂單。另一種是,在每一個原子過程結(jié)束時,觸發(fā) 創(chuàng)建下一個相關(guān)聯(lián)的原子過程對應(yīng)的原子訂單?;趫D12的實(shí)施例,在另一系統(tǒng)實(shí)施例中,所述基于業(yè)務(wù)的流程處理系統(tǒng)還可以包括:流程初始化器,用于流程初始化。此外,所述基于業(yè)務(wù)的流程處理系統(tǒng)還可以包括:訂單業(yè)務(wù)處理器,每個原子訂單對應(yīng)一個訂單業(yè)務(wù)處理器,用于原子訂單的數(shù)據(jù)管理和狀態(tài)變遷?;谏鲜龅膬煞N訂單創(chuàng)建方式,對于第一種,所述訂單創(chuàng)建模塊20可以設(shè)置在所述流程初始化器中,在流程初始化時,針對所有的原子過程,對其中每個原子過程分別創(chuàng)建單獨(dú)的原子訂單。對于第二種,所述訂單創(chuàng)建模塊20可以設(shè)置在所述訂單業(yè)務(wù)處理器中,在每一個原子過程結(jié)束時,觸發(fā)下一個相關(guān)聯(lián)的訂單業(yè)務(wù)處理器創(chuàng)建對應(yīng)的原子訂單。此外,對于訂單狀態(tài)的同步管理,各個訂單業(yè)務(wù)處理器實(shí)現(xiàn)原子訂單的狀態(tài)變遷后,通知所述訂單狀態(tài)同步器,訂單狀態(tài)同步器再觸發(fā)相關(guān)聯(lián)的訂單業(yè)務(wù)處理器觸發(fā)狀態(tài)變遷。對于上述各流程處理系統(tǒng)實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。本說明書中的各個實(shí)施例均采用遞進(jìn)的方式描述,每個實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個實(shí)施例之間相同相似的部分互相參見即可。以上對本申請所提供的一種基于業(yè)務(wù)的流程處理方法及系統(tǒng),進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個例對本申請的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本申請的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本申請的限制。
權(quán)利要求
1.一種基于業(yè)務(wù)的流程處理方法,其特征在于,包括: 將整體流程細(xì)分為各個子流程,每個子流程作為一個原子過程,整體流程也作為一個原子過程; 針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,每個原子訂單用于跟蹤對應(yīng)的原子過程; 根據(jù)預(yù)設(shè)的訂單狀態(tài)關(guān)聯(lián)配置信息,當(dāng)某個原子訂單的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的原子訂單狀態(tài)同步變遷。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于: 整體流程對應(yīng)的原子訂單狀態(tài)變遷由相關(guān)聯(lián)的子流程對應(yīng)的原子訂單狀態(tài)變遷而觸發(fā)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將整體流程細(xì)分為各個子流程包括: 按照整體流程涉及到的各個不同角色,將整體流程細(xì)分為各個子流程,每個子流程對應(yīng)一個角色。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,包括: 在流程初始化時,針對所有的原子過程,對其中每個原子過程分別創(chuàng)建單獨(dú)的原子訂單。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,包括: 在每一個原子過程結(jié)束時,觸發(fā)創(chuàng)建下一個相關(guān)聯(lián)的原子過程對應(yīng)的原子訂單。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)預(yù)設(shè)的訂單狀態(tài)關(guān)聯(lián)配置信息,當(dāng)某個原子訂單的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的原子訂單狀態(tài)同步變遷,包括: 所述訂單狀態(tài)關(guān)聯(lián)配置信息中的每條配置信息都預(yù)設(shè)了相關(guān)聯(lián)的兩個原子訂單的狀態(tài)位以及狀態(tài)位的同步關(guān)系描述; 當(dāng)其中一個原子訂單的狀態(tài)位的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的另一個原子訂單的狀態(tài)位按照所述狀態(tài)位的同步關(guān)系描述進(jìn)行狀態(tài)同步變遷。
7.一種基于業(yè)務(wù)的流程處理系統(tǒng),其特征在于,包括: 業(yè)務(wù)劃分模塊,用于將整體流程細(xì)分為各個子流程,每個子流程作為一個原子過程,整體流程也作為一個原子過程; 訂單創(chuàng)建模塊,用于針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,每個原子訂單用于跟蹤對應(yīng)的原子過程; 訂單關(guān)聯(lián)配置模塊,用于預(yù)設(shè)訂單狀態(tài)關(guān)聯(lián)配置信息; 訂單狀態(tài)同步器,用于根據(jù)預(yù)設(shè)的訂單狀態(tài)關(guān)聯(lián)配置信息,當(dāng)某個原子訂單的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的原子訂單狀態(tài)同步變遷。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,還包括: 流程初始化器,用于流程初始化; 所述訂單創(chuàng)建模塊設(shè)置在所述流程初始化器中,在流程初始化時,針對所有的原子過程,對其中每個原子過程分別創(chuàng)建單獨(dú)的原子訂單。
9.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,還包括:訂單業(yè)務(wù)處理器,每個原子訂單對應(yīng)一個訂單業(yè)務(wù)處理器,用于原子訂單的數(shù)據(jù)管理和狀態(tài)變遷; 所述訂單創(chuàng)建模塊設(shè)置在所述訂單業(yè)務(wù)處理器中,在每一個原子過程結(jié)束時,觸發(fā)下一個相關(guān)聯(lián)的訂單業(yè)務(wù)處理器創(chuàng)建對應(yīng)的原子訂單。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于: 各個訂單業(yè)務(wù)處理器實(shí)現(xiàn)原子訂單的狀態(tài)變遷后,通知所述訂單狀態(tài)同步器,訂單狀態(tài)同步器再觸發(fā)相 關(guān)聯(lián)的訂單業(yè)務(wù)處理器觸發(fā)狀態(tài)變遷。
全文摘要
本申請?zhí)峁┝艘环N基于業(yè)務(wù)的流程處理方法及系統(tǒng),以解決現(xiàn)有的處理方法使得訂單的復(fù)雜度和維護(hù)度上升的問題。所述方法包括將整體流程細(xì)分為各個子流程,每個子流程作為一個原子過程,整體流程也作為一個原子過程;針對每個原子過程分別創(chuàng)建單獨(dú)的原子訂單,每個原子訂單用于跟蹤對應(yīng)的原子過程;根據(jù)預(yù)設(shè)的訂單狀態(tài)關(guān)聯(lián)配置信息,當(dāng)某個原子訂單的狀態(tài)變遷后,觸發(fā)相關(guān)聯(lián)的原子訂單狀態(tài)同步變遷。本申請通過原子訂單關(guān)聯(lián),當(dāng)某個原子訂單的狀態(tài)變更時,關(guān)聯(lián)訂單狀態(tài)同步變遷,從而解決現(xiàn)有技術(shù)中單一訂單的復(fù)雜度與維護(hù)度的問題,最終達(dá)到簡化業(yè)務(wù)流程處理機(jī)制的目的。
文檔編號G06Q10/06GK103246945SQ20121002659
公開日2013年8月14日 申請日期2012年2月7日 優(yōu)先權(quán)日2012年2月7日
發(fā)明者陳銳發(fā) 申請人:阿里巴巴集團(tuán)控股有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1