一种基于配置解析应用规则的计费业务规则引擎组合系统及其方法

文档序号:7550120阅读:758来源:国知局
专利名称:一种基于配置解析应用规则的计费业务规则引擎组合系统及其方法
技术领域
本发明涉及计算机科学软件信息技术领域,尤其涉及一种基于配置解析应用规则的计费业务规则引擎组合系统以及实现该组合系统的方法。
背景技术
伴随计算机网络信息化技术的飞跃发展,为了满足产业发展、提升工作效率的需要,计算机科学技术已经在社会各个领域被广泛应用于构建功能各异、种类繁杂的企业信息化系统,目前在计算机网络上已经运行着大量为用户提供业务处理功能的业务系统,用户可以在这些系统中进行多种业务操作,由于在信息系统的生命周期之中,企业的业务需求不可避免地会发生改变,这就需要及时对软件产品进行升级维护或二次开发。为了满足这个需要,业务规则组件,即业务规则引擎应运而生,规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。业务规则引擎可以通过降低实现复杂业务逻辑的组件的复杂性,降低应用程序的维护和扩展性成本,从而具有分离商业决策者的商业决策逻辑和应用开发者的技术决策;有效的提高实现复杂逻辑的代码的可维护性;在开发期间或部署后修复代码缺陷;应付特殊状况,即客户一开始没有提到要将业务逻辑考虑在内;符合组织对敏捷或迭代开发过程的使用等多种技术优势。基于规则组件上述众多优点,诞生了多种多样的规则引擎,如:IBM公司的IL0G、JBOSS 的 DrooIs> Mandarax>JLisa、OpenRules、JEOPS>InfoSapient、JRuleEngine、Roolie等,其中目前在本领域主要应用的规则引擎是jboss-rule,也就是基于脚本解释的引擎,这种业务规则引擎具有一个技术上难以克服的缺陷,即如果业务系统中出现新的业务,开发人员需要根据新的业务需要编写新的业务规则并将其加入到业务规则引擎中,由于jboss-rule仅是一种脚本编写规范,无法直接用于业务规则引擎规则的扩展,导致这种规则引擎灵活性差,扩展性弱,开发周期较长。针对上述问题,本领域出现过一些改进,例如中国专利申请CN201110091936所公开的基于规则引擎的服务动态组合方法,该技术方案可以在新流程开发维护和旧系统业务规则修改两方面提高系统的柔性和敏捷性。虽然上述专利确实给开发维护带来了便利和敏捷,但是对于其技术方案中所依据的“根据业务规则和规则执行需要的上下文数据,推理出该服务的服务处理策略”受限于“推理”,因此“推理”的精度的掌控取决于推理算法,或者取决于某几种特定的策略。基于目前计算机领域的现状可知,完全依靠算法推理出的结论在真实环境中还需进行长时间的检验和论证。目前,在本领域中出现的诸多新的规则引擎大多架构较为庞大且夹带XML,引入XML带来了便捷与灵活,但是操作XML相对容易出错,加大了制定、部署规则的难度,如JLisa.JBoss Drools等规则引擎;有些规则引擎,使用了“演绎法”,同时使用了常见的多种设计模式,如 MVC, Visitor, Strategy, Facade, FactoryMethod, Observer, Iterator 等设计模式(InfoSapient)、“反向链接法”(Mandarax)等,这就加大了对开发或维护人员的要求及技术负担,增加了技术上的复杂性与开发成本;目前商业使用中较为广泛的InfoSapient开源规则引擎,提供了众多的接口,使得开发和使用对技术人员要求相对较高,不易推广应用。综上所述,虽然已有的通用的规则引擎组件,可以有效地减少开发、维护代码量,保证规则运算的效率。但是这些规则引擎组件普遍存在着学习曲线陡峭,性能优化困难的弊端,这就影响了规则弓I擎组件在工业领域的应用。除此之外,上述规则引擎大都具有使用上的普遍性,缺乏一个专门用于计费业务的规则引擎。中国电信、中国移动、中国联通等大型公司,都是采用自主研发相应的计费系统,不具备在计费业务领域通用的性质。而目前市场上主流的网吧计费管理系统,也是植根于网吧计费业务的商业应用,同时只支持Window系统,不具备灵活、通用的属性要求。

发明内容
基于现有技术的需要,本发明公开了一种基于配置解析应用规则的计费业务规则引擎组合系统及实现该组合系统的方法,是一种小巧、轻量的计费规则引擎,无需繁杂的API接口调用,不依赖于推理算法得出服务策略,提供简洁的规则调用、重写接口,既满足日常使用,同时提供了较为轻量灵活的扩展。由于开发、使用、维护的简单便捷,因此对于使用、开发人员要求相对较低。提供基于自定义规则引擎的服务动态组合方法,实现业务流程和规则解耦分离。结合社会生产生活中实际需要,可广泛应用于计费、缴费领域。为实现上述目的,本发明是通过下述技术方案实现的:一种基于配置解析应用规则的计费业务规则引擎组合系统,包括规则管理单元、计费项目节点管理单元、规则转换器、规则引擎数据库、规则引擎;其中所述计费项目节点管理单元用于根据业务流程自定义新建收费项目及定义对应的收费金额;所述规则管理单元用于根据不同的业务流程定义各个收费节点,同时生成各个收费节点的节点名称,以此名称进行自定义节点组合;所述规则转换器,用于初步解析上述人机交互产生的临时规则,生成标准的规则引擎可以解析的规则;所述规则引擎数据库,用于存储自定义规则时产生的上下文数据;所述规则引擎,用于解析规则,返回计算结果。上述的规则管理单元、计费项目节点管理单元二者的应用实现了规则管理人员可以动态地实时管理维护规则,也就是说可以根据实际需要及时的对规则进行增减和修改。其中,所述规则转换器将业务规则以JSON的方式写入规则引擎数据库;所述规则引擎解析的规则数据格式是标准的JSON格式。与其它数据格式相比较,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,同时使用了类似于C语言家族的习惯(包括C,C++,C#, Java, JavaScript, Perl, Python等),是一种理想的数据交换语言,易于人阅读和编写,同时也易于机器解析和生成,在本发明中规则引擎采用此种数据格式显著降低了开发难度和维护成本。其中,所述规则管理单元定义的节点为多个,其具体的数目并不受到限制,在具体应用开发时可以根据需要扩充节点数目。
进一步的,为了便于对规则引擎的解析算法进行修改、优化等改进,所述规则引擎具有程序接口,用于规则引擎解析算法的重写。当所述规则引擎是解析上述的JSON数据格式时,上述的程序接口是Java程序接□。其中,所述上下文数据包括了所有涉及到规则解析中会出现的信息,包括但不限于定义的节点名称、收费金额、规则名称、规则组合及经规则转换器生成的整个规则页面信息等。相应的,本发明还公开了用于上述基于配置解析应用规则的计费业务规则引擎的组合方法,包括下述步骤:I)根据业务流程自定义新建收费项目及定义对应的收费金额;2)根据不同的业务流程定义各个收费节点,同时动态生成各个收费节点的节点名称,并以此名称进行自定义组合;3)根据自定义节点名组合和规则转换服务进行映射转换;4)将转换后的规则应用到指定的业务流程,进行管理维护。如上所述,由于使用了规则管理单元、计费项目节点管理单元,可动态生成收费节点名称、收费内容,并且业务规则可动态地添加到业务规则引擎数据库中,从而实现规则的动态生成和维护,并记录日志以便管理查阅。其中,所述业务规则以JSON的方式写入规则引擎,也就是说规则引擎解析的数据格式是标准的JSON格式。通过上述方式,人机交互的规则和规则引擎解析的规则是通过规则转换而联系在一起,规则弓I擎对应的规则相对于用户是透明的。其中,所述收费项目和收费金额是二级联动的关系,即选择收费项目自动加载金额,不可修改,保证了系统的安全性。其中,所述规则转换信息包括但不限于需要替换的节点名称与对应的实际节点键值对之间的转换、各节点之间的四则运算和/或附属折扣信息。通过上述技术改进,本发明的系统及方法提供简单了友好的规则引擎操作方式,方便用户使用管理,该系统与方法小巧、灵活,具有良好的扩展性;采用人机交互规则格式和规则引擎解析格式相互转化的方式,有效减轻了规则管理的难度和操作步骤。


图1为本发明的系统结构图;图2a、2b为本发明的方法过程示意图、动态规则组合流程图。
具体实施例方式参考图1和图2a,本发明的系统,包括规则管理单元、计费项目节点管理单元、规则转换器、规则引擎数据库、规则引擎;其中计费项目节点管理单元用于根据业务流程自定义新建收费项目及定义对应的收费金额;规则管理单元用于根据不同的业务流程定义各个收费节点,同时生成各个收费节点的节点名称,以此名称进行自定义节点组合;规则转换器,用于初步解析上述人机交互产生的临时规则,生成标准的规则引擎可以解析的规则;规则引擎数据库,用于存储自定义规则时产生的上下文数据;规则引擎,用于解析规则,返回
计算结果。参考图2a、2b,显示了在规则的创建过程中的具体技术步骤,其中图2a与图1对应,图2b则显示了在规则创建中检验规则合法性的环节,对于不合法的收费项目,例如计费项目和计费金额的联动被修改,则被检验为非法返回,回到收费项目的配置创建环节,重新调整。
权利要求
1.一种基于配置解析应用规则的计费业务规则引擎组合系统,其特征在于包括规则管理单元、计费项目节点管理单元、规则转换器、规则引擎数据库、规则引擎;其中所述计费项目节点管理单元用于根据业务流程自定义新建收费项目及定义对应的收费金额;所述规则管理单元用于根据不同的业务流程定义各个收费节点,同时生成各个收费节点的节点名称,以此名称进行自定义节点组合;所述规则转换器,用于初步解析上述人机交互产生的临时规则,生成标准的规则引擎可以解析的规则;所述规则引擎数据库,用于存储自定义规则时产生的上下文数据;所述规则引擎,用于解析规则,返回计算结果。
2.根据权利要求1所述的计费业务规则引擎,其特征在于所述规则转换器将业务规则以JSON的方式写入规则引擎数据库;所述规则引擎解析的规则数据格式是标准的JSON格式。
3.根据权利要求1所述的计费业务规则引擎,其特征在于所述规则管理单元定义的节点为多个。
4.根据权利要求1所述的计费业务规则引擎,其特征在于所述规则引擎具有程序接口,用于规则弓I擎解析算法的重写。
5.根据权利要求1所述的计费业务规则引擎,其特征在于所述上下文数据包括定义的节点名称、收费金额、规则名称、规则组合及经规则转换器生成的整个规则页面信息。
6.一种用于权利要求1所述的基于配置解析应用规则的计费业务规则引擎的组合方法,包括下述步骤: 1)根据业务流程自定义新建收费项目及定义对应的收费金额; 2)根据不同的业务流程定义各个收费节点,同时动态生成各个收费节点的节点名称,并以此名称进行自定义组合; 3)根据自定义节点名组合和规则转换服务进行映射转换; 4)将转换后的规则应用到指定的业务流程,进行管理维护。
7.根据权利要求6所述的方法,其特征在于所述业务规则以JSON的方式写入规则引擎。
8.根据权利要求6所述的方法,其特征在于所述收费项目和收费金额是二级联动的关系,即选择收费项目自动加载金额,不可修改。
9.根据权利要求6所述的方法,其特征在于所述规则转换信息包括需要替换的节点名称与对应的实际节点键值对之间的转换、各节点之间的四则运算和/或附属折扣信息。
10.根据权利要求6所述的方法,其特征在于:规则引擎解析的数据格式是标准的JSON格式。
全文摘要
本发明公开了一种基于配置解析应用规则的计费业务规则引擎组合系统及其方法,所公开的规则引擎系统包括规则管理单元、计费项目节点管理单元、规则转换器、规则引擎数据库、规则引擎。本发明公开的计费业务规则引擎系统及其组合方法实现了业务流程和规则解耦分离,便于用户使用管理,同时小巧、灵活,具有很好的扩展性,减轻了规则管理的难度和操作,可广泛应用于计费、缴费领域。
文档编号H04L12/14GK103107895SQ201310009560
公开日2013年5月15日 申请日期2013年1月10日 优先权日2013年1月10日
发明者许兆然, 陈义鹏 申请人:昆山百润科技有限公司, 广州市百成科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1