地星土地调查信息系统.docx
《地星土地调查信息系统.docx》由会员分享,可在线阅读,更多相关《地星土地调查信息系统.docx(63页珍藏版)》请在冰豆网上搜索。
地星土地调查信息系统
软件说明书
目 录
II
第一章引言 1
1.1读者对象 1
1.2标准和规范 1
1.3文档综述 2
第二章系统结构与技术 4
2.1系统整体结构概述 4
2.1.1总体层次结构 4
2.1.2总体逻辑结构 5
2.2系统关键技术 5
2.2.1.NETFramework 5
2.2.2ArcEngine 6
2.2.3ArcSDE 7
2.2.4Geodatabase数据模型 9
2.2.5WebServices 10
2.3系统开发运行环境 12
2.3.1系统开发环境 12
2.3.2系统运行环境 12
第三章用户界面设计 14
3.1基本原则 14
3.2设计概述 14
第四章功能体系设计 17
4.1模块开发结构 17
4.2图形管理 17
4.3属性管理 22
4.4权限控制 30
第五章数据库设计 31
5.1数据库设计原则 31
5.2数据库构成 33
第六章接口设计 34
6.1用户接口 34
6.2外部接口 34
6.3内部接口 34
第七章运行设计 36
第八章系统出错处理设计 37
第九章权限管理设计 38
9.1单点登陆系统设计 38
9.1.1系统组成结构 38
9.1.2用户登陆 38
9.1.3登录流程细化 39
9.2权限控制中心系统设计 41
9.2.1权限控制中心总体功能 41
9.2.2权限控制中心子模块说明 41
9.2.3权限控制中心子模块设计 42
第一章 引 言
1.1读者对象
本说明书是地星土地调查信息系统系列文档的一个,其读者对象是对相关业务的技术和总体方案作出决策的管理人员、对本《软件说明书》进行评审和确认的有关业务,技术人员、参加编码阶段工作的全体软件工程师、参加系统调试的全体软件工程师、参加试运行的全体软件工程师以及其他有权需要调用本文档的人员。
《地星土地调查信息系统软件说明书》的全部内容属于本公司的商业机密,应严格控制业务范围,项目开发阶段由项目软件开发组负责管理,由本公司负责管理,未经公司同意,不得以任何介质(文本,软盘,硬盘,光盘)等形式持有本文档的部分或全部内容。
1.2标准和规范
1、数据库建设标准和规范
◆土地利用分类,国土资源部
◆土地利用现状数据库标准,国土资源部
◆第二次全国土地调查技术规程,国土资源部
◆中华人民共和国行政区划代码,GB/T2260
◆1:
5001:
10001:
2000地形图图式,GB1480—93
◆1:
500、1:
1000和1:
2000地形图要素分类与代码,GB1480—93
◆基础地理信息要素分类与代码,GB/T13923-2006
14
◆国家基本比例尺地形图分幅和编号,GB/T13989-92
◆地球空间数据交换格式,GB/T17798-1999
◆国土资源信息核心元数据标准,TD/T1016-2003
2、软件开发标准和规范
◆国土资源信息系统软件开发规范,国土资源部信息中心
◆全国国土资源信息网络系统建设规范(试行),国土资源部信息中心
3、文档编写标准
◆国家软件设计系统列标准(GB8567—88)
1.3文档综述
第一章引言介绍了读者对象和参考的标准和规范等。
第二章对系统进行了概述,介绍了系统的总体层次结构和逻辑结构,并阐述了系统所采用的技术路线和开发环境。
第三章概述了一下用户界面设计,阐述了用户界面设计的原则,并给出了用户界面设计的基本式样。
第四章是功能体系设计,概略介绍了系统的图形模块、属性模块等的模块结构图,也列出了个模块内部的子模块和子程序的清单。
第五章数据库设计。
明确了数据库设计的原则,并阐述了本系统数据库的构成。
第六章接口设计,介绍了系统的用户接口、内部接口和外部接口等。
第七章运行设计,介绍了系统性能、时间特性和安全性等。
第八章系统出错处理设计。
说明了系统的出错信息,以及相应的补救措施等。
第九章权限管理设计介绍了权限管理控制中心的设计。
第二章 系统结构与技术
2.1系统整体结构概述
地星土地调查信息系统总体上分为三个主要功能系统, 属性管理子系统、图形信息子系统以及权限管理子系统。
在子系统基础上包含数据转换子模块、数据处理与建库子模块、数据质量检查子模块、查询分析子模块、系统依靠单点登陆形成了紧耦合的关系,同时子系统依靠低层的统一数据库支持和权限管理亦具有松散耦合之关系,都可以对运行。
2.1.1总体层次结构
从纵向上分析,系统的总体架构由下至上依次为:
基础设施层、数据库层、基础平台层和应用系统层。
1、基础设施层
本层主要包括网络、服务器、存储系统、配套系统软件和机房等。
2、数据库层
数据库层以土地利用数据库为主要内容,依托数据库管理和GIS技术,按照统一的标准,通过网络,实现数据的交换,形成各级数据库组织、管理、维护和更新体系。
3、基础平台层
基础平台层集成系统通用底层的功能模块,主要包括安全服务、数据库管理等。
4、应用系统层
应用系统层主要集成土地利用业务应用功能,地星土地调查信息系统主要对业务所需的各种土地利用空间数据进行录入、编辑、查询、分析、统计等。
2.1.2总体逻辑结构
系统软件总体逻辑结构由4个部分构成:
数据库建设和管理模块、属性报表模块、变更模块、和接口模块。
1、数据库建设和管理模块
本模块是系统数据的存贮中心,系统利用关系型数据库Oracle(或Access)统一对存储数据采用集中式管理,分布式应用的方式。
所有需要集中和共享的数据统一存放于关系数据库中。
2、属性报表模块
属性报表模块基于属性数据库,可以进行数据查询、统计和分析等功能。
可以输出第二次全国土地调查技术规程所要求各种统计报表
3、变更模块
根据外业调查的实际情况,进行图形和属性的变更。
4、接口模块
系统提供标准的VCT2.0和SHAPE等数据转化格式。
系统不直接支持的文件格式,可以使用第三方软件转化成系统支持格式即可使用。
2.2系统关键技术
2.2.1.NETFramework
.NET框架由四部分组成,公共语言运行时,类库,编程语言和ASP.NET环
境。
.NET框架有三个目的。
第一个目的是使得Windows应用程序更加可靠并提供给应用程序更大的安全性。
第二个目的是简化Web应用程序和服务的开发,不仅是传统意义上的Web应用程序和服务,还包括移动设备上的Web应用程序和服务。
第三个目的是提供独立的一套库,使其可用于多种语言。
.NET框架提供创建传统的Windows应用程序的能力,并提供了更多的增强特性,比如安全性,在应用程序中增加数字签名等。
.NET还提供了与传统的
COM组件交互的能力,它提供了一个包装类,让使用COM组件的用户感觉上和使用.NET类库一样。
一般来说在转换后的数据类型和原始COM组件中的类型一样。
所有的引入的类型都附加到一个名字空间上,比如在ArcEngine里就是
ESRI.ArcGIS名字空间。
所有的COM内部类都转换为受控类,受控类的名字在原来基础上增加“Class”,比如Point类转化为PointClass。
在属性,事件等方面.NET都给予了适当的转化使.NET开发人员可以容易的引入COM组件,进行开发。
ESRI特别的自己转换了COM组件到一套.NET类库,供开发人员使用,从而节省了很多不必要的麻烦。
.NET框架提供了公共语言运行时和一套基础类库和多种开发语言。
多种开发语言共享基础类库,并运行在相同的运行时之上,采用了C#语言进行开发。
C#是一种现代的、面向对象(从底层开始)安全型语言。
C#具有.NET的全部特性,在语法上具有c++的简捷明了,但是比C++提供更多的安全措施。
2.2.2ArcEngine
ArcEngine是ArcGIS划时代的一个产品,主要原因在于其提供了完美的组件框架和控件框架,为二次开发者提供了随心所欲的开发利器。
对于
ArcEngine,ESRI定位于提供嵌入式的GIS组件,能用来在一个组织内建立应用,为用户提供有针对性的GIS功能,为每个用户的特定需求提供有针对性的
GIS功能实现的基础。
实际上,根据研究,发现ArcEngine应用远不止这些。
理论上讲,通过ArcEngine完全实现ArcInfo桌面应用系统甚至ArcGIS
Server。
2.2.3ArcSDE
ArcSDE采用大型数据库来存储空间数据,它维护的元数据表记录了存贮在数据库中所有图层的信息。
业务表存贮的每一条记录表示一个空间要素(简单多部件要素),并有一个唯一的识别符。
该唯一的识别符存贮在业务表的几何列中。
业务表的名字就是图层的名字。
通过该唯一的识别符,每一个记录与要素表或称为F表建立相应的记录关联。
F表在一个二进制列中物理地存贮要素的几何特征。
除空Shape外,业务表和F表之间存在一个1对1的关系。
要素在业务表中有记录,但在F表中没有对应的要素。
数据库中最后一个有关图层的表是空间索引表或称S表。
S表存贮着格网单元和图层的封装边界。
每一格网单元在F表中都有一个条目。
凡是封装边界与该格网有重叠的要素都与之一同存贮,即S表中存贮着要素标识码,以提供从业务表或F表到S表的1对多的关系。
ArcSDE客户端和服务器同时工作来递交和显示从一个查询中获取的记录数据,这种处理类型叫一个异步流模式。
客户端发送一个初始请求给ArcSDE。
该请求被转换成一个由ArcSDE转发给RDBMS的SQL语句。
RDBMS分析该语句并从数据库中提取数据记录。
当RDBMS选择出数据记录时,它发送结果给ArcSDE。
ArcSDE服务器将任何一个空间信息转换为可读的格式并将该信息发送给客户端。
信息实时地以小而连续的缓冲区的形式发送给客户端。
在客户端接收这些缓冲区数据的同时,就开始处理并显示它们。
客户端不会等到服务器处理完查询后才显示数据记录。
客户端和服务端同时工作来处理查询是为了减少查询时间。
客户端通常比服务端慢,因此,当客户端已经显示当前的结果并准备好接收更多的数据时,服务器才向其发送数据缓冲区记录。
这可以使服务器有空闲处理其它的客户端发送来的查询。
每个缓冲区在客户端将其处理完毕后就开始释放,以免客户端的内存被占用。
在客户端,数据记录不会驻留内存,因此,如果已释放的数据记录再次被请求,查询就需要再执行一次。
在ArcSDE客户端的大部分操作都将导致数据库的查询操作。
经常访问的图层可以驻留在服务器的内存高速缓冲区内,这样可加快重复查询。
这是因为访问内存中的数据要比从磁盘上读数据快得多。
ArcSDE服务器发送SQL语句给RDBMS处理。
RDBMS解析该语句并验证所需的表是否存在。
解析语句时可确定从数据库中获取数据的最佳方法。
一旦完成一个语句解析,RDBMS就从数据库中获取数据。
如果一个表经常要被访问,或最近已被访问过,数据记录则驻留在RDBMS的内存缓冲区中。
这就减少了从磁盘上获取数据所花费的时间。
再有,减少数据库查询和数据库在网络上的传输时间是非常重要的。
ArcSDE从客户端和服务器两个方面来解决这两个问题,
ArcSDE客户端通过应用属性或空间约束来减少