本文将结合一个简单的业务场景,向读者展示如何使用 IBM WODM 快速创建业务规则,使用 IBPM 如何快速完成">业务流程建模,以及 IBM WODM 与 IBPM 常用的三种集成开发方法。
为了让读者能更清晰快捷的了解 IBM Websphere Operation Decision Management (WODM) 强大的业务决策能力以及 IBM Business Process Manager (BPM) 强大的流程建模及管理能力,本文首先向读者介绍一个简化的商场消费结算流程的实战案例,其业务流程如下:
顾客凭借购物小票及会员卡,向商场收银人员申请消费结算 收银人员收到该申请后,将消费记录及会员卡扫描成数据存入结算系统 结算系统根据会员卡号进行客户信息查询,并查询出该会员卡的级别 结算系统根据该会员卡级别以及顾客本次消费总金额查询其应享
有的折扣率 系统计算并返回折扣后最终的金额给收银员 收银员收取顾客现金或刷卡扣款 系统对顾客会员卡进行积分及升级
通常在不同的节假日,各大商场都会推出不同的折扣率给会员和非会员,并且不同级别的会员享有的折扣率也会不同。此外,消费金额的总数也会对折扣率产生影响。分析上述结算流程,商场的业务人员及决策者常常会由于不同的市场需求,参与到上面活动 3 与活动 7 的规则决策中来。
针对活动 3,本文采用最常见的商场折扣率计算,即通过顾客所持会员卡的级别及其单笔消费总额决定的折扣优惠率。下面是该商场五一国际劳动节期间的打折优惠策略:
顾客是金卡会员,如果单笔消费总额满 5000 元,享受 7 折优惠;如果其消费总额在 2000 到 5000 之间,可享受 8 折优惠;如果其消费小于 2000 元,可享受 85 折优惠。 顾客是银卡会员,如果单笔消费总额满 5000 元,享受 75 折优惠;如果其消费总额在 2000 到 5000 之间,可享受 85 折优惠;如果其消费小于 2000 元,可享受 9 折优惠。 顾客是普卡会员,如果单笔消费总额满 5000 元,享受 8 折优惠;如果其消费总额在 2000 到 5000 之间,可享受 9 折优惠;如果其消费小于 2000 元,可享受 95 折优惠。 顾客是非会员,如果单笔消费总额满 5000 元,享受 9 折优惠;如果其消费总额在 2000 到 5000 之间,可享受 95 折优惠;如果其消费小于 2000 元,不能享受任何折扣优惠。
针对活动 7,假设该商场的积分策略是消费 100 元积 1 分,而其会员卡的升级策略为:
会员卡级别为银卡,如果卡上积分满 5000,
那么升级该卡为金卡。 会员卡级别为普卡,如果卡上积分满 2000,那么升级该卡为银卡。
通过 IBPM 能快速的将上述商场消费结算流程的任务节点组合起来,当业务流程需要进行改变时,开发人员也能快速的调整流程,满足市场的需求。但是,如果将上述活动 3 中的折扣策略使用 BPM 流程中的 Decision Gateway 或 Script 节点实现,首先,流程将会变得复杂难懂,如图 1 所示。其次,这些策略中的折扣率,消费金额范围以及积分升级阈值等这些易变的数字将会被硬编码在程序脚本或流程中,然而这些数据常常会发生改变。这时,开发人员很难查找到具体的位置,并且很容易修改错误。另外,开发人员与业务人员之间的沟通代沟也增加了错误的可能。
图 1. 使用 Decision Gateway 实现折扣策略
而 IBM WODM 提供的强大业务决策能力很好的弥补了这一劣势。使用 WODM 能够快速的创建各种各样的业务规则,业务决策树及决策表等。此外,WODM 提供的决策中心,为开发人员与业务决策者之间搭起了沟通的桥梁,它能够让业务决策者直接参与规则的制订,修改等。对于本案例中的折扣策略,通过 WODM 提供的 Decision Table 能很简洁清晰的描述该策略。当折扣策略需要发生改变的时候,业务决策者可以直接登录决策中心(Decision Center)对规则进行修改。下图 2 是从决策中心中看到的使用 WODM 创建的折扣计算决策表。
图 2. 使用 WODM 实现折扣策略