專利名稱:一種基于規(guī)則引擎的業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理的松耦合方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及在企業(yè)業(yè)務(wù)管理系統(tǒng)中,業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理相互作用的技術(shù)領(lǐng)域,具體涉及一種基于規(guī)則引擎的業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理的松耦合方法及系統(tǒng)。
背景技術(shù):
隨著計(jì)算機(jī)以及網(wǎng)絡(luò)技術(shù)的廣泛應(yīng)用,越來越多的企業(yè)在經(jīng)營管理方面,應(yīng)用計(jì)算機(jī)及計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行業(yè)務(wù)數(shù)據(jù)處理、工作協(xié)同、企業(yè)管理等多方面的工作,以滿足企業(yè)對工作質(zhì)量、工作效率的越來越高的要求。即使在信息技術(shù)、互聯(lián)網(wǎng)技術(shù)高速發(fā)展的今天,仍然有不少企業(yè),特別是中小企業(yè)在日常業(yè)務(wù)工作中,存在著大量手動處理的情況。特別是主要業(yè)務(wù)數(shù)據(jù)的處理工作,往往牽涉到多個(gè)業(yè)務(wù)部門,需要多業(yè)務(wù)部門的協(xié)同工作、規(guī)范處理,而手動處理業(yè)務(wù)數(shù)據(jù),存在著很多弊端
1工作效率低下;例如業(yè)務(wù)人員為了執(zhí)行一份合同需要在各個(gè)部門之間奔波,并且經(jīng)常因?yàn)樨?fù)責(zé)人不在而導(dǎo)致工作的延誤;
1 在業(yè)務(wù)數(shù)據(jù)的傳送過程中,由于存在這數(shù)據(jù)的重復(fù)輸入,經(jīng)常出現(xiàn)業(yè)務(wù)數(shù)據(jù)前后不一致的情況,從而引起后面一系列工作失誤,甚至造成重大損失;
1 各類業(yè)務(wù)數(shù)據(jù)不能有效統(tǒng)一管理;無法進(jìn)行有效的風(fēng)險(xiǎn)監(jiān)控和各個(gè)環(huán)節(jié)工作的跟蹤、統(tǒng)計(jì)分析。目前,在企業(yè)信息化方面已經(jīng)有一些解決方案,特別是涉及到多部門協(xié)同工作,往往需要遵循約定的業(yè)務(wù)流程來進(jìn)行處理,因此,引入了工作流應(yīng)用,具體存在3種解決方案
1、業(yè)務(wù)工作由一系列功能模塊組成,業(yè)務(wù)工作的先后順序直接硬編碼在業(yè)務(wù)功能代碼中,這樣,業(yè)務(wù)流程直接被固化在業(yè)務(wù)功能模塊中。例如銷售部門使用銷售管理模塊,訂單部門使用訂單管理模塊,倉儲部使用倉庫管理模塊。銷售人員在“銷售管理”模塊中起草合同訂單,合同管理人員在“合同管理”模塊中對合同訂單進(jìn)行審核以及相關(guān)事項(xiàng)安排,倉儲部人員在“倉庫管理”模塊中對訂單上的產(chǎn)品進(jìn)行出庫操作,并進(jìn)行統(tǒng)計(jì)等。2、業(yè)務(wù)流程專門通過工作流系統(tǒng)來實(shí)現(xiàn),業(yè)務(wù)的各項(xiàng)審批工作先通過工作流系統(tǒng)一步一步實(shí)現(xiàn),業(yè)務(wù)流程順利完成后,把流程中審核通過的最終業(yè)務(wù)數(shù)據(jù)再手動輸入到各個(gè)業(yè)務(wù)功能模塊中。例如針對客戶的報(bào)價(jià),銷售人員首先把給客戶的初步報(bào)價(jià)放到工作流系統(tǒng)中,發(fā)給各級業(yè)務(wù)主管審批,批復(fù)都同意后,銷售人員再把報(bào)價(jià)數(shù)據(jù)輸入到“銷售管理” 模塊和“合同管理”模塊中保存。3、業(yè)務(wù)流程通過工作流系統(tǒng)來實(shí)現(xiàn),業(yè)務(wù)流程通過專門的數(shù)據(jù)接口,與業(yè)務(wù)功能模塊相結(jié)合,這樣實(shí)現(xiàn)了業(yè)務(wù)流程與業(yè)務(wù)功能模塊之間的數(shù)據(jù)交互,避免了數(shù)據(jù)的重復(fù)輸入,保證了業(yè)務(wù)數(shù)據(jù)的前后一致。上述解決方案雖然在一定程度上解決了手工處理業(yè)務(wù)數(shù)據(jù)的不足,但都沒有解決靈活、快速進(jìn)行業(yè)務(wù)數(shù)據(jù)處理與業(yè)務(wù)流程應(yīng)用的融合問題。第1種方案雖然把業(yè)務(wù)流程和業(yè)務(wù)數(shù)據(jù)處理結(jié)合在一起,但限制太死,一旦業(yè)務(wù)流程發(fā)生變化,必須要進(jìn)行二次開發(fā),重新進(jìn)行編碼。這在市場瞬息萬變的今天,業(yè)務(wù)流程的調(diào)整是比較頻繁的,會極大地影響了正常的業(yè)務(wù)工作。第2種方案由于引入了工作流系統(tǒng),可以很好的解決業(yè)務(wù)流程調(diào)整的問題,但是工作流系統(tǒng)實(shí)際上是一個(gè)獨(dú)立在業(yè)務(wù)功能模塊之外的系統(tǒng),這種情況下,兩者之間的數(shù)據(jù)根本不可能進(jìn)行共享、交互,那么導(dǎo)致數(shù)據(jù)重復(fù)輸入,不僅降低了正常的業(yè)務(wù)工作效率,而且還是不能完全避免數(shù)據(jù)輸入失誤的存在。第3種方案能夠比較好地解決上述2個(gè)方案不能解決的問題,但是企業(yè)的業(yè)務(wù)在發(fā)展過程中,會不斷增加新的業(yè)務(wù)功能模塊,例如生產(chǎn)管理、物料管理等,這些新的功能模塊也需要與業(yè)務(wù)流程相結(jié)合,而已有開發(fā)完成的接口只能作用在原有的功能模塊上,對于新的功能模塊,仍然需要重新開發(fā)或修改接口代碼。這仍然會影響到企業(yè)正常的業(yè)務(wù)管理工作??傊绾螌I(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理進(jìn)行方便、靈活的融合?在不修改代碼的情況下,快速進(jìn)行調(diào)整業(yè)務(wù)流程與業(yè)務(wù)功能模塊的對應(yīng)關(guān)系,是企業(yè)管理中一個(gè)迫切需要解決的問題。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于規(guī)則引擎的業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理松耦合的方法及其系統(tǒng),用以解決企業(yè)信息化中,業(yè)務(wù)流程不能與業(yè)務(wù)管理數(shù)據(jù)很好融合的問題,同時(shí)又要適應(yīng)業(yè)務(wù)流程、業(yè)務(wù)功能不斷變化調(diào)整的特點(diǎn)。為了解決上述問題,本發(fā)明提供如下技術(shù)方案
一種基于規(guī)則引擎的業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理松耦合的方法,包括 把企業(yè)的業(yè)務(wù)管理系統(tǒng)分成工作流子系統(tǒng)和業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng);兩者分工不同,既相互獨(dú)立,可以獨(dú)立發(fā)揮作用,又相輔相成,可以根據(jù)需要進(jìn)行數(shù)據(jù)交互。其中,工作流子系統(tǒng)主要用于處理業(yè)務(wù)流程;業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)主要包括業(yè)務(wù)功能模塊,例如銷售管理模塊、合同管理模塊、倉庫管理模塊等。通過工作流子系統(tǒng)來創(chuàng)建、管理企業(yè)的業(yè)務(wù)流程,設(shè)置業(yè)務(wù)流程中的每一個(gè)處理環(huán)節(jié)、設(shè)定每一個(gè)環(huán)節(jié)的辦理人員以及相應(yīng)的權(quán)限、設(shè)置某個(gè)業(yè)務(wù)流程各個(gè)環(huán)節(jié)的辦理順序,以及使業(yè)務(wù)工作按照設(shè)定好的規(guī)則和順序進(jìn)行網(wǎng)上流轉(zhuǎn)。通過工作流子系統(tǒng)所建立的業(yè)務(wù)流程,由多個(gè)流程節(jié)點(diǎn)組成。流程節(jié)點(diǎn)分為流程同步器和業(yè)務(wù)活動節(jié)點(diǎn)單元。流程同步器的作用是根據(jù)中間過程數(shù)據(jù)決定業(yè)務(wù)流程的下一步驟。在所有的業(yè)務(wù)活動節(jié)點(diǎn)單元,都嵌入規(guī)則引擎(Rule Engine)組件,通過規(guī)則引擎組件,根據(jù)中間過程數(shù)據(jù)進(jìn)行模式匹配(Pattern Match),從而決定調(diào)用哪個(gè)業(yè)務(wù)功能模塊。規(guī)則主要由兩部分組成條件和結(jié)論,條件部分也稱為左端(記為LHS, left-handside),結(jié)論部分也稱為右端(記為 RHS,right-handside)。
規(guī)則引擎組件裝載數(shù)據(jù)對象(Working Memory),在本實(shí)施例中,數(shù)據(jù)對象包括記錄id、所處的工作流環(huán)節(jié)、上一步驟輸入的數(shù)據(jù)等。規(guī)則引擎組件檢查規(guī)則庫(Rule Base)存儲器中第一個(gè)規(guī)則并對其條件過濾器求值,即對每一個(gè)規(guī)則r,判斷當(dāng)前的數(shù)據(jù)對象ο是否使LHS (r) =True,如果值為假,所有與此規(guī)則相關(guān)的動作皆被忽略并繼續(xù)執(zhí)行下一條規(guī)則。如果第一條規(guī)則的過濾器值為真,那么所有與此規(guī)則相關(guān)的動作RHS(r (ο))皆依定義順序執(zhí)行,執(zhí)行完畢繼續(xù)下一條規(guī)則。符合條件的結(jié)論就是與此規(guī)則相關(guān)的動作。當(dāng)LHS (r) =True,要執(zhí)行規(guī)則對應(yīng)的動作時(shí),系統(tǒng)控制權(quán)由工作流子系統(tǒng)轉(zhuǎn)到業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)。對應(yīng)的動作包括調(diào)用業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)中的相關(guān)業(yè)務(wù)功能模塊,建立新的業(yè)務(wù)記錄或打開待處理的業(yè)務(wù)記錄,并把上一個(gè)步驟輸入的業(yè)務(wù)數(shù)據(jù)直接引入到新記錄中,省卻了重復(fù)輸入的工作,而且保證了數(shù)據(jù)傳遞的正確性、及時(shí)性。由于業(yè)務(wù)發(fā)展需要在企業(yè)管理系統(tǒng)中增加了新的業(yè)務(wù)功能模塊時(shí),企業(yè)管理人員制定新的業(yè)務(wù)規(guī)則,快速、方便納入新的業(yè)務(wù)功能模塊,通過規(guī)則引擎組件及時(shí)建立業(yè)務(wù)流程與新業(yè)務(wù)功能模塊之間的調(diào)用關(guān)系。工作人員在業(yè)務(wù)功能模塊中完成操作后,系統(tǒng)控制權(quán)又交給工作流子系統(tǒng),由該子系統(tǒng)的流程同步器決定下一步的業(yè)務(wù)操作。企業(yè)相關(guān)工作人員制定相應(yīng)的業(yè)務(wù)規(guī)則,保存在規(guī)則引擎組件的規(guī)則庫存儲器中,通過規(guī)則引擎組件進(jìn)行匹配,保持工作流子系統(tǒng)和業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)兩者松耦合的關(guān)系,兩者既可以獨(dú)立應(yīng)用,又可以結(jié)合在一起應(yīng)用,而且可以方便調(diào)整業(yè)務(wù)活動節(jié)點(diǎn)與業(yè)務(wù)功能模塊的對應(yīng)關(guān)系,使系統(tǒng)的靈活性更強(qiáng),更加適應(yīng)企業(yè)個(gè)性化的需要。同樣道理,本發(fā)明還公開了一種業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理的松耦合系統(tǒng),其特征在于,包括工作流子系統(tǒng)和業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)。所述工作流子系統(tǒng)主要用于業(yè)務(wù)流程的創(chuàng)建、設(shè)置業(yè)務(wù)流程中的每一個(gè)處理環(huán)節(jié)、設(shè)定每一個(gè)環(huán)節(jié)的辦理人員以及相應(yīng)的權(quán)限、設(shè)置某個(gè)業(yè)務(wù)流程各個(gè)環(huán)節(jié)的辦理順序, 以及使業(yè)務(wù)工作按照設(shè)定好的規(guī)則和順序進(jìn)行網(wǎng)上流轉(zhuǎn)。所述業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng),主要用于對各類企業(yè)業(yè)務(wù)數(shù)據(jù)的輸入、保存、匯總等。 在本實(shí)例中,包括與業(yè)務(wù)工作相關(guān)的一系列功能模塊,例如,“銷售管理”、“合同管理”、“倉庫管理”、“發(fā)貨管理”等業(yè)務(wù)功能模塊。所述工作流子系統(tǒng)建立的業(yè)務(wù)流程中包含流程同步器和業(yè)務(wù)活動節(jié)點(diǎn)單元。所述流程同步器作用在于組織工作流子系統(tǒng)的計(jì)算活動,需要處理順序、分支、匯聚、循環(huán)等所有工作流相關(guān)的計(jì)算,由它來決定路由。所述業(yè)務(wù)活動節(jié)點(diǎn)單元作用在于與業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)中的業(yè)務(wù)功能模塊進(jìn)行業(yè)務(wù)功能交互。所述業(yè)務(wù)活動節(jié)點(diǎn)單元包含有相應(yīng)的業(yè)務(wù)邏輯,業(yè)務(wù)邏輯包含“執(zhí)行條件”和“執(zhí)行動作”兩部分,由規(guī)則弓I擎組件來完成其業(yè)務(wù)邏輯。所述業(yè)務(wù)規(guī)則引擎組件,是一種根據(jù)規(guī)則中包含的指定過濾條件,判斷其能否匹配運(yùn)行時(shí)刻的實(shí)時(shí)條件來執(zhí)行規(guī)則中所規(guī)定的動作的引擎。規(guī)則引擎組件用以管理和自動實(shí)現(xiàn)業(yè)務(wù)規(guī)則,其主要實(shí)現(xiàn)的功能是存儲、分類和管理規(guī)則,驗(yàn)證規(guī)則的一致性,通過規(guī)則推斷其它規(guī)則、聯(lián)系規(guī)則和執(zhí)行這些規(guī)則的應(yīng)用程序,其中的規(guī)則主要是指企業(yè)或商務(wù)業(yè)務(wù)邏輯、法律條款、企業(yè)政策等。本發(fā)明的有益效果(1)本發(fā)明將業(yè)務(wù)流程邏輯與業(yè)務(wù)數(shù)據(jù)處理任務(wù)邏輯分別由 2個(gè)相互獨(dú)立的子系統(tǒng)來完成,降低了業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理的耦合程度,消除了流程數(shù)據(jù)與業(yè)務(wù)數(shù)據(jù)的混亂,解決了企業(yè)由于業(yè)務(wù)流程變化、組織結(jié)構(gòu)變化以及業(yè)務(wù)需求變化對業(yè)務(wù)管理系統(tǒng)的影響問題,通過工作流子系統(tǒng),可以方便調(diào)整業(yè)務(wù)流程,通過采用規(guī)則引擎組件,可以靈活調(diào)整業(yè)務(wù)流程環(huán)節(jié)與業(yè)務(wù)功能模塊的對應(yīng)關(guān)系,使企業(yè)業(yè)務(wù)管理系統(tǒng)快速、 低成本支持了企業(yè)的業(yè)務(wù)發(fā)展。(2)本發(fā)明采用規(guī)則引擎組件,把業(yè)務(wù)規(guī)則的制定和業(yè)務(wù)應(yīng)用編碼分隔開,企業(yè)管理人員可以獨(dú)立根據(jù)業(yè)務(wù)需要制定業(yè)務(wù)規(guī)則,不需要進(jìn)行軟件代碼的重新修改,使新的業(yè)務(wù)功能模塊方便與業(yè)務(wù)流程建立聯(lián)系,以及快速調(diào)整現(xiàn)有業(yè)務(wù)功能模塊與業(yè)務(wù)流程的對應(yīng)關(guān)系,方便滿足企業(yè)個(gè)性化的業(yè)務(wù)工作需要。(3)本發(fā)明通過規(guī)則引擎結(jié)合了業(yè)務(wù)流程應(yīng)用和業(yè)務(wù)數(shù)據(jù)處理應(yīng)用,保證了業(yè)務(wù)流程與功能模塊之間業(yè)務(wù)數(shù)據(jù)的順利交互,避免了業(yè)務(wù)數(shù)據(jù)的重復(fù)輸入,保證了業(yè)務(wù)數(shù)據(jù)的前后一致,對提高企業(yè)的工作效率,提升工作準(zhǔn)確性非常有幫助。(4)通過規(guī)則引擎組件,制定新的業(yè)務(wù)規(guī)則,可以把企業(yè)新的業(yè)務(wù)功能模塊快速方便地與業(yè)務(wù)流程的結(jié)合,提高整個(gè)業(yè)務(wù)的敏捷性和擴(kuò)展性。
圖1為本發(fā)明實(shí)施例中的原理示意圖。圖2為本發(fā)明實(shí)施例中的技術(shù)方案結(jié)構(gòu)圖。圖3為本發(fā)明實(shí)施例中的業(yè)務(wù)活動節(jié)點(diǎn)結(jié)構(gòu)圖。圖4為本發(fā)明實(shí)施例流程圖。圖5為本發(fā)明實(shí)施例中業(yè)務(wù)規(guī)則引擎組件工作流程圖。圖6為本發(fā)明實(shí)施例中的規(guī)則引擎組件結(jié)構(gòu)圖。
具體實(shí)施例方式以下結(jié)合附圖和具體實(shí)施例對本發(fā)明作進(jìn)一步詳細(xì)闡述。本發(fā)明提供了一種基于規(guī)則引擎的業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理的松耦合方法及系統(tǒng)。本發(fā)明實(shí)施例充分考慮到企業(yè)的業(yè)務(wù)發(fā)展變化快的情況,通過將工作流子系統(tǒng)與業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)相對獨(dú)立,降低兩者之間的耦合度,使企業(yè)的業(yè)務(wù)管理系統(tǒng)不僅能快速響應(yīng)業(yè)務(wù)流程和組織結(jié)構(gòu)的變化,而且能快速響應(yīng)業(yè)務(wù)功能發(fā)展變化的需求。采用了業(yè)務(wù)規(guī)則引擎的方式,結(jié)合業(yè)務(wù)流程工作與業(yè)務(wù)數(shù)據(jù)處理工作,保證業(yè)務(wù)數(shù)據(jù)的前后一致,避免業(yè)務(wù)數(shù)據(jù)的重復(fù)輸入,提高企業(yè)的工作效率和準(zhǔn)確度。參閱圖1所示,本發(fā)明實(shí)施例中的原理示意圖包括工作流子系統(tǒng)10,業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)11。工作流子系統(tǒng)10,用于根據(jù)企業(yè)情況建立業(yè)務(wù)流程,并進(jìn)行業(yè)務(wù)工作的傳遞,在傳遞過程中,根據(jù)需要來調(diào)用所述業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)11中的業(yè)務(wù)功能模塊。工作流子系統(tǒng)10,包括“開始”節(jié)點(diǎn)101,“結(jié)束”節(jié)點(diǎn)105,以及“下一步”節(jié)點(diǎn)102、 103,104ο
“開始”節(jié)點(diǎn)101,用于啟動某個(gè)業(yè)務(wù)流程的實(shí)例?!跋乱徊健惫?jié)點(diǎn)102、103、104,用于接收上一步驟中功能模塊的相關(guān)業(yè)務(wù)數(shù)據(jù),并根據(jù)數(shù)據(jù)決定下一步調(diào)用的業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)11中的功能模塊?!敖Y(jié)束”節(jié)點(diǎn)105,用于結(jié)束該業(yè)務(wù)流程實(shí)例,并把該業(yè)務(wù)流程實(shí)例的狀態(tài)標(biāo)識為
“社擊”
纟口水 ο業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)11,是模擬一個(gè)企業(yè)在銷售過程中使用的有關(guān)業(yè)務(wù)管理的功能模塊。在圖1所示的實(shí)例中,包括銷售管理模塊111、合同管理模塊112、倉庫管理模塊 113、發(fā)貨管理模塊114。銷售管理模塊111,用于企業(yè)銷售員記錄客戶購買的意向,以及預(yù)測客戶購買的產(chǎn)品種類、數(shù)量、所報(bào)的價(jià)格等,而且銷售員可以通過這些將要預(yù)測的信息直接生成合同訂單草稿。合同管理模塊112,用于企業(yè)合同管理人員對合同訂單進(jìn)行審核。倉庫管理模塊113,用于倉庫管理人員根據(jù)審核通過的合同訂單,按客戶需要的產(chǎn)品和相應(yīng)的數(shù)量,執(zhí)行出庫。發(fā)貨管理模塊114,用于企業(yè)相關(guān)人員按照審核通過的合同訂單,給客戶安排發(fā)貨,并記錄發(fā)貨的產(chǎn)品、數(shù)量、時(shí)間等。參閱圖2所示,本發(fā)明實(shí)施例中的技術(shù)方案結(jié)構(gòu)包括使用者客戶端20、業(yè)務(wù)管理服務(wù)器21、工作流服務(wù)器22、業(yè)務(wù)功能服務(wù)器23、規(guī)則引擎服務(wù)器M、制定業(yè)務(wù)規(guī)則客戶端 25、數(shù)據(jù)庫服務(wù)器26。使用者客戶端20,主要用于企業(yè)工作人員訪問企業(yè)管理服務(wù)器21,來進(jìn)行日常的企業(yè)工作。企業(yè)管理服務(wù)器21,提供企業(yè)的各種日常工作的管理服務(wù),以及相關(guān)業(yè)務(wù)服務(wù)等。 只涉及到業(yè)務(wù)流程的工作,企業(yè)管理服務(wù)器21將訪問工作流服務(wù)器22 ;只涉及到業(yè)務(wù)數(shù)據(jù)處理工作,企業(yè)管理服務(wù)器21將訪問業(yè)務(wù)功能服務(wù)器23。工作流服務(wù)器22,用于提供業(yè)務(wù)流程的管理和運(yùn)行服務(wù),在此過程中,將通過規(guī)則引擎服務(wù)器M進(jìn)行規(guī)則匹配,決定是否調(diào)用業(yè)務(wù)功能服務(wù)器23中的相應(yīng)功能模塊。業(yè)務(wù)功能服務(wù)器23,主要用于提供業(yè)務(wù)功能服務(wù),例如“客戶管理”、“銷售管理”、
“合同管理”等。規(guī)則引擎服務(wù)器M,用于保存業(yè)務(wù)規(guī)則,進(jìn)行業(yè)務(wù)規(guī)則匹配,進(jìn)行業(yè)務(wù)規(guī)則執(zhí)行。制定業(yè)務(wù)規(guī)則客戶端25,用于企業(yè)管理者按照規(guī)定的格式制定業(yè)務(wù)規(guī)則,并保存到規(guī)則引擎服務(wù)器M中。數(shù)據(jù)庫服務(wù)器沈,用于保存業(yè)務(wù)功能模塊中的輸入數(shù)據(jù)以及業(yè)務(wù)流程數(shù)據(jù),并給予相關(guān)訪問者調(diào)用瀏覽。參閱圖3所示,本發(fā)明實(shí)施例中的業(yè)務(wù)活動節(jié)點(diǎn)關(guān)系圖包括業(yè)務(wù)活動節(jié)點(diǎn)單元 30、流程同步器31、流程同步器32、業(yè)務(wù)功能模塊33。業(yè)務(wù)活動節(jié)點(diǎn)單元30,根據(jù)上一步驟的數(shù)據(jù)對象,決定調(diào)用哪個(gè)業(yè)務(wù)功能模塊 33。它包括執(zhí)行條件過濾器301、規(guī)則引擎組件302、執(zhí)行器303。執(zhí)行條件過濾器301,用于接收上一步驟傳遞過來的數(shù)據(jù),作為規(guī)則引擎302的輸入數(shù)據(jù)對象,以便進(jìn)行規(guī)則匹配。
規(guī)則引擎302,通過規(guī)則庫中的規(guī)則與執(zhí)行條件301接收的數(shù)據(jù)對象進(jìn)行匹配,當(dāng) LHS(r) =True時(shí),通過執(zhí)行器303來執(zhí)行此規(guī)則對應(yīng)的動作。執(zhí)行器303,接收規(guī)則引擎302進(jìn)行匹配后的結(jié)果命令,執(zhí)行其業(yè)務(wù)規(guī)則所對應(yīng)的動作,在本實(shí)例中即是調(diào)用業(yè)務(wù)功能模塊33。流程同步器31,作用在于組織工作流引擎的計(jì)算活動,需要處理順序、分支、匯聚、 循環(huán)等所有工作流相關(guān)的計(jì)算,由它來決定路由。流程同步器32,作用與流程同步器31相同。業(yè)務(wù)功能模塊33,在本實(shí)例中指的是企業(yè)業(yè)務(wù)功能模塊,例如“銷售管理”模塊、 “合同管理”模塊、“倉庫管理”模塊、“發(fā)貨管理”模塊等。參閱圖4所示,本發(fā)明實(shí)施例流程如下
步驟401 在工作流子系統(tǒng)中,啟動“企業(yè)銷售流程”實(shí)例;
步驟402 業(yè)務(wù)活動節(jié)點(diǎn)單元“草擬合同訂單”,根據(jù)本節(jié)點(diǎn)單元的數(shù)據(jù),包括節(jié)點(diǎn)單元名稱和所處環(huán)節(jié),由規(guī)則引擎組件進(jìn)行匹配后,執(zhí)行匹配規(guī)則所對應(yīng)的動作調(diào)用業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)中的“銷售管理”模塊,同時(shí)系統(tǒng)控制權(quán)由工作流子系統(tǒng)轉(zhuǎn)給業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)。銷售部的工作人員在此新建“合同訂單”草稿,并輸入銷售數(shù)據(jù),保存。然后業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)再把系統(tǒng)控制權(quán)交給工作流子系統(tǒng);
步驟403 流程同步器“下一步”接受系統(tǒng)控制權(quán)后,根據(jù)設(shè)置好的流程來決定下一步 “審核合同訂單”;
步驟404 業(yè)務(wù)活動節(jié)點(diǎn)單元“審核合同訂單”,根據(jù)本節(jié)點(diǎn)單元的數(shù)據(jù),包括節(jié)點(diǎn)單元名稱、所處環(huán)節(jié)、上一步驟輸入的數(shù)據(jù)等,由規(guī)則引擎組件進(jìn)行匹配后,執(zhí)行匹配規(guī)則所對應(yīng)的動作調(diào)用業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)中的“合同管理”模塊,同時(shí)系統(tǒng)控制權(quán)由工作流子系統(tǒng)轉(zhuǎn)給業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)。合同管理部的工作人員在此打開由銷售人員提交的“合同訂單”草稿,并進(jìn)行審核,審核完成后,業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)再把系統(tǒng)控制權(quán)交給工作流子系統(tǒng),同時(shí)把此記錄的流程狀態(tài)設(shè)置為“審核通過”; 例如,
(CONDITONDS
(state <S> BLOCK <B>)
(BLOCK <B>所處環(huán)節(jié)“審核合同訂單”)
(BLOCK <B>業(yè)務(wù)功能模塊“合同管理”)
(BLOCK <B>狀態(tài)數(shù)據(jù)合同訂單中的輸入數(shù)據(jù))
(ACTION)
OPEN “合同管理” 一 “待處理記錄”; )
步驟405 流程同步器“下一步”接受系統(tǒng)控制權(quán)后,根據(jù)設(shè)置好的流程來決定下一步 “出庫產(chǎn)品”;
步驟406 業(yè)務(wù)活動節(jié)點(diǎn)單元“出庫產(chǎn)品”,根據(jù)本節(jié)點(diǎn)單元的數(shù)據(jù),包括節(jié)點(diǎn)單元名稱、所處環(huán)節(jié)、流程狀態(tài)、上一步驟的數(shù)據(jù)等,由規(guī)則引擎組件進(jìn)行匹配后,執(zhí)行匹配規(guī)則所對應(yīng)的動作調(diào)用業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)中的“倉庫管理”模塊,同時(shí)系統(tǒng)控制權(quán)由工作流子系統(tǒng)轉(zhuǎn)給業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)。倉儲部的工作人員在此打開由合同管理人員審核通過的 “合同訂單”,并由此生成新的出庫單后,新出庫單上的產(chǎn)品數(shù)據(jù)繼承對應(yīng)合同訂單中的產(chǎn)品數(shù)據(jù),保證數(shù)據(jù)的一致。業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)再把系統(tǒng)控制權(quán)交給工作流子系統(tǒng);
步驟407 流程同步器“下一步”接受系統(tǒng)控制權(quán)后,根據(jù)設(shè)置好的流程來決定下一步 “發(fā)貨”·’
步驟408:業(yè)務(wù)活動節(jié)點(diǎn)單元“發(fā)貨”,根據(jù)本節(jié)點(diǎn)單元的數(shù)據(jù),包括節(jié)點(diǎn)單元名稱、所處環(huán)節(jié)、流程狀態(tài)、上一步驟輸入的數(shù)據(jù)等,由規(guī)則引擎組件進(jìn)行匹配后,執(zhí)行匹配規(guī)則所對應(yīng)的動作調(diào)用業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)中的“發(fā)貨管理”模塊,同時(shí)系統(tǒng)控制權(quán)由工作流子系統(tǒng)轉(zhuǎn)給業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)。發(fā)貨部門的工作人員在此打開由倉庫管理人員生成的“產(chǎn)品出庫”記錄,并由此生成新的發(fā)貨單后,新發(fā)貨單上的產(chǎn)品數(shù)據(jù)繼承對應(yīng)出庫單中的產(chǎn)品數(shù)據(jù),保證數(shù)據(jù)的一致。業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)再把系統(tǒng)控制權(quán)交給工作流子系統(tǒng);
步驟409 流程同步器“下一步”接受系統(tǒng)控制權(quán)后,根據(jù)設(shè)置好的流程來決定下一步 “客戶確認(rèn)”;
步驟410 業(yè)務(wù)活動節(jié)點(diǎn)單元“客戶確認(rèn)”,根據(jù)本節(jié)點(diǎn)單元的數(shù)據(jù),包括節(jié)點(diǎn)單元名稱、所處環(huán)節(jié)、流程狀態(tài)、上一步驟輸入的數(shù)據(jù)等,由規(guī)則引擎組件進(jìn)行匹配后,執(zhí)行匹配規(guī)則所對應(yīng)的動作調(diào)用業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)中的“客戶管理”模塊,同時(shí)系統(tǒng)控制權(quán)由工作流子系統(tǒng)轉(zhuǎn)給業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)。發(fā)貨部門的工作人員確認(rèn)這個(gè)客戶是否已經(jīng)收到購買的產(chǎn)品,并在“客戶管理”中記錄此客戶收到的產(chǎn)品,然后業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)再把系統(tǒng)控制權(quán)交給工作流子系統(tǒng);
步驟411 流程同步器“結(jié)束”接受系統(tǒng)控制權(quán)后,設(shè)置此流程實(shí)例為“完成”狀態(tài),并關(guān)閉此流程實(shí)例。參閱圖5所示,本發(fā)明實(shí)施例中規(guī)則引擎組件工作流程如下
步驟501 數(shù)據(jù)對象進(jìn)入工作空間裝載器,其中數(shù)據(jù)對象包括節(jié)點(diǎn)單元名稱、所處環(huán)節(jié)、流程狀態(tài)、上一步驟輸入的數(shù)據(jù)等;
步驟502 將規(guī)則庫存儲器中的規(guī)則與數(shù)據(jù)對象進(jìn)行匹配;
步驟503 匹配成功后,通過處理裝置執(zhí)行對應(yīng)規(guī)則的動作,其中的動作在本實(shí)施例中是調(diào)用業(yè)務(wù)管理中的業(yè)務(wù)功能模塊,包括“客戶管理”、“銷售管理”、“合同合理”、“倉庫管理”、“發(fā)貨管理”、“客戶管理”等。參閱圖6所示,本發(fā)明實(shí)施例中的規(guī)則引擎組件包括數(shù)據(jù)對象601、工作空間裝載器602、隊(duì)列管理器603、規(guī)則庫存儲器604、規(guī)則模式匹配器605、過濾器606、處理裝置 607。數(shù)據(jù)對象601,在本發(fā)明實(shí)施例中,包括業(yè)務(wù)活動節(jié)點(diǎn)的數(shù)據(jù),例如節(jié)點(diǎn)名稱、所處環(huán)節(jié)、流程狀態(tài)、上一步驟輸入的數(shù)據(jù)等。工作空間裝載器602,用于裝載眾多數(shù)據(jù)對象,然后把這些數(shù)據(jù)對象作為規(guī)則引擎組件的輸入。隊(duì)列管理器603,用來管理不同數(shù)據(jù)對象的隊(duì)列,以保證數(shù)據(jù)對象按照先后順序與規(guī)則庫中的規(guī)則進(jìn)行模式匹配。規(guī)則庫存儲器604,用于管理、保存業(yè)務(wù)規(guī)則,企業(yè)相關(guān)人員根據(jù)業(yè)務(wù)發(fā)展需要制定的業(yè)務(wù)規(guī)則,保存在規(guī)則庫存儲器中,確保需要時(shí)被調(diào)用。
規(guī)則模式匹配器605,從規(guī)則庫存儲器604中調(diào)用每一個(gè)規(guī)則r,判斷當(dāng)前的數(shù)據(jù)對象ο是否使LHS (r) =True,如果是,就把規(guī)則r的實(shí)例r (ο)加到執(zhí)行隊(duì)列中,由處理裝置 607來執(zhí)行相應(yīng)的動作。所謂規(guī)則r的實(shí)例就是用數(shù)據(jù)對象ο的值代替規(guī)則r的相應(yīng)參數(shù), 即綁定了數(shù)據(jù)對象ο的規(guī)則r。過濾器606,用于對所述規(guī)則模式匹配器605的結(jié)果進(jìn)行判斷,如果判斷值為 “真”,將通過處理裝置607順序執(zhí)行對應(yīng)此規(guī)則的各種動作。否則,調(diào)用下一個(gè)數(shù)據(jù)對象進(jìn)行匹配。處理裝置607,用于執(zhí)行滿足條件的業(yè)務(wù)規(guī)則所對應(yīng)的第一個(gè)動作,在本實(shí)例中是調(diào)用相應(yīng)的業(yè)務(wù)功能模塊,然后進(jìn)行“新建”操作,或者是打開相應(yīng)的業(yè)務(wù)工作記錄。雖然本發(fā)明已以較佳實(shí)施例公開如上,但實(shí)施例和附圖并不是用來限定本發(fā)明, 任何熟習(xí)此技藝者,在不脫離本發(fā)明之精神和范圍內(nèi),自當(dāng)可作各種變化或潤飾,但同樣在本發(fā)明的保護(hù)范圍之內(nèi)。因此本發(fā)明的保護(hù)范圍應(yīng)當(dāng)以本申請的權(quán)利要求保護(hù)范圍所界定的為準(zhǔn)。
權(quán)利要求
1.一種基于規(guī)則引擎的業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理松耦合的方法,其特征在于,包括把企業(yè)的業(yè)務(wù)管理系統(tǒng)分成工作流子系統(tǒng)和業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng),兩者在應(yīng)用上可以相互獨(dú)立;通過規(guī)則引擎組件結(jié)合工作流子系統(tǒng)和業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng),避免的業(yè)務(wù)數(shù)據(jù)的重復(fù)輸入,保證業(yè)務(wù)數(shù)據(jù)前后一致;通過企業(yè)來制定規(guī)則引擎組件中的業(yè)務(wù)規(guī)則,調(diào)整業(yè)務(wù)活動節(jié)點(diǎn)單元與業(yè)務(wù)功能模塊的對應(yīng)關(guān)系。
2.如權(quán)利要求1所述方法,其特征在于把企業(yè)的業(yè)務(wù)管理系統(tǒng)分成工作流子系統(tǒng)和業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng),兩者相互獨(dú)立,可以單獨(dú)發(fā)揮其作用,其中,工作流子系統(tǒng)主要用于處理業(yè)務(wù)流程;業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)主要包括業(yè)務(wù)功能模塊,例如銷售管理模塊、合同管理模塊、倉庫管理模塊等,但不限于這些模塊,它包括涉及到企業(yè)管理的所有模塊。
3.如權(quán)利要求1所述方法,其特征在于所述工作流子系統(tǒng)的流程節(jié)點(diǎn)包括流程同步器和業(yè)務(wù)活動節(jié)點(diǎn)單元,且每個(gè)業(yè)務(wù)活動節(jié)點(diǎn)單元中都嵌入規(guī)則引擎組件。
4.如權(quán)利要求1所述方法,其特征在于通過規(guī)則引擎組件建立工作流子系統(tǒng)和業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)的聯(lián)系,使兩者可以進(jìn)行業(yè)務(wù)數(shù)據(jù)交互,保證業(yè)務(wù)數(shù)據(jù)在業(yè)務(wù)流程與業(yè)務(wù)功能模塊中的一致。
5.如權(quán)利要求1所述方法,其特征在于企業(yè)獨(dú)立來制定規(guī)則引擎組件中的業(yè)務(wù)規(guī)則, 來調(diào)整業(yè)務(wù)活動節(jié)點(diǎn)單元與業(yè)務(wù)功能模塊的對應(yīng)關(guān)系,避免了修改代碼。
6.如權(quán)利要求1所述方法,其特征在于當(dāng)業(yè)務(wù)發(fā)展需要,在企業(yè)管理系統(tǒng)中增加了新的業(yè)務(wù)功能模塊時(shí),企業(yè)管理人員制定新的業(yè)務(wù)規(guī)則,快速、方便納入新的業(yè)務(wù)功能模塊, 通過規(guī)則引擎組件及時(shí)建立業(yè)務(wù)流程與新業(yè)務(wù)功能模塊之間的調(diào)用關(guān)系。
7.如權(quán)利要求1所述方法,其特征在于避免業(yè)務(wù)流程數(shù)據(jù)侵入業(yè)務(wù)功能模塊中的數(shù)據(jù),保證了業(yè)務(wù)功能模塊中數(shù)據(jù)的純凈。
8.一種基于規(guī)則引擎的業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理松耦合的系統(tǒng),其特征在于,包括工作流子系統(tǒng),主要用于處理業(yè)務(wù)流程;業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng),主要用于對各類企業(yè)業(yè)務(wù)數(shù)據(jù)的輸入、保存、匯總等;工作流子系統(tǒng)的流程節(jié)點(diǎn)包括流程同步器和業(yè)務(wù)活動節(jié)點(diǎn)單元;流程同步器,集合代表工作流引擎的計(jì)算活動,需要處理順序、分支、匯聚、循環(huán)等所有工作流相關(guān)的計(jì)算,由它來決定路由;業(yè)務(wù)活動節(jié)點(diǎn)單元,由相應(yīng)的業(yè)務(wù)邏輯組成,業(yè)務(wù)邏輯包含“執(zhí)行條件”和“執(zhí)行體”兩部分;規(guī)則引擎組件,通過業(yè)務(wù)規(guī)則的制定,建立工作流子系統(tǒng)與業(yè)務(wù)數(shù)據(jù)處理子系統(tǒng)的數(shù)據(jù)聯(lián)系。
9.如權(quán)利要求8所述系統(tǒng),其特征在于業(yè)務(wù)活動節(jié)點(diǎn)單元中嵌入規(guī)則引擎組件。
10.如權(quán)利要求8所述系統(tǒng),其特征在于規(guī)則引擎組件中包含規(guī)則庫存儲器,用于管理、保存業(yè)務(wù)規(guī)則,這些業(yè)務(wù)規(guī)則由企業(yè)相關(guān)人員按照特定的規(guī)范格式制定,不需要程序員編碼實(shí)現(xiàn);業(yè)務(wù)活動節(jié)點(diǎn)單元根據(jù)規(guī)則的要求調(diào)用與之對應(yīng)業(yè)務(wù)功能模塊。
11.如權(quán)利要求8所述系統(tǒng),其特征在于業(yè)務(wù)活動節(jié)點(diǎn)單元的動作與業(yè)務(wù)功能模塊無關(guān),則業(yè)務(wù)活動節(jié)點(diǎn)單元不需調(diào)用業(yè)務(wù)功能模塊。
全文摘要
本發(fā)明提供了一種基于規(guī)則引擎的業(yè)務(wù)流程與業(yè)務(wù)數(shù)據(jù)處理的松耦合方法及系統(tǒng),將業(yè)務(wù)流程邏輯與業(yè)務(wù)數(shù)據(jù)處理邏輯相互獨(dú)立開來,通過規(guī)則引擎組件來建立兩者的相互關(guān)系,保證了業(yè)務(wù)數(shù)據(jù)的前后一致,使業(yè)務(wù)工作更高效、準(zhǔn)確;并且通過應(yīng)用規(guī)則引擎技術(shù),使兩者的結(jié)合更加靈活,企業(yè)完全可以根據(jù)本企業(yè)的特點(diǎn)和發(fā)展情況制定業(yè)務(wù)規(guī)則,從而能夠靈活調(diào)整業(yè)務(wù)數(shù)據(jù)處理與業(yè)務(wù)流程之間的對應(yīng)關(guān)系,極大提高了企業(yè)適應(yīng)市場變化、業(yè)務(wù)變化的能力。
文檔編號G06Q10/06GK102542414SQ20111044750
公開日2012年7月4日 申請日期2011年12月28日 優(yōu)先權(quán)日2011年12月28日
發(fā)明者周鳳波, 翁強(qiáng), 鄒鐵鵬 申請人:焦點(diǎn)科技股份有限公司