专利名称:一种分布式异构信息系统互操作方法
技术领域:
本发明属于信息技术(IT)领域,特别涉及多个相关信息系统(所涉及的多个信息 系统可以是同构的和异构的;可以是按照业务组织要求分布部署的)之间实现互连和业务 协同的互操作方法。
背景技术:
随着信息技术的飞速发展,组织中的各类生产、经营、管理业务已大量由传统手工 作业方式逐步升级为以信息技术为基础的信息化作业方式,为各类业务建立相应的信息系 统已成为大型组织、特别是行业性组织提升市场竞争力的重要手段。但是,由于处理各类业 务的信息系统建设时期、采用技术、涉及业务、开发人员不同,以及业务组织和管理职责的 分工不同,信息系统之间相互独立,组织内部形成了一个个的信息和业务孤岛,难以根据组 织内业务管理和相互协同的需要整合成统一整体。为解决信息孤岛问题,数据交换和数据集成技术得到了迅速发展,并逐步开发出 以建立数据中心、统一数据管理为目标的数据集市技术和以业务信息系统之间进行数据共 享和数据交换为目标的数据传输、数据同步、数据集成技术。为解决业务孤岛问题,业务协同技术得到了越来越多研究人员的重视,并开发出 中间件、工作流、代理、服务调用等技术,通过利用这些技术,信息系统之间的业务协同问题 有了初步的解决途径。但是,由于业务协同需求异常复杂,上述技术的应用只能针对个别业务协同的特 殊需要开发相应的信息系统协同部件,这种业务协同实现方式,存在下列问题(1)在组织的管理不断发展改进的过程中,业务协同需求将会不断演变,演变方向 和趋势难以预见,仅仅简单使用上述技术针对个别业务的特殊协同需要开发信息系统协同 部件来实现业务协同,将使业务协同的调整非常困难,不能满足业务管理变革的需要。(2)当组织内各类业务的信息系统都需要进行业务协同时,按照这种方式开发的 业务协同部件也将非常多,且与业务个数η的平方成正比,开发和管理都将变得异常复杂, 特别是业务数据访问授权将由业务信息系统进行管理和控制,不符合按岗位和职责授权的 业务组织惯例。(3)当组织之间需要进行业务协同时,为提高业务协同的自动化水平,按照这种方 式开发的业务协同部件只能以后台服务的方式运行,且组织之间的业务协同部件不能被多 个组织共享,也难以适应组织之间管理自治和按照标准化方式进行信息交换的要求。针对上述问题,本发明旨在建立一种普遍适用的信息系统互操作方法。利用该方 法,可以实现任意两个或多个信息系统之间跨地域的业务协同。
发明内容
本发明的目的是建立一种普遍适用的信息系统互操作方法,通过该方法,可以采 用统一的方式实现任意两个或多个信息系统之间的业务协同,这种协同可以在组织的部门内部实现、可以是跨地域实现、可以在组织之间实现、也可以针对大型行业应用跨地域分布 的特点采用分级分布的方式实现。为实现上述目的,本发明针对多信息系统业务协同需求,提出一种分布式异构信 息系统互操作方法(本方法)。本发明将业务协同过程中信息系统之间可进行交换和共享的业务数据和业务服 务所构成的集合称为互操作对象,互操作对象可以有多种存在形式。如数据库、文件、数据 代理、服务代理等。互操作对象中包含两种提供业务协同信息的资源,一种为数据,这些数据可以通 过标准的操作方法进行访问(例如数据库的结构化查询语言SQL);另一种为服务,这些服 务可以象应用程序接口(例如API) —样被调用,并返回服务结果。互操作对象中提供的共 享和交换业务信息的数据和服务统称为互操作资源。互操作对象、互操作资源与信息系统 实体对象的关系见图1。两个或多个信息系统之间的业务协同是以交换和共享数据的形式进行的,并在进 行数据共享和交换的过程中,完成业务要求的处理过程。信息系统之间进行数据共享和交 换、并完成业务处理的程序称为互操作策略。互操作策略通过调用互操作对象支持的对数据的操纵方法和调用互操作对象提 供的服务,实现多个信息系统之间的业务协同。互操作策略可以被用户应用系统调用,或按 照执行方式的定义自动执行。发起执行互操作策略的行为称为互操作请求,执行互操作策 略并提供策略执行结果的称为互操作服务。互操作策略是对信息系统协同业务的描述,主要包含四部分功能数据抽取、数据 转换、数据封装和数据导出。数据抽取用于从互操作资源中读取要交换和共享的数据。根据互操作对象类型, 互操作策略自动选取相应的数据操纵驱动(例如数据库的ODBC、JDBC等)和数据读取方法 (例如数据库的SQL SELECT语句)从互操作资源中读取满足要求的数据。数据转换用于按照业务协同的需要进行数据的重新组装、格式变换和编码变换, 以满足信息系统之间对数据语义的共同理解要求。根据数据转换能力的要求,可以集成四 则运算、逻辑运算、关系运算、特殊函数和运算过程控制(例如循环、条件语句等)。数据封装是将完成转换的业务数据按照用户的格式要求打包成数据流,以便目标 信息系统接收和处理业务协同数据。根据用户系统对数据封装和理解数据语义的要求,可 以采用国际标准(例如XML)和用户自己定义的格式进行封装。在数据封装中包含解封的 功能。数据导出是按照业务协同的要求,将封装好的数据传送给指定的互操作对象(也 可以是应用系统)。根据业务协同的需要,数据导出功能可以将封装的数据写入互操作资源 (数据库、文件、数据代理、服务代理),用户信息系统按照业务协同的需要接收和处理交换 后的数据。互操作策略可以引用所属互操作系统中定义和描述的互操作资源和其它互操作 系统中定义和描述的互操作资源。对互操作资源的操纵(读写和服务调用)由承载该互操 作资源的互操作系统完成。互操作策略可以被其它互操作策略调用,被调用的互操作策略可以与调用者属于同一个互操作系统,也可以属于不同的互操作系统,被调用的互操作策略在所属互操作系 统中执行,并将执行结果传送给调用者。多个信息系统通过互操作策略实现业务协同的过程见图2。承载互操作对象、互操作资源和互操作策略定义信息,支撑互操作策略执行完成 业务协同的系统称为互操作系统。根据业务互操作的需要,互操作系统可以部署多个。互操作系统及其上所描述和定义的互操作对象、互操作资源所属的信息系统构成 一个整体,称为互操作域。互操作域内的信息系统可通过该互操作系统实现业务协同。在 相同互操作域中的两个信息系统进行的互操作称为同域互操作,不在相同互操作域中的两 个信息系统进行的互操作称为跨域互操作。互操作系统之间存在三种关系第一种为相邻关系,相邻的两个互操作系统可以 相互直接传送互操作请求和互操作服务数据;第二种为相通关系,相通的两个互操作系统 可以相互传送互操作请求和互操作服务数据,但这些数据的传送必须通过相邻关系构成的 路径上的互操作系统转发这些数据来实现,称该路径为互操作路由;第三种为相隔关系,相 隔的两个互操作系统不能相互传送互操作请求和互操作服务数据。相邻关系是相通关系的特例。具有相邻关系的两个互操作系统必须在同一个局域 网内或存在网络路由可以使两个互操作系统之间建立网络连接。具有相通关系的两个互操作系统之间不一定能够建立网络连接,即不必在同一局 域网内,也不必存在建立网络连接的网络路由,但一定可通过相邻关系构成一条路径,利用 该路径上互操作系统的转发功能实现相通关系的两个互操作系统之间互操作请求和互操 作服务数据的传送。相隔的两个互操作系统之间不存在互操作路由,因此相互之间不能进行互操作请 求和提供互操作服务。即不存在互操作路由的两个互操作系统之间即使存在网络路由,也 不能通过两个互操作系统之间的互操作请求与互操作服务来实现两个互操作系统各自对 应的信息系统之间的业务协同,从而发挥逻辑隔离的作用。互操作策略除可以引用与互操作请求属于同一互操作系统(称为源互操作系统) 上的互操作对象、操纵相应的互操作资源外,还可以引用其它互操作系统(称为目标互操 作系统、目标互操作系统可以是多个)上的互操作对象、操纵相应的互操作资源来实现业 务协同,但必须保证源互操作系统与目的互操作系统之间存在互操作路由。当源互操作系统和目的互操作系统不是同一个互操作系统时,源互操作系统将互 操作请求沿互操作路由发送给目的互操作系统,目的互操作系统执行该互操作请求,并将 执行结果沿互操作路由反馈给源互操作系统。互操作策略引用互操作资源的语法如下[<互操作系统名>.] < 互操作对象名 >. < 互操作资源名>当源互操作系统与目的互操作系统属于同一个互操作系统时,中括号中的“〈互 操作系统名 >.”可以不书写。通过互操作路由实现跨互操作系统操纵互操作资源的互操作 请求与服务的执行流程见图3。互操作系统主要包含三个方面的功能从互操作对象接收并认证互操作请求(自 动执行的互操作也可以由互操作系统发起);按照互操作请求执行相应的互操作策略;按 照互操作路由向相邻互操作系统转发互操作请求和从相邻互操作系统接收互操作服务结
7果。互操作系统功能及之间的关系见图4。互操作系统可以有三种互操作模式简单互操作、对称互操作和分级互操作。简单互操作由单个互操作系统构成,互操作系统中只描述单个互操作域中各信息 系统的互操作对象、互操作资源和互操作策略,并支持该互操作域中各相关信息系统之间 的业务协同。简单互操作模式运行的互操作系统中不描述任何相邻互操作系统信息。见图 5。对称互操作由两个或多个定义为对称互操作模式运行的具有相邻关系的互操作 系统构成,每个互操作系统中描述各自互操作域内各信息系统的互操作对象、互操作资源、 互操作策略和跨域互操作策略,并通过域内互操作和跨域互操作支持各相关信息系统的业 务协同。对称互操作运行模式要求所有服务的互操作请求必须来自对称的相邻互操作系 统,来自互操作对象的互操作请求(或自动发起的互操作请求)必须由对称配置的互操作 系统提供互操作服务,来自其它位置的互操作请求将被拒绝。对称互操作中可以包含简单 互操作。对称互操作模式运行的互操作系统中除要定义对称互操作模式外,还需要描述对 称部署的相邻互操作系统信息。见图6。分级互操作由两个或多个定义为多极互操作模式运行的具有相邻关系的互操作 系统构成,每个互操作系统中描述各自互操作域内各信息系统的互操作对象、互操作资源、 互操作策略和跨域互操作策略,并通过域内互操作和跨域互操作支持各相关信息系统的业 务协同。分级互操作中包含简单互操作。分级互操作模式运行的互操作系统中除要定义分 级互操作模式外,还需要描述相邻互操作系统信息。分级互操作的构成见图7。根据业务组织和协同的需要,三种互操作运行模式可以混用。通过相邻关系描述,可以形成以互操作系统为节点、以相邻关系为边的有向图,该 有向图可以用二维方阵表示。一般“金字塔”型的以单位为节点、以行政直属关系为边构成 的业务组织图属于该类有向图。通过上述发明确定的互操作系统的功能、运行模式、相互关系;互操作对象、互操 作资源与实体系统的对应关系;互操作策略的功能、操纵互操作资源的方法;以及同域互 操作、跨域互操作方法,按照这些发明可以确定一种支持复杂分布的多个信息系统之间业 务协同的统一规范的支撑系统,并实现对业务协同的统一维护与管理,减少业务协同开发 人员对网络、数据驱动、存储管理、系统调用等背景知识的依赖,避免传统的需要针对各业 务协同需求开发和维护大量专用程序的工作。
图1互操作对象、互操作资源与信息系统实体对象的关系
图2通过互操作策略实现业务协同的过程
图3沿互操作路由操纵互操作资源的流程
图4互操作系统功能及其相互关系
图5简单互操作运行模式
图6对称互操作运行模式
图7分级互操作运行模式具体实施例方式本发明为实现业务协同实施分布式异构信息系统互操作的步骤如下步骤一、根据信息系统分布的地域和业务构成,确定互操作系统分布和互操作域 划分;步骤二、根据信息系统分布及业务关系,确定分布的互操作系统运行模式;步骤三、根据信息系统业务协同关系,确定分布的互操作系统的相互关系;步骤四、根据信息系统及其业务协同的数据需求,确定每个互操作域内互操作系 统的互操作对象和相应的互操作资源;步骤五、根据各信息系统业务协同的业务逻辑,编写与业务协同相应的互操作策 略;步骤六、根据各信息系统业务协同的接口要求、时效性要求,确定互操作策略的执 行方式。
权利要求
1.一种分布式异构信息系统互操作方法,其特征在于,针对信息系统之间业务协同的 需求,可以采用一种普遍适用的互操作方法实现两个或多个信息系统之间的业务协同,这 种协同可以在组织(企业、政府或社团)内部实现、跨地域实现、在组织之间实现、或针对大 型行业应用跨地域分布的特点采用分级分布的方式实现。
2.如权利要求1所述的一种分布式异构信息系统互操作方法,其特征在于,进行协同 的两个或多个业务相关信息系统的运行环境(例如操纵系统、网络等)、运行模式(例如客 户端/服务器模式、浏览器/服务器模式等)和数据存储方式和结构(例如数据库、文件 等)可以是同构的、也可以是异构的。
3.如权利要求1所述的一种分布式异构信息系统互操作方法,其特征在于,在业务协 同过程中信息系统之间能够进行交换和共享的归纳为数据和服务两种,统称为互操作资 源,承载互操作资源的为互操作对象,互操作对象可以有多种存在形式,例如但不限于数据 库、文件、数据代理、服务代理等。
4.如权利要求1所述的一种分布式异构信息系统互操作方法,其特征在于,两个或多 个信息系统之间的业务协同是以执行互操作策略实现的,由互操作策略通过引用互操作资 源完成信息系统之间的数据交换和共享、服务调用,并在进行数据共享和交换、服务调用的 过程中,完成业务协同要求的处理过程,该处理过程包括但不限于数据计算、格式转换、编 码转换、数据重组等。
5.如权利要求4所述的互操作策略,其特征在于,互操作策略主要由数据抽取、数据转 换、数据封装和数据导出四部分功能组成,互操作策略在执行这些功能时根据所引用的互 操作资源和互操作资源与互操作对象的隶属关系,自动加载互操作对象对应的驱动程序。数据抽取功能用于从互操作资源中读取要交换和共享的数据、调用指定的服务;互 操作策略根据引用的互操作资源自动选取相应的数据操纵驱动(例如数据库的0DBC、JDBC 等)和数据读取方法(例如数据库的SQLSELECT语句)从互操作资源中读取满足要求的数 据和调用指定的服务。数据转换功能用于按照业务协同的需要进行数据的重新组装、格式变换和编码变换, 以满足信息系统之间对数据语义的共同理解要求;根据数据转换能力的要求,在互操作策 略中可以集成四则运算、逻辑运算、关系运算、特殊函数和运算过程控制(例如循环、条件 语句等)。数据封装功能是将完成转换的业务数据按照用户的格式要求打包成数据流,以便目 标信息系统接收和处理业务协同数据;根据用户系统对数据封装和理解数据语义的要求, 可以采用国际标准(例如XML)和用户自己定义的格式进行封装。在数据封装中包含解封 的功能。数据导出功能是按照业务协同的要求,将封装好的数据传送给指定的互操作对象 (也可以是信息系统);根据业务协同的需要,数据导出功能可以将封装的数据写入互操作 资源(数据库、文件、数据代理、服务代理),用户信息系统按照业务协同的需要接收和处理 导出的数据。
6.如权利要求3、权利要求4所述的一种分布式异构信息系统互操作方法,其特征在 于,承载互操作对象、互操作资源和互操作策略定义和描述信息,支撑互操作策略执行完成 业务协同的系统构成互操作系统,互操作系统及其所定义和描述的互操作对象、互操作资源、以及互操作对象和互操作资源所属的信息系统构成的整体为互操作域,在相同互操作 域中进行的互操作为同域互操作,不在相同互操作域中进行的互操作称为跨域互操作。
7.如权利要求6所述的互操作系统,其特征在于,互操作系统之间存在三种关系相邻 关系、相通关系、相隔关系。相邻关系具有相邻关系的两个互操作系统必须在一个局域网内或两个互操作系统之 间存在网络路由,两个互操作系统可以通过网络相互直接传送互操作所需数据。相通关系具有相通关系的两个互操作系统之间必然可以通过相邻关系构成一条相邻 序列,通过该序列上相邻互操作系统之间可以传送互操作数据的功能实现相通的两个互操 作系统相互传送互操作数据,称能够实现相通互操作系统之间传送互操作数据的互操作相 邻序列为互操作路由;具有相通关系的两个互操作系统之间不一定存在网络路由(即网络 不一定是相通的),即使存在网络路由,相通的互操作系统之间也不能利用该网络路由直 接进行互操作数据传送,而只能通过互操作系统相邻序列构成的互操作路由传送互操作数 据。相隔关系具有相隔关系的两个互操作系统之间不存在任何相邻关系序列,即不存在 互操作路由,相隔关系的两个互操作系统之间不能传送互操作数据,即使在相隔关系的两 个互操作系统之间存在网络路由,也不能在相隔关系的两个互操作系统之间传送互操作数 据。
8.如权利要求1和权利要求4所述的一种分布式异构信息系统互操作方法,其特征在 于,互操作策略的执行可以由互操作对象中用户发起,也可以通过在互操作系统中定义自 动发起,称为互操作请求,互操作系统执行请求的互操作策略的过程称为互操作服务,互操 作系统执行完请求的互操作策略后将结果反馈给互操作请求者,接收互操作请求的为源互 操作系统、执行请求的互操作策略的为目的互操作系统;在一个互操作请求中,目的互操作 系统可以是多个。
9.如权利要求1和权利要求4所述的一种分布式异构信息系统互操作方法,其特征在 于,互操作策略中可以引用所属互操作系统中定义和描述的互操作资源,也可以引用其它 互操作系统中定义和描述的互操作资源,被其它互操作系统中定义和描述的互操作策略引 用的互操作资源的操纵(读写或服务调用)由承载被引用互操作资源定义和描述的互操作 系统实现;定义和描述互操作策略的所属互操作系统与被引用的互操作资源所属的互操作 系统之间必须是相邻或相通关系(存在互操作路由),该互操作策略才可以被请求执行。
10.如权利要求1和权利要求4所述的一种分布式异构信息系统互操作方法,其特征在 于,互操作策略中可以调用其它互操作策略,但不能存在递归调用,被调用的互操作策略可 以与调用该互操作策略的互操作策略属于同一个互操作系统、也可以属于不同的互操作系 统,被调用的互操作策略由承载该互操作策略的互操作系统执行,并将执行结果反馈给调 用该互操作策略的互操作策略;定义和描述互操作策略的所属互操作系统与被调用的互操 作策略所属的互操作系统之间必须是相邻或相通关系(存在互操作路由),该互操作策略 才可以被请求执行。
11.如权利要求1和权利要求6所述的一种分布式异构信息系统互操作方法,其特征在 于,互操作系统有三种互操作模式简单互操作、对称互操作和分级互操作;简单互操作由 单个互操作系统构成;对称互操作由两个或多个定义为对称互操作模式运行的具有相邻关系定义的互操作系统构成;分级互操作由两个或多个定义为分级互操作模式运行的具有相 邻关系定义的互操作系统构成;根据业务协同和信息系统部署的需要,三种互操作运行模 式可以混用。简单互操作以简单模式运行的互操作系统,只支持该互操作系统中定义和描述的互 操作对象及其所属信息系统之间进行互操作。对称互操作以对称模式运行的互操作系统,要求所有服务的互操作请求必须来自对 称的相邻互操作系统或相通互操作系统,且相通互操作系统的相邻序列上所有相邻关系为 对称相邻关系;来自互操作对象所属信息系统的互操作请求(或自动发起的互操作请求) 必须由对称的互操作系统(且相邻或相通)提供互操作服务;来自其它位置的互操作请求 将被拒绝服务。分级互操作以分级模式运行的互操作系统,可以根据信息系统分布部署和不同层次 业务协同的需要,以互操作系统为骨架实现信息系统的树状或网状部署。
12.如权利要求1和权利要求6所述的一种分布式异构信息系统互操作方法,其特征在 于,以对称模式运行的互操作系统和以分级模式运行的互操作系统除需要设置其运行模式 外,只需要设置其相邻互操作系统信息,相通关系由互操作路由的生成程序自动获得。
全文摘要
本发明公开了一种分布式异构信息系统互操作方法,使可采用统一方式实现任意信息系统之间的业务协同,这种协同可以在组织内部、组织之间、或跨地域分布分级的方式实现。该方法将信息系统业务协同所进行的数据交换和共享归纳为数据和服务两种互操作资源,互操作策略通过数据抽取、数据转换、数据封装和数据导出四个主要对互操作资源的操纵实现对信息系统协同业务逻辑和协同策略的描述,通过执行互操作策略实现业务协同用户界面的规范化和协同业务的自动化。该方法实现的互操作系统之间可以有相邻、相通和相隔三种关系,有简单、对称和分级三种互操作模式,通过这三种关系和三种模式,可采用统一的方式实现复杂分布式信息系统的跨域互操作。
文档编号H04L29/08GK102148862SQ201110028640
公开日2011年8月10日 申请日期2011年1月27日 优先权日2011年1月27日
发明者唐堃, 张遂征, 葛大伟, 袁宝军, 齐新华 申请人:北京宏德信智源信息技术有限公司