怎么做EAI——认识企业应用集成

以前一直做工作流。但随着应用的深入,越来越觉得传统的工作流人工活动难以满足项目的需要,很多时候,我们的工作流程并非仅仅是做些人机交互的审批或协同的办公,越来越多现存的或单独开发的企业应用需要被加入到工作流程中,从而组成一个完整的、贯穿始终的业务过程。

根据WfMC提出的工作流参考模型,其接口3正是被用来定义与其他应用程序的交互,那么,EAI(Enterprise Application Integration,企业应用集成)则是对这个接口最好的实现模式。

“纯粹的工作流系统”对EAI的实现往往是很简单的,一般就开放一些API供具体的集成实现或直接以支持开放式的程序脚本来执行和其他应用的交互“行为”。

作为世界领先的EAI厂商,TIBCO的EAI产品虽然未必是No.1,但其对企业应用集成这个概念的诠释和实现应该可以被认为是业界标准或通用的做法。

TIBCO的Business Works及其Designer就是这么一个典型的可视化EAI建模工具。它将基础、通用的企业应用组件,如JDBC、HTTP、SOAP等封装为图形面板式(Palettes)的控件;也将工作流的基本组件,如子流程调用(Process Call)、定时任务(Timer),流程相关数据分配(Assign)等也封装为图形面板控件。同时,它还为各种复杂的高级企业应用系统,如SAP、Lotus、Tuxedo等制作独立的Adapter——即企业应用集成适配器,它通过企业服务总线(一般来说这个企业服务总线就是消息中间件系统)使各种应用之间进行数据交换,从而将这些各自专门领域的企业应用集成在一起。

那么,有了这样一套“EAI支持系统”,用户所要做的就是:托拽控件、串接活动、组织流程、部署……,从而完成各种复杂的、异构的、跨系统的业务流程。实际上,不仅是TIBCO,BEA、IBM等大型企业的EAI产品或解决方案也是采取这种组件封装+适配器的方法,不过可视化的界面模式和图形化的基础构建平台等有所差异。

很多时候,在使用这些EAI工具中,我们会越来越感觉到这好像是一个图形化免编程的软件设计平台,我们用它“编写”的一段“程序”就是一条业务过程,这段“程序”串联了众多复杂的、异构的企业应用系统,而如果我们真正去编程实现这么多应用系统间的交互,那每一条业务过程都将是一个庞杂的工程。

因此,EAI工具及其解决方案对于解决繁多的遗留系统和已有应用的集成问题是不可缺少的,这么做主要是为了保护企业的信息化投资——充分利用现有系统,以及消除“信息孤岛”——使不同的系统互联协同工作。从而,这也证明了为什么EAI在中国并不是被广泛的实施——因为我们的信息化仍然处在起步阶段,我们没有那么多的系统需要遗留、需要集成。

但是,以目前中国信息化的速度,可以预见在不远的将来,也许就在2、3年后吧,我们将迎接国内第一轮的EAI潮流。



你可能感兴趣的:(设计模式,编程,工作,企业应用,Lotus)