城市地理信息系统.ppt_第1页
城市地理信息系统.ppt_第2页
城市地理信息系统.ppt_第3页
城市地理信息系统.ppt_第4页
城市地理信息系统.ppt_第5页
已阅读5页,还剩96页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第五章 城市地理信息系统软件工程,第一节 城市地理信息系统软件工程概述 第二节 城市地理信息系统规划 第三节 城市地理信息系统分析 第四节 城市地理信息系统设计 第五节 城市地理信息系统实施,第一节 城市地理信息系统软件工程概述,一、软件工程概述 二、城市地理信息系统工程概论,一、软件工程概述,1、软件工程的发展历程与软件危机 2、软件生存期 3、软件生存期模型,1、软件工程的发展历程与软件危机,(1)计算机软件发展历程: 程序设计阶段,约为20世纪50至60年代后。 程序系统阶段,约为20世纪60至70年代。 软件工程阶段,约为20世纪70年代后。,计算机软件发展的三个时期及特点,计算机软件

2、发展的三个时期及特点,(2)软件危机,软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。主要是两个问题: 如何开发软件,怎样满足对软件的日益增长的需求。 如何维护数量不断膨胀的已有软件。 GIS软件开发同样存在危机,对软件开发成本和进度的估计不准确; 用户不满意; 软件质量不高、可靠性差; 软件常常不可维护、错误难以改正; 缺乏适当的文档资料; 软件成本占系统总成本的比例逐年上升; 软件开发速度跟不上计算机发展速度。,软件危机的主要表现,莫菲定律: 工作比想象的更为复杂;花费的时间比预计的更长;所需的费用比设想的更多;毛病能够出到什么地方就一定会出到那个地方。 卡尔特汉定律:

3、莫菲是个乐观主义者。,技术措施 使用更好的软件开发方法和开发工具。 组织管理措施 - 软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。 - “瀑布式”生命周期模型,严格的设计过程.,解决软件危机的途径,(3)软件工程,Boehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。 IEEE:软件工程是开发、运行、维护和修复软件的系统方法。 Fritz Bauer:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。 主要思想:强调软件开发中应用工程化原则的

4、重要性。,2、软件生存期 life cycle,软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。这个过程即为计算机软件的生存期。 软件生存期六个步骤:规划、需求分析、软件设计、程序编写、软件测试及运行/维护,(1)规划,确定要开发软件系统的总目标 给出功能、性能、可靠性以及接口等方面的要求 完成该软件任务的可行性研究 估计可利用的资源(计算机硬件,软件,人力等)、成本、效益、开发进度 制定出完成开发任务的实施计划,连同可行性研究报告,提交管理部门审查,(2)需求分析和定义,对待开发软件提出的需求进行分析并给出详细的定义; 编写软件需求说明书或系统功能说明书及初步的系统用户手册; 提交管理机构

5、评审.,(3)软件设计解决 how?,概要设计 把各项需求转换成软件的体系结构。结构中每一组成部分都是意义明确的模块,每个模块都和某些需求相对应. 详细设计 对每个模块要完成的工作进行具体的描述,为源程序编写打下基础. 编写设计说明书,提交评审。,(4)程序编写,把软件设计转换成计算机可以接受的程序代码,即写成以某一种特定程序设计语言表示的“源程序清单” 写出的程序应当是结构良好、清晰易读的,且与设计相一致的,(5)软件测试,单元测试,查找各模块在功能和结构上存在的问题并加以纠正。 组装测试,将已测试过的模块按一定顺序组装起来。 按规定的各项需求,逐项进行有效性测试,决定已开发的软件是否合格,

6、能否交付用户使用。,(6)运行维护,改正性维护:运行中发现了软件中的错误需要修正. 适应性维护:为了适应变化了的软件工作环境,需做适当变更。 完善性维护:为了增强软件的功能需做变更。,3、软件生存期模型,软件生存期模型直观地表达软件开发全部过程,明确规定要完成的主要活动和任务。 (1) 瀑布模型 (2)螺旋模型 (3)喷泉模型 (4)智能模型,(1)瀑布模型,在瀑布模型中,将各项活动规定为自上而下、相互衔接的固定次序,形如瀑布流水,逐级下落。 瀑布模型的特征是:每一阶段接受上一阶段的工作结果作为输入;其工作输出传入下一阶段;每一阶段工作都要进行评审,得到确认后,才能继续下阶段工作。,瀑布模型,

7、典型瀑布模型具有顺序性和依赖性,优点:瀑布模型较好地支持结构化软件开发。,缺点: 从认识论角度看,人的认识是一个多次反复循环的过程,不可能一次完成。但瀑布模型中划分的几个阶段,没有反映出这种认识过程的反复性,缺乏灵活性。 软件开发是一个知识密集型的开发活动,需要相互合作完成,但瀑布模型没有体现这一点。 无法通过软件开发活动澄清本来不够确切的需求。,(2)螺旋模型(原型模型),螺旋模型沿着螺线旋转 大致了解用户需求,开发人员迅速构建新系统原型; 提供原型给用户; 随着用户和开发人员对系统理解的加深,再不断进行修改。,(3)喷泉模型,喷泉模型体现了软件开发过程中所固有的迭代和无间隙的特征。喷泉模型

8、表明了软件刻画活动需要多次重复。 在面向对象技术中,由于对象概念的引入,使分析、设计、实现之间的表达连贯而一致,所以,喷泉模型主要用于支持面向对象开发过程。,(4)智能模型,也称为基于知识的软件开发模型,它综合上述开发模型,并把专家系统结合在一起。该模型应用基于规则的系统,采用归约和推理机制,帮助软件人员完成开发工作,并使维护在系统规格说明一级进行。 建立知识库,将模型、软件工程知识与特定领域的知识分别存入数据库。,二、 城市地理信息系统工程概论,1、地理信息系统工程特色 2、城市地理信息系统工程特色,1、地理信息系统工程特色,(1)系统复杂度大 交付的文档的质量和数量; 软件的微观复杂度;

9、软件的宏观复杂性。 (2)数据在系统中具有特别的地位 数据的质量; 数据的现势性; 合理的数据组织结构。 (3)系统表达方式复杂 表达的内容复杂; 表达的对象具有时空性。,2、城市地理信息系统工程特色,(1)系统对象复杂 (2)数据标准具有地方特色 (3)系统更新速度快 (4)系统维护工作量大 (5)易操作性要求高,第二节 城市地理信息系统规划,一、城市地理信息系统规划概论 二、可行性分析 三、制定开发计划,一、城市地理信息系统规划概论,1、UGIS规划任务 2、UGIS规划原则,1、UGIS规划任务,(1)制定UGIS的发展战略 调查用户的职能和战略目标;评价现行信息系统的功能、环境和应用状

10、况;分析所开发的UGIS的客观环境,包括数据状况、系统与现行系统之间的关系;客观评价能够达到用户期望程度和系统发展趋势。 (2)可行性分析 (3)制定信息系统的总体方案,安排项目开发计划,2、UGIS规划原则,(1)系统目标客观可行 (2)兼顾各个层次用户的需求 (3)系统模型与用户特性良好互动 (4)内容不宜过细 (5)规范的规划流程和方法 (6)便于实施,二、可行性分析,1、技术可行性 2、经济可行性 3、社会可行性 4、抉择,1、技术可行性,技术条件包括:硬件、 软件、 数据、 技术人员,做得了吗?做得好吗?做得快吗?,对待开发的UGIS进行功能、性能和限制条件的分析,确定在现有的资源的

11、条件下,技术风险有多大,系统能否实现。,2、经济可行性,经济可行性是指对UGIS进行开发成本的估算及可能取得效益的评估,确定待开发系统是否值得投资开发。 经济可行性分析是避免投资浪费、提高信息化科学决策、确定合理的系统目标的重要手段,通过估计项目的成本和效益,分析项目经济上的是否合理。,成本估计:筹办费用、开办费用、与项目开发有关的费用、运行维护费用等。 系统效益:经济效益、社会效益、生态效益; 有形的效益和无形的效益。 经济效益:使用新系统而增加的收入+使用新系统可以节省的运行费用-系统投资。,3、社会可行性,社会可行性是指UGIS能否在使用单位实现,在当前客观环境下能否很好地运行,即用户组

12、织内外是否具备接受和使用新系统的条件。,4、抉择,对系统开发的不同方案进行比较评估,在成本和时间的限制下,对于一个合理的方案加以考虑,获得一个最切实际的方案。,三、制定开发计划,1、制定开发计划的原则 2、制定开发计划的方法 3、推算各阶段时间的方法 4、开发计划的表达方式,1、制定开发计划的原则,(1)总结系统开发各阶段工作的经验 (2)开发计划应该具有足够的灵活性 (3)建立各阶段的评审制度,2、制定开发计划的方法,制定开发计划受制于用户、开发公司和项目因素。,如下步骤开展制定工作: (1)根据系统工程和UGIS的构成特性,对系统进行分解,分为具有一定独立性的工作任务。 (2)对任务进行分

13、类,确定任务的性质。 任务分类:承前启后性任务、独立性任务、依附性任务。 (3)确定各个任务需要投入的资源 (4)组合任务,形成项目计划。,3、推算各阶段时间的方法,经验法里主要考虑以下因素: (1)各个阶段工作量比例 (2)确定各个阶段的人员数量 (3)确定软硬件、设备等资源能够获得的时间 (4)对资源合理配置后,取时间最长者为阶段时间,4、开发计划的表达方式,开发计划往往是通过甘特图进行表示。 两种方式: 采用公历法表示 采用时间期间进行表示,资源列表,第三节 城市地理信息系统分析,一、系统分析概论 二、系统分析的过程 三、系统需求分析的方法 四、需求调查的组织实施,一、 系统分析概论,1

14、.系统分析是应用系统论思想和方法,确定系统的开发对象,把复杂的对象分解成简单的组成部分,找出这些部分的基本属性和彼此间的关系。,2.基本任务:系统分析员与用户在一起,充分了解用户的要求,并把对方的理解用软件需求规则说明书表达出来。 核心:用户需求分析。解决系统 Do What?,3、系统分析的要求,(1)系统分析人员既要具备良好的UGIS开发知识,也要了解用户专业知识。 (2)用户与系统分析员具有良好沟通能力和合作精神。 (3)确定总体规划、分阶段进行的思路。,二、系统分析的过程,1、问题识别 2、分析综合 3、编制需求分析的文档 4、需求分析评审,1、问题识别,研究可行性分析报告和项目开发计

15、划。 从系统的角度来理解软件并评审用于产生计划估算的软件范围是否恰当。 确定对目标系统的综合要求,即软件的需求。 提出满足这些需求实现条件,以及需求应达到的标准。,这些需求包括:功能需求、性能需求、数据需求、环境需求、可靠性需求、安全保密要求、用户界面要求、资源使用需求、软件成本消耗与开发进度需求、预先估计以后系统可能达到的目标。,2、分析综合,分析员从数据流和数据结构出发,逐步细化所有的系统功能,找出系统各元素之间的联系、接口特性和设计上的限制,分析它们是否满足功能要求,是否合理。 依据功能要求、性能要求、运行环境要求,剔除其不合理部分,增加其需要部分。 最后综合成系统的解决方案,给出目标系

16、统的详细逻辑模型。 分析和综合反复进行。,3、编制需求分析的文档,软件需求规格说明书 数据要求说明书 初步的用户手册,4、需求分析评审,系统定义的目标是否与用户的要求一致; 系统需求分析阶段提供的文档资料是否齐全; 文档中所有描述是否完整、清晰、准确反映用户要求; 与所有其他系统成分的重要接口是否都已经描述; 所开发项目的数据流与数据结构是否足够与确定; 所有图表是否清楚,在不补充说明时能否理解;,对功能的正确性、完整性和清晰性,以及其它需求给予评价。 评审的主要内容:,主要功能是否已包括在规定的软件范围之内,是否都已充分说明; 设计的约束条件或限制条件是否符合实际; 开发的技术风险是什么;

17、是否考虑过将来可能会提出的软件需求; 是否详细规定了检验标准,它们能否对系统定义成功进行确认; 有没有遗漏、重复或不一致的地方; 用户是否审查了初步的用户手册; 软件开发计划中的估算是否受到了影响等。,三、系统需求分析的方法,1. 系统分析方法概论 2. 数据流程图 3. 数据字典,1、系统分析方法概论,系统需求分析方法由对软件的数据域和功能域的系统分析过程及其表示方法组成。,在UGIS中,常用的分析方法: (1)面向数据流的结构化分析方法 按照系统内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止。 (2)面向对象的分析方法,2、数据流程图,(1)数据流程

18、图的主要图形元素 (2)数据流与加工之间的关系表示方法 (3)分层的数据流图 (4)数据流图的画法 (5)进行检查和修改的原则 (6)数据流程图实例,指从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。,3、数据字典,系统分析中所使用的数据字典,主要用来描述数据流程图中的数据流、数据存储、处理过程和外部实体。,属性数据字典条目 空间数据字典条目,属性数据字典项目,数据元素 数据结构 数据流 数据存储 处理过程 外部实体,名称 层名 层元素性质 拓扑关系 属性表 关联属性项关联字段 文件位置 操作限制 元数据文件或表名 备注,空间数据字典项目,四、需求调查的组织实施,1.

19、对用户行业的调查 2.对用户领导与业务人员的调查 3.对用户信息技术人员的调查,第四节、 城市地理信息系统设计,一、系统设计的目标和任务 二、系统设计的方法 三、数据库设计 四、过程设计 五、界面设计,一、系统设计的目标和任务,在系统设计阶段,根据数据域需求和功能域及性能需求,采用某种设计方法进行数据设计、系统结构设计、界面设计和过程设计。 数据设计侧重于数据结构的定义;系统结构设计定义软件系统各主要成分之间的关系;界面设计侧重于与用户交互的界面的设计;过程设计则是把结构成分转换成软件的过程性描述。,1)制定规范 2)软件系统结构的总体设计 3)处理方式设计 4)数据结构设计 5)可靠性设计

20、6)编写概要设计阶段的文档 7)概要设计评审,一、系统设计的目标和任务,1.概要设计,1)制定规范,阅读和理解软件需求说明书,在给定预算范围内和技术现状下,确认用户的要求能否实现。若能实现,则明确实现的条件,确定设计的目标,以及它们的优先顺序。 根据目标确定最合适的设计方法。 确定设计文档的编制标准。 通过代码设计确定代码设计,与硬件、操作系统的接口规则,命名规则等。,2)软件系统结构的总体设计,采用某种设计方法,将一个复杂的系统按功能划分成模块的层次结构 确定每个模块的功能,建立与已确定的软件需求的对应关系 确定模块间的调用关系 确定模块间的接口,即模块间传递的信息。设计接口的信息结构 评价

21、模块划分的质量及导出模块结构的规则,3)处理方式设计,确定为实现软件系统的功能需求所必需的算法,评价算法性能 确定为满足软件系统的性能需求所必需的算法和模块间的控制方式(性能设计)。 性能指标:周转时间、响应时间、吞吐量、精度 确定外部信号的接收发送形式,4)数据结构设计,确定软件涉及的文件系统的结构以及数据库的模式、子模式,进行数据完整性和安全性的设计。,5)可靠性设计,程序和文档中的错误少。,2.详细设计,1)确定软件各个组成部分内的算法以及各部分的内部数据结构; 2)确定各个组成部分的逻辑过程; 3)针对各个功能,根据界面设计风格,设计各类界面的样式; 4)进行详细设计的评审。,一、系统

22、设计的目标和任务,二、 系统设计的方法,面向对象设计方法 结构化设计方法 是基于模块化、结构化程序设计等程序设计技术基础上发展起来的,它的目标是获得系统结构图。,系统结构图的基本组成 传入模块:下属模块该模块上级模块 传出模块:上级模块该模块下属模块 交换模式:取得数据,经过处理,再传送上级模块 协调模块:对下属模块进行协调管理 系统结构图分类: 变换型系统结构图:线性结构。输入、中心变换、输出组成。 事务型系统结构图:将输入分析成一串平行数据流。,1.系统结构图,二、系统设计的方法,2. 数据流图变换为系统结构图的方法,1)变换分析设计方法 重画数据流图;确定系统的逻辑输入、逻辑输出、中心变

23、换部分;一级分解;二级分级。 2)事务分析 识别事务源、确定适当的事务型结构、识别各种事务和它们定义的操作。 3)系统结构图完善,二、系统设计的方法,三、数据库设计,1.数据库概念化设计,数据库概念化设计是从抽象和宏观的角度来设计数据库,既定义UGIS数据全局性的规范,保证数据库内容完整、组织合理和便于应用。 一般应包含数据库的数据组成、数据模型、数据内部组织等核心内容,并在此基础上形成数据库概要设计报告。,1)概念化设计工作内容 数据库的宏观地理定义:比例尺、地图投影、坐标系统。 数据库的地理特征定义:层次关系、各层几何表达形式和拓扑关系 属性数据表格及其关系设计 数据库概要设计报告 数据库

24、概念化设计的评定,1. 数据库概念化设计,2)数据模型,网状、层次、关系、对象模型 UGIS数据模型模式: 文件结构性模型 混合结构数据模型 无缝数据库管理模型,1.数据库概念化设计,3)数据的分层管理,1. 数据库概念化设计,2.数据库详细设计,1)数据源设计 2)修订数据标准与数据字典 3)数据质量控制方案 4)数据存储、读取、查询和管理结构的设计 用户安全设计、数据更新的质量控制、合理数据分级体系的设定、数据恢复能力、数据库网络模型。,三、数据库设计,四、过程设计,表达过程规格说明的工具: 图形工具 表格工具 语言工具,也叫做详细设计或者程序设计。 过程设计阶段,要决定各个模块的实现算法

25、, 并精确地表达这些算法。,应采用自然语言来表达,五、界面设计,界面设计 规范用户与计算机进行信息交换的形式,主要包括系统输入、输出、处理过程中各类信息在计算机屏幕等输出设备上的表现形式和布局,也包括键盘、鼠标、数字化仪等输入设备的布局和操作方式。,1. 用户界面的特性,1)可用性 使用的简单性、术语的表准化和一致性、HELP帮助、快速的系统响应和低的系统成本、具有容错能力。 2)灵活性 3)复杂性和可靠性,五、界面设计,2. 用户界面任务和工作设计,1)任务分配 任务分配给:计算机、用户或二者。 2)工作方式和工作设计 工作方式两种:单独完成、任务进展跟踪。 工作方式应在任务复杂性与人的专注程度之间权衡。 工作设计的目的是使任务需求与操作员的能力相匹配。,五、界面设计,3. 界面设计的步骤,1)确定整个UGIS的界面风格 2)确定系统界面的主框架 3)确定各类界面的界面特征 4)设计各个功能的主要界面,五、界面设计,4.界面的类型,1)字符界面 特例向导 2)图形用户界面 保证GUI的规范性、一致性、合理的反馈设计、完善的基于键盘的界面系统、界面布局安排合理。,五、界面设计,操作向导式的交互界面,菜单及工具栏,对话框及其它元素

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论