SOA重构数字化校园采取有效递进式策略
[非原创,原文链接]
导读:本文将通过对目前流行的SOA面向服务架构技术的研究,结合数字化校园建设的特点,提出一种基于SOA架构的数字化校园整体设计方案和具体实施过程。
高校信息化建设从上个世纪90年代就已经开始了,伴随着计算技术和网络技术的高速发展,高校信息化建设取得了显著成果,计算机和网络技术已经在高校各类活动中发挥着重要作用。以“挖掘先进的管理理念,应用先进的计算机网络技术把高校现有的教学、科研、管理、生活、服务等有关的资源进行整合和集成,实现统一的用户管理、资源管理和权限控制,实现资源的有效配置和充分利用,实现校务管理和后勤服务过程的优化、协调,创造新的教育和工作模式,完成传统教育模式难以实现的目标”为特征的数字化校园建设成为了各所高校信息化建设的主要工作。
数字化校园建设是一个系统工程,很多高校在建设中都遇到了困难,包括:由于缺乏统一规划,业务系统之间的功能重叠,关键数据归属和管理不明确,很难保证数据一致性;业务系统的技术平台繁多,互操作能力差,数据交换和功能调用困难,维护成本高,可靠性和安全性差;建设过程中存在各自为政的状况,分散实施和维护系统,难以实现统一认证和信息共享;用户体验差;业务系统整体开发周期长,开发效率低,难以应付学校业务需求的变化等等。
本文将通过对目前流行的SOA面向服务架构技术的研究,结合数字化校园建设的特点,提出一种基于SOA架构的数字化校园整体设计方案和具体实施过程。
数字化校园新需求
高校针对信息化的迫切需求和所面临的问题,对数字化校园建设提出了新的要求:
1.优先建设信息化基础平台,提供数字化校园的核心功能,包括统一认证、数据存储与交换、安全管理等;
2.保证信息化基础平台的开放性与灵活性,能够与基于各类技术平台的业务系统交互数据和调用功能;
3.建设统一的校园信息门户,将教学、科研和管理相关的业务系统集成在一起,对用户提供服务;
4.保证信息化基础平台具有良好的可扩展能力,能够灵活地应对业务需求变化;
5.保证信息化基础平台的安全可靠,具有良好的身份验证、数据加密、行为审核、系统日志等功能。
为了满足这些数字化校园建设的新要求,我们需要一种新的体系结构,它既能有效地利用现有的IT基础设施,又具有足够的灵活性和适应性,能与不断变化的业务流程和业务模型保持一致。我们接下来讨论的SOA面向服务架构就是这样的体系结构技术。
SOA架构
内涵
SOA(Service-Oriented Architecture,面向服务的架构)是整合业务过程、支持IT基础设施建设、提供标准化的组件服务的架构。这些组件可以重用和组合,以适应不断变化的业务需求。它是一组业务、流程、组织、管理和技术方法,是一种敏捷的系统架构。
SOA服务平台是由多个服务所构成的,这些服务用来表示在业务流程中可以被组合以及再组合成多个不同的解决方案和场景的元素,并且由业务需求所决定。这种对服务进行整合和再组合的能力为业务和IT提供了更紧密的联系,同时也为处理新问题提供了灵活性。SOA服务平台的作用是提供一个基础,从而可以更灵活地、更易组成地、更可复用地提供核心业务服务。
SOA架构可以抽象成为如图1的层次结构。在一个典型的SOA中,每一层都具有自己的属性和关系集合。
必要的架构元素
为了实现自动的、自管理的SOA,企业服务总线(Enterprise Service Bus, ESB)是一个必要的架构元素。一个ESB所提供的最本质的基础服务是传输、基于服务质量(Quality of Service, QoS)的路由、中介和网关服务,能够与业务流程环境并行地设计和部署。
总线可以多种方式实现,如经典的消息传送、EAI(Enterprise Application Integration,企业应用整合)以及代理技术,或者使用特定平台组件如J2EE系统中的服务整合总线。
ESB使开发者们可以组件形式调用和使用业务功能,通过将它们当作满足基于Web服务描述语言的规范接口描述的服务,而不需要理会API或协议。
实现
SOA软件模型的实现必须首先通过平台无关标准来实现中立性,互操作的基本标准包括XML和XSD、HTTP、SOAP、WSDL,以及正在发展中的WS-Policy、WS-Resource,WS-Security等。当然SOA也能够在特定软件平台上实现,包括J2EE环境、Microsoft的.NET、大型机或现有的基于消息的操作系统,甚至基于C/C++的环境。所以SOA架构中可以集成提供接口的各类软件平台上的应用。
安全性
SOA架构作为企业级的体系结构,安全性是必须要考虑的。它采用WS-Security、WS-Trust、WS-Federation等多个规范保证安全性。
优势
从长远来看,通过复用的“构件”和SOA的灵活性,实施SOA可以节省资金、时间和精力;通过灵活的解决方案和更短的部署时间,避免IT实施的失败;通过IT与业务服务的紧密结合,使IT投入更合理等等。特别是基于SOA的解决方案是与Web服务相结合的,它打破了软件程序和供应商之间的私有化障碍,主流软件解决方案供应商都承诺使用这个开放标准,以规范各自的硬件和软件,使信息和数据得到共享。
重构
数字化校园体系系结构中主要包括网络基础环境、基础硬件和软件环境、校园门户、各类业务系统以及作业系统集成接口等。在SOA架构中,由于使用了标准的开放的接口规范,基于ESB的业务系统集成,对各厂商解决方案具有良好的兼容性,并可通过面向流程的业务整合对SOA架构进行拓展。采用SOA架构技术,对传统的数字化校园体系结构进行重构。
方案建立在开源平台上
目前可应用的SOA解决方案很多,软件厂商IBM、BEA、Oracle、微软、金蝶等都有自己的SOA解决方案。但是由于SOA架构核心就是开放,所以基于开源软件平台的解决方案对于具有较高自主开发能力,业务需求复杂多变,而资金投入又有限的高校来说是个很不错的选择。
目前基于OSOA(Open Service Oriented Architecture)制定SCA(Service Component Architecture,服务构件架构)和SDO(Service Data Objects,服务数据对象)的开源产品,主要有Apache Tuscany、EclipseSTP(SOATools Platform)、PECL SOAfor PHP、CodeCauldron Newton等。这些开源产品已能提供企业级系统架构的诸多特性,尤其以Apache下的Tuscany和Eclipse旗下的STP最为引人注目。
建设内容
在重构中,我们进行如下内容的建设:
1.应用ESB对数字化校园中各类业务系统的服务进行集成,并对服务消息进行基于QoS服务质量的路由;
2.应用业务流程建模对服务进行流程管理,搭建符合业务需求的作业流程;
3.建立数据中心平台,提供数字化校园数据存储、数据交换、访问控制和数据分析等功能;
4.建立统一认证平台,集中管理数字化校园中各类用户信息与权限信息;
5.建立信息门户平台,依靠由业务流程建模和ESB搭建的业务流程对数字化校园用户提供一致的访问界面;
6.通过构建数字化校园信息标准体系,规范校园范围内的数据交换标准和服务抽象标准;
7.通过数字化校园安全保障体系保证数字化校园整体的安全。
递进式实施
数字化校园建设本身就是一个长期的过程,基于SOA架构的数字化校园体系结构的实施也是如此。
策略
我们对基于SOA架构的大型应用平台的实施采取了一个有效的递进式策略:
1.考察采用该架构的类似案例;
2.对可能应用到的技术进行验证;
3.搭建基础设施和进行小范围的试点;
4.试点成功后逐步扩大到整个系统领域。
过程
结合数字化校园的特点,基于SOA架构的数字化校园体系结构的具体实施过程应该有以下7个步骤:
1.业务需求分析与抽象,并调研已有业务系统的情况;
2.建立数据中心,实现数据集中存储与共享;
3.建立统一认证服务,实现用户单点登录;
4.建设校园信息门户,为用户提供信息访问服务;
5.搭建数字化校园ESB总线和BPM(Business Process Management,业务流程管理软件),集成校园网基础服务系统,对SOA架构进行试点;
6.业务服务规划与抽象,为现有业务系统开发集成到ESB总线的服务接口;
7.基于ESB总线、BPM与数据中心环境建设新的业务系统,搭建高层信息决策与分析系统。
下一步工作
我们学校已经开始测试基于CAS的统一认证服务,首先在校园网相关业务系统中实现单点登录,下一步将数据中心建设和信息门户建设作为主要工作,并逐步搭建数字化校园的ESB总线和BPM,进行基于SOA架构的应用试点。
数字化校园建设是管理与技术相结合的,是服务于高校教学、科研与管理的要求的。基于SOA架构的数字化校园建设需要与学校管理相结合,识别与定义业务服务,并且进行有效的组织,逐步采用递进式的建设策略,根据实际情况和技术发展来做出相应的调整。
SOA架构技术还是处于发展阶段,需要在今后多关注和具体实施相关的进展,包括SOA相关技术标准,特别是安全方面的服务监控与可视化、服务提取与抽象、SOA编程模型、虚拟服务平台、计算与存储资源的虚拟化、事件驱动与模型驱动的架构以及教育行业通用服务的抽象与定义。