论文部分内容阅读
随着计算机技术的飞速发展以及电子商务技术的日趋成熟,贸易的方式开始有了巨大的转变。从传统的贸易方式中产生了一种新的贸易方式——易货,它是以专业的电子商务平台为基础,实现货物(或者服务)交换货物(或者服务),交易并不通过现金结算,该种交易可在多个企业间“环绕”进行。在易货行业领域中,其交易规则多变,引入了交易额度增加了电子易货市场交易规则的复杂性,也增加了电子易货市场所面临的风险。这就导致电子易货交易平台开发的难度加大,大量的时间和金钱被用在频繁的软件需求变更上,这就要求软件开发人员设计出逻辑结构更好的系统来适应这种需求快速变化,实现快捷化地开发和降低开发维护成本。规则引擎的核心思想就是将业务逻辑和业务数据分开,把业务规则从代码中抽离出来,作为独立的模块可单独由业务人员进行维护。当业务规则发生变化时,只需要更新规则文件,其他部分则可保持不变。本文首先简要介绍了易货和规则引擎的概念;接着从模块结构、规则引擎工作机制、构建和运行过程、规则编写方面入手,介绍了开源规则引擎项目Drools;然后,重点分析了易货系统的两个重要模块的业务模型——委托合同的签订(商品模块)以及易货交易的进行(交易模块);明确分析了两个核心模块的业务需求,设计了关键的事实对象,并对其进行了详细的流程和状态转化设计;接着,将Drools规则引擎技术应用到易货系统中来,在得到了规范的交易流程基础上,编写规则文件,然后对规则文件进行部署实现:第一步对规则文件进行编译,编译通过后进行打包生成规则库;第二步,加载与业务对象相关的规则库到工作内存中,规则引擎读取业务事实对象,与规则库中的规则进行匹配,匹配成功的规则将放入议程中,然后执行议程中的规则做出业务决策,实现了具体的规则创建、推理等模块。通过此次实际的研究应用过程,文章总结了规则引擎对于软件开发过程的作用。由于电子易货交易系统中应用规则引擎仍处于起步探索阶段,所以本文是一个探索性的研究应用,具有一定的借鉴参考价值。