论文部分内容阅读
随着全球信息化的发展,企业间协同商务和企业信息门户(EIP)等要求企业的应用系统是一个高度集成和开放的系统。然而大型企业由于历史的原因往往拥有着异构系统,导致系统间信息的交互与互操作非常困难,形成了一个个“信息孤岛”,为了实现企业全局的业务过程自动化,人们投入了大量的人力和财力来进行系统集成。传在统的企业应用集成(Enterprise ApplicationIntegration,EAI)解决方案有4种类型:用户界面集成、数据集成、业务流程集成、函数/方法集成,这4种集成方法均不能方便、灵活、低代价地实现异构系统的集成,难以快速适应企业现代业务变化的需求。另外,随着企业计算的发展,企业级应用要求新的软件系统不再是从底层做起,而只是依据企业逻辑需求重新组织已有的数据存储,将现有的数据和事务通过新的渠道,如浏览器或者手持设备呈现给用户。基于面向服务架构(Service-OrientedArchitecture,SOA)的应用集成开发方案,在不改变企业应用底层架构的基础上,可以很好地解决上述问题。它支持在中间层以服务模块方式实现解决方案,当多个运行在不同平台和技术下的应用程序必须互相通信时,这种体系结构尤其适用。 SOA架构是一种分布式的软件组件模型。整个系统被设计和实现为一组相互交互的服务,它使得系统中的某些服务能够充分利用其他的服务同时却无需考虑其物理位置。在该模型中,任何的业务功能被作为提供的一个服务使用。应用程序的不同功能(服务)通过这些服务之间定义好的接口和契约联系起来,使得构建在系统中的服务可以以一种统一和通用的方法进行调用。这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松藕合。松藕合系统的好处有两点:一是它的灵活性;二是当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在。这就为解决EAI集成问题和快速开发新的IT系统铺平了道路。 SOA是一种软件架构,而不是局限于某个技术的组合,它超越了技术范围。SOA的关键是“服务”。W3C(World Wide Web Consortium)将服务定义为:“服务提供者完成一组工作,为服务使用者交付所需的最终结果。最终结果通常是使用者的状态发生变化,但也可能是提供者的状态改变,或者双方都产生变化”。服务是网络中可用的软件资源。服务提供者通过标准机制提供服务,使用者通过网络有计划地使用服务。服务储备库发布服务所在位置,并在使用者请求服务时定位服务。服务使用者和提供者的角色不是惟一的,服务提供者也可以是使用者,反之亦然。SOA具体的实现有很多,包括Web Service,SessionBean,JINI等,但随着Web Service技术被越来越重视,其已经成为构建SOA的主要技术。 事实上SOA并不仅仅是一个IT概念,而是偏重于组织、管理以及商业模式。部署SOA不仅牵涉到IT系统的构建模式,同时也涉及到业务流程架构和业务的管理运作模式,因为SOA必须对业务的改变作出迅速反应。 本文将研究在企业内部如何构建以SOA为架构体系的企业信息系统,以NG-CRM系统建设为例说明SOA在企业内实施的效果,并对建设与SOA适应的以市场为导向的组织结构进行了分析。