关于规则引擎一些基本理论的积累
什么時候應(yīng)該使用規(guī)則引擎?
雖然規(guī)則引擎能解決我們的許多問題,但我們還需要認(rèn)真考慮一下規(guī)則引擎對我
們的項目本身是否是合適的。需要關(guān)注的點有:
我的應(yīng)用程序有多復(fù)雜?
對于那些只是把數(shù)據(jù)從數(shù)據(jù)庫中傳入傳出,并不做更多事情的應(yīng)用程序,最好不要使用規(guī)則引擎。但是,當(dāng)在Java中有一定量的商業(yè)邏輯處理的話,可以考慮的使用vrs這是因為很多應(yīng)用隨著時間的推移越來越復(fù)雜,而VRS可以讓你更輕松應(yīng)對這一切。
我的應(yīng)用的生命周期有多久?
如果我們應(yīng)用的生命周期很短,也沒有必要使用VRS,使用規(guī)則引擎將會在中長期得到好處。
我的應(yīng)用需要改變嗎?
這個答案一般情況下是肯定的,“這世界唯一不變的只有變化”,我們需求也是這樣的,無論是在開發(fā)過程中或是在開發(fā)完成以后,VRS能從頻繁變化的需求中獲得好處。
什么是規(guī)則引擎
規(guī)則引擎是基于規(guī)則的專家系統(tǒng)的核心部分,主要由三部分組成:規(guī)則庫(Knowledge base)+Working Memory(Factbase)+推理機(jī)(規(guī)則引擎),規(guī)則引擎根據(jù)既定事實和知識庫按照一定的算法執(zhí)行推理邏輯得到正確的結(jié)果。
業(yè)界標(biāo)準(zhǔn):規(guī)則引擎
業(yè)務(wù)規(guī)則引擎是一種軟件組件,它允許非程序員添加或更改業(yè)務(wù)流程管理(BPM)系統(tǒng)中的業(yè)務(wù)邏輯。業(yè)務(wù)規(guī)則是一個描述企業(yè)政策或程序的說明。業(yè)務(wù)邏輯描述的是與數(shù)據(jù)庫中執(zhí)行規(guī)則的數(shù)據(jù)相關(guān)的一系列操作。
業(yè)務(wù)規(guī)則引擎將業(yè)務(wù)規(guī)則執(zhí)行代碼與業(yè)務(wù)流程管理系統(tǒng)的其他代碼分開。這樣最終用戶無需請求程序員的幫助就可以更改業(yè)務(wù)規(guī)則。在更改時,引擎會評估更改對系統(tǒng)中其他規(guī)則的影響,如果有沖突,就會提示用戶。
據(jù)作者Alex Berson和Larry Dubov所述,一個完整的業(yè)務(wù)規(guī)則引擎(BRE)包括以下內(nèi)容:
業(yè)務(wù)規(guī)則庫——一個用于存儲業(yè)務(wù)用戶所定義的業(yè)務(wù)規(guī)則的數(shù)據(jù)庫。
業(yè)務(wù)規(guī)則編輯器——一個直觀的用戶界面,使業(yè)務(wù)用戶能夠定義、設(shè)計、記錄和編輯業(yè)務(wù)規(guī)則。
報表組件——直觀的用戶界面,允許業(yè)務(wù)用戶查詢和報告現(xiàn)行規(guī)則。
規(guī)則引擎執(zhí)行核心——執(zhí)行這些規(guī)則的實際編程代碼。
轉(zhuǎn)載于:https://blog.51cto.com/7791920/1298075
總結(jié)
以上是生活随笔為你收集整理的关于规则引擎一些基本理论的积累的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。