论文关键词:SOA;面向服务;电子政务
1 引言
随着计算机网络的迅速普及,国家加快了电子政务建设的进程,全国各地政府机关随之加快了信息化、网络化平台的建设。政府在管理企业和公民的相关事务上,也需要不同部门、不同级别的机构、不同地域的机构协同办公才能完成特定审批、核查等相关业务,这样使得办公的分散化和办公的协同成为电子政务发展的主要需求之一。如何去合理构建新一代的电子政务系统,以提高政府的公共服务效率和质量,政府、学术界都为此进行了大量的探索和研究。
面向服务的架构(SOA)作为新一代的分布式应用集成架构,其目标在于让IT变得更有弹性,以更快地响应业务单位的需求,实现实时效能,这也正是电子政务所需提高的方向。因此,本文以北京市海淀区政府协同办公系统项目为载体,介绍了如何利用面向服务的架构(SOA)进行电子政务协同办公系统的设计与开发。
2 面向服务的架构SOA
到目前为止,关于SOA还没有一个统一的、被广泛认可的定义,从不同的角度,SOA有不同的定义。从体系结构的角度可以认为: SOA 是一种松散耦合的软件体系结构,在这种体系结构中,由各自独立可复用的服务去构成系统功能。这些服务向外公布有意义明确的接口,软件的开发是通过对这些实现透明的接口的调用来完成。
面向服务的体系结构中的角色包括:
(1)服务使用者。
服务使用者是一个应用程序、一个软件模块或需要一个服务的另一个服务。它发起对注册中心中服务的查询,通过传输绑定服务,并且执行服务功能。服务使用者根据接口契约来执行服务。
(2)服务提供者。
服务提供者是一个可通过网络寻找的实体,它接受和
执行来自使用者的请求。它将自己的服务和接口契约发布到服务注册中心,以便服务使用者可以发现和访问该服务。
(3)服务注册中心。
服务注册中心是服务发现的支持者。它包含一个可用服务的存储库,并允许感兴趣的服务使用者查找服务提供者接口。
服务请求者、服务提供者以及服务代理者,通过3种基本操作相互作用,如图1所示。
发布:服务提供者向服务代理者发布服务。包括注册自己的功能和访问接口。
查找:服务请求者通过服务代理者查找所需的服务,并绑定到这些服务上。
绑定:服务提供者和服务请求者之间可以交互,并使服务请求者能够真正使用服务提供者提供的服务。
与传统开发方法相比,SOA具有标准化、松散耦合、共享服务和粗粒度等特点,其优势具体表现为:
• 易于集成现有系统;
• 具有标准化的架构;
• 提升开发效率;
• 降低开发维护复杂度。
3 基于SOA的电子政务系统
3.1 电子政务系统分析
服务型电子政务建设的目标是要通过信息共享实现政府各部门间的协同办公,方便用户获取政务信息。这就要求对政务信息从服务的角度进行整合。基于服务的政务信息资源整合往往需要连接几十个政府部门,涉及大量的部门业务信息库、专题信息库和基础信息库。这些信息库运行在不同的软硬件环境下,需要一个跨平台、松耦合、可扩展的技术架构来支撑。而传统电子政务系统主要是从部门内部自身业务需要出发,缺乏统一的标准。且基于传统技术构建的电子政务应用系统,因技术手段制约,共享实现常以点对点的信息共享和交换方式为主,这种模式存在方法欠灵活、可扩展性差,而且部署的难度与费用高等问题。 SOA架构模式以服务驱动为核心理念,按需连接系统资源,通过将原有应用中的零散功能整理包装为具有互操作性的标准服务,实现服务的快速组合和重用,保证应用敏捷性与扩展性以及政府业务发展的需要。与传统架构相比,SOA不仅可以实现资源的重复使用和整合,而且能够跨越各种硬件平台和软件平台的开放标准,实现不同政务资源和应用的互联互通。通过标准的协议,这些服务可以由内部政务系统或外部政务系统的其他服务调用。因此,SOA的技术属性与电子政务的宗旨十分吻合,SOA 架构可以为服务型电子政务建设提供良好的技术平台。
3.2 基于SOA的电子政务系统的设计
要构建基于SOA的电子政务系统,分散于异构电子政务系统上的信息资源进行整合,建立统一的软硬件基础平台和应用支撑平台,并根据业务需求在此平台之上构建多个应用子系统,各个子系统按照功能模块可划分为一系列的服务。通过单点登录、个性化桌面的形式展现给用户,以及短信平台进行多渠道信息沟通。系统总体结构按四个层次内容进行划分,如图2所示:
3.3 基于SOA的电子政务系统的实现
基于SOA的电子政务系统的实现的核心在于围绕服务的一系列步骤:
服务发现:服务发现的主要任务,是确定在一定范围内(通常是企业范围,或若干关键业务流程范围内)可能成为服务的候选者列表。
服务规约:服务规约阶段的主要任务是规范性地描述服务各个方面的属性,其中,既包括输入、输出消息等功能属性,服务安全约束和响应时间等服务质量约束,以及服务在业务方面的诸多属性,如涉及的业务规则、业务事件、时间、人员消耗等。
服务实现: 为了将服务契约落在实地,服务实现阶段通过差距分析,并结合传统方法学完成每个服务的实现。
服务注册:服务开发完毕后首先需要注册到服务总线,这样所有的客户就可以根据需要访问到所需服务。服务注册是指将服务注册到企业服务总线,供用户或应用程序调用。
服务调用:客户端可以Web页面发起请求,例如通过URL /RegistDemo?AppName= 注册业务系统名访问服务系统。通过URL /RegistDemo?AppName=workflow访问BPIP工作流系统。
4 总结
高效的电子政务协同办公系统是政府部门提高办公效率和管理水平的关键所在。本文提出的基于SOA架构的电子政务协同系统的设计和开发流程,是基于J2EE平台的SOA架构,具有一定的局限性。然而,随着基于SOA的各种标准的不断演化,各种平台和工具也正在开发和完善中。相信在不久的将来,基于SOA架构的企业应用系统集成技术会得到不断的完善。