16.2. GIS领域的体系结构和构件

发布日期 : 2025-10-25 13:33:21 UTC      

访问量: 1580 次浏览

按照应用目的,地理信息系统可以分为区域地理信息系统、专题地理信息系统以及地理信息系统工具, 它们共同组成了GIS领域(Domain)。 所谓领域,是指共享某种功能性(Functionality)的系统或应用程序的集合,换言之, 领域表现了一组应用系统共性的方面。 对于地理信息系统而言,其共享的功能就是对空间数据输入、管理、分析和表现, 而这恰好是地理信息系统工具所提供的功能(图16-6)。

/media/sphinx_tuto/img/img_1_x7j.png

图 16.6 图16-6:GIS领域 #

与具体应用领域相对应,对于领域,可以实施领域工程,得到领域模型, 并建立领域特定的软件体系结构( DSS A,Domain-Specific SoftwareArchitecture)。 DSS A是能够适应领域中多个系统的需求的一个高层次的设计,在开发具体应用系统时, 可以利用 DSS A将领域构件(Component)连接和组织起来,以支持软件复用,提高软件开发的效率和质量。

对于地理信息系统,实施领域工程,得到 DSS A,不仅可以指导具体应用系统的开发, 而且 DSS A可以直接作为地理信息系统工具的软件体系结构。

地理信息系统的核心功能包括空间数据的输入、管理、分析以及表现, 并且这些功能形成了一个比较完全的数据处理流程,此外考虑到与遥感以及 全球定位系统 的结合, 形成如下的系统结构(图16-7)。 该视图更多地体现了地理信息系统的业务逻辑,为了适用于具体的应用系统, 该结构可以被特化——类似于面向对象中,从父类派生一个子类——形成更加具体的体系结构。

依赖于 DSS A,可以将构件组装起来,形成具体的应用系统,基于构件的技术已经成为软件开发技术的主流, 它从面向对象技术发展而来,是开发高效、低成本程序的重要实现途径。

为了能够通过组装以构造系统,构件必须能够互相合作,即具有互操作性,这是通过定义构件的接口规范来实现的。 对于构件而言,除了互操作性之外,还要支持分布式的网络计算,即构件的互操作可以是基于异种平台的, 其实现需要分布计算平台(DCP-DistributedComputing Paltform)的支持。

/media/sphinx_tuto/img/img_2_x94.png

图 16.7 图16-7:GIS领域体系结构:一个工作流视图 #

目前存在着多种构件技术标准, 其中OMG(对象管理组织)的CORBA(公共请求对象代理体系结构-Commonobject request brokerarchitecture)和Microsoft的OLE/COM/DCOM技术是其中两个主要的、被广泛采用的标准。

COBRA定义了一个带有开放软总线的分布式结构,在这一结构中,来自不同厂商、运行于不同操作系统上的对象,能够进行互操作。CORBA对象的互相通信通过对象请求代理(ORB,ObjectRequestBroker)为中介,可以在多种流行网络通信协议上实现。接口描述语言(IDL,InterfaceDescriptionLanguage)用于描述对象接口,它与语言无关,使得所有CORBA对象以一致的方式被描述。

Microsoft的DCOM(分布式对象构件模型,Distributed Component ObjectModel)技术是对原有的COM技术的扩展,以支持在网络上不同计算机的对象之间的通信。COM定义了接口的二进制标准,包括接口交互、管理对象及其资源等等。而DCOM通过增加网络协议的支持,使得对象可以通过网络互操作。DCOM技术很好的支持复用,位置独立,可扩展等,并且其执行性能较好,目前被基于Windows平台的软件开发商所广泛支持。

/media/sphinx_tuto/img/img_3_xkw.jpg

图 16.8 图16-8:基于DCP的GIS体系结构和构件:一个实现视图[OpenGIS Consortium] #

对于GIS软件开发,构件技术带来的除了实现复用、支持分布的互操作外,还具有以下两个方面的优势 :

  1. 数据是GIS中最为重要的部分,目前各个软件数据格式不同,不便于共享和保护用户已有投资,构件技术通过互操作的支持可以实现数据共享;

  2. 地理信息系统功能的涵盖范围非常广泛,包括图形操作、图像处理、地图制图、数据库管理、投影变换等等,它们涉及不同的专业领域。利用构件技术,可以将不同专业领域的具体功能实现为构件,组装形成软件系统,避免了需要同时学习多个专业领域的状况。

图16-8给出了一个GIS体系结构以及构件的概念模型,在该模型中,体系结构具有多个“插槽”, 而构件是“可插入(Plugable)”的,这种类似于计算机主板的结构,通过DCP的支持, 依照图16-7中所描述的工作流结构,可以很容易的实现跨平台的地理信息系统软件。

《地理信息系统原理、技术与方法》

 102

最近几年来,地理信息系统无论是在理论上还是应用上都处在一个飞速发展的阶段。 GIS被应用于多个领域的建模和决策支持,如城市管理、区划、环境整治等等,地理信息成为信息时代重要的组成部分之一; “数字地球”概念的提出,更进一步推动了作为其技术支撑的GIS的发展。 与此同时,一些学者致力于相关的理论研究,如空间感知、空间数据误差、空间关系的形式化等等。 这恰好说明了地理信息系统作为应用技术和学科的两个方面,并且这两个方面构成了相互促进的发展过程。