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