尊蓝中间件的技术创新

2017-11-27 15:34:33 admin1 89

图片关键词技术创新
图片关键词技术创新点一:纯WEB的开发平台,用户可以直接使用浏览器进行开发,摆脱对平台以外的任何工具的依赖
SABP的一个目标是让系统的最终用户也能成为系统的开发者。借住AJAX技术,我们开发出完全基于WEB的开发平台(BizLogic Studio)。有别于其它中间件开发平台采用Eclipse插件的方式提供开发工具,并且开发过程必须经过专业的编译、打包和安装部署功能,SABP的开发、测试和运行都在同一个平台上,并且完全基于浏览器,用户不需要安装任何第三方工具即可进行开发。减少了用户学习和掌握第三方工具的时间,能极大的降低学习曲线,缩短开发周期。在线的开发、测试和部署可以免去复杂的编译、打包和安装部署过程,而这些过程对于普通的开发者来说往往是开发中最繁琐和难以掌握的。在BizLogic Studio中,只需要点击组件的“启用”按钮,即可将组件从开发测试阶段转入运行阶段。
 图片关键词技术创新点二:基于WEB的图形化流程定制,所见即所得,开发平台的流程图=运行平台流程图
SABP平台的BPM引擎,抛弃了以往分裂分析设计阶段的业务模型的做法,具体体现在使用单一的流程图来达到分析、设计和运行前后高度一致的目的。使业务模型能够真正成为设计者和业务操作员之间的通用语言。
SABP完全基于WEB的图形化流程定制,采用AJAX技术实现强大的功能,实现业务流程的所见即所得。在开发平台上通过拖拽绘制业务流程,后台所定义的节点图形、文本、业务流转等将直接展现为运行平台中的流程图。
图片关键词技术创新点三:图形化的详尽流程追踪,可以一目了然看到流程已执行过的步骤,当前步骤,每个步骤任务到达、离开的时间,实现对业务处理的有效监控。
基于SABP高度可扩展框架,BPM引擎记录下每一个任务节点的执行情况,包括进入节点,离开节点,任务执行人等处理处理信息,并通过图形+数据非常直观的方式,用统一的业务流程图还原再现。
图片关键词技术创新点四:灵活的业务流程服务扩展机制,内嵌强大的动态语言执行引擎,流程和数据处理可以无缝结合。
目前市场上几乎所有的中间件平台,需要编写业务扩展或者调用外部接口的时候都要使用第三方工具编写业务逻辑代码,经过编译、打包之后上传到平台。然后在平台内通过复杂的设置,如指定业务扩展的实现类等,部署过程中还必须中断应用服务的运行,步骤复杂并且更新周期长。我们采用完全不同的策略,突破了这个限制,在平台内嵌入强大的动态语言引擎,使平台的业务调整和优化能够做到更加快速和简便,语义更简单清晰,业务逻辑的编写更加接近于客户的思维,简单的业务客户通过开发手册即可自行扩展。使用户获得更快的应变能力,并从一定程度上拜托对厂商技术支持的依赖。
传统的BPM引擎缺乏对流程中所处理的业务数据的关注,流程和数据交互必须掌握艰深难懂的“流程变量”、“变量映射”等复杂概念,SABP遵循习惯优于配置的敏捷原则,业务流程可以直接与动态视图关联,流程与视图关联之后,即可直接访问视图中的字段值,比如“请假申请”流程关联“请假申请表单”视图,则流程中任何时候都能方便的访问到视图中的业务数据,如在条件断定节点中的流转控制表达式中即可直接引用“请假天数”等数据字段,流程与业务数据可无缝结合。具体方法如下:
首先:选择关联视图。
其次:在断定中即可引用视图中的相关业务数据字段。
除此之外,SABP平台的BPM引擎支持强大的业务服务扩展能力,通过定义流程事件的应用扩展,当流程流转到某节点或者流程结束时,当业务数据满足一定条件,可以调用扩展Groovy动态脚本。引擎自身提供透明的数据访问服务,包括:
 

服务ID

功能描述

_application

全局应用环境引用。可以通过此对象获取Bean Factory等实例,从而间接访问更多系统服务;

_process

流程服务对象。当前流程实例,可以通过此对象获取当前流程有关的数据;

_context

当前执行上下文服务对象。当前流程执行的环境参数对象,可以获得有关执行节点步骤相关的数据;

_dataset

动态表单访问服务对象。当前流程相关联的动态表单对象,可以通过此对象访问动态表单中的数据;

_database

数据库服务对象。可以通过此对对象,使用当前session执行数据库SQL语句;

_messenger

内部消息服务对象。可以通过此服务接口与Skyland-Messenger组件进行通讯;

_mail

邮件服务对象。可以通过此对象发送email功能;

_webservice

WEB服务对象。可以通过此对象可以与ESB进行通讯,轻松调用外部服务,从而实现业务流程之间,或者集成系统之间的数据交互;

其它服务对象

可以通过系统的IoC/DI容器配置Providers,提供更多扩展服务。

Groovy是用Java实现的开源脚本语言并且和它联系紧密。Groovy向Java添加了许多Ruby和Python脚本语言的特性。Groovy的特性包括动态类型(dynamic typing),闭包(closures),简单对象导航(easy object navigation)和更加简洁的Lists和Maps语法。
Groovy是设计用来以精简快速有趣的方式来在Java平台上处理事务,并且把类似Python Ruby等的强大功能带到Java的世界里。Groovy脚本可以使用任何Java类。它们也可以被编译成Java字节码 (即.class文件)并能被任何正常的Java类引用。
图片关键词技术创新五:敏捷Dataset数据持久化框架,支持主从表的批量更新事务管理。
目前大多数平台的数据持久化,多采用hibernate等持久化框架,通过O/R Mapping将实体对象与数据库表进行映射的方式来提供数据持久化能力。这种方法较好的解决了数据库表与业务逻辑中的对象的转换,但是必须使用独立的XML文件编写数据库表与POJO对象之间的映射,或者在代码中引入持久层框架提供的标注功能显式编码进行此映射。XML会使配置文件膨胀,注释使业务代码与持久层框架紧密耦合。敏捷Dataset数据持久化框架,充分运用平台中的元数据信息,通过元编程技术大大简化了这一工作。
SABP平台的Dynaview组件,通过后端的Dataset数据持久化框架,将视图中的所有数据转换为XML进行处理,一方面将原来在服务端执行的运算分担到客户端,减少服务器端的计算压力,另一方面批量提交更新事务减少了服务请求的次数和网络带宽占用。同时通过良好分层构架设计,将XML的处理交由框架自动完成,使业务层可以更加透明的处理业务对象(Business Object),使开发团队可以将精力集中在应用系统最有价值的业务逻辑和商业规则上。

尊蓝简介

尊蓝公司成立于2003年,专注于国内物业管理信息化领域,定位于物业管理信息平台产品供应商与服务提供商,是双软认证企业、国务院创新基金支持单位,拥有自主知识产权25项,产品销售遍布全国128个城市,拥有物业公司客户数量,超过1600家;经过多年发展,尊蓝已成为国内物业软件知名品牌。

了解更多

案例分享

联系我们