地理信息系统的设计与评价8.1软件工程概述•软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。软件工程-过程•软件工程-过程•生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。软件工程过程主要包括开发过程、运作过程、维护过程。它们覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析。问题分析获取需求定义,又称软件需求规约。需求分析生成功能规约。设计活动一般包括概要设计和详细设计。概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。维护活动包括使用过程中的扩充、修改与完善。伴随以上过程,还有管理过程、支持过程、培训过程等。软件工程-原则•软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则。软件工程的原则有以下四项基本原则:1)选取适宜开发范型。该原则与系统设计有关。在系统设计中,软件需求、硬件需求以及其他因素之间是相互制约、相互影响的,经常需要权衡。因此,必须认识需求定义的易变性,采用适宜的开发范型予以控制,以保证软件产品满足用户的要求。•2)采用合适的设计方法。在软件设计中,通常要考虑软件的模块化、抽象与信息隐蔽、局部化、一致性以及适应性等特征。合适的设计方法有助于这些特征的实现,以达到软件工程的目标。•3)提供高质量的工程支持。“工欲善其事,必先利其器”。在软件工程中,软件工具与环境对软件过程的支持颇为重要。软件工程项目的质量与开销直接取决于对软件工程所提供的支撑质量和效用。•4)重视开发过程的管理。软件工程的管理,直接影响可用资源的有效利用,生产满足目标的软件产品,提高软件组织的生产能力等问题。因此,仅当软件过程得以有效管理时,才能实现有效的软件工程。软件工程-主要课程•外语、高等数学、线性代数、高等代数、电子技术基础、离散数学、计算机引论(C语言)、数据结构、C++程序设计、汇编语言程序设计、算法设计与分析、计算机组成原理与体系结构、数据库系统、计算机网络、软件工程、软件测试技术、软件需求与项目管理、软件设计实例分析、CMM/ISO9000等。8.2地理信息系统设计与标准化重点:GIS设计的步骤,GIS评价方面,GIS标准化的意义和作用系统分析系统设计系统实施系统维护及评价GIS开发研究的四个阶段GIS的研制过程地理信息系统设计要满足的三个基本要求加强系统的实用性降低系统开发和应用的成本提高系统的生命周期系统设计要根据设计原理,采用结构化分析方法结构化----有组织,有计划,有规律的一种安排.利用一般系统工程分析法和有关结构概念,把它们应用于地理信息系统的设计,采用自上而下划分模块,逐步求精的系统的分析方法.结构化系统分析方法----结构化的基本思想系统的观点调研的观点结构化的观点面向用户的观点系统的观点:首先要从总体出发,考虑全局的问题,然后再自上而下,一层一层的完成系统的研制,这是结构化的思想核心。调研的原则:只有先进行调查研究,了解用户的需求,掌握必要的数据,才能进行系统分析,做出合理的设计.调查研究是地理信息系统设计的基本原则。结构化的方法:在地理信息系统的逻辑设计中,要用到结构化的方法,包括:分析信息流程,绘制数据流程图;根据数据的规范,编制数据字典;根据概念结构的设计,确定数据文件的逻辑结构;选择系统执行的结构化语言,以及采用控制结构作为地理信息系统的设计工具等,还包括系统结构上的变化和功能上的改变。面向用户的观点:地理信息系统类型的选择,很大程度上取决于使用部门的工作性质,工作领域以及该领域内的应用范围和应用期限.另外,用户的技术选择,用户的财力和人力的费用等,都是设计地理信息系统适应考虑的内容。地理信息系统的评价系统评价:就是指从技术和经济两个大的方面,对所设计的地理信息系统进行评定。基本做法是将运行着的系统与预测目标进行比较,考察是否达到了系统设计时所预定的效果。考察的主要内容系统效率系统可靠性可扩展性可移植性系统效益系统效率是通过系统效率是通过地理信息系统的各种职能指标,技术指标和经济指标反映出来的。例如:系统操作是否方便快捷,系统出错率如何,资源的使用效率高低等等。系统效率系统可靠性是指系统在运行时的稳定性.可靠性好的系统,一般很少发生事故,即使发生事故也能很快修复。可靠性还包括系统有关的数据文件和程序能否妥善保存,系统是否有后备体系等。系统可靠性可扩展性任何系统的开发都是从简单到复杂的不断求精和逐步完善的过程,特别是地理信息系统常常是从清查和汇集空间数据开始,然后逐步演化到从管理到决策的高级阶段,功能逐步增加和提高.因此,要在现行系统上不做大的改动或不影响整个系统的情况下增加功能模块,就必须在系统设计时留有接口,否则,当数据增加或功能增加时,系统就要重新设计,这就是一个没有生命力的系统.可移植性可移植性是评价地理信息系统的一项重要指标.一个有价值的地理信息系统的软件和数据库,不仅在于它自身结构的合理,还在于他对环境的适应能力.这首先要求系统必须按国家规范标准设计,以保证软件和数据的匹配,交换和共享.此外,在地理信息系统软件的设计中,采用自上而下的结构设计,即首先将与软件,硬件有关的公用子程序列出,在列出与软件,硬件无关的子程序,最后组成软件系统,也可提高软件开发的可移植性.系统效益经济效益---体现:促进生产了和产值的提高,减少盲目投资,降低工时耗费,减轻灾害损失等.现状:不太显著.前景:不断提高.社会效益---体现:信息共享的效果,地学综合能力的发展,应用系统的模型化,工作时间的缩短等现状:侧重社会效益.