EAI:一种企业级视野


(来源:http://www.cnw.com.cn/issues/article.asp?filename=n33960.asp)

    EAI:一种企业级视野

    ■ 本报记者 谌力

    企业采用EAI(企业应用集成)技术,不仅提升了信息化水平,也是企业级IT视野的一种体现。EAI的应用尚处于探索阶段,我们兴奋地发现中国建设银行已经开始用企业级的IT视野来看待信息化建设,并将EAI技术用于构建自身IT架构的信息总线。由此,在中国建设银行信息技术管理部和《网络世界》的通力合作下,“银行业应用EAI技术研讨会”在国内第一次从实践的角度来认识和探讨EAI的应用。

    新时期的国内银行业面临着许多变革,在变革阶段最大的困扰来自于商业环境的不确定性。随着我国加入WTO,商业银行之间展开了真正意义上的市场化竞争,无论是大型国有商业银行,还是中小型的股份制商业银行,都无一例外地主动调整组织机构,改变服务模式,创新产品类型。国家的金融政策及体制也在变化,金融混业经营的出现并非遥不可及,谁也不能清晰地描述出明天的银行业具体是个什么样子。所以,建立一个坚实的IT架构,能够适应变化、超越变化对商业银行的意义重大。

    同时,以客户为中心的经营思想逐渐渗透到国内银行经营的各个层面。以前,所有的银行IT建设都是以项目和产品为中心,而不是以客户为中心。这是旧有系统的不足之处,既要保留系统的原有功能,又要加强以客户为中心的服务意识,这种改进对银行无疑是一个艰巨的挑战。

    正是由于这些商业上的挑战,银行业采用EAI技术有着强大的动力,有着相似近况的中国通信企业也开始了EAI项目的建设。

    EAI究竟能给银行带来些什么呢?不妨先看看EAI近几年来的发展和变化。

    EAI在3~4年前崭露头角的时候,主要被用于企业中不同应用系统之间的整合,采用的方法还大多是系统之间点对点的集成,总线(也有称消息代理)这种集成模式还使用的很少。近年来随着XML、Web服务、特别是中间件技术的发展,赋予了EAI新的内涵。EAI能够进行不同应用系统之间数据的整合、应用的集成、业务流程的集成,总线的集成方式成为业内的主流。

    具体而言,银行需要在变化的商业环境中寻找一个可依赖的架构,同时需要以客户为中心重新建立业务流程,EAI技术正好可以起到这种承前启后、兼收并蓄的作用。

    首先,EAI的实施能解决各个系统之间的信息共享,也就是消灭信息孤岛。我国的商业银行都拥有繁多、复杂的应用系统,重复开发的情况严重,而且不能很好地共享数据和功能,不利于整体水平的提高。使用EAI技术对遗留系统进行集成的时候,可以实现多个系统之间的整合。

    EAI还能够建立的体系架构来保证新的应用系统有标准可循,在这种体系架构下建立和更新应用系统,可实现系统之间快速的数据及功能的调用。

    EAI的另一个突破点是业务流程的集成,通过对业务流程设计、开发和管理的支持,EAI使企业内的各种活动、决策,能够在一个连续的工作流里进行,通过工作流把企业各个环节衔接起来。

    此外,在商业合作日益广泛的今天,银行需要对外联系,与一些合作伙伴的IT系统对接。这种企业之间的应用系统也需要一个集成与交换的过程,通过EAI技术制定的框架将有利于银行与众多合作伙伴之间的系统集成。

    企业应用EAI技术,不仅提升了信息化水平,也是一种企业级IT视野的体现。在国内银行业对EAI的应用尚处于探索阶段,我们兴奋地发现中国建设银行这样的大型企业已经开始用企业级的IT视野来看待信息化建设,并将EAI技术用于构建的自身IT架构的信息总线。

    在银行以往所做的项目中,大部分都是以部门、项目、产品为中心,而没有着眼于企业的整体发展,通常IT项目做得很好,但业务的需求往往在项目快做完时发生了新变化,因为没有一个企业级的长远眼光,IT建设的步伐总是落后于业务的变化。建设银行信息总线的建设就是要超越这种“部门级和产品级的视野”,以整个银行的发展方向来构建信息化体系,并保证IT系统的适应性。信息总线是建设银行IT应用体系架构中的核心部分,也是个战略性的项目,信息总线的建设包括了业务流程的集成、应用系统的集成和数据交换的标准,在这个过程中EAI将大显身手。

    中国建设银行信息技术管理部副总经理李骁这样看待EAI在建行信息化建设中的作用:建设银行在今年年初的时候,重新制定了未来的科技规划,提出了IT架构要满足建设银行9大类71项业务能力。这些业务能力主要是通过11个项目群来实现,用几年的时间完成这些项目群的建设,最终达到我们整个IT规划的技术架构的实施。在这个规划中,我们遵循整个建设银行的发展战略目标,重新架构了我们IT的应用架构和技术架构。在架构的过程中,我们提出了一个概念,就是松耦合的应用体系结构,其中最核心的一部分就是EAI的应用。

    近日,中国建设银行信息技术管理部与《网络世界》报社联合举办“银行业应用EAI技术研讨会”,国内外涉足EAI领域的主流厂商悉数到场。通过这种交流的形式,国内第一次从EAI实践的角度来认识和探讨EAI的应用,全面介绍EAI技术的理念和发展。为此,我们将从EAI的层次结构、EAI实施中的问题、专家的建议、EAI实施方法论等几方面主题分别加以探讨。

    EAI的层次结构

    由于EAI技术本身的发展,EAI的内涵有所丰富,那么对要实施EAI的企业而言,EAI是分层次的,也就是说,同样叫“企业应用集成”,其实内容和层次并不一定相同。对此,东方通科技技术支持服务中心副总经理许丽丽谈到,EAI的技术体系分成这么几层,最下面的一层是被集成的系统,再往上去就是通信连接层,它要解决的是应用集成服务器与被集成系统之间的连接和数据交换的问题,再往上去就是应用集成层,它要解决的是被集成系统的接入问题,还有不同系统间的信息识别问题,这一层是框架的核心。应用集成层之上的就是工作流管理层,它将不同的应用系统连接在一起,进行协同工作,并提供商业流程管理的相关功能,包括流程设计、监控、规划。这是通用的EAI的体系结构。

    BEA系统(中国)公司首席技术顾问喻思成认为,对于EAI,很多厂家可以说出不同的答案。EAI有很多层次,最原始、最朴素的整合就是数据整合,让这个系统的数据能为其他系统使用。

    还有一个层次是应用集成,例如应用A能被应用B调动,有的是实时的,有的是有约定的,所有的用户能够在统一的界面下管理,这些做完了以后,可以开始和外部的合作伙伴进行集成。

    再高一个层次,我们通过一个业务流程把所有的应用、数据都管理起来,让它贯穿很多应用系统,贯穿很多数据,贯穿很多用户,贯穿很多合作伙伴。当我们把所有的集成手段和层次加在一块,我们才能做到最后的这一层次,就是业务流程的集成。业务流程的管理平台是由业务人员来控制,而不是给IT人员控制,给他一个完全开放的平台,给他一个设计的手段,让业务人员通过鼠标把一个流程从头到尾设计出来,让业务人员监控整个业务的变化,通过这样一个流程集成的手段,真正做到EAI的最高层次。

    微软(中国)公司顾问经理何江这样说,企业应用EAI的趋势。首先是应用跟应用之间的整合,接下来是跟业务伙伴之间信息的传送,它的信息传送对我的整个业务过程的影响。然后是整个业务流程的自动化。微软EAI的解决方案是面向应用跟应用之间的整合,企业跟合作伙伴之间业务的整合,同时它更专注的是整个业务过程如何实现自动化,它的解决方案面向整个企业的EAI的需求,同时满足企业在实施EAI时所需的相关特性,比如安全性。

    实施问答

    EAI是个实施性很强的项目,实施中可能会遇到的种种问题,其中一些问题非常典型,我们把这些问题列举出来,采用问答的形式进行讨论。

    1.技术标准如何选择?

    建行提问:在实施EAI的过程中,虽然要采用松耦合的方式,但是具体来说耦合的方式是哪些,采用的是什么技术?这需要确定。比如说我们是采用JCI的方式,还是用JMS的方式,虽然我们用的是松耦合,但是一定要知道采用的技术标准是什么。

    厂商看法:如果把交易系统集成到EAI框架里面看,不一定非要采取JCI这样的标准去封装它。建行交易系统的业务逻辑已经开放成一个服务,去做集成的时候,我们可以把这些服务以适配器的方式,就可以去调用,可以实现集成,这样的工作量可能小一点,复杂度也可能更小一些,是一种选择的思路。

    2.EAI的技术架构与产品之间的关系

    建行提问:从技术路线上来看,各家厂商之间也存在着一些不同,我们的架构和我们的产品选择之间有没有相互依赖的关系,这种依赖关系强不强?是不是只有确定了产品之后,才能决定架构,还是有其他的选择?

    厂商看法:架构不可能完全独立于产品,至少有80%依赖于产品,然后再看这个产品能不能适应这个架构。可能这个架构在最后实施的时候会被影响一部分,但主要是自己要制定一个架构,比如我们通常说选一个EAI架构,应该有一个确定的业务流程,具体需要选择一个相应的组件来实现架构,市场上可供选择的组件也不多,可能在建行里面有很专用的组件,也可能以后有新的组件。你选择一个架构以后,这个架构通常涉及到应用之间是什么样的关系,但是具体到应用的时候,还是需要开放的架构会比较成熟。

    3.数据标准先行,还是EAI先行?

    建行提问:我们现在的信息处理没有统一的格式,在做EAI之前,是否应该把银行的信息处理格式做好?

    厂商看法A:这就像鸡生蛋还是蛋生鸡的问题,总要有一个先做好。假如你已经有了10个不同的应用系统,通过EAI可以定义出信息处理的规则和标准,所有的应用系统往上靠就可以了。这个向标准靠的过程非常烦琐,有一定的工作量,但是一旦投入下去,效果会越来越明显。

    厂商看法B:很多企业在让我们实施的时候,都提出要做一个规范的数据模型,但是从我实施的经验来看,大部分数据模型都是逻辑上的,有这么一个逻辑上的模型定义各个系统之间数据模型,可以通过映射在语法和语义上来定义。

    4.遗留系统的问题

    建行提问:银行里遗留了许多独立的应用系统,这些系统有专门的接口和转换程序,有了信息总线后,这些老系统被联系到一起,可能在效率方面会有一些损失,有损失没关系,但这中间是一个怎么样的转变过程,是通信平台的转换,还是整个系统的更换?

    厂商看法:大家可能觉得业务流程管理一定是针对新系统的,实际上不是这样的,业务流程管理对已有的系统也可以实现,甚至对已有的系统用业务流程管理也可以进行监控,细到流程内部,不仅仅是跨系统之间,系统内部也可以控制,还可以进行动态的修改。

    5.项目管理的问题

    建行提问:我们觉得就银行的IT管理体系来讲,EAI的项目对管理体系有比较大的影响。我们觉得在开发过程中的管理,包括项目管理,以及我们的运营维护系统管理等等,这些都和EAI的架构密切相关,我想问的问题是:在我们目前整个EAI架构逐渐规划和落实的过程当中,我们配套的IT的一些管理政策,开发的管理、运维的管理、系统的管理,这种配套政策如何制定,之间是一个什么样的关系,我们目前需要做哪些工作?

    厂商看法A:

    从我们过去的经验来看,科技部这方面应该以EAI做为牵头的项目,科技部可能要成立一个工作组或者是工作协调委员会,这个委员会实际上是利用EAI这件事情,整个作为一个驱动后面工作协调的一个工作组,或者是说工作流程重组的工作小组,应该有这么一个工作小组进行驱动,跟其它项目结合起来。

    厂商看法B:

    EAI的项目开发跟其他项目的开发有一些不同,EAI尤其在以业务流程为主导的开发,总结起来就是:架构要早,而且还要小步快跑,EAI是一个很大的系统,你一定要非常清楚,规划的时候不要太大,要能看得见、摸得着;还要天下为公,尽量把各个系统的服务都能够抽象成一个公共的服务。通常像我们在国外做EAI的时候,如果能够确认100个业务流程的话,通常都是按照业务的功能,比如说第一批我们先做三个环节,能够完成一个具体业务功能,下面再确认几个,一步一步把业务流程实现,实现一批调试一批,比传统的系统开发有更多的阶段。

    6.EAI与安全系统的关系

    建行提问:你们认为用EAI技术进行系统集成后的安全控制应该是怎样实现的,或者说因为信息整合以后,它的安全性应该怎么整合,你们是提供现成的技术产品,还是靠我们自己建立安全平台或者其他的一些方式来实现?

    厂商看法:系统从网络层面、应用层面、数据层面来看,安全机制都是要确定的。你问哪个系统去控制业务层面,这是要针对不同的业务系统。系统安全这块,EAI都会提供安全的认证技术,或者是开放性的接口,可以很好地跟安全产品做衔接,但是最关键的就是安全政策。因为企业本来就有安全体系,怎么样适合在企业已有的安全环境,然后针对新开发的应用和已有的业务系统做出好的安全的规划,这是最关键的。从基础层面上来看,数据加密传输或者是XML的加密,或者是用户级别的控制,各家厂商都会有办法,但是安全政策的这块东西还是你们自己考虑。

    EAI实施方法论

    EAI的实施会牵扯到遗留系统的处置,也会影响到新系统的定位,还要涉及业务流程的制定,所以,EAI的实施是个跨部门的综合性项目,没有一个完善的方法论不可能收到理想的效果。专家们也介绍了他们的实施方法论。

    许丽丽:

    首先是起步阶段,因为我们对这个阶段的很多东西不清楚,包括实施方法、标准的建立,都很模糊,这时候我们怎么去建立这种经验呢?我们建议在一个低风险的项目里应用EAI技术,目的是形成建设银行信息总线建设的一个方法论,还可以建立一个可广泛采用的EAI结构,还有一点就是我们所有的业务人员、科技人员能够从中积累经验,通过一个项目的成实施,起到示范作用。

    第二个阶段是建立企业体系结构的阶段,它将起步阶段形成的体系结构和方法论,应用于其他系统,这时候我们将选择在哪些系统中应用它,因为信息总线有两级(总行一级,分行一级),我们选择在一级分行上集成一些系统,在总行的信息总线上去建立另外一些应用系统,通过这样建设起来的整个结构的一个雏形,这样第一阶段形成的经验,可以在这个阶段得到逐步的完善。

    第三个阶段,大面积的实施阶段。在我们整个建行企业范围内全面实施信息总线技术。在这个阶段,所有的系统都可以纳入到信息总线中,这个阶段的关键问题是要到相关部门的支持和协作,这是保证实施成功的重要基础。还有就是对我们人员,包括业务人员和技术人员进培训,建立实施的队伍。

    第四个阶段,信息总线已经完全建成,而且成为了企业未来的IT基础设施,所有新的应用都会在总线的架构下建设,并不断地纳入一些成熟的技术到这个框架里。在这个过程里,重点是不断地进行反馈,来完善体系结构和方法论。

    曾贵贤:

    webMethods公司对企业的业务环境和IT环境进行分析之后,为了更好的帮助企业实现自己的业务价值,提供了完整的实施方法论,叫GEAR,是四个英文单词的缩写,分别代表gather\explore\assemble\roll out4个阶段,第一阶段是收集需求,让企业去收集所有的需求,并规范需求。

    第二步是探究,详细地分析和设计企业所有的需要,不管是做资讯或者是流程方面,都得去做探究。

    第三步是装配,所有解决方案的开发和测试都在这个阶段。最后一个是上线。GEAR跨越了EAI集成项目的整个生命周期,为项目实施提供了众多的模版,包括项目组织结构,项目的进度安排,在特定项目的实施环节,需要注意哪些问题,以及大量的技术文档,告诉客户如何在特定的环境下使用好webMethods的产品。

    喻思成:

    目前有很多成熟的方法论,但是必须采取循序渐进的方式,这样能做到小步快跑的方式。但是不论是小步快跑还是直线型的方式,首先要搭建一个基础架构,就是核心架构,一定要建立一个基础架构,这个架构并不一定从一家公司采购,但是这个架构包括很多方面,包括我们刚才说的很多方法,能够达到不同层次的集成,只有搭建好这个架构之后,才能真正对你的变革进行管理,才能真正走到你现有的应用系统前面去,因为你在搭建这个架构的过程当中,你需要花时间,而这个时间你必须控制得非常好,因为你现有的应用系统也是在不停发展的,你要在你现有的应用系统发展变化之前,把它拉到现有的框架之上,这是需要很高超的艺术。所以我们认为搭建这个框架一定要非常早。

    何江:

    我们把EAI划分出若干的实施步骤,具体到每一个步骤之间是什么样的关系,系统跟系统之间,EAI的不同实施阶段之间是什么样的关系,具体到一个实施就会形成一个EAI的项目,在EAI的项目上微软还有自己的一套项目实施的标准,这里它会涉及到两个模型。一个是组队的模型,一个是过程的模型。过程的模型不是封闭的圆圈,过程有五步。

    第一步是对这个项目大的把握。项目的目标是什么,我为什么要实现这个系统,这个系统跟整个业务流程是什么关系,跟整个EAI系统是什么关系,它应该在什么时间结束。

    第二步是规划具体做什么工作,做哪些工作,哪些流程,我采取的方案是什么,在这个阶段中对相关的技术进行测试,开发出一个原形,或者是概念的确认。

    第三步是开发,生成大量代码。

    第四步是如何来使我的系统进入一个稳定的阶段,我们做完了大量的代码的开发,经过一些单元测试让系统达到一种非常稳定的、我们能够满意的状态。

    接下来是第五步,部署和运维阶段,该阶段需要一套相关的方法告诉我们如何保证整个系统的稳定。

    一个项目分这样五个过程,不是封闭的环,我们做完第一个,然后开始进入第二步的工作,跟整个EAI的分步骤、分阶段的实施是相配合的。微软有一些经验如何进行项目管理,如何在项目过程中对整个项目的风险来识别、控制和管理。

    实施建议

    东方通科技技术支持服务中心副总经理 许丽丽

    对于银行已有的系统和正在建设的系统来说,我们建议使用已有的专用接口程序,让它继续发挥作用,还有就是维持已有的交易处理逻辑。少部分系统,可能它现在已经没办法满足业务的需要了,可以对少部分的系统进行重新的开发,我们觉得重新开发的规模是越小越好,这样可以降低集成的风险和代价。

    对未来新建的业务系统,我们建议在信息总线的统一架构下实现集成,使用标准或者定制的中间件适配器接入信息总线,同时后台的核心业务系统作为服务的提供者,渠道系统作为服务的访问者。

    webMethods公司亚洲区技术总监 曾贵贤博士

    在集成方面有很多风险,银行需要逐步去控制流程、改进流程,这需要很好的开发工具。如果缺乏对集成的认识,这方面的费用可能急剧的增长,这是我们总结的经验。

    企业缺乏了一个统一的集成架构,会导致非最佳技术方案的采纳,当企业采纳了一个集成平台,后来发现这个集成平台并不是你所最需要的,过后你又采纳了另外的集成平台,变得非常复杂,我们很多客户都有这个问题。点对点的集成方案会导致集成复杂度呈指数级增加。集成过程中,没有一个具体的方法论,这也是一个很大的问题,怎么样把整个团队组合起来,还有制定集成标准的政策等等这都要依靠好的方法论。

    BEA系统(中国)有限公司首席技术顾问 喻思成

    实施EAI概括起来有以下几点,第一,架构一定要早建;其次,集成的过程是要小步快跑,建立起架构之后才开始小步快跑的过程;第三,一定要天下为公,EAI这个项目更重要的是管理,并不是所有的部门都愿意把自己的数据、业务分享出来,因为这里面有很大的管理的因素,BEA公司认为一定要采取天下为公的方式,才能够以小步快跑的节奏真正地实现最终目标。

    最后,我们认为还有一个原则,做EAI开始做框架需要花很大的力气,做的时候要根据自己的实力,不要贪大,不要一步到位,这样才能把各个业务部门逐渐连接起来。

    TIBCO中国区业务发展总监 孙建宏

    对建行这么大的商业银行,或者是特别大的企业来讲,EAI的架构与具体地相关的每一个层次的产品是不确定的,可以基于整个建行的需要来建立这个架构,具体在每一个层次上有对应的EAI,从最底层的消息层,再到业务流程,上面这块包括监管这一层次,每层都可以选择不同的产品来组合,最关键的还是建行自己对自己的整个架构的有一个清晰的了解。

    微软(中国)公司顾问经理 何江

    从业务角度来看,我们要定义业务发展的长期和近期的目标,因为我们的IT一定要支撑业务发展。IT要为业务发展提供咨询,提供各种机会。EAI系统如何来支撑整体业务目标的实现,那就要看我们整体业务目标是什么样的,我们与外部单位业务交流过程是什么样的,和他对业务集成的要求。在银行不同的业务里,会有一个业务发展跟业务目标的优先顺序,这个优先顺序就决定了我们的EAI,要先把哪些系统集成起来,这是从业务发展的角度来看。