下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 GIS软件工程概述软件工程开发过程的问题:软件费用,用户需求,软件可维护性,软件可靠性,数据量,软件生产率,软件重用。软件开发问题原因分析:1.软件规模越来越大,结构越来越发杂。2.软件开发管理困难3.软件开发费用不断增加4.软件开发技术落后5.生产方式落后6.开发工具落后7.软件更新速度快软件工程的定义:软件工程是把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;并研究其中提到的途径。软件工程的目标:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性并且满足用户需求的
2、软件产品。追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。软件工程学的内容:软件开发技术和软件工程管理软件开发技术包含:软件开发方法、软件开发过程和软件开发工具和环境;软件工程管理学包含:软件工程经济学,软件管理学,软件心理学。软件工程三要素:方法,工具,过程。软件工程内容按开发过程先后分:前期工程,设计工程,数据工程,数据实施,数据维护软件生存周期模型:描述软件开发过程中各种活动如何执行的模型。软件生存周期模型有:瀑布模型,增量模型,螺旋模型,喷泉模型,基于知识的智能模型。瀑布模型:将软件生存周期各活动规定为依线性顺序联接的若干阶段的模型。 它包括可行性分析,项目开发计划,需
3、求分析,总体设计,详细设计,编码,测试,维护。瀑布模型特点: 顺序性、依赖性:下一阶段依赖上一阶段的完成。 推迟实现:阶段任务结束形成文档,并审核后方能进行设计任务,将程序的实现推迟进行。 质量保证:文档完整、文档评审,避免错误积累与放大效应。瀑布模型优点:1)为项目提供了按阶段划分的检查点。 2)当前一阶段完成后,您只需要去关注后续阶段。3)可在迭代模型中应用瀑布模型。瀑布模型缺点:1)在项目各个阶段之间极少有反馈。 2)只有在项目生命周期的后期才能看到结果。3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段。瀑布模型一般适应哪些场合:布模型一般适用于功能、性能明确、完整、无重大变化的软件
4、系统的开发。例如操作系统、编译系统、数据库管理系统等系统软件的开发。应用有一定的局限性。增量模型:软件逐渐开发出来,开发一部分,向用户展示一部分,可让用户及早的看到部分软件,及早发现问题,或者先开发一个原型软件,完成部分主要功能,展示给用户并征集意见,然后逐步完善,最终获得满意的软件产品。螺旋模型:将瀑布模型与增量模型结合起来,加入风险分析。将开发周期分为几个螺旋周期,每个周期大致和瀑布模型向符合。软件生存周期:软件从定义、开发、使用和维护,直到最终废弃的过程称为生命周期软件危机:是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题Gis软件工程建设过程中的的文档:1,立项报告2.
5、可行性研究报告,3.设计任务书,4.需求报告分析,5.总体设计方案,6.系统设计方案,7.系统测试报告8.用户使用报告9.系统验收报告,系统建设总结报告.第二章:可行性分析可行性研究的目的:就是用最小的代价尽可能短的时间内确定问题是否能够解决可行性分析任务:1.技术可行性2.经济可行性3.社会可行性4.抉择技术可行性包括:1.开发风险2.资源的有效性3.技术可行性研究具体步棸:1.确定项目规模和莫标2.研究正在运行的系统,3.简历新系统的高层逻辑模型,4.导出和评价各种方案,5推荐可行的方案6.编写可行性研究报告数据流图的用途:1.交流信息的工具2.作为分析与设计的工具数据字典的内容:1.数据
6、流2.数据流分量(即数据元素)3.数据存储4.处理系统流程图是物理系统模型数据流图和数据字典是系统逻辑模型成本/效益分析的方法:1.货币的时间价值,2投资回收期3纯收入4投资回收率数据字典:是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合第三章:需求分析需求分析:开发人员要准确的了解理解用户的要求,进行细致的调查分析,将用户非形式的需求转化为完整的需求定义,再由需求定义转化到相应形式功能规格说明的过程需求分析任务:1.确定对系统的综合要求2.分析系统的数据要求3.导出系统的逻辑模型4.修正系统开发计划需求分析必要性:1.问题的复杂性2.交流障碍性3.不完备性和不一致性4.需
7、求易变性需求分析原则:1.必须能够表达和理解问题的数据域和功能域,2.可以吧一个发杂问题按功能进行分解并逐层细化3.建模需求分析的方法1.访谈2.面向数据流自顶向下求精3.简易的应用规格说明技术4.快速建立软件原型,Gis需求分析方法:1.结构化需求分析法,2.依用户为中心的需求分析方法(ucra)第四章:软件工程分析方法结构化分析方法:根据魔种原理,使用一定工具,按照特定步棸工作的软件开发方法。结构化分析方法组成:结构化分析(SA),结构化设计(SD),结构化程序设计(SP)结构化分析方法特点:1,使用最早的开发方法,使用时间最长。2.应用最广,特别适合数据处理。3.相应支持工具多,发展比较
8、成熟。结构化分析方法优点:1.简单。使用2.适合瀑布模型适合开发者掌握3.成功率较高4.特别适合于数据处理领域中的应用,其他领域也适合。结构化分析方法缺点:1.对于规模大的项目,特别复杂的应用不太适应。2.难于解决软件重用问题。3.难于适用于需求变化.4.难于彻底解决维护问题结构化分析方法描述工具:1.数据流图2.数据字典3.描述加工逻辑的结构化语言,判定表,判定树结构化方法步棸:1.简历当前系统的物理模型2.抽象出当前系统的逻辑模型3建立目标系统的逻辑模型4.作进一步的补充优化类:具有相同或相似性质对象就是类,对象时抽象的类,类是具体的对象面向对象的特点:1.唯一性2.分类性3.继承性4.多
9、态性面向对象的要素:1.抽象2.封装性3.共享性4.强调对象结构而不是程序结构面向对象的开发方法:Booch方法,Coad方法,OMT方法第五章:总体设计总体设计的基本目的就是回答“概括地说,系统该如何实现?总体设计也称概要设计或初步设计总体设计的步棸:1.根据用户需求确定系统要做哪些工作,完成系统逻辑模型。2.将系统分解为一组模块,各模块分别满足所提出的需求。3.将分解出来的模块,按照是佛能满足正常的需求进行分类。4.制定工作计划,开发有关的模块,并对各模块进行一致性的测试以及系统最后运行。总体设计基本任务:1.设计软件结构2.数据结构及数据库设计3.编写总体设计文档4.评审结构化设计优点:
10、1.减少设计复杂性2.结构独立3.单一的功能模块4.易于无按键修改5.易于开发和维护6.加强了重用代码能力软件结构设计准则:1.模块独立性准则2.控制范围与影响范围之间准则3.软件结构的形态特征准则4.模块大小准则5.模块的接口准则空间数据库设计原则:1.尽量减少空间数据的冗余度2.提供稳定的刷空间数据结构,更具用户需求而变化3.满足用户对空间数据即使访问需求并能高效地提供用户所需的空间数据查询结果。4.在数据元素箭维持发杂的联系,以反映空间数据的复杂性6.支持多样的决策需求,并具有较强的应用适用性第六章:详细设计详细设计基本任务:1.处理方式设计2.物理设计3.可靠性设计4.其他设计5.编写
11、详细设计说明书及进行详细设计的评审详细设计方法:1.采用自顶向下,逐步求精的程序设计方法2.使用三种基本控制结构构造程序3.主程序员的组织形式界面设计原则:1.描述人和他们的任务脚本2.设计命令层3.设计详细的交互4.继续做原型5.设计用户界面类6.根据图形用户界面进行设计第七章:软件工程设计方法结构化设计方法目的:获得系统结构图。系统结构他四中基本模块类型:传入模块,传出模块,变换模块,协调模块。系统结构图主要结构形式:变换型系统结构,事务性结构图。数据流图变换为系统结构图方法:1.变换分析设计方法2.事务分析设计方法3.系统结构图完善。变换分析设计步棸:1.重画数据流图2.确定系统逻辑输入
12、,编辑输入和中心变换部分3.进行一级分解,设计系统模块结构的顶层和第一层4.进行二级分解,设计输入,中心变换,输出部分的中下层模块。事务分析设计方法步棸:1.识别事务源2.确定适当的事务型结构3.识别各事务和他们定义的操作系统结构图完善:1.模块功能完善2.消除重复共嫩3.控制模块大小和子模块数4.增加适当的说明结构化设计的审查:1.正确性检验2.提高可理解性3.重新组合和分解Jackson方法:面向数据结构的Jackson方法包含JSP方法和JSDSD方法与jsp方法的异同:面向数据流的设计(SD方法)和面向数据结构的设计 (JSP方法)的共同点都是数据信息驱动的,都试图将数据表 示转换成软
13、件表示,不同之处在于面向数据结构的设计不利用数据流图,而根据数据结构的表示来设计。Jsp方法优缺点: 优点:简单,适合于规模不大的系统,建立了 问题的数据结构之后,可直接推导出相应的程序结构。 缺点:不适合于大系统,当输入数据结构与输出数 据结构不相同且无对应关系时,难于应用。当数据结构发生 变化时,程序结构也发生变化,一般是总体上用SD方法, 局部范围用JSP方法。Jackson图逻辑数据结构:顺序结构,选择结构(),重复结构(*)。Jackson图优点:1) 便于表示层次结构, 是对结构进行自顶向下分解的有 力工具。 (2) 形象直观可读性好。 (3) 既能表示数据结构也能表示程序结构(因
14、为程序结构 也只有上述三种基本类型)。Jsp开发步棸:(1) 分析并确定输入数据和输出数据的逻辑结构, 并用 Jackson图描绘这些数据结构。 (2) 找出输入数据结构和输出数据结构中有对应关系的数 据单元。所谓有对应关系是指有直接的因果关系,在程序中 可以同时处理的数据单元(对于重复出现的数据单元必须是 重复的次序和次数都相同才可能有对应关系)。 (3) 用下列3条规则从描绘数据结构的Jackson图导出描绘 程序结构的Jackson图(4) 列出所有操作和条件(包括选择条件和重复结束条 件),并把它们分配到程序结构图的适当位置。 (5) 用纲要逻辑表示程序。JSD方法的特点 JSD (1
15、) 建立现实世界的模型,确定用户的功能需求。(2) 用顺序进程的网络描述需求。 (3) JSD描述的需求原则上是可以直接执行的。(4) 开发过程不再沿用分析、设计及编程的模式, 而是突 出需求分析,把编程分散在各个步骤中陆续进行。JSD方法开发步棸:1.实体运动步2.实体结构步3.初步模型步4.功能步5.性能步棸6.实现步Uml主要内容:UML的语义,UML表示法Uml用于软件开发:1.用户需求2.系统分析3.系统设计4.系统实现5.测试Uml特点:1.统一了面向对象方法的基本盖帘2.建模能力更强3.独立于开发过程4.提出许多新的概念通用模型元素:1.模型元素2.约束3.依赖关系4.细化关系5
16、.注释第八章软件工程实施与测试程序编制一般要求:能够正常工作,调试代价低,易于维护,易于修改,设计不复杂,效率高等GIS程序要求:1.尽量使用GIS基础软件的编程资源2.注意系统配置要求3.良好的设计风格3.程序容错率大5.采用版本高控制管理程序编码程序语言特征:1.心理特性2.工程特性3.技术特性编程风格相关的几个方面1.源程序文档化2.数据说明3.语句构造4.输入和住处5.效率软件测试目的:、软件测试是为了发现错误而执行程序的过程; 、测试是为了证明程序有错,而不是证明程序无错误。 、一个好的测试用例是在于它能发现至今未发现的错误;软件测试准则1.所有测试都应该能追溯到用户需求2.应该远在
17、测试开始之前就制定出测试计划3.把Pareto原理应用到软件测试中4.应该从“小规模”测试开始,并逐步进行“大规模”测试【(8020)测试发现的错误80%很可能是由程序中20%的模块造成的】5.穷举测试是不可能的6.第三方测试(A编写,B测试) 测试分为白盒测试(结构测试)和黑盒测试(功能测试)测试步骤:1.模块测试.2子系统测试3.系统测试4.验收测试5.平行运行软件可靠性:是程序在给定的时间间隔内,按照规格说明书的规定成功地运行的概率软件可用性:是程序在给定的时间点,按照规格说明书的规定,成功地运行的概率第九章:软件工程维护软件工程的主要目的:是提高软件的可维护性,减少软件维护所需要的工作量,降低软件系统的总成本,所谓维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。四类维护:1.改正性维护(纠正使用过程中暴露出来的错误)2.适应性维护(适应外部环境变化)3.完善性维护(改进原有软件)4.预防性维护(改进将来的可维护性和可靠性)软件维护的特点:1.结构化维护与非结构化维护差别巨大2.维护的代价高昂3.维护的问题很多决定软件可维护性的因素:1.可理解性2.可测试性3.可修改性4.可移植性5.可重用性软件维护过程:1.首先确定要进
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度棉纱行业质量标准制定与实施合同4篇
- 2025版年会现场摄影摄像服务合同范本4篇
- 二零二五年度棉花病虫害防治与防治药物供应合同4篇
- 二零二五年度新能源汽车动力电池研发合作合同
- 2025年度农家乐景区旅游咨询与导览服务合同协议
- 二零二五年度美容院美容设备维护保养及备件供应合同4篇
- 二零二五年度美甲店互联网营销与电商平台合作合同4篇
- 二零二五年度南宁市体育场馆设施租赁合同及赛事组织协议3篇
- 2025年度个人二手车居间销售合同示范文本2篇
- 二零二五年帐篷租赁及活动策划服务合同3篇
- 完整版秸秆炭化成型综合利用项目可行性研究报告
- 油气行业人才需求预测-洞察分析
- 《数据采集技术》课件-Scrapy 框架的基本操作
- (2024)河南省公务员考试《行测》真题及答案解析
- 2025年河北省单招语文模拟测试二(原卷版)
- 工作计划 2025年度医院工作计划
- 高一化学《活泼的金属单质-钠》分层练习含答案解析
- DB34∕T 4010-2021 水利工程外观质量评定规程
- 2024年内蒙古中考英语试卷五套合卷附答案
- 2024年电工(高级)证考试题库及答案
- 2024年全国各地中考试题分类汇编:古诗词阅读
评论
0/150
提交评论