肖尧轩,孙祥鹏,陈伟豪,廖华春
(水利部珠江水利委员会珠江水利综合技术中心,广东 广州 510611)
随着水利事业的不断发展,信息化发展与水利业务增长的需求不相适应,信息资源共享困难,信息系统扩展性差,应用模式单一,互联互通和业务协同非常欠缺等问题突出,信息化能力建设还不足以支撑水利管理各方面工作。为推进和规范水利信息化进程,实现“统一技术架构、强化资源整合、促进信息共享、保障良性运行”水利信息化建设的目标,需要对水利业务进行综合分析与抽象,构造水利信息资源共享与业务协同的规范框架,形成指导与协调水利信息资源、业务系统、运行支撑、安全系统等建设的技术架构。本文就水利信息资源共享与业务协同的实现进行初步的探讨和研究。
水利业务协同应用主要有数据共享和流程协同2种模式[1]。1)“数据共享”模式是指不同业务间仅通过共享数据即可满足需求的协同模式。数据资源以某种方式或途径在域内或跨域进行共享,这种模式也可称为“单向信息共享模式”。2)“流程协同”模式是指不同业务间不仅需要共享数据,而且需要共享或组合业务操作流程的协同模式。各业务进程间环环相扣、互为制约、紧密协同,这种模式也可称为“在信息双向共享前提下的业务协同模式”。“流程协同”又表现为域内或跨域业务协同。
水利业务应用分为“日常业务”与“协同与综合分析”2个基本层次[1]:1)各个部门或机构(域内)以业务需求为驱动,设计开发相对独立的域内业务系统属于日常业务范围。日常业务系统为协同与综合分析层次的建设与应用提供资源基础。2)协同与综合分析型水利业务系统是满足水利领域内部分或全部职能域的协同和信息综合分析需求。建立在统一的信息资源交换与共享服务平台上,以综合的、主题化的信息集合和流程协同为基础,具有很强的智能化人机交互界面,并发展为综合集成决策支持系统。以业务协同为支撑,以综合分析为目标,具有全局特征。把业务协同应用的范围扩大到广域网,形成“资源物理分散、业务逻辑集中”的跨域分布式协同应用体系,在信息资源交换与共享服务平台下实现域内和跨域分布式协同应用,跨域分布式协同应用如图1所示。
图1 跨域分布式协同应用
在水利数据中心的基础上,把信息资源共享交换、业务流程处理方法和计算模型组件化并按照标准接口封装为 Web 服务。依托信息资源交换与共享服务平台,基于局域网或水利信息网络实现域内、域外组件服务的注册与发布;通过对软硬件资源的统一管理,构造高性能平行计算环境;运用服务组合与流程管理,按主题提供信息、按需要提供计算、按个性化提供决策等服务,并基于统一门户发布应用。分布式协同应用体系架构如图2所示。
水利业务组件是构建分布式协同应用体系的基础,按一定标准,把水利业务核心模型或信息处理逻辑封装成一个个的处理单元,即服务组件。组件是构建应用系统的核心单元,具有复用、封装、组装、定制、自治性、粗粒度、集成和契约性接口等特征。组件可以被个性化的部署并封装为标准 Web 服务组件存储于数据中心。
图2 分布式协同应用体系架构
水利业务组件化的目的是使信息服务集成化、业务应用标准化、系统构建灵活化、应用系统个性化,分为2类组件:1)表现层组件,用于展现信息内容(表格、统计图形、报表、GIS …),基于标准的框架结构,方便与门户或平台集成;2)业务层组件,基于 WebService 标准,符合平台接口规范的业务实现,可以根据业务需要扩展。
水利数据分中心是水利信息汇集、存储与管理、交换和服务的中心。依托现有水利信息化基础设施,以基于空间(地理与知识空间)的信息融合和模型的组件化为基础,以支持业务协同处理为重点,以综合集成应用为支撑,整合重构各类水利信息资源,开展业务应用组建库(水利业务模型组件化)、主题库(由事件驱动,形成应用主题)、流程库(解决问题的过程或方法、信息融合等图形化)的建设,把水利数据中心建设成为面向服务的主题数据中心。水利数据中心结构如图3所示。
Web 组件服务是基于服务提供者、请求者、注册中心3个角色,和发布、发现、绑定3个动作构建的。服务提供者为用户或其他服务提供已有的功能;服务请求者利用 SOAP 消息向服务提供者发送请求以获得服务;服务注册中心是把服务请求者与合适的服务提供者联系在一起,充当管理者的角色。Web 组件服务体系结构如图4所示。
图3 水利数据中心结构
图4 Web 组件服务体系结构
1)服务提供者:服务提供者发布自己的服务,并且对使用自身服务的请求进行响应。2)服务注册中心:也称服务代理,用于注册已经发布的服务提供者,对其进行分类,并提供搜索服务。3)服务请求者:服务请求者利用服务注册中心查找所需的服务,然后使用该服务。
服务提供者用 WSDL 描述其提供的服务并将该服务的相关信息发布在服务注册中心(以下简称中心)上,服务请求者通过 UDDI 向中心查找它所需要的服务,并将中心返回的结果与相关服务绑定起来以定位并调用服务提供者提供的服务。
水利信息应用是相关水利业务协同工作的决策过程,需要各业务流程良好配合,由于业务已封装为组件服务,要完成一个具体的应用必然涉及到组件服务组合。
组件服务组合是将相对简单的服务合成为1个更为复杂的服务的技术[2]。通过服务组合可将已有服务组合为1个新服务,以增加服务的功能和性能。
组件服务组合从方法上可以分为静态和动态组合2种[3]。1)静态组合是指在组合服务设计期间对给定的服务进行针对于特定软件环境的组合设计,过程包括筛选,连接,编译和部署,即手动组合目标、相关服务和交互方式。2)动态组合是指 Web 服务组合是通过动态发现、集成,并按特定的顺序执行已存在的服务来创建新的客户服务,从而满足客户的需求,即根据用户动态定义的组合目标、语义描述和约束,以及可用资源和服务,在运行时创建组合方案。
从组件之间的执行条件、耦合度和关联性出发,组件服务组合从过程上可以分为顺序、平行和混合组合3种方式。顺序组合形式中前一个组件是下一个组件执行的先决条件;平行组合中组件间相互不关联,可以平行执行;混合组合是上述2种形式的混合,也是服务组合中灵活性最好,最复杂的一种。组件组合3种方式如图5所示。
图5 组件组合3种方式
针对水利业务协同应用的特点,业务组件服务组合又可以分为域内、跨域组合2种形式。域内组合即在1个机构内部通过调用域内的组件组合成新的服务;跨域组合是通过调用域内和域外的组件按照特定的方式组合成新的服务。
信息资源交换与共享服务平台是分布式协同应用体系的核心,是实现水利业务协同应用的关键,包括信息资源目录系统、软硬件资源管理平台、组件服务注册与发布平台和可视化综合集成决策服务平台。
信息资源目录系统提供资源目录的查询、浏览;软硬件资源管理平台实现对服务器、存储、数据库等基础资源的统一调度管理,构造高性能平行计算环境;服务注册与发布平台提供资源共享和业务组件的注册与发布,以及服务的访问接口,实现组件服务的发布管理;可视化综合集成决策服务平台是业务组件的调度管理平台,描述应用主题,通过服务组合和流程管理,关联数据、信息和决策,提供信息、计算和决策等服务,实现信息资源交换与共享,业务协同应用。
现代水利事业的发展对水利信息化提出了更高的要求,迫切要求信息资源共享和业务协同应用。本文对水利业务协同应用方面进行了探讨和初步实践,提出了分布式协同应用体系,但限于水利信息化问题的复杂性,还有待于在今后的工作和实际中进一步的深入研究。
[1] 水利信息化顶层设计编制组.水利信息化顶层设计[R].北京:水利部信息化工作领导小组办公室,2009
[2] 饶元,冯博琴,李尊朝.基于 Web Services 的服务合成技术研究综述[J].系统工程与电子技术,2005,27(8):1481-1489.
[3] Schahram Dustdar,wolfgang Schreiner.A survey on web services composition[J].International Journal of Web and Grid Services,2005(1): 1-30.