[精选]9 GIS软件工程技术.pptx
《[精选]9 GIS软件工程技术.pptx》由会员分享,可在线阅读,更多相关《[精选]9 GIS软件工程技术.pptx(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、GISGIS的开发建设和应用是一项系统工程,涉的开发建设和应用是一项系统工程,涉及到系统的最优设计、最优控制运行、最优管理,及到系统的最优设计、最优控制运行、最优管理,以及人、财、物资源的合理投入、配置和组织等以及人、财、物资源的合理投入、配置和组织等诸多复杂问题。需要运用系统工程、软件工程等诸多复杂问题。需要运用系统工程、软件工程等的原理和方法,结合空间信息系统的特点进行实的原理和方法,结合空间信息系统的特点进行实施建设。施建设。1软件工程简介软件工程简介 计算机软件工程是一类求解的工程。它应用计算机科学、计算机软件工程是一类求解的工程。它应用计算机科学、数学及管理科学等原理,借鉴传统工程的
2、原则、方法,创立软件数学及管理科学等原理,借鉴传统工程的原则、方法,创立软件以到达提高质量,降低成本的目的。其中,计算机科学、数学应以到达提高质量,降低成本的目的。其中,计算机科学、数学应用于构造模型与算法,工程科学用于制定标准、设计范型,评估用于构造模型与算法,工程科学用于制定标准、设计范型,评估成本及确定权衡,管理科学用于方案、资源、质量、成本等管成本及确定权衡,管理科学用于方案、资源、质量、成本等管理。从学科角度来看,软件工程是一门指导计算机软件开发和维理。从学科角度来看,软件工程是一门指导计算机软件开发和维护的工程学科。护的工程学科。一一、基本概念、基本概念软件工程框架王立福 软件工程
3、的目标可概括为:软件工程的目标可概括为:“生产具有正确性、可用生产具有正确性、可用性以及开销合宜的产品,其活动包括需求、设计、实性以及开销合宜的产品,其活动包括需求、设计、实现、现、确认以及支持等活动,围绕工程设计、支持以及管理。确认以及支持等活动,围绕工程设计、支持以及管理。程序、软件与软件产品程序、软件与软件产品 独唱独唱-小合唱小合唱-合唱合唱-万人大合唱万人大合唱|简单程序简单程序 较复杂程序较复杂程序 软件软件软件包括软件包括 程序:程序:按事先设计的功能和性能需求执行的指令序列。按事先设计的功能和性能需求执行的指令序列。数据:数据:是程序能正常操纵信息的数据结构。是程序能正常操纵信
4、息的数据结构。文档:文档:与程序开发、维护和使用有关的图文材料。与程序开发、维护和使用有关的图文材料。计算机应用开展计算机应用开展软件数量多软件数量多规模大规模大软件成本高软件成本高质量低质量低个体化软件开发方法个体化软件开发方法软件维护困难软件维护困难软件危机软件危机软件工程软件工程 软件开发的开展过程软件开发的开展过程二、软件危机二、软件危机软件工程的提出,是为了解决软件工程的提出,是为了解决60年代出现的软件危机。年代出现的软件危机。软件工程的研究,提出了一系列理论、原则、方法以及工软件工程的研究,提出了一系列理论、原则、方法以及工具,试图解决软件危机。具,试图解决软件危机。软件危机的定
5、义软件危机的定义计算机软件的开发和维护过程所遇到的一系列严重问题。计算机软件的开发和维护过程所遇到的一系列严重问题。l表现表现对软件开发成本和进度的估算很不准确对软件开发成本和进度的估算很不准确用户很不满意用户很不满意质量很不可靠质量很不可靠没有适当的文档没有适当的文档软件成本比重上升软件成本比重上升供不应求:软件开发生产率跟不上计算机应用迅速深入的趋势供不应求:软件开发生产率跟不上计算机应用迅速深入的趋势软件危机产生的原因软件危机产生的原因客观:软件本身特点客观:软件本身特点逻辑部件逻辑部件规模庞大规模庞大主观:不正确的开发方法主观:不正确的开发方法无视需求分析无视需求分析软件开发软件开发=
6、程序编写程序编写轻视软件维护轻视软件维护软件危机的解决途径软件危机的解决途径组织管理组织管理工程工程管理方法工程工程管理方法技术措施技术措施软件开发技术与方法软件开发技术与方法软件工具软件工具 软件工程软件工程1968年北大西洋公约组织的计算机科学家在联邦德国召年北大西洋公约组织的计算机科学家在联邦德国召开国际会议,讨论软件危机问题,在这次会议上正式提出并使开国际会议,讨论软件危机问题,在这次会议上正式提出并使用了用了“软件工程这个名词,一门新兴的工程学科就此诞生。软件工程这个名词,一门新兴的工程学科就此诞生。概括地说,概括地说,GIS GIS工程危机包含两方面的问题:如何开发工程危机包含两方
7、面的问题:如何开发软件,怎样满足对软件的日益增长的需求;如何维护数量不断软件,怎样满足对软件的日益增长的需求;如何维护数量不断膨胀的软件与数据。膨胀的软件与数据。1 1对软件开发成本和进度的估计常常很不准确。对软件开发成本和进度的估计常常很不准确。2 2用户对用户对“已完成的软件系统不满意的现象经常发生。已完成的软件系统不满意的现象经常发生。3 3软件产品的质量往往靠不住。软件产品的质量往往靠不住。4 4 软件常常是不可维护的。软件常常是不可维护的。5 5软件与数据通常没有适当的文档资料。软件与数据通常没有适当的文档资料。6 6软件与数据成本在计算机系统总成本中所占的比例逐年上升。软件与数据成
8、本在计算机系统总成本中所占的比例逐年上升。三、软件工程活动三、软件工程活动软件工程活动包括需求、设计、实现、确认及支持软件工程活动包括需求、设计、实现、确认及支持等,它们对应于软件开发活动的不同阶段,一般来说,等,它们对应于软件开发活动的不同阶段,一般来说,软件开发都要经历从分析设计到实现确认的过程。在每软件开发都要经历从分析设计到实现确认的过程。在每个阶段按照相应的标准进行工作,并得到该阶段的成个阶段按照相应的标准进行工作,并得到该阶段的成果,是保证整个开发活动成功的关键。果,是保证整个开发活动成功的关键。1 需求分析需求分析主要工作包括:主要工作包括:用户需求调查用户需求调查 系统目的和任
9、务系统目的和任务 数据源调查和评估数据源调查和评估评价地理信息系统的年处理工作量、数据库结构评价地理信息系统的年处理工作量、数据库结构和大小、和大小、GIS的效劳范围、输出形式和质量等。的效劳范围、输出形式和质量等。系统的支持状况系统的支持状况2 系统设计系统设计 系统设计的任务是将系统分析阶段提出的逻辑模系统设计的任务是将系统分析阶段提出的逻辑模型转化为相应的物理模型,其设计的内容随系统的目型转化为相应的物理模型,其设计的内容随系统的目标、数据的性质和系统的不同而有很大的差异。一般标、数据的性质和系统的不同而有很大的差异。一般而言,首先应根据系统研制的目标,确定系统必须具而言,首先应根据系统
10、研制的目标,确定系统必须具备的空间操作功能,称为功能设计;其次是数据分类备的空间操作功能,称为功能设计;其次是数据分类和编码,完成空间数据的存储和管理,称为数据设和编码,完成空间数据的存储和管理,称为数据设计;最后是系统的建模和产品的输出,称为应用设计;最后是系统的建模和产品的输出,称为应用设计。系统设计是地理信息系统整个研制工作的核心。计。系统设计是地理信息系统整个研制工作的核心。不但要完成逻辑模型所规定的任务,而且要使所设计不但要完成逻辑模型所规定的任务,而且要使所设计的系统到达优化。的系统到达优化。3 实现阶段实现阶段 在软件实现阶段,要将设计的结果变换成程序在软件实现阶段,要将设计的结
11、果变换成程序设计语言编写的程序。在实现阶段,首先要确定程设计语言编写的程序。在实现阶段,首先要确定程序设计语言,其影响因素包括:开发人员对语言的序设计语言,其影响因素包括:开发人员对语言的熟悉程度,语言的可移植性,编译程序的效率,编熟悉程度,语言的可移植性,编译程序的效率,编译工具的支持等等。译工具的支持等等。4 确认活动确认活动确认活动贯穿于软件开发活动的时钟,但系统完成后的确认活动贯穿于软件开发活动的时钟,但系统完成后的软件测试是主要确实认活动。软件测试是指按照特定规软件测试是主要确实认活动。软件测试是指按照特定规程,发现软件错误的过程。程,发现软件错误的过程。结合用户要求完成的任务,选择
12、小块实验区结合用户要求完成的任务,选择小块实验区或者用模或者用模拟数据拟数据对系统的各个局部、各种功能进行全面试验。对系统的各个局部、各种功能进行全面试验。实验阶段不仅进一步测试各局部的工作性能,同时还实验阶段不仅进一步测试各局部的工作性能,同时还要测试各局部之间数据传送性能、处理速度和精度,保证要测试各局部之间数据传送性能、处理速度和精度,保证所建立的系统正常工作,且各局部运行状况良好。如果发所建立的系统正常工作,且各局部运行状况良好。如果发现不正常状况,则应查清问题的原因,然后通知硬件或软现不正常状况,则应查清问题的原因,然后通知硬件或软件提供者进行适当处理。件提供者进行适当处理。5 软件
13、维护软件维护 当软件开发完成并交付用户使用后,就进入当软件开发完成并交付用户使用后,就进入运行运行/维护阶段,在运行维护阶段,在运行/维护阶段仍需要对软件维护阶段仍需要对软件进行修改,称为进行修改,称为软件维护软件维护,软件维护活动可分为:,软件维护活动可分为:1 1改正性维护改正性维护 2 2适应性维护适应性维护 3 3完善性维护完善性维护 4 4预防性维护预防性维护 四、地理信息系统的硬件配置四、地理信息系统的硬件配置包括:包括:计算机计算机工作站、微机、便携式计算机;工作站、微机、便携式计算机;数据输入设备数据输入设备数字化仪、扫描仪等;数字化仪、扫描仪等;数据输出设备数据输出设备图形终
14、端、绘图仪、打印机、图形终端、绘图仪、打印机、硬拷贝设备等;硬拷贝设备等;存贮设备存贮设备磁带机、光盘机等。磁带机、光盘机等。直到直到70年代末,各种信息系统的计算年代末,各种信息系统的计算机硬件配置系统还很简单,主要是基于机硬件配置系统还很简单,主要是基于集中式的配置,其数据存贮和处理功能集中式的配置,其数据存贮和处理功能都集中于主机上。都集中于主机上。80年代末,提出计算机主机上的处理年代末,提出计算机主机上的处理功能与数据相别离的分布式概念。功能与数据相别离的分布式概念。光盘读写器光盘读写器磁带机磁带机大容量硬盘大容量硬盘扫描仪扫描仪数字测图仪数字测图仪数字化仪数字化仪投影设备投影设备媒
15、体制作媒体制作其他设备其他设备绘图仪绘图仪打印机打印机胶片记录仪胶片记录仪网网络络网网络络工作站工作站1工作站工作站2工作站工作站3 微机微机便携式计算机便携式计算机处处理理设设备备存贮设备存贮设备输入设备输入设备输出设备输出设备效劳器效劳器地理信息系统硬件系统的配置据边馥苓地理信息系统硬件系统的配置据边馥苓操作系统软件操作系统软件是地理信息系统软件开发是地理信息系统软件开发的基础平台。的基础平台。数据输入软件数据输入软件,包括:基于矢量的地图,包括:基于矢量的地图数字化和编辑软件,基于栅格的地图数字化和编辑软件,基于栅格的地图/影影像扫描软件。像扫描软件。数据查询和分析软件。数据查询和分析软
16、件。图像处理软件。图像处理软件。网络管理软件。网络管理软件。信息输出软件。信息输出软件。五、地理信息系统的软件配置五、地理信息系统的软件配置六、地理信息系统的人员配置六、地理信息系统的人员配置地理信息系统工程经理地理信息系统工程经理/技术组技术组数据库经理数据库经理数字化操作员数字化操作员系统操作员系统操作员应用分析软件经理应用分析软件经理程序编写员程序编写员七、地理信息系统工程成功的关键七、地理信息系统工程成功的关键缺乏远见缺乏远见失败的失败的GIS缺少用户缺少用户的介入的介入缺少决策者缺少决策者的有效支持的有效支持缺少专业缺少专业知识知识缺乏长期缺乏长期规划规划缺少系统缺少系统分析分析个人
17、冲突个人冲突没有协作精神没有协作精神没有总体目标没有总体目标没有任务目标没有任务目标没有应用目标没有应用目标没有软件版本升级没有软件版本升级没有数据的更新没有数据的更新没有模型的改进没有模型的改进没有使用系统方法没有使用系统方法没有反复试验修改没有反复试验修改没有培训没有培训没有手册没有手册没有用户的参与没有用户的参与错误的选择错误的选择错误的使用错误的使用没有进行咨询没有进行咨询地理信息系统开发成功的要素构成图八、开发过程模型八、开发过程模型软件开发模型是软件开发全部过程、活动和软件开发模型是软件开发全部过程、活动和任务的结构框架。软件开发模型能够清晰、直观任务的结构框架。软件开发模型能够清
18、晰、直观的表达软件开发过程,明确规定要完成的主要活的表达软件开发过程,明确规定要完成的主要活动和任务,可以作为软件工程工作的基础。动和任务,可以作为软件工程工作的基础。q 瀑布模型瀑布模型 瀑布模型具有几个特点:瀑布模型具有几个特点:1阶段间具有顺序性和依赖性阶段间具有顺序性和依赖性2推迟实现的观点推迟实现的观点清清楚楚区区分分逻逻辑辑设设计计与与物物理理设设计计,尽尽可可能能推推迟迟程程序序的的物物理理实实现现,是是按按照照瀑瀑布布模模型型开开发发软软件的一条重要的旨导思想。件的一条重要的旨导思想。3质量保证的观点质量保证的观点第第一一,每每个个阶阶段段都都必必须须完完成成规规定定的的文文档
19、档,没没有有交交出出合合格格的的文文档档就就是是没没有有完完成成该该阶阶段段的的任任务。务。第第二二,第第个个阶阶段段结结束束前前都都要要对对所所完完成成的的文档进行评审。文档进行评审。瀑布模型八、开发过程模型八、开发过程模型系统需求系统需求软件需求软件需求需求分析需求分析设设计计编编码码测测试试运运行行q演化模型:演化模型:主要针对事先不能完主要针对事先不能完整定义需求的软件开发。用户可以先整定义需求的软件开发。用户可以先给出核心需求,当开发人员将核心需给出核心需求,当开发人员将核心需求实现后,用户提出反响意见,以支求实现后,用户提出反响意见,以支持系统的最终设计和实现。持系统的最终设计和实
20、现。q螺旋模型:螺旋模型:是在瀑布模型以及是在瀑布模型以及演化模型的基础上,参加风险演化模型的基础上,参加风险分析所建立的模型。分析所建立的模型。q喷泉模型:喷泉模型:表达了软件开发过表达了软件开发过程中所固有的迭代和无间隙的程中所固有的迭代和无间隙的特征。说明了软件开发活动需特征。说明了软件开发活动需要屡次重复。要屡次重复。喷泉模型2.GIS工程设计的基本原则工程设计的基本原则一方案管理原则:一方案管理原则:用分阶段的生命周期方案严格管理。用分阶段的生命周期方案严格管理。BoehmBoehm认为,在工程的整个生命周期应该制定并严格执行六类方案,它认为,在工程的整个生命周期应该制定并严格执行六
21、类方案,它们是工程概要方案,里程碑方案,工程控制方案,产品控制方案,验们是工程概要方案,里程碑方案,工程控制方案,产品控制方案,验证方案,运行维护方案。证方案,运行维护方案。二坚持进行阶段评审原则:二坚持进行阶段评审原则:第一,大局部错误是在第一,大局部错误是在编码之前造成的,编码之前造成的,BoehmBoehm等人的统计,设计错误占软件错误等人的统计,设计错误占软件错误的的63%63%,编码错误仅占,编码错误仅占37%37%;第二,错误发现与改正行越晚,;第二,错误发现与改正行越晚,所需付出的代价也越高。所需付出的代价也越高。三严格的产品控制原则:三严格的产品控制原则:为了保持系统各个配置成
22、为了保持系统各个配置成分的一致性,必须实行严格的产品控制,其中主要是实行分的一致性,必须实行严格的产品控制,其中主要是实行基准配置管理。所谓基准配置又称为基线配置,它们是经基准配置管理。所谓基准配置又称为基线配置,它们是经过阶段评审后的系统配置成分各个阶段产生的文档或程过阶段评审后的系统配置成分各个阶段产生的文档或程序代码。序代码。三严格的产品控制原则三严格的产品控制原则采用现代程序设计技术原则采用现代程序设计技术原则结果应能清楚地审查原则结果应能清楚地审查原则开发小组的人员应该少而精原则开发小组的人员应该少而精原则成认不断改进工程实践的必要性原则成认不断改进工程实践的必要性原则3.GIS领域
23、的体系结构和构件领域的体系结构和构件 按照应用目的,地理信息系统可以分为区域地理信息按照应用目的,地理信息系统可以分为区域地理信息系统、专题地理信息系统以及地理信息系统工具,它们共系统、专题地理信息系统以及地理信息系统工具,它们共同组成了同组成了GIS领域领域Domain。所谓领域,是指共享某种。所谓领域,是指共享某种功能性的系统或应用程序的集合,换言之,领域表现了一功能性的系统或应用程序的集合,换言之,领域表现了一组应用系统共性的方面。组应用系统共性的方面。GIS领域GIS领域体系结构:一个工作流视图 对于领域,实施对于领域,实施领域工程,得到领域领域工程,得到领域模型,并建立领域特模型,并
24、建立领域特定的软件体系结构定的软件体系结构DSSA,Domain-Specific Software Architecture。地理信息系统的核心功能包括空间数据的输入、管理、地理信息系统的核心功能包括空间数据的输入、管理、分析以及表现,并且这些功能形成了一个比较完全的数据处分析以及表现,并且这些功能形成了一个比较完全的数据处理流程,考虑到与遥感以及全球定位系统的结合,形成如上理流程,考虑到与遥感以及全球定位系统的结合,形成如上的系统结构如上图。的系统结构如上图。构构件件技技术术标标准准:OMGOMG对对象象管管理理组组织织的的CORBACORBA公公共共请请求求对对象象代代理理体体系系结结构
25、构-mon mon object object request request broker broker architecturearchitecture和和MicrosoftMicrosoft的的OLE/OLE/D /D 技术。技术。COBRACOBRA定定义义了了一一个个带带有有开开放放软软总总线线的的分分布布式式结结构构,在在这这一一结结构构中中,来来自自不不同同厂厂商商、运运行行于于不不同同操操作作系系统统上上的的对对象象,能能够够进进行行互互操操作作。CORBACORBA对对象象的的互互相相通通信信通通过过对对象象请请求求代代理理ORBORB,Object Object Reque
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精选 精选9 GIS软件工程技术 GIS 软件工程 技术
限制150内