EAI的集成层次

现在对EAI有着各种各样的分层,层次也不尽相同,业界也没有一个统一的标准。对于各家EAI厂商,基于EAI理解的侧重点不同,其答案也不同,如ibm将EAI分为五层。但透过这些不同分层的背后,我们可以看出其本质是一样的,只是说法和划分的力度不同而已。

我们从不同的角度将其归纳为最具代表性的三类:

 

从集成深度分 从技术层面分 从企业角度分
企业应用集成 数据集成
应用集成
业务流程集成
界面集成
应用接口层
应用整合层
流程整合层
用户交互层
系统集成
企业内流程集成
企业间集成
3.1 按集成深度划分

EAI 概念被认为可以包括数据集成、应用集成和业务流程集成等方面。

1 数据集成

数据的集成完成针对结构化数据和非结构化数据的整合、分析等工作。数据集成是EAI发展中最容易实现的形式,也是应用集成的基础。数据集成是企业内的数据库和数据源层次的集成,通过将数据从一个数据源物流或虚拟地移植到另外一个数据源来实现数据的集成和共享。数据集成中的关键是对数据进行概念建模和在概念建模基础之上的推理支持。只有建立数据的概念模型,才能对数据进行统一标示和编写目录,确定元数据模型。只有对数据建立统一的模型后,数据才有在分布式数据库中共享的可能。数据集成的方法主要有数据复制、数据聚合、面向接口集成和析取、转换、装载解决方案(ETL方法)。

2 应用集成

应用集成。应用集成是在业务逻辑层上进行的集成,把不同的应用程序连接起来,以共享和利用信息,使不同应用系统中的信息可以在整个企业范围内共享。应用程序集成是基于内部网络,通过协议转换与数据传输服务,来保证企业不同应用程序之间的信息和指令安全、有效的传输。涉及的主要方法有:一是面向消息的中间件,它是通过在新旧应用软件、不同软件之间进行消息传递来实现集成的。二是分布式对象技术,如 CORBA、DCOM、.Net、J2EE 等,主要是把各个不同的应用系统看成是一个分布的对象,只要知道了这些应用对外公开的接口,就可以通过一定的方法直接远程调用这些应用,而不用管这些应用系统的内部结构及用什么编程语言写的等等,实现了跨平台的操作,将这些应用系统连成一个逻辑的整体。应用集成比较复杂,多少也会涉及到数据集成和界面集成。

3 业务流程集成

业务集成的传统实现手段是采用传统的中间件或EAI技术,包括基于传统的消息中间件、交易中间件或者应用服务器等的集成,更进一步的实现手段则是采用Web服务技术来实现业务集成。一般来说,在业务流程的集成模式中,应包括集成适配器、数据转换处理、消息路由控制以及业务流程管理等几大部分。

为了降低集成成本,减少技术风险和保护企业已有投资,目前广为接受的业务集成方式是充分利用Web服务技术,将原先以数据为出发点的面向数据库的单一系统设计模式逐步向以应用功能为出发点的面向企业服务的体系架构过渡。

4 界面集成

界面重组是一个面向用户的整合,它将原先系统的终端窗口和PC的图形界面用一个标准的界面(有代表性的例子是使用浏览器)来替换。一般来说,应用程序终端窗口的功能可以一对一地映射到一个基于浏览器的图形用户界面。新的表示层需要与现存的遗留系统的商业逻辑或者一些封装的应用如ERP、CRM 以及SCM等进行集成。企业门户应用(Enterprise Porta1)也可以被看成是一个复杂的界面重组的解决方案。一个企业门户合并了多个企业应用,同时表现为一个可定制的基于浏览器的界面。在这个类型的EAI中,企业门户框架和中间件解决方案是一样的。并且,通过企业门户提供给最终用户基于角色的用户管理机制和个性化服务,以及单点登陆(Single SignOn—SSO)等服务,从而提高使用者的办公效率和降低IT维护成本。

3.2 按技术层面划分

具体到技术层面上的划分,我们认为一套完整的EAI技术层次体系应该包括应用接口层,应用整合层,流程整合层和用户交互层四个大的层面。

概括来讲:EAI技术层次体系最下面的一层是应用接口层,它要解决的是应用集成服务器与被集成系统之间的连接和数据接口的问题。再往上去就是应用整合层,它要解决的是被集成系统的数据转换问题,通过建立统一的数据模型来实现不同系统间的信息转换。应用整合层之上是流程整合层,它将不同的应用系统连接在一起,进行协同工作,并提供商业流程管理的相关功能,包括流程设计、监控和规划,实现业务流程的管理。到了最上端的用户交互层,则是为用户在界面上提供一个统一的信息服务功能入口,通过将内部和外部各种相对分散独立的信息组成一个统一的整体,保证了用户既能够从统一的渠道访问其所需的信息,也可以依据每一个用户的要求来设置和提供个性化的服务。

1 应用接口层

EAI要解决的问题是独立应用系统之间的连接,传统的应用系统之间的连接方式包括了:CORBA, SOCKET通讯, RMI, RPC, EJB, COM/COM+, HTTP和FTP等,数据库系统之间常见的连接规范包括:ODBC, JDBC。上述这些规范在企业应用系统或数据库系统之间传统的点对点的连接中得以广泛应用。但是由于这些系统之间的连接是通过上述连接接口实现的,没有一定的规范和标准,使得在今后新系统的加入和旧系统的移植过程中,就会产生接口兼容性问题。

而在EAI的应用接口层,主要是通过适配器技术将原有数据库系统、应用系统和原有网络服务组件封装起来,实现系统之间的互通互联。

适配器是EAI厂商或产品厂商为了解决系统之间的连接而开发的可重用的、统一的接口,通过该接口每一个应用系统仅需要与业务整合平台相连,而不需要与每个与之交互的应用系统相连。

2 应用整合层

应用整合层是EAI技术层次体系中的核心层次,该层次是连接业务流程管理层和应用接口层的桥梁。数据信息在业务流程中的流转以及在各个应用系统之间的交互必须建立在数据源和数据目的地都能理解该数据信息的基础之上。在应用整合层我们定义了能为数据产生源、数据处理地、数据投送地都能理解的信息处理规范方式、方法和规则,包括:数据格式定义、数据转换和消息路由。

3 流程整合层

业务整合着眼于提高每个业务流程的效率和效能,利用业务整合,业务流程被推向解决方案的最前沿,通过采用成熟的技术可以成功地创建模型,自动化流程处理过程,监控和管理这些业务流程,从而满足业务变化的需求。它通过同时协同人工参与流程和自动化运行的流程来整合一个跨越企业内部同部门和不同系统之间的业务流。由于业务整合致力于从高瞻远瞩的角度来优化和协同企业内部的业务流程,它提高了投资回报率,它使得业务人员和IT人员获得一个面向服务的、统一全面的企业组织架构视图,并创建一个可以通过IT技术实现的业务流程平台,从而帮助企业获得成功。

4 用户交互层

用户交互层是EAI与用户实现人机交互在表示层面上的扩展,一个面向用户的整合,强调的是要将来自多个信息源的信息以一种可定制的、个性化的界面展现给用户。涉及的内容包括展示内容的集成(门户应用)、单点登陆(Single Sign On)、用户统一管理、用户认证授权的管理等。现今很多EAI产品都提供了对用户集成这几方面内容的支持。

EAI解决方案中除了涵盖以上这四个层面之外,当然还需要提供一些基础服务,如底层的数据通讯服务,信息安全服务,事物处理服务,系统管理服务等,这里就不再详细阐述了。

3.3 按企业角度划分

1 应用系统集成

应用系统闻的异构数据或对象需要透过传输与转换的服务, 才能让不同的应用系统了解与分享彼此的数据及其对象。

2 企业内部流程集成

企业内部流程集成是指将异构且分散的商务应用, 根据企业内部流程的需求, 作有效的集成。例如:企业前后端流程和相关应用系统的集成、企业内流程的集成。其集成的目的在于确立企业内部的主要业务规则并将其一致地应用到业务流程当中。

3 企业间集成

就像企业内部的流程集成一样,跨企业的流程集成将集成的对象延伸到整个供应链上相关企业和主要客户。跨企业的流程集成需要不同组织间的应用系统和业务流程作有效集成。其主要的集成范围有企业之间的交易流程、数据共享流程和合作流程。