第二章企业应用集成EAI_第1页
第二章企业应用集成EAI_第2页
第二章企业应用集成EAI_第3页
第二章企业应用集成EAI_第4页
第二章企业应用集成EAI_第5页
已阅读5页,还剩97页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章企业应用集成EAI

2.1谁需要EAI?两个被普遍关注的问题信息化中存在的两个普遍问题:IT黑洞问题应用孤岛问题IT黑洞问题IT黑洞美好的愿望艰苦的努力用户开发商用户开发商高额的投资复杂的过程漫长的周期失控的质量无尽的维护双输的结局IT黑洞企业利用IT可以改善业务管理,但实际上有许多企业在这方面投入巨资后,却收效甚微,比如,有些企业上ERP最终只能做些库存管理等简单应用。专家把这种现象称之为“IT黑洞”。应用孤岛问题生产/物资(MRP)办公(OA)人事/绩效(HR)产品管理(PDM)客户关系/销售(CRM)决策分析(DSS)……运行/服务程序基础资源/数据维护//定制工具运行/服务程序基础资源/数据维护//定制工具应用孤岛难以集成两大问题的本质应用孤岛问题:管理软件如何实施、应用的问题IT黑洞问题:管理软件如何设计、开发和维护的问题

由于基础架构的先天不足,现有的信息系统,大多是孤岛型的应用(业务功能模块的简单累加)。这些孤岛系统,相互之间是孤立封闭的。现有信息系统的建设,是在底层的技术平台上直接构建业务系统。这种低层次的软件开发模式,使信息系统的开发、维护和扩展困难重重。换言之,事前没有进行恰当的IT规划是其中一个关键的原因。两大问题的深层次原因孤岛问题和黑洞问题的深层次原因是:信息系统的架构体系问题

架构体系对于信息系统的设计、开发、实施、应用、维护很重要吗?理解架构:瓦萨战舰的故事1625年,瑞典国王古斯塔夫斯.阿道弗斯(GustavsAdolphus)决心建造一艘史无前例的巨型新战舰

——瓦萨(Vasa)战舰。瓦萨战舰确实是一艘令人望而生畏的战舰:舰长70米,载员300人,在三层的甲板上共装有64门重炮,火力超强。瓦萨战舰的处女航1628年8月10日,这艘巨大的战舰终于完工。在斯德哥尔摩的王宮前,瓦萨战舰举行了盛大的下水典礼。在1万多名围观者的目光注视下,忽然,瓦萨号奇怪地摇晃了一下,便向左舷倾斜。海水涌入船舱,战舰迅速翻入水中。几分钟后,这艘雄伟战舰的处女航——也是唯一的一次航行结束了。瓦萨战舰在它壮丽的起航时刻,带着全身飘扬的彩旗,沉没于它诞生的港口。瓦萨战舰为什么沉没?人们对瓦萨的沉没做出了分析,最后的主要结论是:该舰制造工艺精良,但“比例严重失调”,也就是说,该战舰的架构存在缺陷。信息系统的“瓦萨”问题同样,在今天的企事业信息系统领域,“瓦萨”问题——“架构”成为需要解决的关键问题。架构是什么?架构是针对某种特定目标系统的具有体系性的、普遍性的问题而提供的通用的解决方案。架构往往是对复杂系统的一种共性的体系抽象。架构让我们能够正确、合理地理解、设计和构建复杂的系统。谁需要EAI企业需要EAI:

使企业做成为一个无缝的、高效的、流程优化的社会化的信息服务单元。整个企业的信息设施——包括硬件、软件、数据、知识等构成一个无缝、联动的整体。

政府需要EAI英国电子政务的e—GIFGIP-政府互操作组(e-Government

Interoperability

Group)政府系统与如下体系进行信息交换时必须执行e—GIF:英国政府和公民、英国政府与企业、英国政府组织之间、英国政府与国外政府之间与我国的区别我国虽然开始电子政务建设并不晚,但早期建设多是把政务信息化看做一个政府“内部”的建设项目直到2003年,我们才逐渐认清“电子”与“政务”的关系

电子政务建设的四个层次局域网、城域网、宽带网、数据中心、认证中心、网管中心OA软件、网站、业务软件、审批软件共享、协同、交换、统一门户、统一目录、统一授权科学决策、民主决策、服务型政府网络基础设施建设

办公业务电子化建设信息资源整合管理平台建设

电子政务高端应用建设信息资源建设阶段信息资源管理阶段2.2EAI的内容EAI(EnterpriseApplicationIntegration)企业应用集成传统的数据整合传统的数据整合策略数据仓库数据集市分析型多维数据库EAI的提出EAI最初指企业应用整合,仅指企业内部不同应用系统之间的互连,实现数据在多个系统之间的同步和共享。伴随着EAI技术的不断发展,现在EAI概念已经被扩展到业务整合(BusinessIntegration)的范畴EAI(企业应用整合)EAI是通过异步消息传递(asynchronousmessaging)将企业内不同的系统实时联系在一起的一种方式。EAI属于一个事件驱动架构以广播方式(Broadcasting)取代抽取方式(Polling)来实现系统间的互相更新克服了网络的延迟性和不稳定性EAI偏重于应用整合而不是信息整合理解EAI传统方法:通过“点对点”连接,让不同的系统之间交换信息。这种方案的缺点是显而易见的:系统中的账务、客户管理等,原来在每个方面都有不同的系统,系统间存在着数据重复、冲突的问题。

随着节点个数的增加,需要开发的接口数目急速增长,接口维护的复杂性越来越大。EAI定义:

EAI就是将业务流程、应用软件、硬件和各种标准联合起来,在两个或更多的企业应用系统之间实现无缝集成,使它们像一个整体一样进行业务处理和信息共享。

EAI将这些系统根据模型构建成一套完整的IT系统架构,实现统一的人力资源、账务和客户管理,提高数据共享,为客户带来了极大的便利。硬架构所有的应用程序通过中心服务器或引擎发送和接收数据适配器从源应用程序提取数据,并把数据发送给引擎(Broker)中心引擎(Broker)按照引擎中预先定义的规则,转换数据并把数据路由到目标应用程序1.HubandSpoke

Approach所有的应用程序通过中心服务器或引擎发送和接收数据适配器从源应用程序提取数据,并把数据发送给引擎(Broker)中心引擎(Broker)按照引擎中预先定义的规则,转换数据并把数据路由到目标应用程序硬架构虚的概念:Hub实的概念:BrokerHub-and-Spoke:通俗表达来说:各分支机构利用VPN设备与总部VPN设备建立VPN通道后,除了可以和总部进行通讯,还可以利用总部VPN设备互相进行数据交换,而各VPN分支机构不需要进行VPN的隧道连接。而在IP地址的规划方面,在总部我们可以申请相对稳定的固定公网IP地址及或者动态公网IP地址捆绑动态域名,而在分部则可以使用动态公网IP地址捆绑动态域名或者是使用不需要动态域名关联的单向接入方式.优点结构较简单该方法或架构避免了应用程序间的紧耦合应用程序端的编程工作较少。转换和路由规则由中心库维护,无需硬编码在应用程序中缺点中心代理对整个系统的影响大,并可能成为性能瓶颈单点失效应用部门未必愿意把所有的应用都连接到某个特定的中心,通过该中心完成整合2.BusBasedApproachThesourceapplicationspublishdatadirectlytothebus,ornetworkDataormessagestravelalongthebustotheadapter,whichhandlesthedatatransformation,translation,andsubsequentroutingtothereceivingnode.Thedatatransformationandroutingisdistributedineachoftheapplicationadapters特点

——所有节点都是平等的

优点nosingle-pointoffailure.结构更加开放无论增加多少个目标应用程序,源应用程序都不需要做任何改变缺点需要为每个应用程序定制开发一个适配器,因此,适用于应用程序的类型和数量比较少的情况补充说明:电子政务信息交换网络Bus方式特点:每个节点都是平等的优点:任何两个节点都可以交换信息缺点:每个节点都需要记录大量的路由信息;失去可管理性多Hub级连方式效率、单点失效结点层次负载度为2度为4度为811265,460299,59221423,02879,43237882010,4404281681,168平均路径长度3.504.805.44混合结构:信息交换网络分级的结构和地址设计路由:主干边+辅助边端到端的信息交换协议IACBHGFEDVU2.2.1软架构---工作流管理系统问题的提出——

企业面临的新挑战在大规模协作中,以下因素增加的业务过程的复杂性:

过程没有严格文档化遵守没有保证的规则人员缺乏信息公司缺乏监控工具步骤、人员和资源不完全协调业务过程业务过程描述了一个组织结构内的关键处理过程,包括:多个步骤(multiplesteps)众多的人员(numerouspersons)大量的资源(largeamountsofresources)业务流程的制作配置信息系统的框图实现业务过程的自动执行IT部门将业务过程的高层说明转化为可被工作流系统解释和执行的详细说明WFMWFM全称WorkflowManagement,即工作流管理,它是人与计算机共同工作的自动化协调、控制和通讯,在计算机化的业务过程上,通过在网络上运行软件,使所有命令的执行都处于受控状态。在工作流管理下,工作量可以被监督,分派工作到不同的用户达成平衡。据工作流管理联盟(WorkflowManagementCoalition,WFMC)的定义,工作流管理系统(WorkflowManagementSystem,WFMS)通过软件定义、创建工作流并管理其执行。它运行在一个或多个工作流引擎上,这些引擎解释对过程的定义,与工作流的参与者(包括人或软件)相互作用,并根据需要调用其他的软件工具或应用。总的来说,实际企业中运作的工作流管理系统,是一个人机结合的系统。它的基本功能体现在几个方面:

(1)定义工作流,包括具体的活动、规则等,这些定义是同时被人以及计算机所能够“理解”的。

(2)按照工作流的定义创建和运行实际的工作流。

(3)监察、控制、管理运行中的业务(工作流),例如任务、工作量与进度的检察、平衡等。业务流程的制作VisualStudio.NETMappingSchemasCustomerTitleQtyRecordPOPOField3ItemOrchestrationPipelinesPOOrderPODateFieldAFieldBDetailItem商务流程开发定义商务文档消息处理数据转换业务过程(BusinessProcesses)业务过程描述了一个组织结构内的关键处理过程,包括:多个步骤(multiplesteps)众多的人员(numerouspersons)大量的资源(largeamountsofresources)BusinessProcess(Example)在大规模协作中,以下因素增加的业务过程的复杂性:过程没有严格文档化遵守没有保证的规则人员缺乏信息公司缺乏监控工具步骤、人员和资源不完全协调针对这些问题,工作流管理系统的做法是让业务流程的协作方面自动化。

thatis,whohastodowhat,when,andwithwhichtoolsGoalsofWorkflow在应用程序中硬编码或用传统中间件工具实现业务流程通常难以修改对业务过程进行重构有助于准确定义、更好描述和优化这些过程:提高处理能力减少费用减低处理时间对此工作流技术扮演着重要的角色WFMSasasoftwaretool工作流管理系统提供的功能:设计环境:用于定义业务过程运行环境:用于协调一组应用程序和人员,执行业务过程辅助工具:控制、监控、分析和优化业务流程工作流系统不直接依赖于分布式计算的编程技术,例如RPC,TRPC,对象模型、组件模型等工作流管理系统可以是通用的(设计成可以与任何应用一起工作),也可以是专用的(设计成与某些特定的应用一起工作)WorkflowsandEAI当前的工作流管理系统已经集成到EAI工具的基础框架中:业务过程的高层视图比用C或者C++编码的业务逻辑更好(例如可读性和可维护性)。工作流模型使得“业务”和IT开发者之间更容易交流通用的工作流系统是不现实的。作为EAI工具的替代者,工作流管理系统应该成为下层中间件(TP-Monitors,ObjectMonitors,MessageBrokers...)的图形化界面最小化用户参与业务流程,增加流程处理的自动化。因此,为应用程序提供更合适的包装器比给操作人员提供一个漂亮的界面更加重要。从实用的角度,扩展性、容错、与其他系统的连接等是重要的工作流可以像胶水一样粘合构件或Web服务,因而十分重要。BasicWorkflowModelActivityActivityActivityActivityControlConnectorAmount>1Amount<=1OutDataContainerOutInDataConnectorTypesofWorkflow工作流管理系统的种类依赖于它所能支持的业务过程的类型:协作环境科学计算生产工作流软件开发电子商务办公自动化Web发布,内容管理CollaborativeWorkflowNopredefinedprocessLowprocessvolumeFlexibleroutingE-mailbasedHumaninteractionIterativeNosupportfordataflowNosupportforapplications协作型工作流(collaborativeworkflow):参与者和协作的次数较多。在一个步骤上可能反复发生几次直到得到某种结果,甚至可能返回到前一阶段。

ScientificWorkflowsProcessiswelldefinedNohumaninterventionFlowofdataandcontrolonlybetweenapplicationsandnodesSophisticatedscriptinglanguageProcessesarenotnecessarilyexecutedoverandoveragainEmphasisonperformanceandlowlatency科学家们,例如天文研究者,要想协作科研的话,就需要共享大规模的数据,相当于做些分布式计算。这个数据的流动过程随着研究机构的增多可能越来越复杂,以至于需要独立出来专门管理,这就是scientificworkflow的大概意思。scientificworkflow貌似是一个新方向,讨论班上听别人讲了一篇,后来帮人审稿看到一篇,今天发现12月的Computer杂志上还登了一篇文章。ProductionWorkflowsFixedroutingHumaninterventionComplexorganizationalstructuresandroledistributionHighvolumeofprocessesMonitoringimportantforlegalpurposesTrackingimportantforcustomerservicespurposes生产型工作流(productionworkflow):实现重要的业务过程的工作流,特别是与业务组织的功能直接相关的工作流。与管理型工作流相比,生产型工作流一般应用在大规模、复杂的和异构的环境下,整个过程会涉及许多人和不同的组织。TypesofWorkflow(续)根据业务过程的哪些方面可以被自动化文档管理电子邮件系统应用程序流程内容管理两种类型的工作流系统:基于内容(Content-based)或基于状态(State-based)基于活动(Activity-based)State-BasedWorkflowActivity-BasedWorkflowModelingandMegaprogramming业务过程在很多情况下可以看作是对于组织机构内发生的事情的描述。当业务过程被自动化执行的时候,业务过程的描述就成了配置信息系统的蓝图。在许多情况下,业务过程用业务建模语言描述,一般不包括任何实现细节。IT部门需要将业务过程的这种高层说明转化为可以被工作流系统解释和执行的详细说明。

ItisalsooftenthecasethatdecisionsaboutthefinalformofthebusinessprocessisdoneattheITdepartmentbecausethebusinessprocess,regardlessofhowgooditis,isnotenough.Somebodyhastotakethisspecificationanddevelopthe“program”tomakethebusinessprocessareality.工作流工具可以看作是开发业务过程的编程环境Programmingabusinessprocessinaworkflowenvironmentissimilartoprogrammingataveryhighlevel:insteadoftheusuallanguageconstructs,onemanipulatesentirefilesandapplications.Aworkflowsystemrequiresthesametreatmentaslargeprogrammingprojects.Inlargecompanies,aworkflowsystemrequiresasimilareffortasalargedevelopmentprojectbothinthenumberofpeopleinvolvedandtheamountofresourcesthatneedtobeinvestedonit.Ahighlevelviewofworkflowexecution工作流引擎可以看作是任务调度器,它根据工作流定义和任务的执行情况,将任务分配给可以执行的资源资源代理负责根据任务相关联的角色选择资源StandardWorkflowAPIProcessDefinitionToolAdministrationandMonitoringTool2.2.2EAI的层次从集成的深度上来说,可以分为以下几种集成方式:

数据集成第一层:

应用集成第二层:

流程集成第三层:1)数据集成(DataIntegration)

数据集成是应用集成和业务过程集成的基础。EAI最朴素的整合就是数据整合:让某个系统的数据能为其他系统使用。例:数据集成通过SQLSERVER2000进行集成,以一致的方式在数据库间可靠地传输数据,使得企业的各种数据库中的数据一致和同步,从而建立企业范围的统一视图2)应用集成(ApplicationIntegration)

-----指将多个应用系统进行“绑定”,使之像一个实时运行的系统一样接受信息输入和产生数据输出,实现多个系统功能的“叠加”。

Artix

集成点Artix

集成点Artix

集成点Artix

集成点供货系统订单管理CORBAMQseries用户界面执行系统.NETTIBCO网络Artix

集成点目录系统JMS多个应用系统像一个系统一样实时运行3)业务过程集成(BusinessProcessIntegration,BPI)

-BPI的要素包括过程管理,过程建模和工作流。通过一个业务流程把所有的应用、数据都管理起来,让它贯穿很多应用系统、数据、用户当把所有的集成手段和层次加在一块,才能做到最后的这一层次,称为业务流程的集成。工作流是在计算机环境中执行的一个业务过程(通常,“工作流”等同于“过程”)过程建模使用组件图等来设计业务模型工作流管理系统通过实例化来运行业务模型的工作流程BasicWorkflowModelDataConnectorActivityActivityActivityActivityControlConnectorAmount>1Amount<=1OutDataContainerOutInState-BasedWorkflowActivity-BasedWorkflow基于工作流的过程管理大型的应用程序以特定的“控制程序”确保业务功能的正确顺序——

控制程序可以表现业务流程通过工作流实现控制程序:程序包含一系列业务流程和业务功能业务流程;通过工作流系统恰当地调用业务功能执行基于工作流的应用——结构工作流引擎可以看作是任务调度器,它根据工作流定义和任务的执行情况,将任务分配给可以执行的资源资源代理负责根据任务相关联的角色选择资源流程依赖移除流程集成集成流程开发工具可视化的开发工具基于实现形状的模块化自动商务流程设计保存待编译的商务流程模型PortSurface<<>>PortSurfaceReceivePOReceivePOPortOperation_1->RequestCheckQuantityDeniedElseDeniedMsgSendDeniedPortOperation_1<-RequestSendApprvPortOperation_1->RequestSaved

orchestrationBizTalkOrchestration引擎运行时的引擎执行商务工作流程2.3EAI的技术基础

2.4EAI发展现状

2.5EAI集成模型

2.5.1什么是集成模型2.5.2表示集成

在原有两个不同软件的基础上,建立一个“公用表示界面”,从而达到将两个应用集成在一起的目的。整个集成工作都采用的是黑盒集成方法,无须了解程序与数据库的内部构造。例:将集成的信息以文字或者图表以浏览器形式展现出来P5图2-12.5.3数据集成

P5图2-2数据集成跳过界面和业务逻辑层,直接从应用软件的数据库或数据结构开始进行集成数据集成举例医院信息系统中由财务物价统一管理检查项目的价格,其它应用中只能调用数据集成可保证各个应用中的价格统一

数据级集成相对简单,不要求对应用程序进行改动。但是当业务逻辑经常发生变化时,数据集成就会面临困难。2.5.4功能集成

功能集成是在业务逻辑层上进行集成

应用接口级集成允许一个应用程序使用其他应用程序中的某些功能。通常是通过应用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论