Geographical Science Research
Vol.05 No.02(2016), Article ID:17474,5 pages
10.12677/GSER.2016.52006

The Design and Implementation of Cooperation GIS

Zhen Wang1, Xiao Wang1,2, Jing Li1, Miao Qin1, Bo Zhang1

1School of Resource and Environment, University of Electronic Science and Technology of China, Chengdu Sichuan

269250 Troops, Urumqi Xinjiang

Received: Apr. 1st, 2016; accepted: Apr. 30th, 2016; published: May 3rd, 2016

Copyright © 2016 by authors and Hans Publishers Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY).

http://creativecommons.org/licenses/by/4.0/

ABSTRACT

Geographic information is complex and diverse, but most of our work is in a specific group, so it is required that the members collaborate together to accomplish a goal. With the development of the computer industry, there is a kind of new geographical information system based on common co- ordination and cooperation of geographic information to complete a task, i.e. cooperation GIS, also referred to as coGIS, comes into being. This paper introduces the development framework, overall design and detailed design steps of CoGIS which uses the components of ArcGIS Engine, and explores the development models of CoGIS.

Keywords:CoGIS, Plug-In GIS, Functional Design

协同GIS的设计与实现

王真1,王潇1,2,李静1,秦淼1,张波1

1电子科技大学资源与环境学院,四川 成都

269250部队,新疆 乌鲁木齐

收稿日期:2016年4月1日;录用日期:2016年4月30日;发布日期:2016年5月3日

摘 要

地理信息是复杂多样的,因此大多数地理信息系统的功能都是针对特定的用户群体,所以更要求由群体成员之间相互协作共同完成一项目标。随着计算机行业的发展,一种基于地理信息共同协调合作来完成某项任务的新型地理信息系统,即协同地理信息系统(Cooperation GIS, 简称CoGIS)应运而生。本文介绍了利用ArcGIS Engine的组件式协同地理信息系统的开发思路、总体设计方案、详细设计步骤,并且探索了协同式GIS开发的模式。

关键词 :协同地理信息系统,组件式地理信息系统,功能设计

1. 引言

地理信息的记录过程一直存在较高的复杂性,随着软件技术的不断发展、网络技术的普及,地理信息新的记录方式即地理信息系统(Geographic Information System,简称GIS)的应用领域和服务对象不断扩展和深化。社会对GIS的需求要满足分布在不同领域、不同部门的空间数据可以实行共享和互操作,使得空间信息不再局限于单一的用户,普通民众也能容易地访问和使用空间信息。正因如此,用户要求GIS由传统的集中封闭的空间数据向新兴的分布式、开放系统的数据类型方向发展,地理信息系统也正在逐渐向开放网络环境下集成的地理信息服务(Geographic Information Service)方向发展,协同地理信息系统随之产生。由此,将CoGIS定义为一组或多组异地的用户,借助计算机及其网络技术,于地理信息共同协调与合作来完成一项任务 [1] 。

2. 协同GIS研究现状及存在问题

当前,在GIS领域已经出现一些支持协同工作的应用系统。蒋捷等认为,近年来我国许多城市的土地管理部门纷纷建立的基于GIS的事务处理系统,其实质上是一种基于GIS的计算机支持群体协同工作系统 [2] 。Satoshi Oyma等人在京都(Kyoto)数字城市的项目中实现了多Agent的各类信息的协作互取 [3] 。国家防汛抗旱总指挥部、水利部、国家测绘局、国家气象局和科技部遥感中心等部门联合研建的“国务院防汛气象信息系统”也是一个典型的分布、协同式GIS [4] 。

但是当前GIS平台在支持协同工作方面,相比较应用系统而言仍较为落后。现有的GIS基础平台大都只具有部分协同功能,但并非是真正意义的协同GIS基础平台。蒋捷等提出协同GIS系统的概念框架及设计制约着其应用的深入发展 [2] 。Meissner等人呼吁需要在集成的灾害管理和交流信息系统中需要协同GIS的帮助 [5] 。2003年,程承旗等指出协同GIS将是GIS发展的一个重要的趋势 [6] 。可见,有关协同GIS的研究尚处于初级阶段。

3. 协同GIS的设计方法

协同GIS与传统地理信息系统有着天然的联系,同样由计算机硬件及其软件,地理数据和系统的管理与操作人员组成 [7] ,其中地理数据是实现地理信息协同应用的基础,空间数据协同编辑是协同GIS的重要组成部分 [8] 。

3.1. 协同GIS的协作机制

在同一时间,参与协作的人们利用协同GIS围绕一个共同的目标进行讨论,进行信息交换,通过协商达成共识,作出一致的决定,共同完成任务,按这种方式完成任务而提供服务的协同GIS称为同步协同GIS。而经过先后参与到事务的不同阶段,共同完成事务的处理,这种用于解决此类问题的协同GIS称为异步协同GIS [9] 。传统的矢量数据编辑更新工作通常分为四个阶段 [10] :包括准备阶段,实施阶段,检查验收阶段以及成果上交阶段。但是传统矢量数据编辑工作模型中存在着种种问题,首先,数据是以文档的形式存储,本地数据共享仅仅是简单的文档共享。其次,质量检验方式单一,此类方式可能不能对同一个任务的不同版本进行比较。最后,对数据质量的检查过于工序化等。利用CoGIS的方式进行协作开发,满足不同任务的质量需求,是解决传统数据编辑问题的最佳方式之一。

3.2. GIS图层的锁定与解锁机制

基于实际需求以及系统效率的考虑,协同成员间的同步协作采用显示交互。当协同操作用户登录子系统后,并选定编辑的图层后,该图层转变为协同图层编辑对象 [11] 。为避免协同编辑时用户直接产生冲突,文章中所研究的系统采用图层加锁的办法控制用户权限级别,以解决冲突问题。针对协同工作中的问题,需要采用一定的并发控制策略 [12] 。解决由于多用户访问以及在协同编辑时产生的并发操作冲突问题,即图层的锁定和解锁问题。传统加锁法,它的设计和实现较为简单,被使用较为广泛的由GreifL,seligerR等人提出的Tickle [13] 锁定解锁方法。上述这些方法从不同侧面存在着用户界面和控制界面之间的冲突问题,为了避免协同编辑中的多种不一致问题,周洋欧等人提出了基于动态锁技术的协同编辑算法 [14] ,这个算法的核心思想是:先实现操作,在完成操作之后对操作进行确认。

4. 协同GIS的总体设计实现

根据系统要求的功能和特点,文章中研究设计的协同地理信息系统的总体设计如图1所示。系统包含以下窗体:主窗体(Main窗体),系统信息窗体,反馈窗体(Feedback窗体),矢量数据编辑,权限管理等窗体。整个系统由研究小组成员共同完成,其中主要设计的窗体有三个,主窗体窗体,系统信息窗体,信息反馈窗体。主窗体由主菜单、Engine平台插件、右键菜单三部分构成。接下来从窗体和功能两方面来介绍系统的设计。

4.1. 协同GIS的窗体设计

在GIS系统中,窗体实际是一种文档,可以用来收集各类信息 [15] 。它一般由两部分组成,一部分是由窗体设计者输入的,填写窗体的人无法更改的文字或图形,窗体设计者可以插入希望得到回答的问题、选项列表等 [16] 。例如在GIS系统中插入的各类按钮、菜单和Engine插件等。另一部分则通常是由窗体填写者输入的,例如本文中所设计实现的地理信息系统中的消息通讯功能,可以传递用户希望发送出的信息 [17] 。在文章中将协同GIS系统的窗体主要设计为主窗体、系统信息窗体以及信息反馈窗体等,主窗体决定了系统的整体布局,是整个地理信息系统的框架,可以一览本系统实现的主要功能。从系统功能设计的角度来讲,主窗体由文档功能菜单、地图操作功能菜单、图层操作功能菜单、信息查询功能菜单等构成。

系统信息窗体是主窗体下的一个子窗体,实现关于功能菜单中的“关于”模块。由Button控件、Lable控件等编辑所需内容,如声明版本信息、版权所有、工程构造者联系方式等,是开发一个完整的地理信息体统及其他任何软件都不可缺少的一部分,该部分信息也可以被看做为GIS系统的原信息。窗体同样也是Main窗体的一个子窗体,实现用户要求反馈的一个模块,主要用于收集用户反馈信息,是协同开发

软件不断完善的动力之源。

4.2. 协同GIS的功能设计

协同GIS系统的主要功能涉及到主菜单功能、二次开发平台的插件功能以及右键菜单功能等。其中消息通讯主要包括服务器端配置和客户端配置。这是地理信息系统的一大特色功能,因为GIS协作命令消息的生成与传递机制是相同的 [18] 。首先发送方在本地机器上执行GIS操作,实现某一GIS功能,同时生成GIS操作的命令消息,命令消息通过消息中间件传送到其他客户端的机器上,接收方获取该条命令消息后,并予以执行,完成与发送方相一致的GIS的操作。流程图如图2所示。

组件式的应用软件平台,论其结构是由原件、插件和连接器的基本功能这三部分构成。原件是指可以识别和还原插件,并且接受插件所提供的具体功能将其提供给用户,对其进行加载和卸载,它是整个软件的核心所在。插件连接器:它定义了原件和插件之间的交互条件,也是程序员开发插件的守则,使得插件可以更好的被原件识别。如在Engine插件包含了一些地图操作的基本功能,例如全图、漫游、添加shape数据等,在一定程度上,插件的好坏便决定了软件功能的优劣。对于右键菜单功能,主要是指对GIS图层的操作,具体内容可见图1

5. 结论

本文主要的探讨了国内外GIS和协同GIS的发展和趋势和应用现状,以及研究本课题的意义所在,

Figure 1. System architecture design

图1. 系统架构设计图

Figure 2. Message traffic flow

图2. 消息通讯流程

较为深入剖析了协同地理信息系统的设计与实现的相关理论,从组件式地理信息系统设计和协同地理信息系统设计两方面进行探讨。文章中所研究实现的协同地理信息系统通过组件式地理信息系统开发的方法,进行了协同地理信息系统的设计与实现,从而完成了地理信息系统的基本功能的设计。由于协同GIS系统适应了人们群体性、交互性、分布性和协作性等实际工作特点,因此其具有十分广阔的发展前景,在军事指挥、抗洪救灾、交通事故处理、消防以及旅游、虚拟企业等领域都将有着很好的应用前景。

文章引用

王 真,王 潇,李 静,秦 淼,张 波. 协同GIS的设计与实现
The Design and Implementation of Cooperation GIS[J]. 地理科学研究, 2016, 05(02): 49-53. http://dx.doi.org/10.12677/GSER.2016.52006

参考文献 (References)

  1. 1. 胡雪莲, 程承旗. 协同GIS――CoGIS概念初探[J]. 中国图像图形学报, 2007(2): 956-962.

  2. 2. 蒋捷, 陈军, 王金庄. 基于GIS的用地管理CSCW系统初探[J]. 中国土地科学, 2000, 14(3): 35-39.

  3. 3. Oyama, S., Hiramatsu, K. and Ishida, T. (2001) Cooperative Information Agents for Digital Cities. International Journal of Cooperative Infor-mation System, 10, 197-215.

  4. 4. 张清浦. 政府GIS建设中若干问题的探讨[J]. 测绘科学, 1999(4): 14-21.

  5. 5. Meissner, A., Luckenbach, T., Risse, T., Kirste, T. and Kirchner, H. Design Challenges for an Integrated Disaster Management Communication and Information System. http://www.ipsi.fhg.de/oasys/reports/ftp/pdf/P2002-01.pdf

  6. 6. 程承旗, 胡雪莲, 马蔼乃. CoGIS概念及体系结构研究[J]. 地理信息世界, 2003, 1(1): 23-29.

  7. 7. Olson, J. (2010) Seeding Nature, Ceding Culture: Redefining the Boundaries of the Marine Commons through Spatial Management and GIS. Geoforum, 41, 293-303.

  8. 8. Ramsey, K. (2009) GIS, Modeling, and Politics: On the Tensions of Collaborative Decision Support. Journal of Environmental Management, 90, 1972-1980.

  9. 9. 马家齐. 协同产品创新中概念设计过程建模及关键技术研究[D]: [博士学位论文]. 重庆: 重庆大学, 2012.

  10. 10. 孔云峰, 林珲. GIS分析、设计与项目管理[M]. 上海: 上海科学出版社, 2005: 53-58.

  11. 11. 罗明良, 汤国安. GIS高等教育空间结构演变及研究取向分析[J]. 地理科学, 2012(5): 26.

  12. 12. 毛启容, 王进峰. 相对位置乐观锁机制及在协同编辑中的应用[J]. 计算机辅助设计与图形学学报, 2004(9): 21-24.

  13. 13. 李伟, 刘仁义. 任务组管理机制下面向协同特征空间数据模型的CoGIS研究[J]. 系统仿真学报, 2005(8): 1902-1904.

  14. 14. 李均, 周世财. 组件式GIS技术及应用浅析[J]. 地理空间信息, 2010(8): 125-127.

  15. 15. 黄桦. 基于ArcGIS Engine的组件式GIS研究与实践[D]: [硕士学位论文]. 上海: 华东师范大学, 2008.

  16. 16. 胡雪莲, 程承旗. 协同GlS――CoGIS概念初探[J]. 中国图像图形学报, 2003(6): 715-720.

  17. 17. 孔云峰, 刘欣亮. 关于GIS设计内容与方法的讨论[J]. 测绘通报, 2006(11): 58-61.

  18. 18. Zhou, Q., Yuan, Y.J. and Kang, Y.N. (2012) GIS Application System Design Applied to Information Monitoring. Physics Proedia, 25, 2235-2241.

期刊菜单