1、当今企业IT战略所面临的挑战和任务
今天的企业和公共事业机构,其业务面临着步入知识经济时代、全球化、扁平化的快速巨变,每个企业在业务上都在要求越来越快的反应能力,使整个企业内部能够跨部门快速协作。在外部可以更好地同合作伙伴、重要客户无缝协作,共同创新.企业业务需要变得更加灵活,以适应不断变化的环境。比如经常改变的政策、业务级别、业务重点、合作伙伴关系、行业地位以及其他与业务有关的因素,这些因素甚至会影响业务的性质。在这种情况下。信息技术(Information Technology,IT)对企业的战略性作用和影响越来越显著。作为企业整体战略的重要组成,企业IT战略是基于企业发展目标和业务战略而制定的企业信息技术应用与发展的整体框架和指导体系。其中,企业架构(Enterprise Architecture,EA)是最核心的组成部分。
然而业务的变化与IT的变化之间还存在着很大的差距。我们很难看到企业中的IT人员可以用业务术语来描述IT中的元素。反之亦然.这个断层导致了业务需求不能很准确地反映在IT系统中,同时,业务发生变化时,这种变化也不能很好地被传递到IT系统中.我们需要提高IT系统的抽象手段.提供业务人员和IT人员可以共同使用的概念体系,比如业务流程、业务服务、业务数据对象、业务事件等,来描述和交流业务模型和业务需求。我们称能够灵活地适应环境变化的业务为按需(0n Demand)业务,在按需业务中,一旦需要,就可以在IT系统中对完成或执行任务的方式进行必要的更改,这是当今企业IT战略所面临的挑战和任务.
2、SOA技术现状
2.1 SOA的基本概念
SOA(Service 0riented Architecture),也叫面向服务的体系结构或面向服务的架构,是指为了解决在Internet环境下业务集成的需要,通过连接能完成特定任务的独立功能实体实现的一种软件系统架构.在SOA架构风格中,服务是最核心的抽象手段,业务被划分(组件化)为一系列粗粒度的业务服务和业务流程。业务服务相对独立、自包含、可重用,由一个或者多个分布的系统所实现,而业务流程由服务组装而来.通过这些服务定义了良好的接口和契约联系起来.接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言.这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互.
这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合.松耦合系统的好处有两点,一点是它的灵活性,另一点是,当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在.而另一方面,紧耦合意味着应用程序的不同组件之间的接口与其功能和结构是紧密相连的,因而当需要对部分或整个应用程序进行某种形式的更改时,它们就显得非常脆弱.
SOA架构带来的另一个重要观点是是业务驱动IT,即IT和业务更加紧密地对齐.以粗粒度的业务服务为基础来对业务建模,会产生更加简单的业务和系统视图;以服务为基础来实现的IT系统更加灵活、更易于重用、更好(也更快)地应对变化;以服务为基础,通过显式地定义、描述、实现和管理业务层次的粗粒度服务(包括业务流程),提供了业务模型的相关IT实现之间更好的“可追溯性”,减小了它们之间的差距,使得业务的变化更容易传递到IT.
因此,可以将SOA的主要优点概括为:IT能够更好更快地提供业务价值、快速应用能力和重用.
2.2 SOA主要技术和标准
Web服务是实现SOA中服务的最主要手段.Web服务最基本的协议包括UDDI,WSDL和SOAP,通过它们,我们可以提供直接而又简单的Web Service支持,如图1所示。
但是基本协议无法保证企业计算需要的安全性和可靠性,所以需要这方面的协议,比如WS-Security,WS-Reliability和WS—ReliableMessaging;对于复杂的业务场景,需要WS-BPEL和WS-CDL这样的语言来将多个服务编排成为业务流程;管理服务的协议如WS-Manageability,WSDM等。跟Web服务相关的标准,还在快速发展当中.目前在SOA产品中,除了基本协议外,比较重要的还包括BPEL,WS-Security,WS-Policy和SCA/SDO.
3、利用SOA技术建立企业IT架构
3.1选择SOA建立企业IT架构的优点
企业IT架构描述一个组织的目标如何通过业务流程来实现,以及这些流程如何通过信息和技术来支持.在实践中,企业架构通常会包括业务架构、应用架构、数据架构、安全架构、基础设施架构和集成架构.
SOA以其来自最佳实践的设计原则、架构模式、集成能力、基于标准的开放性和交互能力,能够很好地帮助企业建立IT架构。
首先,SOA以业务为中心,提供了服务、流程等高阶建模元素,通过SOA基于服务的分析和设计方法,改善了IT和业务的交流与对齐.其次,SOA基于标准的交互能力和ESB架构模式,可以简化分布式系统之间的整合,将各种异构的系统连接在一起.通过ESB、适配器和连接器。用户一般可以用非侵入的方式来重用已有系统。总之,SOA真正可以帮助企业获得业务敏捷性、IT架构的灵活性和IT资产的重用能力,因而影响到企业架构的方方面面,发展为SOA风格的企业架构(service 0riented Enterpri8e Architecture)。一个例子就是IBM,其CIO办公室基于SOA的架构风格和设计原则,制定了他们的企业架构SOA+。
3.2 SOA设计原则
经过几十年的发展,软件设计技术已经形成了一些行之有效的设计原则,如松散耦合、抽象、隔离关注、模块化、重用性等。SOA及其相关软件设计技术是对传统软件设计技术的继承和发展。一方面,SOA技术利用传统的已验证有效的设计原则完成与之相适应的软件设计.另一方面,SOA也在丰富和发展已有的和新的设计原则。主要有以下3个要点:
(1)业务和IT对齐
在传统的应用构建和运营的生命周期中,各个阶段都采用不同的概念,如在分析阶段,是核心概念;在设计阶段,组件和对象等是核心概念.这种概念上的分裂在很大程度上使得IT系统生命周期的各个阶段彼此不一致,从而导致在从业务到IT,从IT到业务的循环中,往往IT处在被动的位置.这种被动表现为IT对业务需求和业务变化响应慢,被构建的系统难以达到业务人员的期望值.
为了解决这种业务和IT不对齐、IT生命周期各个阶段概念割裂的状况,SOA设计方法中,将业务和IT对齐被认为是最高优先级的设计原则.要求视服务为第一位的核心概念;服务必须有针对性的业务含义并通过契约方法规范服务参与各方职责.
(2)保持灵活性
仅仅通过服务定义层次并不能够完全实现IT系统快速灵活地适应业务需求和变化.我们需要在各个阶段的设计和构建过程中保持灵活性,或者说为灵活性而设计和构建.常用的方法有:设计抽象粗粒度服务适合更广泛的需求;设计适当粒度的服务使能服务组装;通过松散耦合技术减少消费者和提供间技术依赖性等.
(3)松散耦合
在SOA环境中,松散耦合是指服务消费者到服务提供者问的松散耦合.这包括:在服务契约设计上,通过抽象设计减少技术依赖性;在服务调用层面上,通过各种中介保持服务调用双方的技术透明性;在服务实现层面上或者SOA计算环境中,各种架构元素间的松散耦合.
3.3 SOA设计应用实例
中国移动ICT业务集成利用SOA技术进行IT架构,成为SOA的一个典型应用.
ICT(Infomation Communicatjons Technology)是“信息通信技术”的英文缩写.广义上的ICT可以扩展到国家信息化层面;狭义上作为电信运营商的一种业务,ICT就是通过信息与通信技术,用以满足“客户综合信息化需求”的一揽子解决方案,包括通信、信息收集、发布、自动化、传感、自动化等各个方面。
不同种类的操作系统、应用软件、系统软件和应用基础结构相互交织,是包括中国移动公司在内的IT企业软件基础环境的现状.一些现存的应用程序被用来处理当前的业务流程,因此从头建立一个新的基础环境是不可能的.企业应该能对业务的变化做出快速的反应,利用对现有的应用程序和应用基础结构投资来解决新的业务需求,为客户、商业伙伴以及供应商提供新的互动渠道,并呈现一个可以支持有机业务的构架.SOA凭借其松耦合的特性,使得企业可以按照模块化的方式来添加新服务或更新现有服务,以解决新的业务需要,从而通过不同的渠道提供服务,把企业现有的或已有的应用作为服务,保护现有的IT基础建设投资.
中国移动基于SOA的ICT集成系统的体系结构如图2所示.该体系结构分为客户层、服务层、应用层以及技术层4个层次.
(1)客户层.客户层包括了中国移动营业厅、网站、10086客服等接入方式,受理客户的业务需求,统计用户、收入、业务发展情况.
(2)服务层.服务层包含了针对业务流程层的各种服务以及web服务平台.web服务平台可以允许以一种与下层应用及技术平台无关的方式来定义和使用业务服务.服务层为业务流程层提供了理想的平台,主要体现在以下方面:提供了粗粒度的业务功能;提供了无歧异的接口,因此业务流程无需了解下层应用及技术平台的细节;服务层数据模型是根据服务业务领域定义的.而且是独立于特定应用的数据模型的;服务层安全模型提供了单点登陆和基于角色的访问控制,这确保了任务可获得使用服务的授权,并令业务流程层免于处理各种下层应用及技术平台提供的安全接口;服务层管理模型可以生成有关服务使用状况的统计数据,供业务流程层使用.
(3)应用层.通过对ICT现状的分析,并参考国内外市政管理的先进经验,建立了应用子系统,即OA、BOSS客服.
(4)技术层.技术层包括了各种应用平台、技术平台和各种操作系统等,技术层是确保实现上述各个应用的技术细节.市政管理涉及的部门众多,各应用系统所依托的技术平台、技术细节各不相同,但是无论采用何种技术的应用系统都可以实现与技术无关的通信.
4、结束语
SOA伴随着无处不在的标准,为企业的现有资产或投资带来了更好的重用性.SOA能够在最新的和现有的应用之上创建应用;能够使客户或服务消费者不受服务实现的改变所带来的影响;能够升级单个服务或服务消费者而无需重写整个应用,也无需保留已经不再适用于新需求的现有系统.总而言之,SOA以借助现有的应用来组合产生新服务的敏捷方式,提供给企业更好的灵活性来构建应用程序和业务流程.
本文作者:刘开茗 李海燕 马慧 周利红 来源:网络收集
CIO之家 www.ciozj.com 微信公众号:imciow