九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
企業(yè)平臺中的業(yè)務(wù)規(guī)則引擎(轉(zhuǎn)載與dev2dev)
dev2dev 首頁 > 資源中心 > 技術(shù)文章
企業(yè)平臺中的業(yè)務(wù)規(guī)則引擎

時間:2005-07-19
作者:
瀏覽次數(shù): 4032
本文關(guān)鍵字:業(yè)務(wù)規(guī)則Portal 平臺
文章工具
 推薦給朋友
 打印文章
  業(yè)務(wù)策略并不是靜態(tài)的,它們經(jīng)常變更,且其關(guān)聯(lián)的業(yè)務(wù)流程也會隨之變更。正是由于這些變更,故而有必要在實(shí)現(xiàn)和修改業(yè)務(wù)流程時保持靈活性,從而在激烈的競爭中贏得一席之地。業(yè)務(wù)規(guī)則引擎 可以實(shí)現(xiàn)所需的這種靈活性。
  本文將準(zhǔn)工業(yè)標(biāo)準(zhǔn)ILOG Jrules與BEA WebLogic Platform 8.1內(nèi)的基于XML的規(guī)則引擎進(jìn)行了比較。文章還討論了在將規(guī)則引擎集成到J2EE平臺過程中Java Specification Request (JSR) 94所扮演的角色。因?yàn)闃I(yè)務(wù)規(guī)則在重要的真正業(yè)務(wù)流程中具有很高的復(fù)雜性,所以對諸如銷售代表這樣的非IT人員來說,擁有一個工具環(huán)境且能保證其有適當(dāng)?shù)目捎眯允欠浅V匾?。本文使用了一個基于銀行的真正業(yè)務(wù)流程的應(yīng)用程序作為原型進(jìn)行討論。

動機(jī)
  更新業(yè)務(wù)流程的平均周期已經(jīng)從1980年的84個月縮短到了現(xiàn)在的6個月,而且IT解決方案交付周期也從30個月縮短到了3個月(參見圖1)。在銀行業(yè)也是這樣。其中的核心元素包括銀行業(yè)的工業(yè)化、消費(fèi)者需求的更改、競爭的日趨激烈以及政府調(diào)控的影響。另外,銀行的業(yè)務(wù)環(huán)境和操作流程也在不斷變化。但是,當(dāng)試圖使受影響的軟件系統(tǒng)適應(yīng)這些改變時,出現(xiàn)了很大的延遲。從技術(shù)的觀點(diǎn)來看,有高度適應(yīng)性和靈活性是很有必要的。但是因?yàn)殂y行擁有高度異構(gòu)的系統(tǒng)拓?fù)?,其系統(tǒng)和接口(包含單片主機(jī)系統(tǒng))的數(shù)量非??捎^,所以要實(shí)現(xiàn)這一點(diǎn)很難。

 


圖1. 1980年以來業(yè)務(wù)流程周期和IT解決方案交付周期的發(fā)展

  面向服務(wù)的架構(gòu)(SOA)能提供調(diào)整業(yè)務(wù)流程和技術(shù)實(shí)現(xiàn)過程中所需的靈活性。此處對帶有封裝的功能的服務(wù)進(jìn)行了定義,這些服務(wù)通過標(biāo)準(zhǔn)化的接口和協(xié)議(如SOAP、WSDL、UDDI或J2EE連接器架構(gòu))訪問各種系統(tǒng)(可能包括現(xiàn)存的系統(tǒng))的功能。通過將服務(wù)封送或“編排”進(jìn)可執(zhí)行的業(yè)務(wù)流程中,SOA可參考業(yè)務(wù)用戶的觀點(diǎn)對技術(shù)觀點(diǎn)進(jìn)行調(diào)整。目前,業(yè)務(wù)流程建模是基于所謂的“工作流管理系統(tǒng)”完成的。在建模過程中,會將業(yè)務(wù)流程映射為描述語言(已標(biāo)準(zhǔn)化或正在標(biāo)準(zhǔn)化)。利用這一點(diǎn),無需“硬編碼”即可對業(yè)務(wù)流程進(jìn)行調(diào)整,從而在運(yùn)行時即時滿足各種新要求。在《BIT》雜志的“銀行業(yè)與信息技術(shù)”(2004年第2卷第3期)中,討論了此架構(gòu)在銀行中與各種工作流符號(如eEPK、UML活動圖、BPEL、XPDL以及JPD)結(jié)合的一個實(shí)現(xiàn)。
  為了提高業(yè)務(wù)流程實(shí)現(xiàn)的抽象層次和靈活性,業(yè)務(wù)規(guī)則引擎可以部署在SOA框架內(nèi)。這些規(guī)則引擎將業(yè)務(wù)流程內(nèi)的決策從用編程語言完成的實(shí)際實(shí)現(xiàn)隔離開來。

業(yè)務(wù)規(guī)則與企業(yè)平臺
  在分析例子之前,有必要了解一下“業(yè)務(wù)規(guī)則”這個術(shù)語的含義以及此領(lǐng)域已有的標(biāo)準(zhǔn)。

業(yè)務(wù)規(guī)則
  對于銀行而言,管理機(jī)構(gòu)、競爭對手、客戶和整個市場情況不斷帶來各種變更,必須將這些變更作為業(yè)務(wù)規(guī)則。業(yè)務(wù)規(guī)則專家組 (BRG) 規(guī)定了業(yè)務(wù)規(guī)則的兩個定義。第一個定義與業(yè)務(wù)觀點(diǎn)相關(guān),而第二個定義與IT相關(guān):

  • “從業(yè)務(wù)的角度看,業(yè)務(wù)規(guī)則是一種原則,包含在特定活動或范圍內(nèi)關(guān)于指導(dǎo)、操作、實(shí)踐或過程的行為規(guī)范。”
  • “從信息系統(tǒng)的角度看,業(yè)務(wù)規(guī)則是一個定義或限制業(yè)務(wù)某些方面的聲明。業(yè)務(wù)規(guī)則旨在用于斷言業(yè)務(wù)結(jié)構(gòu),或者控制或影響業(yè)務(wù)行為。”

  運(yùn)行時,規(guī)則引擎 必須對這些業(yè)務(wù)規(guī)則進(jìn)行解釋??梢詫⒁?guī)則引擎理解為一種高性能的專用解釋程序,其中包含if-then命令,可根據(jù)預(yù)先定義的規(guī)則對轉(zhuǎn)換的值和對象進(jìn)行分析,然后返回修改后的值和對象,或直接執(zhí)行操作。因此,大多數(shù)規(guī)則引擎使用“Rete” 算法,并支持演繹和歸納。
  為了彌合業(yè)務(wù)觀點(diǎn)和IT觀點(diǎn)間的差距,就產(chǎn)生了對業(yè)務(wù)規(guī)則管理系統(tǒng)(BRMS)的需求。在BRMS中,會將公司使用的策略和過程進(jìn)行結(jié)合,以管理業(yè)務(wù)規(guī)則的整個生命周期。因此,受影響的部門和非IT人員必須能夠?qū)崟r地修改IT基礎(chǔ)架構(gòu),以適應(yīng)一般條件和策略。

企業(yè)平臺
  企業(yè)平臺(EP)可以看作SOA集成開發(fā)與運(yùn)行時環(huán)境,這個環(huán)境涵蓋了全公司范圍的IT基礎(chǔ)架構(gòu)。此類平臺的功能分布在三個層次:門戶層、集成層和應(yīng)用程序服務(wù)器層。
  門戶層實(shí)現(xiàn)所有相關(guān)的信息和應(yīng)用程序“單點(diǎn)訪問”,保證真正單點(diǎn)實(shí)現(xiàn)客戶、業(yè)務(wù)合作伙伴及員工訪問。門戶和有關(guān)資源的訪問權(quán)由用戶角色決定,以方便內(nèi)容管理和實(shí)現(xiàn)個性化。
  集成層提供所有需要的服務(wù),用于連接應(yīng)用程序、業(yè)務(wù)流程和業(yè)務(wù)合作伙伴,以及在各種應(yīng)用程序間進(jìn)行數(shù)據(jù)集成和數(shù)據(jù)轉(zhuǎn)換。
  應(yīng)用程序服務(wù)器層是企業(yè)平臺的基礎(chǔ)。應(yīng)用程序服務(wù)器必須滿足與(全局)事務(wù)的實(shí)現(xiàn)、管理和協(xié)調(diào)有關(guān)的所有要求,并提供高性能、高可用性和可伸縮性。

標(biāo)準(zhǔn)
  廣泛使用異構(gòu)計(jì)算機(jī)系統(tǒng),則意味著要采用標(biāo)準(zhǔn),以達(dá)到必要的互操作水平。通常將互操作性理解為通信和協(xié)作的能力,可允許一個系統(tǒng)內(nèi)的應(yīng)用程序訪問另一個系統(tǒng)內(nèi)的數(shù)據(jù)或程序。使用標(biāo)準(zhǔn)的另一個目的是定義通用接口,以支持對互操作進(jìn)行編程。
  Java Specification Request (JSR) 94描述了軟件工程師如何通過API將規(guī)則引擎集成到應(yīng)用程序中,以及規(guī)則引擎供應(yīng)商必須如何實(shí)現(xiàn)此類API。
  不過,JSR 94沒有提供描述業(yè)務(wù)規(guī)則的定義。JSR 94的目標(biāo)是在不確定規(guī)則引擎供應(yīng)商的情況下幫助把規(guī)則引擎集成到Java 應(yīng)用程序中。JSR 94沒有為任何類型的業(yè)務(wù)規(guī)則(如,基于XML的、基于統(tǒng)一數(shù)據(jù)的或基于對象模型的)指定描述語言。

規(guī)則集的實(shí)驗(yàn)性實(shí)現(xiàn)
  現(xiàn)在把我們的注意力轉(zhuǎn)向規(guī)則集的一個實(shí)驗(yàn)。我們將首先研究實(shí)驗(yàn)本身,然后再分析其在WebLogic Portal 8.1和ILOG Jrules中的實(shí)現(xiàn)。

場景
  我們的實(shí)驗(yàn)解決兩個問題。首先是采用“push 概念”的方式進(jìn)行面向事件的客戶處理,即根據(jù)其在EP門戶內(nèi)的需求主動處理客戶。在面向事件的客戶處理的上下文中,會利用基于用戶給定的事件的業(yè)務(wù)規(guī)則,向已登錄的用戶顯示個性化的內(nèi)容。此類規(guī)則與以下所示類似:
  如果用戶具有影響信用額度的“change of house”事件,而此事件尚未發(fā)生,則將向年滿18歲或18歲以上的用戶顯示一個信用額度啟事。
  該規(guī)則轉(zhuǎn)換為ECAA符號(Event, Condition, Action, Alternative Action)如下所示:

ON Change of house
IF Customer credit-worthy AND
above 18 AND not yet addressed
DO Show credit advertisement
ELSE ---

  其次,是在集成層內(nèi)將規(guī)則引擎(各個業(yè)務(wù)規(guī)則)集成到業(yè)務(wù)流程的建模和運(yùn)行庫中。這是基于在線貸款業(yè)務(wù)流程實(shí)現(xiàn)的,此流程中具有自動信用確定功能和后臺辦公流程(在此處通過規(guī)則引擎進(jìn)行決策)。
  我們的目標(biāo)是在WebLogic Platform 8.1和ILOG JRules中實(shí)現(xiàn)所有這些問題。

利用BEA WebLogic 8.1 Service Pack 3進(jìn)行實(shí)現(xiàn)
  門戶規(guī)則服務(wù)屬于Weblogic Portal 8.1,用于在門戶應(yīng)用程序中實(shí)現(xiàn)個性化。它的實(shí)現(xiàn)需要借助不同組件:
user segments、campaigns、content selectors以及Java Server Pages (JSP)內(nèi)的個性化標(biāo)簽。
  WebLogic Workshop 8.1具有合適的用戶界面,利用此界面,可以在很高的抽象層次上更改這些組件。更重要的是,2004年發(fā)布的Service Pack 3能提供對附加組件的API訪問,可直接訪問基礎(chǔ)規(guī)則引擎。這就是規(guī)則控件和“RulesManager” Enterprise JavaBean (EJB)。
  WebLogic Portal 8.1規(guī)則包含稱為規(guī)則集的XML文檔。規(guī)則集的基本設(shè)置如下所示:

<ruleset><rule><condition>Left Hand Side expression: Event (ON) and Condition (IF)</condition><action>Right Hand Side expression: Action (DO)</action></rule></ruleset>

所有的規(guī)則都以ruleset元素內(nèi)的rule元素的形式出現(xiàn)。此處映射左邊(LHS)表達(dá)式,即Event (ON) and Condition (IF)。單獨(dú)的元素是condition,在此元素內(nèi)可以將條件與邏輯運(yùn)算符鏈接。如果LHS為true,則將執(zhí)行RHS(位于action元素內(nèi))的Action (DO)。也可以在工作內(nèi)存中對轉(zhuǎn)換過的對象進(jìn)行操作,或在其中創(chuàng)建新對象。不過,可能對象的列表(類型映射)僅限于小部分的類型。
  可以從WebLogic Platform 8.1的所有主要組件訪問規(guī)則引擎,特別是集成層和門戶層。
  由于規(guī)則引擎的對象類型數(shù)據(jù)有限,故而不可能實(shí)現(xiàn)在線貸款流程。因此必須將ILOG的規(guī)則引擎作為插件安裝。

利用ILOG JRules 4.6進(jìn)行實(shí)現(xiàn)
  ILOG JRules 4.6是一套完整的BRMS,可以將其視為目前業(yè)務(wù)規(guī)則領(lǐng)域的行業(yè)標(biāo)準(zhǔn)。圖2演示了如何將BRMS集成到Java 2 Enterprise Edition (J2EE)架構(gòu)中。


圖2. ILOG Jrules應(yīng)用示例

  圖2摘自ILOG JRules 4.6白皮書。在JRules 4.6中可以使用全部應(yīng)用程序?qū)ο竽P?,包括所有XML架構(gòu)。Java和XML對象被組合為一個業(yè)務(wù)對象模型 (BOM)。利用BOM,可以將對象及其方法轉(zhuǎn)換為自然語言的短語。因此,例如將對象Customer分配給短語“the customer”,將方法getAge分配給“the age of”。則抽象為自然語言的示例規(guī)則如下所示:

If the age of the customer is greater than 18 And ... Then ...

  

其中,粗體部分顯示的是Rule Builder的既定元素,下劃線部分顯示的是BOM中的翻譯,而斜體部分顯示的是Rule Builder內(nèi)的用戶輸入。
  也可以采用規(guī)則集的方式組織這些規(guī)則。對象(Java 和 XML)加載到內(nèi)存中后,就可以根據(jù)這些規(guī)則集進(jìn)行運(yùn)行。然后規(guī)則可以操縱或創(chuàng)建任何的對象。規(guī)則集和BOM保存在規(guī)則庫中。因此,規(guī)則管理程序和管理員可以根據(jù)其角色對規(guī)則進(jìn)行訪問、更新和部署,從而涵蓋業(yè)務(wù)規(guī)則的整個生命周期(創(chuàng)建、部署、更新、刪除)。

比較
  WebLogic Portal 8.1提供了業(yè)務(wù)規(guī)則功能,但到目前為止,此功能只是用于WebLogic Platform 8.1內(nèi)的活動管理和用戶分段。Service Pack 3 通過提供API增強(qiáng)了規(guī)則引擎的功能。不過,其使用仍然僅限于進(jìn)行個性化。ILOG JRules 4.6具有無限制的規(guī)則引擎,是一套完整的BRMS。
  實(shí)現(xiàn)的結(jié)果表明WebLogic Portal 8.1的規(guī)則功能適用于較為簡單的個性化和活動管理任務(wù)。創(chuàng)建和更新活動和用戶分段已集成到WebLogic Workshop 8.1 IDE中,能在高抽象層次執(zhí)行這些任務(wù),且只能由具有適當(dāng)權(quán)限的人員執(zhí)行此類任務(wù)。不過,只能在WebLogic Platform 8.1環(huán)境中部署規(guī)則引擎,不能在任何其他供應(yīng)商的平臺上使用。
  對于更復(fù)雜的個性化規(guī)則(通過結(jié)合AND和OR語句),可以使用規(guī)則服務(wù)定義XML格式的規(guī)則集。不過,必須在本機(jī)XML中創(chuàng)建和編輯規(guī)則。XML編輯器還不足以涵蓋相應(yīng)的抽象層次,而且,相對于Java代碼映射而言,具有多于三個條件的規(guī)則和包含兩個以上規(guī)則的規(guī)則集都更加復(fù)雜化,更加容易混淆。
  ILOG JRules 4.6本身就是一個靈活的BRMS,涵蓋了業(yè)務(wù)規(guī)則的整個生命周期。ILOG JRules 4.6內(nèi)的規(guī)則引擎是J2EE應(yīng)用程序,可以部署到任何J2EE項(xiàng)目。另外,ILOG能輕松集成到IDE環(huán)境中,可以利用Java控件調(diào)用規(guī)則引擎。對于較大規(guī)模的項(xiàng)目來說,集成和使用ILOG JRules 4.6一類的規(guī)則管理系統(tǒng)是可能的,也是值得這樣做的。最后,結(jié)果表明,對于面向事件的客戶處理和銀行業(yè)務(wù)流程工業(yè)化二者的實(shí)現(xiàn)而言,ILOG JRules 4.6這樣的BRMS是絕對必不可少的。

結(jié)束語
  如其他行業(yè)早期一樣,銀行正面臨將推動該行業(yè)進(jìn)一步發(fā)展的結(jié)構(gòu)變更。在這種情況下,銀行業(yè)關(guān)心的主要問題是業(yè)務(wù)的劃分、全球跨行業(yè)務(wù)往來,技術(shù)集成以及持續(xù)的數(shù)字化進(jìn)程。
  為了應(yīng)對即將來臨的變更,業(yè)務(wù)流程(從技術(shù)觀點(diǎn)出發(fā))必須不斷靈活且迅速地處理好新的挑戰(zhàn)。解決此問題的可能方法之一就是使用EP和EAI。為了讓相關(guān)部門獲得更強(qiáng)的業(yè)務(wù)處理能力,必須進(jìn)一步將業(yè)務(wù)邏輯從IT和實(shí)現(xiàn)端分離。利用業(yè)務(wù)規(guī)則和BRMS可以做到這一點(diǎn)。ILOG等BRMS可以輕松與BEA WebLogic Platform和WebLogic Workshop IDE實(shí)現(xiàn)集成。對于想在銀行業(yè)以贏家身份出現(xiàn)的企業(yè)而言,將這些工具結(jié)合在一起使用可以獲得明顯的競爭優(yōu)勢。

參考資料

  Daniel Jobst在德國的雷根斯堡大學(xué)ibi研究中心工作,該中心專門致力于研究銀行業(yè)IT與技術(shù)革新。其研究的主要領(lǐng)域是企業(yè)平臺、集成方案和業(yè)務(wù)規(guī)則管理系統(tǒng)。除了進(jìn)行研究工作外,Daniel還為數(shù)家銀行提供集成和規(guī)則項(xiàng)目咨詢。
  Rainer von Ammon自2002年起在上奧地利州應(yīng)用科學(xué)技術(shù)大學(xué)擔(dān)任軟件工程教授,專門研究電子商務(wù)基礎(chǔ)架構(gòu)和分布式系統(tǒng)。他還擔(dān)任德國雷根斯堡大學(xué)銀行情報(bào)學(xué)院研究中心的主任。
  Benjamin Gebauer在德國的雷根斯堡大學(xué)ibi研究中心工作,該中心專門致力于研究銀行業(yè)IT與技術(shù)革新。其研究的主要領(lǐng)域是企業(yè)平臺、集成方案和業(yè)務(wù)規(guī)則管理系統(tǒng)。除了進(jìn)行研究工作外,Benjamin還為數(shù)家銀行提供集成和規(guī)則項(xiàng)目咨詢。

原文出處
http://dev2dev.bea.com/pub/a/2005/04/business_rules_engines.html

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
常見規(guī)則引擎技術(shù)
【綜述】ILOG?JRules規(guī)則引擎
使用WEBLOGIC PORTAL規(guī)則引擎在WEBLOGIC INTEGRATION流程中實(shí)現(xiàn)動態(tài)業(yè)務(wù)邏輯,第一部分
為什么采用BPM
WebLogic Integration BPM 快速體驗(yàn)(簡介)
29款 業(yè)務(wù)規(guī)則引擎開源軟件
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服