论文部分内容阅读
随着我国信息化快速发展,软件行业也在发生巨大的变化,纵观一下我国软件行业的发展历程,所有的软件系统都是在追求分层和复用的过程,采用这一思想的主要目的是为了提高软件系统的敏捷性和适应性。然而系统中的业务逻辑和应用程序逻辑决定了系统的敏捷性,如何使得这两种业务规则进行分离起着重要作用,传统的系统软件无法满足用户的最新需求,一旦客户需求发生变化,就需要专门的程序员对其进行修改,这样无形之中增加了系统的维护成本,另外导致了业务层面的整合能力和扩展能力非常的弱。因此基于规则引擎的系统刚好可以解决上述问题,它可以实现将业务逻辑层从程序代码层进行分离出来,从而可以适应系统规则的动态变化,实现业务敏捷。本文首先通过分析Drools规则引擎的工作机制、规则描述语言、以及基于规则的专家系统,并结合实际的烟厂排产业务,总结了动态排产系统涉及的业务流程、功能需求以及非功能需求。进而设计了基于Drools规则引擎的动态排产系统的体系结构,文章通过对动态排产系统进行算法原理分析、功能模块的设计、服务类的设计和数据库建模。以及对规则引擎的建模、描述语言的定义,最后实现了基于Drools的动态排产系统部分功能的封装、部署和发布。本论文的主要创新点如下:1、通过比较目前各种规则引擎,最终采用了Drools规则引擎,在该基础上通过建立了一种基于Drools规则引擎的体系架构,该架构中通过MVC设计模式,采用SSH框架结构有效实现了动态排产系统的动态排产功能。2、通过对论文所使用到Drools规则模型的定义、规则语言的描述,给出了一套Drools规则引擎的动态排产系统中的部分功能的封装、部署、发布的方案。3、结合实际的项目背景,对文中提出的架构和方案进行了实际的应用,能够有效的实现了系统的自动排产、松散耦合和集中管理。