第十六章 地理信息系统软件工程技术
邬 伦
北京大学地球与空间科学学院
遥感与地理信息系统研究所
2004年12月
第1页,共43页。
1.软件工程简介
第2页,共43页。
1.1 基本概念
计算机软采用“自顶向下,逐步求精”的技术对系统进行划分,分解和抽象是它的两个基本手段
--将软件视为一个数据变换装置,接受各种输入,通过变换产生输出
一个典型的数据流图:飞机订票
第13页,共43页。
1.3 结构化方法和面向对象方法
面向对象的分析和设计
--客观世界是由许多各种各样的类组成的,每种对象都有各自的内部状态和运动规律,对象之间的作用和联系就构成了各种不同的系统
--使解决问题的方法空间与客观世界的问题空间结构达成一致
--UML(Unified modeling language,统一建模语言)
第14页,共43页。
用UML表达的线几何体类以及和其它类的关系(OpenGIS Consortium)
第15页,共43页。
1.4开发过程模型
软件开发模型是软件开发全部过程、活动和任务的结构框架。
软件开发模型能够清晰、直观的表达软件开发过程,明确规定要完成的主要活动和任务。
可以作为软件项目工作的基础。
第16页,共43页。
1.4.1瀑布模型
第17页,共43页。
1.4.2演化模型
主要针对事先不能完整定义需求的软件开发。
用户可以先给出核心需求,当开发人员将核心需求实现后,用户提出反馈意见,以支持系统的最终设计和实现。
第18页,共43页。
1.4.3螺旋模型
1)制定计划——确定软件目标,选定实施方案,弄清项目开发的限制条件。
2)风险分析——分析所选方案,考虑如何识别和消除风险。
3)实施工程——实施软件开发。
4)客户评估——评价开发工作,提出修正建议。
第19页,共43页。
1.4.4喷泉模型
第20页,共43页。
2.GIS领域的体系结构和构件
(图:GIS领域)
第21页,共43页。
GIS领域体系结构:一个工作流视图
第22页,共43页。
基于DCP的GIS体系结构和构件:一个实现视图[OpenGIS Consortium]
第23页,共43页。
3.GIS需求分析
第24页,共43页。
3.1 GIS需求获取
1)物理环境,物理设备的位置以及其分布的集中程度;
2)接口,与其它软件系统的接口以及对数据格式的要求;
3)用户或人的因素,包括系统用户熟练程度,使用系统需要接受的训练;
4)功能,系统要完成什么,性能如何;
5)文档,需要哪些文档以及其针对的读者;
6)数据,数据格式、数据精度、数据量、接收和发送数据的频率;
7)资源,使用系统需要的设备,开发需要的人力资源、计算机资源、时间表;
8)安全性,对访问信息的控制程度,数据的备份等;
9)质量保证,对系统的可靠性要求,平均系统出错时间,可移植性,可维护性等。
第25页,共43页。
3.2 GIS需求规约
在需求获取阶段,得到了用自然语言描述的用户需求,但是其中存在着不一致性和二义性,这些问题要通过需求规约解决。
第26页,共43页。
对Coad/Yourdon方法的扩展——GeoOOA(部分,George KÖsters)
基本类和GeoOOA类
GeoOOA 中的整体部分关系
1)覆盖 2)包含 3)分割
第27页,共43页。
4.数据管理设计
数据管理部分设计的目的是确定在数据管理系统中存储和检索数据的基本结构,其原则是要隔离数据管理方案的影响,不管该方案是普通文件、关系数据库、面向对象数据库或者是其它方式的。
第28页,共43页。
三种主要的数据管理方法
1)普通文件管理
2)关系型数据库管理系统(RDBMS)
3)面向对象的数据库管理系统
第29页,共43页。
4.1全部采用文件管理
将所有的数据都存放于一个或者多个文件中,包括结构化的属性数据。
第30页,共43页。
4.2文件结合关系数据库管理
(a)通过文件管理空间数据 (b)通过关系数据库管理属性数据
图:同时使用文件和关系数据库管理GIS数据,
其中利用地物ID建立记录之间的连接关系
第31页,共43页。
4.3全部采用关系数据库管理
图:集成化的GIS数据管理
第32页,共43页。
4.4采用面向对象数据库(OO-DBM
地理信息系统软件工程技术课件 来自淘豆网m.daumloan.com转载请标明出处.