BBS水木清华站∶精华区BBS水木清华站∶精华区
发信人: phila (LIST), 信区: DigitalEarth
标 题: 面向元功能的GIS分析与设计
发信站: BBS 水木清华站 (Thu Sep 21 17:58:58 2000)
面向元功能的GIS分析与设计
边馥苓 王喜春 孟令奎
摘 要 从软件工程学的角度出发,阐述了传统的信息系统分析与设计的几种方法,并结合GIS自身开发的特点提出了面向元功能的GIS分析与设计技术。
关键词 元功能;GIS;软件分析与设计
分类号 P208 文献标识码 A
文章编号:1000-050X(2000)03-0203-207
Metafunction-oriented GIS Analysis and Design
BIAN Fuling WANG Xichun MENG Lingkui
(School of Information Engineering,WTUSM,129 Luoyu Road,Wuhan,China,430079)
Abstract In the view of software engineering,this article describes several
traditional analysis and design methods of information system.Considering the
characteristic of development of GIS technology,this article presents a method
for GIS analysis
and design,which is metafunction-oriented.
The structured analysis method is the main method of the current system
analysis,such as the process-oriented function decomposition method,the
control-oriented event respondent method.In essence,the object-oriented method
belongs to the structured
analysis.The work of all the analyses in the development process are basically
the same:(1)Determine all kinds of process,operation or algorithm;(2)Determine
the operation exerted on the information or data of the system;(3)Determine the
execution
sequence of all kinds of process,operation—the overall control of the system.
In the procedure of developing GIS,the idea of reuse which runs through the
whole process of component development is used.As an integration mechanism of
GIS,the metafunction has the following features:①good module and strong
independence;②high
reliability;③simple connection and application;④sealing and package
function;⑤efficient realization of interior function;⑥distinct and concise
explanation.According to the result of the domain analysis,we extract the basic
component of the
domain.Take the domain of land administration of land bureau as example,we
categorize the business into the following templates:①spatial data (graphic)
template;②document template;③calculation template;④statistic template;⑤system
maintence
template;⑥decision template.Firstly,we finish the kernel component and basic
component of these templates so that we can reuse them to develop component for
the special purpose.
The GIS function component bus architecture model can solve the problem of
mutual communication between the GIS metafunction components,support the high
level communications during the process of software installation and the running
of software.It
can also solve the problem of cooperation between the GIS metafunction
components.The variation analysis of the system is the premise of GIS function
component bus.That is ,the variable part of the system is made into data
component.The variation of
function component and interface component are fulfilled throungh the change of
the data of data component.Thus,the system has the function of redefinition,and
the adaptability of GIS is highly enhanced.
The metafunction-oriented GIS analysis and design is one of the efficient
methods of realization of function integration and self-adaptable function
integration.The realization of this method will guarantee the construction of
the best of system
constructure and the achievement of maximum efficiency of system.The method
reflects a new trend of GIS application and development which is new
system-centered and merges with many advanced technologies.
Key words metafunction;GIS;software analysis and design
20多年前,在计算机软件产业发展过程中出现了严重的“软件危机”,引起计算机界的普遍恐慌和重视[4]。“软件危机”所呈现的基本特征是低下的软件生产力和难以保证的软件质量,其根源主要是“手工作坊”式的软件开发模型难以适应和满足现代化软件工业发展的需要。为了
解决“软件危机”,计算机科学家们经过不断的努力和实践创立了软件工程学。它的精髓是在软件开发过程中引入软件生命周期的思想和结构化软件包开发方法,以增强软件开发过程中的管理机制,并保障软件开发技术的严格落实。从软件工程的创立应用至今,“软件危机”问题得到了明
显控制和改观。
30多年来,GIS已发展成为信息社会中集地理空间特征和各种统计信息为一体的特殊信息系统。GIS工程是应用系统原理和方法,针对特定的实际应用目的和要求,统筹设计、优化、建设、评价、维护应用GIS系统的全部过程和步骤的统称。GIS工程在很大程度上是计算机软件系统,它在
软件设计和实现上要遵循软件工程的原理,研究软件开发的方法和软件开发工具,争取以较少的代价获取让用户满意的软件产品,以支持GIS工程。
1 传统的信息系统的分析与设计
结构化分析方法是目前系统分析的主要方法[10],如面向处理的功能分解法、面向控制的事件响应法等。从本质上讲,面向对象的分析方法也属于结构化分析方法,它是一种面向数据的分析方法。各种分析方法在软件开发过程中所做的工作基本上是相同的,即确定各种处理、操作或
算法;确定施加于系统中的信息或数据上的操作;确定各种处理、操作的执行顺序,即确定系统的总体控制。
1.1 面向处理的功能分解法
功能分解法产生于70年代末期[5],是结构化分析中最早使用的一种方法。分析者将所研究的两个问题视为一个大的处理过程,然后将其分解为两个或多个子处理过程,用数据描述各子处理过程之间的联系。重复此过程,直到将整个系统分解为各个简单的易于处理的过程为止。
分析的下一步是解决系统的总体控制问题,即各个子处理过程的执行顺序。功能分解法中的数据基本上是按照各处理过程的联结关系来组织的。其特点为:处理(功能分解)→控制→数据。
功能分解法是一种广为人知的方法,它直观、易被接受,涉及的概念也十分简单,但实现起来代码冗长,数据相对较少,而且不易仿造。两个分析者对同一问题进行分析,其结果可能大不相同。
1.2 面向控制的事件响应法
在事件响应中,分析者将系统视为一个黑箱,用外部激励产生预计的响应。分析者首先识别发生于系统之外的离散事件,或称外部事件,外部事件很容易从系统的需求分析中推导出来,它们准确地刻划了系统的界面;接着,分析者将对某个外部事件的响应定义为一个处理过程,最后从
处理过程的联系中推知系统所需要的数据。其特点为:控制(外部事件)→处理→数据。
事件响应方法很容易被仿造,由此方法分析的模型易于理解,但必须假定系统需求是完整和一致的,不能适应需求变化的要求。而且,系统实现起来代码冗长,分析时涉及到的概念也较复杂。
1.3 数据驱动的面向对象分析方法
面向对象的分析方法首先定义对象及其属性,也是从问题领域引申出数据,用状态模型描述对象的生命周期。建立状态模型的依据是问题域中的操作规则和内在性质。生命周期反映了系统的控制问题,还根据对象及其生命周期定义处理过程。面向对象的分析方法提供了3种形式的模型
:信息模型、一系列状态模型和一系列处理模型。其中,信息模型用于描述对象、对象的属性、对象之间的关系;状态模型用来描述对象和关系的状态、状态转换的触发事件、对象的行为;处理模型则是为状态模型中的每个状态建立一个数据流图。
面向对象分析法的特点为:数据(信息模型)→控制(生命周期)→处理。它易于仿造,用最小的数据量驱动来实现系统,其概念简单、精确,但当系统用外部事件描述时,不太容易理解系统的行为,与传统方法不同,不易马上被理解和接受。
2 面向元功能的GIS的分析与设计
GIS作为信息系统的一种,要对图形数据库和属性数据库共同进行管理[2]。GIS和地图数据库虽然都有空间查询、分析和检索功能,但是地图数据库不可能像GIS那样,去综合图形数据和属性数据进行深层次的空间分析,提供辅助决策的信息。因此,一个好的GIS在空间分析方面应具
备较强的功能。总体而言,GIS的基本功能大致可分为5类[7]:①数据采集与编辑;②数据组织与存储;③数据处理;④空间查询与分析;⑤结果表示与输出。
随着计算机技术特别是通信技术和网络技术的飞速发展,如何缩短GIS软件研制的周期,改善产品的质量,提高GIS的可靠性,最大限度地利用已有的GIS系统,充分保护用户投资,降低软件开发成本,已成为GIS开发与设计中的一个焦点问题。
2.1 面向元功能的分析与设计特征
据统计,在GIS的开发过程中,约有80%~85%的工作量耗费在重复编写已有的软件单元上[8]。因此,必须寻找一种新的集成机制,将已成熟的软件单元制成一个个相对独立的元功能实体,使之不加改动或少作改动就能应用于新的软件系统,从而提高GIS软件的生产效率。从实质上说
,该思想也是软件复用技术的最新成果——软插件、软总线和GIS功能集成研究在GIS领域的应用。
软插件是一种具有一组外接插头——功能描述和外接消息以及相应的说明信息的软件单元实体(元功能)。假设构造一个GIS所需要的各项功能的软插件都已经存在,那么,构造者只需对整个GIS的构造策略和原则进行精心的描述和制定,将所需要的元功能软插件按这些原则、策略组织起
来,便可以推出一个新的GIS,从而大大提高软件生产率。
作为一种GIS的集成机制,元功能(软插件)应具有以下特征[9]:
1)模块性好、独立性强。一个元功能(软插件)应是一个可以独立存在的实体,它应当不受或少受外界影响,以便能够较自由地为不同的软件系统所使用。鉴于目前GIS界存在的数据格式多样化的现状,该元功能应该能够对多种不同的数据格式具有接收功能,并生成用户所需的较为通用
的格式。
2)可靠性好。由于元功能(软插件)是构造新软件系统的基本单位,因此,每个元功能作为一个独立的单元被测试,从而保证其良好的可靠性。
3)连接简单、使用方便。如果要方便并且安全地建造新的GIS,必须要求元功能(软插件)之间的连接简单,特别是目前软插件的互连还没有统一的标准和相应的硬件技术,因此,更要求其连接简单、可靠。
4)封装功能。作为一种集成机制,软插件必须将被集成的功能进行封装。
5)内部功能的高效实现。元功能是构造GIS的基本单元,要求其功能的内聚程度高。其内部代码实现的高效性与否直接影响软件系统的性能。
6)清晰、简明的说明。元功能是作为产品提供给用户的,它应当具有像硬件集成电路一样的功能及各项指标的说明,以便GIS用户检索。
2.2 领域部件制作和GIS功能部件总线模型
领域部件是指一些应用于特殊应用领域和组织的部件。根据软件重用思想,从已完成的功能部件库中构造新的应用软件,由于功能部件库是从特定的问题域抽象出来的,因此,由它构造的系统容易重新组合以满足新的要求。
下面应用一个范例进行说明。
根据领域分析的结果,首先抽取出领域的基本部件,例如,通过分析国土局用地管理领域后,将其业务分为以下几类:
1)空间数据(图形)型:在基础地形图管理、基础规划图管理以及空间数据库中,所有单个图形的查询、增加、修改、删除、分割以及多个图形的叠加、合并等。
2)文档型:整个局的人事档案管理,上级传达的办公文件管理,所有单个数据库的查询、增加、修改、删除、排序等。
3)计算型:土地出让帐目计算,预征地帐目计算,征地帐目计算,土地划拨帐目计算等。
4)统计型:各种类型业务涉及的土地面积的汇总,用地收、欠款情况汇总以及报表制作、查询、打印结果、申请材料报送等。
5)系统维护型:在局里的各个不同的子系统中,不同科室的人员对不同数据库的访问权限不同,对不同用户访问不同数据库的不同权限的管理等。
6)决策型:通用查询、领导综合查询、数据分析、决策制定、修改(审批意见)等。
首先做好这几种类型的核心部件、基本部件来重用它们开发专用部件。例如,对于空间数据型,每一类地图一般对应一个空间数据库,为此,可以做一个对空间数据库的操作部件,它几乎包括对空间数据的一切可能操作,如增加、删除、修改,从图形到属性的查询、叠加、合并、分割
等,每一个子系统都可以重用这个部件。对于统计型,由于该类型部件的效率要求较高,所以大量的报表要求用通用的报表部件来制作,使用户能方便地修改报表格式。决策型是在综合查询分析后进行审批、决策制定的,要求有一个通用的查询部件和一个具有一定智能的专用决策部件以利
于重用。对于系统维护型,提供一个通用的管理用户访问数据库的不同权限的框架部件,供开发重用。在此基础上,开发国土局用地管理的专用领域部件,将其装入部件库,以备重用。
本文提出的GIS集成的应用体系结构是基于功能部件总线模型的。该模型用来解决GIS元功能部件间的交互,支持在软件工厂安装期间和以后运行阶段的高级通信,并解决GIS元功能部件的互操作问题。图1是GIS功能部件总线模型,元功能部件同它的适配器交互,从适配器送往总线的数
据部件对象能被其他适配器自动识别,数据部件对象可由软件开发人员作适当调整而改变服务部件的功能和结构,以适应新的需求,从而为GIS元功能的集成和重用提供基础。
图1 GIS功能部件总线模型
Fig.1 The GIS Function Component Bus Model
元功能部件通过总线进行通信,解决任意部件之间的互操作问题。部件之间通过消息传送互相提供服务,基本的部件互操作是交互服务。每一个部件通过适配器部件与总线相接,用户界面部件提供表示服务,服务部件提供功能服务和过程控制服务。它们在总线上的地位是相等的,均可
作为客户或服务器。互不相识的功能部件之间的互操作问题和数据交换问题通过适配器和总线得到解决。在总线上传输的是数据部件对象,即数据与其结构被封装在一起,在得到此数据部件对象后,可动态分析其内容,从而决定对它的操作[3]。GIS功能部件总线的前提是要对系统进行变
化分析,即分离出系统可变化的部分做成数据部件,通过改变数据部件的数据达到改变功能部件、界面部件的目的,使系统具有重要定义的功能,大大地增加了GIS软件系统的可适应性。
2.3 分布环境中元功能和GIS功能部件总线的应用
当前,计算机支持下的工作正转移到一个复杂的分布异构计算环境中[2],它主要有以下特点:①场地分布由LAN或WAN支撑,存在多种网络协议。②数据分布各种形式的数据分散在各节点,以各种形式(文件、数据库、电子表格等)存在。③硬件平台多样化,从台式机、工作站到大型
主机;从单处理器、对称多处理器(SMP)到大规模并行处理器(MPP)。④操作系统多样化,如Windows
NT、Netware、各种UNIX以及VMS等。⑤应用平台多样化,包括来自不同开发组织的各种GIS应用软件、中间件和开发工具。
为了在分布异构的计算机环境下解决分布系统的互操作问题,图2给出了将GIS功能部件总线模型应用于分布系统的体系模型。
从上面模型可以看出,封装的GIS元功能部件可以位于不同的系统平台,它们通过各自的适配器向GIS功能部件总线发出请求,部件总线对其解释并确定接受方的位置,向网络层发送消息,完成通信并实现互操作。人们只需设计不同的适配器,就能最大限度地使用已有的GIS软件和GIS功
能库中的元功能部件实现系统的功能集成。与单机不同的是,功能部件总线要解决不同平台上功能部件的互操作。同时,由于部件对象模型(component object
model)通用对象请求代理体系(common object request broker
architecture)技术的应用及功能部件总线对应用部件是透明的,使得开发并行系统更加容易,更有利于充分利用网络资源实现GIS功能的网络化集成。
图2 分布环境中的GIS功能部件总线体系模型
Fig.2 The GIS Function Bus Architecture Model in Distributed Environment
3 结 论
系统分析与设计的发展历程主要经历了两个阶段,第一阶段以系统为中心,该阶段的时间最长,应用最广。例如,90年代之前所开发的系统均处于该阶段,其特点是面向系统要求,开发设计系统,系统的开放性较差,不易移植。第二阶段以数据为中心,该阶段经历的时间较短,但发展
速度很快,其特点是面向对象的系统分析与设计。按照事物发展规律,应呈螺旋式上升趋势,面向元功能的系统分析与设计技术是一种新的以系统为中心的系统设计与分析技术。它与第一阶段的主要区别是:①充分吸收了以数据为中心的设计方法的优点;②极大地缩短了系统的研制时间;
③系统的开放性强;④遵循获取最佳系统性能的原则构造系统;⑤具有智能的特性。
教育部博士点基金和湖北省自然科学基金资助项目,编号97049803、97J015。
边馥苓,女,59岁,教授,博士生导师。现从事GIS理论及应用研究。代表成果:《地理信息系统原理和方法》;三峡工程测绘管理信息系统;深圳、南海、重庆、青岛等关于城市规划、市政建设管理系统等20多项。
BIAN Fuling,female,59,professor,Ph.D supervisor.Her main research is on the
theory and applications of GIS.Her major achievements are “Principles and
Methods of GIS”,Surveying and Mapping Management System in Three Gorges
Project,etc.She is in charge
of more than 20 urban planning,land administration systems in
Shenzhen,Nanhai,Chongqing,Qingdao,etc.
E-mail:flbian@wtusm.edu.cn
作者单位:边馥苓(武汉测绘科技大学信息工程学院,武汉市珞喻路129号,430079)
王喜春(武汉测绘科技大学信息工程学院,武汉市珞喻路129号,430079)
孟令奎(武汉测绘科技大学信息工程学院,武汉市珞喻路129号,430079)
参 考 文 献
[1]边馥苓,朱国宾,余 洁,等.地理信息系统原理和方法.北京:测绘出版社,1996
[2]陈 滢,樊惠娟,王能斌.分布对象综述.计算机科学,1997,24(3):11~16
[3]耿刚勇,仲萃豪.采用软件构件技术开发领域应用软件.计算机科学,1997,24(1):58~61
[4]张海藩.软件工程导论.北京:清华大学出版社,1996
[5]Sally S,Stephen J M.Object-oriented System Analysis-modeling the World in
Data.Project Technology.New York:Inc.Yourdon Press,1988
[6]The Research of Urban Waterlog-draiming Decision Support System Based on
GIS.Proceeding of the 20th Asian Conference for Remote Sensing.Hong Kong,1999
[7]Raper J F,Magllire D J.Design Models and Functionality in GIS.Computer &
Geosciences,1992,18(4):387~394
[8]陈英,李丰,邬延风.软件复用技术研究.北京理工大学学报,1998,18(6):712~717
[9]范宏伟,赵振西,龚育昌.构件对象模型.计算机科学,1997,24(5):95~98
[10]李芳芸,柴跃廷.计算机软件新技术——面向对象的系统分析.北京:清华大学出版社,1992
[11]朱国宾,边馥苓,刘玉贤.基于Intranet 机制的城市地理信息系统设计研究.武汉测绘科技大学学报,1997,22(4):333~337
[12]王喜春,边馥苓,何 勇.应用中间件技术的土地管理信息系统的研究.武汉测绘科技大学学报,1999,24(4):331~335
收稿日期:1999-12-12
--
※ 来源:·BBS 水木清华站 smth.org·[FROM: 159.226.3.40]
BBS水木清华站∶精华区
|