【IT168 技术文章】
1、引言
中国远程开放教育信息系统是由多个按照业务发展的需要逐渐开发的信息系统组成,如电大在线,电大教务管理系统,多媒体教学平台,从而形成了多个信息孤岛。为了满足远程开放教育发展的需要,我们依据SOA策略重新对中国远程开放教育信息系统进行规划,其中最基础的工作是基于SOA企业信息系统参考架构进行数据的集成和重构。
中国远程开放教育信息系统的数据来源于分散在各个网络节点中的数据库,这些数据的主要特征表现为分布性、自治性、异构性。分布性是指数据存放在分散的、彼此可相互通信的多个省;自治性是指各部门信息系统都运行着自己独立的的应用程序,在被集成之后局部数据源仍然保持着一定程度的独立性;异构性主要指运行环境的异构和数据模型的异构[1] --。
基于SOA构建远程开放教育信息系统首要的任务是解决分布式异构数据的集成,建立统一的综合的业务数据模型,实现不同数据源的统一视图并提供服务。从而使得系统的各类业务应用与底层数据源隔离,使得各种业务流程能通过统一的接口存取各种异构数据源。
2、基于SOA的远程开放教育信息系统参考架构
依据现有的SOA参考架构,我们提出了基于SOA的远程开放教育信息系统参考架构。该架构分为数据服务层、业务服务聚合层和复合应用层,并由服务基础环境支持系统的运行。
数据服务层:建立统一的业务数据模型,为整个信息数据提供一个统一的数据视图,隔离应用与底层数据源,以标准存取方式提供服务给其它层服务或用户调用,使得应用界面与各数据源是松耦合的。
业务服务聚合层:根据业务逻辑,对核心业务进行梳理和整合,为上层应用提供相对独立的业务服务,同时从业务活动分离抽象可共享的、基于标准的服务。
复合应用层:根据业务流程的变化,面向客户需要和业务过程组成较高层次的复合应用,通过调用下层提供的业务服务,最后展示给用户。
服务基础环境:提供服务交互所需的消息传输、转换和路由,对服务进行集中管理和监控,包括服务的目录、版本、配置等。
基于SOA的远程开放教育信息系统参考架构是以数据服务层为基础,以业务数据模型为驱动的,良好的业务数据模型将为整个系统的开发和运行提供保障。该架构的特点是运作的敏捷性、信息需求的多样性、数据系统的异构性以及良好的扩展性。
3、远程开放教育信息系统业务数据模型
业务数据模型是系统企业数据的统一表现实体,在全企业范围内得到一致性的使用;提供业务数据的完整视图和详细描述信息,提供信息的标准存取方式,完成企业数据服务的定制和封装[2]。
3.1 业务数据模型建模
业务数据模型可从数据实体服务层、服务聚合层、跨组织服务聚合层三个层次进行描述,这三个层次是从具体的组织内数据实体视图到虚拟化的、面向用户的跨组织数据视图进行区分的:
数据实体服务层:为系统提供数据实体的统一视图,并将数据都封装成为定义简单的、原子的数据实体服务模型。
在不同的业务系统中,数据以不同形式存在,使用不同的标准进行建模和编码,对整个系统来说,数据实体有全局的,有局部的,有原子的,有组合的。因此,在数据实体服务层,要重新建立一个全新的、统一的、集成的数据模型,重新定义新的关联和数据结构,对数据实体的描述也要进行扩充,除了其本身的固有的属性,还应包括每个数据实体的位置、来源、用处、限制和数据存储模型,以及对这些数据实体服务的描述,当然,这些数据服务仅仅是对数据实体的一些简单操作。在分析抽象时数据实体时要从整个系统的高度去看,而不是从某个业务领域去看,主要使用自顶向下的分析建模方法,要按照数据实体的不同功能和来源进行分类和分层,分析抽象出最原子、最底层的数据实体,对每一种数据实体要描述清楚其局部模式和全局模式之间的映射关系。新的数据模型将以全新的体系结构图开始,是系统内所有数据实体从各个角度的描述,是对数据实体服务的描述。
数据实体服务层向上发布其元数据信息,提供的是较低层的、细粒度的数据服务。
数据聚合服务层:基于数据实体服务层,按照某个部门或特定业务领域制定的某种聚合策略,建立聚合服务模型。