Visual Rules是什么
Visual Rules又称旗正商业规则定制平台,是一个基于规则引擎实现的可视化定制业务逻辑的商业规则管理系统,同时又具有快速开发java软件项目的功能。
Visual Rules可以在程序外部对软件项目中所涉及的业务逻辑进行单独管理,并且提供多种语言的API接口供外部程序调用。
Visual Rules可以集成到现有的软件项目中,将软件中经常容易发生变化的部分,独立出来由规则库进行管理。
也可以用于直接开发web项目,Visual Rules可以为软件项目生成90%以上的程序代码,节约50%以上的软件开发时间以及减少80%以上的软件维护工作量。
Visual Rules是开发B/S结构软件项目的利器,特别适用于快速开发基于J2EE结构的软件项目。其原理是对于J2EE项目,一般其架构分为界面层、业务逻辑层和数据层。Visual Rules提供了数据库管理器,可以生成几乎全部的数据库层代码;提供了规则编辑器可视化快速开发业务逻辑;提供了规则引擎可以动态加载和执行业务逻辑;提供了页面模版编辑器以及页面生成器可以生成大部分界面层代码;提供了在线的业务逻辑管理平台,可以直接供客户(包括非技术人员)直接修改软件项目中实现的业务逻辑。
Visual Rules解决了软件开发中一直以来业务逻辑层只能手工书写代码的问题,为业务逻辑层的实现提供了采用类自然语言(业务人员可以理解的语言)的可视化开发工具,以及在线方式的业务逻辑编辑工具直接供业务人员修改逻辑。
背景
当前社会已经开始进入信息时代,越来越多的企业和单位开始应用各种信息化系统来进行公司管理。包括财务系统、业务系统、办公自动化等等,这些信息化系统对提高企业的竞争力发挥着越来越重要的作用。
同时当前社会是一个竞争日趋加剧的社会,各行业都面临着残酷的竞争,要求企业不断的提高产品质量、服务质量以及降低企业成本,从而要求企业不断的改进业务流程、改善商业模式。使得为企业服务的信息化系统也必须根据企业的变化而不断的变化,以满足企业新的要求。同时要求信息化系统的变化快速、安全、稳定。
现存问题
商业需求的不断变化,是目前软件行业面临的最大挑战。据统计,80%的软件项目最后都面临失败,其主要原因就是因为商业需求的变化造成软件不断的被修改,导致软件问题的持续增加,最后导致失败。因此软件项目的成败关键看其能否满足客户需求的不断变化。
客户需求的变化最主要表现在业务逻辑方面,目前已经普遍采用的三层架构技术就是希望解决业务逻辑不断变化的问题。三层架构技术是将软件分为界面层、业务逻辑层和数据层,将界面、逻辑和数据分离,其目的就是为了当业务逻辑变化时,只需修改业务逻辑层的代码而无需改动界面层和数据层的代码。减少了因为修改代码而产生的问题。
但是仅仅采用三层架构技术在解决客户需求不断变化的问题方面仍然具有很大的局限性。
首先业务逻辑层采用编码来实现,当业务逻辑变化时,需要软件工程师修改程序代码才能实现新的业务逻辑,一般需要经过需求变更、重新设计、编码、调试、测试、发布等阶段,周期往往在1个星期以上。这样就导致不能快速满足客户的要求,同时手工修改代码也增加了软件不稳定性方面的风险,也大大增加了软件的后期维护成本。
其次,客户需求的变化在某些情况下不仅仅表现在业务逻辑上,有可能会变化数据结构。这样势必导致修改数据库层和页面层的代码,改动可能会涉及到一些公共的程序代码。手工修改的工作量很大,而且也增加了项目失败的风险。
解决方法
Visual Rules针对以上这些问题,提出了新的基于规则引擎技术以及快速开发平台的解决方案,解决了传统三层架构技术的局限。
Visual Rules采用规则引擎技术,将业务逻辑层的业务逻辑进一步分离出来,存储在XML格式保存的规则文件中,由规则引擎解析执行。同时提供一个可视化的操作界面可供客户直接修改业务逻辑,无须采用程序员编码的方式来实现。
同时,Visual Rules为基于web的开发提供了一套完整的web框架以及大量的公共控件,将界面层、业务逻辑层和数据库层彻底分离。同时其提供数据库管理器满足了数据结构的变化时,可以快速生成全部数据库层代码;提供页面模版编辑器以及页面生成器满足了数据结构变化时,可以快速生成几乎全部界面层。无须再采用手工编码的方式来满足数据结构的变化。