2.規則引擎uRule pro 簡介

2.1 銳道規則引擎uRule概述

2.1.1 整體功能說明

  • 是一款由上海銳道信息技術有限公司完全自主研發的、完全自主知識產權的一款純Java規則引擎軟件(又稱決策引擎)
  • 將基於業務規則決策的業務,從手工編碼中分離,使用預定義的語義進行業務規則可視化建模,然後接受數據輸入,根據定義好的業務規則進行運算,得到輸出並做出業務決策
  • 基於瀏覽器的可視化規則設計器
  • 8種建模工具 ,15大類和40小類科學計算公式
  • 基於瀏覽器的仿真測試機制
  • 完善的版本控制機制
  • 規則庫在線導入、導出,熱部署的支持
  • 基於多線程的並行批處理的支持
  • 4種部署模式,兼容各種系統架構

2.1.2 十年研發歷程

2.1.3 技術架構

技術架構圖一技術架構圖二

2.1.4 系統架構

a2c2e1a79fd0cad32de5e1282eb6ed22

  • 業務應用系統負責與用戶交互,數據采集和展現展現
  • 決策引擎系統為業務系統提供規則服務支撐,與業務系統間呈松耦合架構設計
  • 規則引擎系統多種角色協作:

• 系統管理員負責管理權限、規則服務的管理等

• 程序員負責部分需要擴展的方法,例如自定義動作• 業務分析員負責最終規則模型的創建和設計

2.1.5 集成模式

uRule提供4種集成模式,其中最常見的是“客戶端服務器模式”,將uRule作為規則引擎中臺去定位,所有接入的消費方作為客戶端,消費方通過sdk方式、restFul接口調用;較為常見的是在中小型項目中內嵌到java web業務系統中使用,此種最為簡單。

2.2 uRule建模工具介紹

2.2.1 支持豐富的規則類型建模

建模方式

2.2.2 向導式決策集

在URule Pro中決策集有兩種類型:一種是普通規則;一種是循環規則。所謂的普通規則是指一種由如果、那麼、否則三個部分構成的規則;而循環規則顧名思義就是可循環的規則,它允許指定一個集合類型的對象,對這個集合中每個對象進行循環迭代,在循環體中則是若幹個由如果、那麼、否則構成的普通規則。

規則的定義采用向導方式,一步一步通過鼠標點擊就可以完成其中的普通規則與循環規則的配置,配合高度可視化的向導式規則設計器,可以最大限度將業務規則可視化,降低規則配置的復雜度。

普通規則

循環規則

2.2.3 決策表

決策表是一種以表格形式表現規則的工具,它非常適用於描述處理判斷條件較多,各條件又相互組合、有多種決策方案的情況,決策表提供精確而簡潔描述復雜邏輯的方式,可將多個條件及與這些條件滿足後要執行動作以圖形化形式進行對應,對於決策表的定義,我們提供的是全可視化、圖形化的操作方式,通過簡單的鼠標點擊就可以快速定義出與業務相匹配的決策表。

在URule Pro當中,我們提供瞭兩種類型的決策表,一種是普通決策表,另一種是交叉決策表。

普通決策表將一個表格拆分成左右兩部分,中間以一條灰黑色的豎線分隔,左邊部分為條件列部分;右邊部分為動作列部分。條件列可以有多個,多個條件列可以進行組合;同樣動作列也可以有多個。

交叉決策表又叫決策矩陣,是URule Pro中提供的一種特殊類型的決策表。與普通決策表相比,交叉決策表的條件由縱向和橫向兩個維度決定,而普通決策表的條件隻是由縱向維度決定;但在普通決策表的動作部分可以是三種類型,分別是賦值、輸出和執行方式,而在交叉決策表中動作部分就是縱向和橫向兩個維度交叉後的單元格的值,一般來說,這種交叉後單元格的值都是賦給某個變量或參數,所以交叉決策表的動作基本就一個,那就是賦值。

普通決策表

交叉決策表(決策矩陣)

2.2.4 評分卡

評分卡是對個人或機構的相關信息進行分析之後的一種數值表達,表示此人或此機構由於信用活動的拒付行為所造成損失風險的可能性,評分通常用於對個人或機構的風險管理與評估。

URule Pro中的評分卡就是用來計算評分的,它使用二維表形式展示目標對象的各個屬性,針對不同屬性設置不同區段的條件,每個區段條件對應不同的分值,運行時引擎會根據定義的區段條件自動計算目標對象的評分。

在URule Pro當中,提供瞭兩種類型的評分卡,分別是普通評分卡和復雜評分卡。

普通評分卡可以對某個特定對象的若幹屬性進行評分,它隻能針對一個對象的屬性進行評分;復雜評分卡,可以對多個對象、多個屬性進行評分,可以提供更為靈活的評分定義方式。實際使用時,可以根據業務需要,選擇某種類型的評分卡。

標準評分卡

復雜評分卡

2.2.5 決策樹

決策樹又稱為規則樹,是URule Pro規則引擎中提供的另外一種構建規則的方式,它以一棵躺倒的樹形結構來表現規則(之所以將其躺倒是為瞭節省空間,否則一棵稍微大點的樹將會占用很大的頁面空間),決策樹表現業務規則更為形象,實際上,無論是決策樹、決策表還是評分卡,都可以通過決策集來實現,隻是,對於某些業務規則來說,通過決策樹或決策表或評分卡實現起來更為形象、快捷。

2.2.6 決策流

決策流又稱規則流,它整個的結構類似於工作流,用來對已有的決策集、決策表、交叉決策表、決策樹、評分卡、復雜評分卡或其它決策流的執行順序進行編排,以清晰直觀的實現一個大的復雜的業務規則。

URule Pro規則引擎中的決策流可以實現對已有的決策集、決策表、交叉決策表、決策樹、評分卡、復雜評分卡或其它決策流進行編排執行;編排過程中既可以常見串行執行,也可以並行執行,或者是根據條件選擇分支執行。URule Pro中提供瞭一個基於網頁的流程設計器,通過簡單拖曳就可以快速實現對已有的決策集、決策表、交叉決策表、決策樹、評分卡、復雜評分卡或其它決策流執行順序的編排。

1c9d33d80695c9e6aa9b4409307ea8f4

流程圖節點說明

•開始:是一個規則流開始的地方

•規則:用來綁定URule Pro當中提供的決策集、決策表、交叉決策表、決策樹、評分卡、復雜評分卡或其它決策流文件的節點

•知識包:綁定知識包,實現復雜規則調用

•動作:實現瞭FlowAction接口的springBean

•向導式動作:綁定一個或多個向導式動作

•決策:運行時根據為其下流出連接配置的條件來決定後續執行路徑

•分支:實現規則流多條並行的節點

•聚合:用來聚合由分支節點拆分出來的多個子的規則流的

•異常:捕獲規則流中其它節點在執行時可能產生的異常

2.2.7 科學計算公式

2dec484f6abb9323768d03398c45e314公式編輯器

2.3 uRule pro4新特性

2.3.1 熱部署

規則文件的熱發佈

(1)場景一,在線變更

  • 打開生產端瀏覽器
  • 在線修改目標規則文件
  • 發佈知識包
  • 手工推送到客戶端,或者是客戶端自動同步

(2)場景二,從測試到生產

  • 打開測試端瀏覽器,導出項目或是知識包
  • 打開生產端瀏覽器,導入項目或是知識包,更新緩存

Jar文件熱部署

  • 打開Jar文件熱部署的管理頁面,點擊工具欄上“添加Jar文件”按鈕添加一個新的jar包即可完成熱部署
  • 在URule Pro中無論是用戶自定義的動作庫還是內置動作庫相關的Spring Bean及Java類,都可以在服務器運行情況下,實時動態部署
  • 對於采用客戶端服務器模式運行的URule Pro應用,隻需要在服務端部署好需要的Spring Bean及相關Java類文件,客戶端會自動獲取文件信息,並執行動態加載,實時生效

2.3.2 強大的規則設計器

uRule規則設計器

例如,向導式決策集

其它規則引擎產品廠商規則設計器

某開源廠商規則引擎設計器某開源廠商規則引擎設計器

2.3.3 豐富的後臺管理控制端

•多項目管理,以項目為維度進行規則文件分類管理

•權限管理:團隊/成員/項目/功能菜單間交叉授權

•集群管理,多個規則服務端間數據同步

•客戶端(消費方)地址維護,實現規則文件從服務端被動推送到客戶端

•版本管理,知識包和規則文件的多版本管理

•知識包創建、測試、發佈、調用監控等

•工作臺駕駛倉

•規則調用的監控

團隊控制臺首頁

2.3.4 仿真測試

3種方式實現仿真測試

2.3.5 批處理支持

2.3.6 靈活的可擴展性

靈活的可展性,支持程序員作功能擴展規則引擎sdk提供的api列表某用戶自行定制開發的管理端功能

发表回复

相关推荐

Excel常用函数的介绍

你没有看错哦,下面的内容是一份很好的Excel常用函数总结,也是工作中经常使用的函数操作,学习Excel常用函数,不要求你必须 ...

· 3分钟前

進口咖啡品牌排行榜前十名

作為上班族,咖啡簡直就是必備飲品。 早上上班,坐在辦公桌前做的第一件事就是給自己泡杯咖啡。 咖啡特有的香氣彌漫在空氣中...

· 29分钟前

大一工程化学复习

标准状态:系统中每种气体的分压为101.325kpa

· 32分钟前

给故人烧头七的意义

最近可能由于回答了一些关于生死的问题,于是很多人在后台都咨询了我相关烧头七以及能为故人做什么的问题。

· 35分钟前

藏族文化——紮西德勒

一、引言紮西德勒,吉祥如意之意,是藏族人民表示歡迎、問候、祝福等意的日常用語;紮西德勒,是藏語裡最吉祥、最能表達祝福...

· 41分钟前