




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第五章城市地理信息系统软件工程(第一讲),教学内容:5.1城市地理信息系统软件工程概论5.2城市地理信息系统规划教学时间:2课时教学方法:讲授法多媒体教学法协作学习法教学目的:1、让学生了解和掌握计算机软件经历了哪三个主要发展阶段以及各个阶段特性;2、让学生熟悉和掌握软件生成期及软件生存期模型;3、让学生理解和掌握地理信息系统软件工程特色和城市地理信息系统软件工程特色的区别和联系4、让学生理解和掌握城市地理信息系统规划的原则、可行性分析以及制定开发计划的原则、方法等,教学重点:1、城市地理信息系统软件工程生存期及生存期模型;2、GIS与UGIS软件工程特色的区别与联系教学难点:1、城市地理信息系统规划的可行性分析及制定开发计划本次课教学所涉及的学术前沿:智能模型SOA,5.1城市地理信息系统软件工程概论,5.1.1软件工程概论概论1、软件工程的发展历程与软件危机软件是程序以及开发、使用和维护所需要的所有文档。软件工程是研究大规模程序设计的方法、工具和管理的工程科学。软件工程的目标在于研究一套科学的工程方法,并与此相适应,发展一套方便的工具系统,力求用较少的投资获得高质量的软件。计算机软件经历了三个主要发展阶段(表5.1)1)程序设计阶段2)程序系统阶段3)软件工程阶段,为了解决“软件危机”,人们主要从哪两个方面探索?,1、从管理的角度,希望实现软件开发过程的工程化,如“瀑布式”生命周期模型2、对软件开发过程中分析、设计的方法的研究案例成果:(1)20世纪70年代风靡一时的结构化开发方法,即以过程化、模块化、封装为基础的PO(Process-Oriented,面向过程的开发或结构化方法);(2)20世纪80年代后期,OO(Object-Oriented,面向对象),它建立在对象、类、通信的基础上,是人们对现实世界的更高层次的抽象,具有封装性(Encapsulation)、继承性(Inheritance)、多态性(Polymorphism)特性;(3)21世纪,OS(Service-Oriented,面向服务)技术与方法,面向服务的体系结构,面向服务的体系结构(service-orientedarchitecture,SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。,面向服务的优点,编码灵活性可基于模块化的低层服务、采用不同组合方式创建高层服务,从而实现重用,这些都体现了编码的灵活性。此外,由于服务使用者不直接访问服务提供者,这种服务实现方式本身也可以灵活使用。明确开发人员角色例如,熟悉BES的开发人员可以集中精力在重用访问层,协调层开发人员则无须特别了解BES的实现,而将精力放在解决高价值的业务问题上。支持多种客户类型借助精确定义的服务接口和对XML、Web服务标准的支持,可以支持多种客户类型,包括PDA、手机等新型访问渠道。,面向服务的优点,更易维护服务提供者和服务使用者的松散耦合关系及对开放标准的采用确保了该特性的实现。更好的伸缩性依靠服务设计、开发和部署所采用的架构模型实现伸缩性。服务提供者可以彼此独立调整,以满足服务需求。更高的可用性该特性在服务提供者和服务使用者的松散耦合关系上得以体现。使用者无须了解提供者的实现细节,这样服务提供者就可以在WebLogic集群环境中灵活部署,使用者可以被转接到可用的例程上。,面向服务的优点,SOA可以看作是B/S模型、XML/WebService技术之后的自然延伸。SOA将能够帮助我们站在一个新的高度理解企业级架构中的各种组件的开发、部署形式,它将帮助企业系统架构者以更迅速、更可靠、更具重用性架构整个业务系统。较之以往,以SOA架构的系统能够更加从容地面对业务的急剧变化。,软件工程的概念,Boehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。IEEE:软件工程是开发、运行、维护和修复软件的系统方法。FritzBauer:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。目前比较认可的一种定义认为:软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。,2、软件生存期(SoftwareLifeCycle),1)规划(lanning)2)需求分析和定义(RequirementAnalysisandDefinition)3)软件设计(oftwareDesign)4)程序编写(odingProgramming)5)软件测试(Testing)6)运行维护(Running/Maintenance),1)瀑布模型(WaterfallModel)2)螺旋模型(SpiralModel)3)喷泉模型(WaterFountainModel)4)智能模型(IntelligenceModel),3、软件生存期模型(SoftwareLifeCycleModel),瀑布模型(WaterfallModel),是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好“返回”上一个阶段并进行适当的修改,项目开发进程从一个阶段“流动”到下一个阶段,这也是瀑布模型名称的由来。包括软件工程开发、企业项目开发、产品生产以及市场销售等构造瀑布模型。,软件工程瀑布模型,瀑布模型,螺旋模型(SpiralModel),螺旋模型采用一种周期性的方法来进行系统开发。这会导致开发出众多的中间版本。使用它,项目经理在早期就能够为客户实证某些概念。该模型是快速原型法,以进化的开发方式为中心,在每个项目阶段使用瀑布模型法。这种模型的每一个周期都包括需求定义、风险分析、工程实现和评审4个阶段,由这4个阶段进行迭代。软件开发过程每迭代一次,软件开发又前进一个层次。采用螺旋模型的软件过程如下图所示:螺旋模型基本做法是在“瀑布模型”的每一个开发阶段前引入一个非常严格的风险识别、风险分析和风险控制,它把软件项目分解成一个个小项目。每个小项目都标识一个或多个主要风险,直到所有的主要风险因素都被确定。,螺旋模型,螺旋模型,喷泉模型,喷泉模型是一种以用户需求为动力,以对象为驱动的模型,主要用于采用对象技术的软件开发项目。该模型认为软件开发过程自下而上周期的各阶段是相互迭代和无间隙的特性。软件的某个部分常常被重复工作多次,相关对象在每次迭代中随之加入渐进的软件成分。无间隙指在各项活动之间无明显边界,如分析和设计活动之间没有明显的界限,由于对象概念的引入,表达分析、设计、实现等活动只用对象类和关系,从而可以较为容易地实现活动的迭代和无间隙,使其开发自然地包括复用。,喷泉模型,喷泉模型不像瀑布模型那样,需要分析活动结束后才开始设计活动,设计活动结束后才开始编码活动。该模型的各个阶段没有明显的界限,开发人员可以同步进行开发。其优点是可以提高软件项目开发效率,节省开发时间,适应于面向对象的软件开发过程。由于喷泉模型在各个开发阶段是重叠的,因此在开发过程中需要大量的开发人员,因此不利于项目的管理。此外这种模型要求严格管理文档,使得审核的难度加大,尤其是面对可能随时加入各种信息、需求与资料的情况。,喷泉模型图,智能模型,智能模型基于知识的软件开发模型,它与专家系统结合在一起。该模型应用基于规则的系统,采用归纳和推理机制,帮助软件人员完成开发工作,并使维护在系统规格说明一级进行。该模型在实施过程中要建立知识库,将模型本身、软件工程知识与特定领域的知识分别存人数据库。以软件工程知识为基础的生成规则构成的专家系统与含应用领域知识规则的其他专家系统相结合,构成这一应用领域软件的开发系统。,智能模型样图,5.1.2城市地理信息系统工程概论,1、地理信息系统软件工程特色1)系统复杂度大(1)交付的文档的质量和数量(2)软件的微观复杂度(3)软件的宏观复杂性2)数据在系统中具有特别地位GIS支持异质海量数据处理,数据准备方面要注意如下问题:(1)数据的质量(2)数据的现势性(3)合理的数据组织结构3)系统表达方式复杂(1)表达的内容复杂(2)表达的对象具有时空特性,2、城市地理信息系统工程特色,1)系统对象复杂2)数据标准具有地方特色3)系统更新速度快4)系统维护工作量大5)易操作性要求太高,5.2城市地理信息系统规划,5.2.1城市地理信息系统规划概论1、UGIS规划的任务1)制定UGIS的发展战略2)可行性分析3)制定信息系统的总体方案,安排项目开发计划2、UGIS规划的原则1)系统目标客观可行2)兼顾各个层次用户的需求3)系统模型与用户特性良好互动4)内容不宜过细5)规范的规划流程和方法6)便于实施,UGIS的规划与实现,5.2.2可行性分析,1、技术可行性2、经济可行性3、社会可行性4、抉择,技术可行性,技术条件包括以下几个方面:1)硬件包括在项目经济条件下,能够获得的计算机的存储量、运算速度;外部设备的功能、效率、可靠性;网络设备的容量、质量、稳定性,特别是否能够满足大容量的空间数据在系统范围内(一般是用户局域网内部)的传输要求。2)软件包括操作系统的性能和接口能力是否符合UGIS各个部分的需要,如操作系统能否满足UGIS的安全要求,能否支持相应的DBMS和GIS基础平台;GIS基础平台能否管理系统所有的数据,能否满足UGIS所需要的图文编辑、显示、分析等功能的基本需要,对DBMS、WEB等技术是否有整套解决方案;DBMS的功能和性能是否足够;程序设计语言的种类和表达能力是否满足要求;网络软件的性能是否满足需要;是否已有专用的软件等等。,3)数据包括用户能否获得系统所需要的基础空间数据及所需的属性数据,如地形图、地籍图;用户能否承担自身的各类数据数字化和整理的费用;用户是否具备保证系统数据现势性的能力;数据是否具有保密的要求,如何保证数据的安全等等。4)技术人员包括用户及其合作单位各类技术人员的数量、水平、来源是否满足UGIS开发的要求;用户是否具备系统维护的技术实力或解决方案;使用UGIS工作人员是否具备相应的操作能力,培训情况如何等等.,经济可行性,经济可行性是指对UGIS进行开发成本的估算及可能取得效益的评估,确定待开发系统是否值得投资开发。经济可行性研究涉及范围较广,包括成本一效益分析、用户职能和目标、开发所需的成本和资源。经济可行性分析是避免投资浪费、提高信息化科学决策、确定合理的系统目标的重要手段,通过估计项目的成本和效益,分析项目经济上是否合理。系统效益不仅指系统的经济收益,还包括社会效益、生态效益。,5.2.3成本-效益分析,1、UGIS经济评价1)货币的时间价值2)投资回收期3)纯收入2、UGIS成本估计3、UGIS的效益评价4、成本-效益分析的作用与局限,5.2.4制定开发计划,1、制定开发计划的原则1)总结系统开发各个阶段工作经验2)开发计划应该具有足够的灵活性3)建立各个阶段的评审制度,2、制订开发计划的方法,1)根据系统工程和UGIS的构成特性,对系统进行分解,分为具有一定独立性的工作任务,UGIS一般包括数据采集入库、系统规划、系统分析、系统设计、编码、测试、交付安装等任务,针对项目本身的要求,还有其它的一些特色任务,如用户培训、网络安装、分析模型设计。2)对任务进行分类,确定任务的性质。3)确定各个任务需要投入的资源,包括软硬件、人员、资金和其他设施。4)组合任务,形成项目开发计划,以Petri图或甘特图的形式将各个阶段的时间和资源组织起来。,3、推算各阶段时间的方法,确定每个阶段的时间没有一个明确制定的方法,主要是通过经验法推算,具有较大的误差,在经验法里主要考虑如下几个因素:1)各个阶段工作比例。2)确定各个阶段的人员数量。3)确定软硬件、设备等资源能够获得的时间。4)对资源合理配置后,取时间最长者为阶段时间。,4、开发计划的表达方式。,开发计划是通过甘特图进行表示,在具体表达方式上有两种方式:一种是采用公历法进行表示,各个阶段具有明确的起止年月,这种方式主要适用于项目简单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小红帽唱歌课教学课件
- it项目管理教学课件7
- 机电基础测量知识培训班课件
- 2025年安全生产责任清单重点练习题
- 2025年监察员岗面试模拟题
- 2025年宠物摄影摄像师基础笔试题及答案集
- 读后感课件和时间赛跑
- 2025年中级测量员鉴定考试重点集
- 2025年碳汇管理中药招聘笔试模拟集
- 读书感悟课件
- 租房协议书合同txt
- 《脑机接口技术与应用》课程教学大纲
- 河南省安阳市文峰区2024-2025学年八年级上学期期末语文试题(原卷版+解析版)
- 2024-2025学年广东省河源市小升初分班考试数学试卷(附答案解析)
- 《中国现代农业发展》课件
- 2024-2025学年九年级化学人教版教科书解读
- 2024-2025学年湖北省武汉市武昌区五年级(上)期末数学试卷(含答案)
- 《神农架的传说》课件
- 《植物资源学》课件
- 建筑工程质检与验收
- 幼儿园教师考核评价量化表
评论
0/150
提交评论