教学课件第五章GIS系统设计

上传人:ni****g 文档编号:568627856 上传时间:2024-07-25 格式:PPT 页数:26 大小:405.47KB
返回 下载 相关 举报
教学课件第五章GIS系统设计_第1页
第1页 / 共26页
教学课件第五章GIS系统设计_第2页
第2页 / 共26页
教学课件第五章GIS系统设计_第3页
第3页 / 共26页
教学课件第五章GIS系统设计_第4页
第4页 / 共26页
教学课件第五章GIS系统设计_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《教学课件第五章GIS系统设计》由会员分享,可在线阅读,更多相关《教学课件第五章GIS系统设计(26页珍藏版)》请在金锄头文库上搜索。

1、第五章GIS系统设计地理信息系统设计教程在系统定义阶段确定系统建设的目标和任务之后,需要进行系统的总体设计。GIS总体设计阶段的主要任务是将系统需求转换为数据结构和软件体系结构,即数据设计和体系结构设计。数据设计就是把分析阶段所建立的信息域模型变换成软件实现中所需的数据结构。体系结构设计则是把系统的功能需求分配给软件结构,形成软件的模块结构图,并设计模块之间的接口关系。在总体设计阶段,各模块还处于黑盒子状态,模块通过外部特征标识符(如名字)进行输入和输出。使用黑盒子的概念,设计人员可以站在较高的层次上进行思考,从而避免过早地陷入具体的条件逻辑、算法和过程步骤等实现细节,以便更好地确定模块和模块

2、间的结构。教学提纲一、总体设计的任务、方法和准则二、系统总体设计工具退出退出一、总体设计的任务、方法和准则(一) 总体设计的任务和方法(二) 总体设计的准则返回返回 总体设计的任务是要求系统设计人员遵循统一的准则和采用标准的工具来确定系统应包含哪些模块、用什么方法联结在一起,以构成一个最优的系统结构。 总体设计一般采用结构化设计方法进行实现。结构化设计强调软件总体结构的设计,是一种自顶向下、逐步求精和分阶段实现的设计策略。总体设计的任务和方法结构化设计的基本特点由问题结构导出系统结构,即问题结构到系统结构的映射。问 题结构主要用数据流图(DFD)来描述系统的逻辑模型,而系 统结构是指用系统的模

3、块结构图来描述软件结构通过自顶向下分解和层次组织的方法来简化系统,产生模块结 构运用一系列的图表工具。为使系统设计流程易于理解,结构化 设计使用了两种主要的图表工具:伪码和结构图。伪码描述的 是模块的处理逻辑,用来表达程序的设计思路;结构图用于描 述软件的总体结构,采用自顶向下、层次组织的方法提供一系列的系统设计策略。结构化设计提供了两种设计 策略,它们分别是面向过程的数据流方法与面向数据结构 的Jackson方法和Warnier-Orr方法。 提供一组评价系统设计质量的准则。结构化设计方法提供 了一系列评估准则,如耦合、内聚、扇入和扇出、信息隐 蔽以及模块化等。结结构化构化设计设计方法方法一

4、般一般设计设计方法方法设计设计工具工具数据流数据流图图,模,模块结块结构构图图,图图表工具表工具系系统统流程流程图图设计设计思想思想自自顶顶向下,逐向下,逐层层分解分解自底向上,自底向上,统统一一组组装装设计设计重心重心强调软强调软件件总总体体结结构,其次才考构,其次才考虑软虑软件模件模块块的内部的内部处处理理逻辑逻辑( (程序程序结结构构) )采用系采用系统统流程流程图图描述源程序的描述源程序的处处理理逻逻辑辑,强调强调的是系的是系统实现统实现设计过设计过程程分分为总为总体体设计设计和和详细设计详细设计没有明确的没有明确的阶阶段划分段划分性性能能系系统统具有具有较较好灵活性和可好灵活性和可维

5、护维护性,性,系系统统整体性好,易于把握用整体性好,易于把握用户户需求需求目目标标系系统结统结构性差,缺乏灵活性和可构性差,缺乏灵活性和可维护维护性,并且可靠性和效率不高性,并且可靠性和效率不高结构化设计方法与一般设计方法的比较设计方法和策略问题如何构造(导出)软件的总体结构软件评估准则问题什么样的软件结构是“最优”的软件设计工具问题如何表述软件的结构采用结构化设计方法需解决的问题在结构化设计过程中,模块是一个重要的概念。模块指的是具有输入和输出、逻辑功能、运行程序、内部数据四种属性的一组程序语句。其中,输入、输出和逻辑功能是其外部属性,反映功能,是可见的;运行程序、内部数据是其内部属性,反映

6、具体实现途径,是不可见的。除了上述四个主要属性外,模块还有其它的属性。例如,它有一个名称,可以使用别的模块,也可以被别的模块使用,即“调用”和“被调用”。在结构化系统总体设计中,主要关心的是模块的外部属性,即它的功能,而不是它的内部属性,即如何去实现。结构化设计中的模块返回返回总体设计的准则采用结构化设计方法进行系统总体设计的最大优势是它提供了一种便于衡量软件设计质量的广泛的评价准则。这些评价软件设计质量的主要准则包括:模块化抽象和信息隐蔽模块独立性软件可以简单地理解为模块的集成。目前,几乎所有的软件体系结构都体现为模块化。模块化是软件设计的一个基本准则,它使得一个程序易于为人们所理解、设计、

7、测试和维护。高层模块可使我们从整体上把握问题,隐蔽细节以免分散我们的注意力,在需要时,又可以深入到较低的层次以了解进一步的细节。模块化往往将较复杂的问题转化为一些简单问题的集合,使我们可以将工作量分散到各个工作组以集中力量解决各个问题。模块化每一个模块表示一个自我包含的逻辑任务;每个模块都是简单的;每个模块都是封闭的;每个模块都是可以独立测试的;每个模块对应单一、独立的程序功能;每个模块有单一的入口和出口;每个模块都由一个标准返回点返回上层模块开始执行该模块的那 一点;可以把多个模块组合成较大的模块,而不必了解模块内部构造的 知识;每个模块都有严格规定的接口,其中包括由入口和出口形成的控 制连

8、接、由参数和共享的公用数据形成的数据连接以及由模块间 的服务支持形成的功能连接。模块化原则抽象和信息隐蔽抽象是抽出事物的本质特性而暂时不考虑它们的细节,它反映在数据和过程两方面。在模块化问题求解时,在最高抽象级可以采用面向问题环境语言的抽象术语进行叙述;而在较低抽象级,则可采用过程性术语。模块化的概念加上逐步求精的方法将面向问题的术语和面向实现的术语两者结合起来,前者是后者的一种抽象。在软件模块结构图中,下层模块是上层模块的细化,因此顶层或上层模块的抽象程度较高,而在下层模块中则体现功能实现的细节。信息隐蔽是模块的另一重要特征。“信息隐蔽”意味着有效的模块化可以通过定义一组独立的模块来实现,这

9、些独立的模块彼此之间仅仅交换那些为了完成系统功能所必须交换的信息。一个模块内部所包含的信息(数据或过程),如果它不允许外部的模块访问的话,其它模块是不能对它们访问的。抽象和信息隐蔽从两个不同方面说明了模块化设计的特征。“抽象”帮助定义构成软件的过程实体,而“信息隐蔽”实施对过程细节的存取约束。模块独立性模块独立性的概念是模块抽象和信息隐蔽的直接结果,是保证软件质量的关键性因素。采用结构化设计方法进行系统总体设计强调把系统设计成具有层次式的模块化结构。模块独立性程度较高的软件,其功能易于划分,接口简单,因此开发、测试和维护都较容易,修改引起的副作用也较小。模块独立性有两个定性的标准来度量,即内聚

10、(cohesion,又称块内联系)和耦合(coupling,又称块间联系)。内聚是模块内部各成分之间的联系,如果一个模块的内聚度大,模块的独立性则会提高。耦合是指模块间的联系,耦合度是对模块独立性的直接衡量,很显然,块间联系越小,模块的独立性则会越高,耦合度就会降低。在系统中,内聚度和耦合度是相互联系的,模块的内聚度越高,则耦合度就越低。 采用好的设计规则,改进软件结构,提高模块独立性,设计出软件初步结构以后,应该审查和分析这个结构,通过模块的分解和合并,力求降低模块耦合度,提高模块内聚度。例如,多个模块公用的一个子功能可以独立成一个模块,供这些模块调用。有时则可通过分解或合并模块以减少控制信

11、息的传递及对全局数据的引用,降低接口的复杂程度。经验表明,模块规模应当适中,过大则可能导致独立性降低,引起开发、测试和维护的不便。返回返回二、系统总体设计工具 (一) 层次图(二) HIPO图(三) 结构图返回返回层次图 层次图(hierarchical chart)是在软件总体设计阶段最常用的工具之一,用来描绘软件的层次结构。下图为某土地定级信息系统的局部层次图,图中的每个方框代表一个模块,方框间的连线表示模块的调用关系。层次图适合于在自顶而下设计软件的过程中使用。某土地定级信息系统数据输入数据编辑 因子分析因素复合级别划定 面积量算 专题制图 成果输出空间内插分析地形坡度分析平均高程分析曲

12、面分级引力模型空间扩散分析分值频率分析分值分级样点级别提取级差收益测算返回返回HIPO图 HIPO图是由美国IBM公司发明的“层次输入处理输出图”的英文缩写。HIPO图实际上由H图(即层次图)和IPO图两部分组成。这里的H图是在层次图的基础上对每个方框进行编号,使其具有可跟踪性。编号规则如下:最顶层方框不编号,第一层中各模块的编号依次为1.0,2.0,3.0,;如果模块2.0还有下层模块,那么下层模块的编号依次为2.1,2.2,2.3,;如果模块2.2又有下层模块,则下一层各模块的编号根据上面的规律依次为,依次类推。某土地定级信息系统数据输入1.0数据编辑2.0因子分析3.0因素复合4.0级别

13、划定5.0面积量算6.0专题制图7.0成果输出8.0空间内插分析3.1地形坡度分析3.2平均高程分析3.3曲面分级3.4引力模型3.5缓冲区分析3.6分值频率分析5.1分值分级5.2样点级别提取5.3级差收益测算5.4H图举例(某土地定级信息系统的局部H图) 和H图中每个方框相对应,应该有一张IPO图描述这个方框所代表的模块的信息处理过程。IPO图使用简洁的方框来方便地描述数据输入、数据处理和数据输出三部分之间的关系。值得强调的是,HIPO图中的每个IPO图都应该明显地标出它们所描绘的模块在H图中的编号,以便跟踪了解这个模块在软件结构中的位置。如下图描述的是缓冲区分析模块,对应的编号是3.6。

14、净化后数据影响度空间影响半径1.选择影响模型2.提取影响主体3.计算模型参数4.缓冲带操作图形输出数据存储输入处理输出 IPO图举例(缓冲区分析模块的IPO图) 返回返回结构图 Yourdon提出的结构图(Structured chart)是进行软件结构化设计的另一种有力的工具。结构图和层次图类似,也是用来描述软件结构的,但其描述能力比层次图更强。如下图,图中每个方框代表一个模块,框内注明模块的名字或主要功能,模块的名称通常是动宾结构的名词,方框之间的箭头(或直线)表示模块间的调用关系。模块A模块B调用模块(Caller)被调用模块(Subordinate)控制标识数据传递在结构图中通常还用带

15、注释的箭头表示模块调用过程中来回传递的信息,如果希望进一步标明传递的信息是数据还是控制信息,则可以利用注释箭头尾部的形状来区分:尾部是空心圆表示传递的是数据,尾部是实心圆表示传递的是控制信息。此外,还可以附加一些符号以表示模块的选择调用或循环调用关系。在结构图中,关键要描述的内容有两个:一是模块的功能,通常是由模块的名称来标识的;二是要描述模块与模块之间的接口。构造结构图时,要注意以下几个问题:首先,一个模块可以被不同的模块所调用;其次,在同一层次中,模块的调用次序不一定是自左向右。结构图并不严格地表示模块的调用次序,虽然多数人习惯于按照调用次序从左到右描述模块,但也可以出于其它考虑(例如为了减少交叉线),完全不按这种次序画。模块的调用次序在很多情况下可以根据模块所传递的数据和控制来区分。此外,结构图和层次图一样,并不指明什么时候调用下层模块。通常上层模块中除了调用下层模块的语句外还有其它语句,究竟是先执行调用下层模块的语句还是先执行其它语句,在图中并没有表示。 返回返回

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号