CN112799647B - 一种面向业务人员的规则引擎适配器装置的识别方法 - Google Patents

一种面向业务人员的规则引擎适配器装置的识别方法 Download PDF

Info

Publication number
CN112799647B
CN112799647B CN202110388683.2A CN202110388683A CN112799647B CN 112799647 B CN112799647 B CN 112799647B CN 202110388683 A CN202110388683 A CN 202110388683A CN 112799647 B CN112799647 B CN 112799647B
Authority
CN
China
Prior art keywords
rule
data
defining
dsl
sdk
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110388683.2A
Other languages
English (en)
Other versions
CN112799647A (zh
Inventor
申建平
谢延泽
郭东恒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan XW Bank Co Ltd
Original Assignee
Sichuan XW Bank Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sichuan XW Bank Co Ltd filed Critical Sichuan XW Bank Co Ltd
Priority to CN202110388683.2A priority Critical patent/CN112799647B/zh
Publication of CN112799647A publication Critical patent/CN112799647A/zh
Application granted granted Critical
Publication of CN112799647B publication Critical patent/CN112799647B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/22Procedural
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)

Abstract

本发明属于通信技术领域,尤其涉及一种面向业务人员的规则引擎适配器装置的识别方法,包括以下步骤:步骤1.定义基于DSL的接口报文格式;步骤2.定义基于Java语言的客户端SDK;步骤3.定义基于HTML的规则设计界面;步骤4.定义JSON转DSL逻辑;步骤5.定义规则元数据存储和显示逻辑。本发明既满足开发人员在线仿真测试、版本控制、规则模型实时变更且不用修改代码的需求,同时经过适配器的转换,又满足了业务人员操作简单,与业务***无缝集成的特点。

Description

一种面向业务人员的规则引擎适配器装置的识别方法
技术领域
本发明属于通信技术领域,尤其涉及一种面向业务人员的规则引擎适配器装置的识别方法。
背景技术
规则引擎有推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接收数据输入,解释业务规则,并根据业务规则做出业务决策。
规则引擎主要包括RETE算法、DSL、表达式等主要几类。其中基于RETE算法的规则引擎是目前使用最广泛、也是执行效率较好的一种规则算法。它是一种高效的模式匹配算法用来实现产生式规则***,RETE可以被分为两部分:规则编译和运行时执行。规则编译是指根据规则集成生成推理网络的过程,运行时执行指将数据送入推理网络进行筛选的过程。基于RETE算法的规则设计器,在功能强大、变更灵活、界面友好方面牺牲了部分界面友好性,在面向懂技术的开发人员时,还是一个简单易用的规则设计器,但是面向业务人员时还是比较抽象,导致业务人员在使用规则引擎时不易上手,较难与业务***无缝对接。
发明内容
本发明提供了一种面向业务人员的规则引擎适配器装置的识别方法,以解决业务人员在使用规则引擎时不易上手,较难与业务***无缝对接的问题。
一种面向业务人员的规则引擎适配器装置的识别方法,包括以下步骤:
步骤1:定义DSL的接口报文格式,定义包括规则变量库、运算符、变量类型、数据类型、报文结构元素的属性;
步骤2:定义基于java语言的客户端SDK,定义包括SDK与规则引擎服务端交互的RPC协议、嵌入式WEB容器、JSON与DSL的转换逻辑;
步骤3:定义基于HTML的规则设计界面,定义包括界面风格、数据表单、报文格式、报文传输方式;
步骤4:将包含有轻量级WEB容器的SDK载入业务***,业务人员通过HTTP链接访问和使用SDK中的规则设计器;
步骤5:在客户端SDK包中定义JSON数据与DSL报文的映射逻辑,用于将输入规则数据转换到DSL格式的报文,便于规则引擎服务端识别和构建规则模型;
步骤6:在客户端SDK包中定义JSON数据与JAVA类对象的映射逻辑,用于输入数据按字段存储,便于前端HTML界面展示存储的规则数据。
与现有技术相比本发明的有益效果是:1.本发明可以作为通用规则引擎设计器的适配装置,既满足开发人员在线仿真测试、版本控制、规则模型实时变更且不用修改代码的需求,同时经过适配器的转换,又满足了业务人员操作简单,与业务***无缝集成的特点。
2.本发明能够将规则引擎界面无缝嵌入到业务***管理后台,提供表单式的规则设计界面,方便业务人员在线实时创建、变更规则,同时对规则的执行状态提供监控接口。
附图说明
图1为本发明的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见附图1,本发明所述的一种面向业务人员的规则引擎适配器装置的识别方法,包括以下步骤:
步骤1:定义DSL的接口报文格式,定义包括规则变量库、运算符、变量类型、数据类型、报文结构元素的属性;例如rule-set、rule、import-variable-library等规则元数据,也包括count、avg、sum、max、and、or等;
通过定义面向WEB表单的规则设计界面接口,用于将复杂的图形化的数据接口转换成更简洁的DSL接口;
步骤2:定义基于java语言的客户端SDK,定义包括SDK与规则引擎服务端交互的RPC协议、嵌入式WEB容器、JSON与DSL的转换逻辑;
业务人员一般通过业务管理***进行业务运营和管理,业务规则设计也被定义为业务运营的一部分;多数银行的规则引擎作为一个可被共享的基础平台可被多个业务***共同使用,规则引擎和业务***也可以由不同的部门负责,规则设计器与业务***的无缝衔接将直接影响到业务人员使用规则引擎的流畅度;而步骤2中提到定义基于java语言的客户端SDK,而由于SDK中包含了轻量级WEB容器,只要SDK被载入业务***,规则设计器就可以直接使用,可以无缝衔接到业务***,不需要业务***考虑规则设计器整合和部署的问题。
步骤3:定义基于HTML的规则设计界面,定义包括界面风格、数据表单、报文格式、报文传输方式;
步骤4:将包含有轻量级WEB容器的SDK载入业务***,业务人员通过HTTP链接访问和使用SDK中的规则设计器。
基于HTML表单的规则设计器界面部署在客户端SDK内的嵌入式WEB容器中,只要业务***载入SDK既可以通过HTTP链接访问和使用规则设计器。这样设计主要有两个目的,一是为了规则设计器能够无缝嵌入到业务***,方便业务人员使用规则设计器;二是避免了业务***额外部署或代码级嵌入规则设计器,达到即开即用的目的。并且通过定义基于HTML的规则设计界面,使得业务人员操作更加简单。
步骤5:在客户端SDK包中定义JSON数据与DSL报文的映射逻辑,用于将输入规则数据转换到DSL格式的报文,便于规则引擎服务端识别和构建规则模型;
业务人员从HTML规则设计器输入的规则数据在前端页面是以通用的JSON格式封装,但是规则引擎服务器提供的是DSL报文接口,需要将JSON格式转换成DSL后再提交到规则引擎服务器。客户端SDK承担了JSON到DSL的报文转换工作。这样设计主要是避免将规则引擎的一些技术细节暴露给业务***,业务***只需要使用规则设计器,无需关注内部实现细节。
步骤6:在客户端SDK包中定义JSON数据与JAVA类对象的映射逻辑,用于输入数据按字段存储,便于前端HTML界面展示存储的规则数据。
基于HTML的规则设计器除了提供创建规则的能力,还需要对规则进行查阅和变更,创建规则时规则引擎服务端将规则因子构建成规则模型,再将整个规则模型储存到关系数据库。如果业务人员要查阅或变更规则模型,需要将复杂的规则模型解析成一系列的规则因子。因此,为了规则设计器能够方便的查阅和变更规则模型,在规则创建时有两条并行路径,如步骤5所述:一条是将规则因子构建成规则模型后,将整个规则模型存储在关系数据库中,用于后续的规则服务调用;另一条路径是如步骤6所述,将业务人员输入的规则因子直接存储到关系数据库,业务人员查阅规则直接读取原始规则因子,变更规则时需要同时变更上述两条路径的数据。
所述步骤1中,根据基于RETE算法的规则引擎建模要求,将规则变量、数据、计算逻辑表示为DSL格式的报文,报文类容包括但不限于rule-set、rule、import-variable-library规则元数据和count、avg、sum、max、and、or运算符。
所述步骤2中,将面向业务人员使用的规则设计界面封装在客户端SDK中,以嵌入式web容器来运行规则设计界面;从规则设计界面输入的数据通过JSON与DSL的转换逻辑,将前端数据转换成DSL格式的报文后,再以RPC协议传输到规则引擎服务端。
所述步骤3中,基于HTML的规则设计界面根据实际业务需求定制化,使得客户启动后就可以直接访问该界面,以便于以链接形式嵌入到业务管理***中,不会对原有***造成代码侵入,即插即用,非常便利。
所述步骤5中,前端规则设计界面的数据以JSON格式传到客户端SDK中,再经过SDK中的JSON转DSL逻辑处理后,规则数据最终以DSL格式通过RPC协议传输到规则引擎服务端构建规则模型。
所述步骤6中,前端规则设计界面除了录入数据外,还需要展示数据库中已有的规则数据;因此将前端JSON格式的原始数据在客户端SDK中转换成Java对象,再按字段存储在关系数据库中,用于前端规则设计界面展示用;使得前端展现的规则数据更加简单。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

Claims (6)

1.一种面向业务人员的规则引擎适配器装置的识别方法,其特征在于:包括以下步骤:
步骤1:定义DSL的接口报文格式,定义包括规则变量库、运算符、变量类型、数据类型、报文结构元素的属性;
步骤2:定义基于java语言的客户端SDK,定义包括SDK与规则引擎服务端交互的RPC协议、嵌入式WEB容器、JSON与DSL的转换逻辑;将面向业务人员使用的规则设计界面封装在客户端SDK中,以嵌入式web容器来运行规则设计界面;从规则设计界面输入的数据通过JSON与DSL的转换逻辑,将前端数据转换成DSL格式的报文后,再以RPC协议传输到规则引擎服务端;
步骤3:定义基于HTML的规则设计界面,定义包括界面风格、数据表单、报文格式、报文传输方式;
步骤4:将包含有轻量级WEB容器的SDK载入业务***,业务人员通过HTTP链接访问和使用SDK中的规则设计器;
步骤5:在客户端SDK包中定义JSON数据与DSL报文的映射逻辑,用于将输入规则数据转换到DSL格式的报文,便于规则引擎服务端识别和构建规则模型。
2.根据权利要求1所述的一种面向业务人员的规则引擎适配器装置的识别方法,其特征在于:还包括步骤6:在客户端SDK包中定义JSON数据与JAVA类对象的映射逻辑,用于输入数据按字段存储,便于前端HTML界面展示存储的规则数据。
3.根据权利要求1所述的一种面向业务人员的规则引擎适配器装置的识别方法,其特征在于:所述步骤1具体方法如下:根据基于RETE算法的规则引擎建模要求,将规则变量、数据、计算逻辑表示为DSL格式的报文,报文内容包括rule-set、rule、import-variable-library规则元数据和count、avg、sum、max、and、or运算符。
4.根据权利要求1所述的一种面向业务人员的规则引擎适配器装置的识别方法,其特征在于:所述步骤3中,所述规则设计界面根据实际业务需求定制化。
5.根据权利要求1所述的一种面向业务人员的规则引擎适配器装置的识别方法,其特征在于:所述步骤5的具体方法如下:前端规则设计界面的数据以JSON格式传到客户端SDK中,再经过SDK中的JSON转DSL逻辑处理后,规则数据最终以DSL格式通过RPC协议传输到规则引擎服务端构建规则模型。
6.根据权利要求2所述的一种面向业务人员的规则引擎适配器装置的识别方法,其特征在于:所述步骤6的具体方法如下:将前端JSON格式的原始数据在客户端SDK中转换成Java对象,再按字段存储在关系数据库中。
CN202110388683.2A 2021-04-12 2021-04-12 一种面向业务人员的规则引擎适配器装置的识别方法 Active CN112799647B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110388683.2A CN112799647B (zh) 2021-04-12 2021-04-12 一种面向业务人员的规则引擎适配器装置的识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110388683.2A CN112799647B (zh) 2021-04-12 2021-04-12 一种面向业务人员的规则引擎适配器装置的识别方法

Publications (2)

Publication Number Publication Date
CN112799647A CN112799647A (zh) 2021-05-14
CN112799647B true CN112799647B (zh) 2021-11-23

Family

ID=75816925

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110388683.2A Active CN112799647B (zh) 2021-04-12 2021-04-12 一种面向业务人员的规则引擎适配器装置的识别方法

Country Status (1)

Country Link
CN (1) CN112799647B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101470882A (zh) * 2007-12-24 2009-07-01 阿里巴巴集团控股有限公司 一种动态业务规则应用方法、***和装置
CN104020997A (zh) * 2014-06-13 2014-09-03 中国民航信息网络股份有限公司 可扩展图形化规则应用***
CN106101090A (zh) * 2016-06-07 2016-11-09 中国建设银行股份有限公司 用于规则引擎的操作方法以及规则引擎***
CN106990967A (zh) * 2017-04-05 2017-07-28 百融(北京)金融信息服务股份有限公司 规则引擎的数据处理方法
CN109144374A (zh) * 2018-09-27 2019-01-04 范若愚 基于可视化规则引擎的业务处理方法、***及相关设备
CN109783151A (zh) * 2017-11-10 2019-05-21 北京京东尚科信息技术有限公司 规则变更的方法和装置
CN110554894A (zh) * 2018-05-31 2019-12-10 阿里巴巴集团控股有限公司 界面描述文件、应用程序的处理方法、装置及电子设备
CN112559808A (zh) * 2020-12-17 2021-03-26 北京百度网讯科技有限公司 数据处理方法、装置以及电子设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9195936B1 (en) * 2011-12-30 2015-11-24 Pegasystems Inc. System and method for updating or modifying an application without manual coding
US20150293764A1 (en) * 2014-04-10 2015-10-15 Omprakash VISVANATHAN Method and system to compose and execute business rules
US10033611B1 (en) * 2015-02-06 2018-07-24 HCA Holdings, Inc. Transaction lifecycle management
CN111698255B (zh) * 2020-06-15 2022-07-22 南京领行科技股份有限公司 一种业务数据传输方法、设备及***

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101470882A (zh) * 2007-12-24 2009-07-01 阿里巴巴集团控股有限公司 一种动态业务规则应用方法、***和装置
CN104020997A (zh) * 2014-06-13 2014-09-03 中国民航信息网络股份有限公司 可扩展图形化规则应用***
CN106101090A (zh) * 2016-06-07 2016-11-09 中国建设银行股份有限公司 用于规则引擎的操作方法以及规则引擎***
CN106990967A (zh) * 2017-04-05 2017-07-28 百融(北京)金融信息服务股份有限公司 规则引擎的数据处理方法
CN109783151A (zh) * 2017-11-10 2019-05-21 北京京东尚科信息技术有限公司 规则变更的方法和装置
CN110554894A (zh) * 2018-05-31 2019-12-10 阿里巴巴集团控股有限公司 界面描述文件、应用程序的处理方法、装置及电子设备
CN109144374A (zh) * 2018-09-27 2019-01-04 范若愚 基于可视化规则引擎的业务处理方法、***及相关设备
CN112559808A (zh) * 2020-12-17 2021-03-26 北京百度网讯科技有限公司 数据处理方法、装置以及电子设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Schematron-based Semantic Constraints Specification Framework and Validation Rules Engine for JSON";Amer Ali;《2019 SoutheastCon》;20200305;第1-9页 *
"基于Drools的信息管理与决策***的研究与实现";朱会兵;《中国优秀硕士学位论文全文数据库 信息科技辑》;20121015(第10期);I138-2118 *
"面向银行信贷的规则引擎***设计与实现";王世春;《中国优秀硕士学位论文全文数据库 经济与管理科学辑》;20170315(第03期);J162-251 *

Also Published As

Publication number Publication date
CN112799647A (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
US20230351535A1 (en) System and method for blockchain-based network transitioned by a legal contract
Coria et al. Intelligent business processes composition based on multi-agent systems
US9324025B2 (en) Automating natural-language interactions between an expert system and a user
US20110153610A1 (en) Temporal scope translation of meta-models using semantic web technologies
JP5689361B2 (ja) グラフデータの一部を準同型写像の像であるデータ構造に変換する方法、プログラム、および、システム
WO2008131028A2 (en) Enterprise integrated business proces schema
CN109271403A (zh) 一种数据查询的操作方法、装置、介质及电子设备
CN114816375A (zh) 服务编排方法、装置、设备及存储介质
CN115509522A (zh) 面向低代码场景的接口编排方法、***、电子设备
Moin et al. Supporting AI engineering on the IoT edge through model-driven TinyML
Ataei et al. NeoMycelia: A software reference architecturefor big data systems
CN112799647B (zh) 一种面向业务人员的规则引擎适配器装置的识别方法
CN115392443B (zh) 类脑计算机操作***的脉冲神经网络应用表示方法及装置
Liu et al. Engineering information service infrastructure for ubiquitous computing
Paulheim et al. Mapping pragmatic class models to reference ontologies
CN110175917A (zh) 参数图形化处理的装置及方法
Dwivedi et al. Ontology-based modelling of iot design patterns
Ribarić et al. Model-Driven engineering of rules for web services
Yau et al. Specification, decomposition and agent synthesis for situation-aware service-based systems
Subburaj et al. Intelligent agent software development using AUML and the Descartes specification language
Uifălean et al. From BPMN models to labelled property graphs
Wang et al. Evaluating formalisms for modular ontologies in distributed information systems
CN112363716A (zh) 动态组装评估模型的方法、***和装置
Konstantinou et al. Priamos: a middleware architecture for real-time semantic annotation of context features
US20230021412A1 (en) Techniques for implementing container-based software services

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant