单据|一个实用的规则配置模型
导读:在系统设计中,经常会遇到需要进行通用规则配置的场景,需要基于一些基础参数进行配置,如类型业务,城市,金额,风险级别等,多个参数组合配置不同的规则或策略,常见场景如业务预警、系统分单、资金排队、模型配置、卡券分发等。此时就需要进行通用配置,并且可以随时调整配置的设计方式。本文介绍一套比较实用的规则配置模型。
文章插图
通俗地说,规则配置无非是确定要配什么,怎么找到应用对象,找到后要执行什么动作,怎么应用这几个动作。整体思路如下:
文章插图
第一步:要配置什么事件或功能
搞清楚配置的标的,就是成功的一半。在做规则配置前,需要先把要配置的标的抽象出来,做成通用配置。如业务预警,需要先把预警的事件定义出来。系统分单,需要先把功能菜单定义出来。
那么如何抽象标准化事件呢,需要从系统中抽取,如定义事件的开始节点、结束节点,或者通过编码开发,这里不做展开。
配置的第一步,先选择需要配置的事件或功能。根据配置需要,事件可做成单选或多选。
文章插图
第二步:什么样的单据需要进来—维度配置
配置的目的是落到具体的产品或者单据上面,而系统中的产品或单据往往具有多个属性,并且要求根据多个属性综合配置。
维度(属性)定义:这里需要先将这多个维度抽象出来,这里需要定义属性名称、属性编号、属性值。前提条件是配置标的(单据、产品)具有这些属性,而且在规则应用的时点属性值是明确的。
文章插图
维度配置:维度可多选,属性值可多选
文章插图
多维度交叉,实际上就是一张多联表格,可视化页面如下图所示。
文章插图
(图片来源google analytics)
第三步:这些标的需要执行哪些动作—动作配置
前两步已经将特定类型的标的选择出来了,接下来是对其设置动作,要它们跑哪个规则。常见的动作类型包括:应用时效、设置金额、控制流程调整、触发预警、触发消息推送、风险标记等。
动作库:这些动作可以通过动作库统一维护,动作类型+动作值设置,动作需要预先编码实现。
动作配置:动作可以单个或多个组合触发。动作的表现需要与系统已有的功能联动,如预警动作对应预警机制,包括预警列表、预警监控、预警解除等。
文章插图
第四步:哪些规则优先—规则设置
一般需要配置规则启用状态和规则优先级。
规则优先级:在规则配置中,往往会有颗粒度差异,既存在多个维度交叉的精细化配置,也存在单维度的通用型配置,如单独配置某城市某业务类型的规则,与配置全国通用型规则,就是不同的颗粒度。同时配置的情况下,一个单据事件匹配规则时,就会匹配到多条规则。但应用上诉求往往是跑一条规则。这里就需要进行优先级设置。这里有几种设置方法。一是设置规则匹配逻辑,如复杂规则(指维度多的)优先;二是直接设置多个子规则的优先级,如拖拽排序,从左到右命中一条后停止匹配。后者实现起来更简单快捷。
除了规则优先级设置外,还有规则状态设置,即规则的启用禁用。
- 苹果|库克压力确实大,在众多国产厂家对标下,iPhone13迎来“真香价”!
- 加盟行业|原来加盟行业是这么玩的!
- 京东|适合过年送长辈的数码好物,好用不贵+大牌保障,最后一个太实用
- 魅族|对不起!魅族,这次确实令人失望了
- 东南亚|MIUI13深度使用报告,这还是我认识的MIUI吗?网友评价很真实
- 车祸事故|坦克300刹车不及撞飞马匹 实测车头够硬
- 一个时代的结束!中国移动:10086 App将于1月30日起
- Linux|电脑城卖的CPU是intel而不是AMD,和实体店不喜欢卖小米手机是一个道理
- 荣耀magic3|实力旗舰!5200mAh+4nm+1TB,荣耀新机亮剑
- 微信新功能上线!网友:这个太实用