第三讲GIS需求分析.ppt
《第三讲GIS需求分析.ppt》由会员分享,可在线阅读,更多相关《第三讲GIS需求分析.ppt(90页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、GIS软件的需求分析软件的需求分析第三讲内容内容需求分析的重要性需求分析的困难性需求工程需求分析过程概念模型和规范化图形工具需求验证原型技术2需求分析需求分析需求分析是软件定义时期的最后一个阶段回答“系统必须做什么?”的问题3需求分析的重要性需求分析的重要性 真的很重要吗?真的很重要吗?例:Our real-time example is based on the embedded software in the Ariane-5,a space rocket belonging to the European Space Agency(ESA).On June 4,1996,on its m
2、aiden flight,the Ariane-5 was launched and performed perfectly for approximately 40 seconds.Then,it began to veer off course.At the direction of an Ariane ground controller,the rocket was destroyed by remote control.The destruction of the uninsured rocket was a loss not only of the rocket itself,but
3、 also of the four satellites it contained;the total cost of the disaster was$500 million(Newsbytes home page 1996;Lions et al.1996).4需求分析的重要性需求分析的重要性 The reason:there was no discussion in the requirements documents of the ways in which the Ariane-5 trajectory would be different from Ariane-4.统计资料:统计
4、资料:In 1994,the Standish Group surveyed over 350 In 1994,the Standish Group surveyed over 350 companies about their over 8000 software projects to find companies about their over 8000 software projects to find out how well they were faring.The results are sobering.out how well they were faring.The re
5、sults are sobering.Thirty-one percentThirty-one percent of the software projects were of the software projects were canceled canceled before they were completed.Moreover,in large companies,before they were completed.Moreover,in large companies,only only 9%9%of the projects were of the projects were
6、delivered on timedelivered on time and cost and cost what they were budgeted,and what they were budgeted,and 16%16%met those criteria in met those criteria in small companies(Standish 1994).small companies(Standish 1994).5需求分析的重要性需求分析的重要性6需求分析的重要性需求分析的重要性5 点事实v软件生命周期中,一个错误发现得越晚,修复错误的费用越高7需求分析的重要性需求分
7、析的重要性v许多错误是潜伏的,并且在错误产生后很长一段时间才被检查出来v在需求过程中会产生很多错误DeMarco在一份研究报告中指出,被检查出来的错误的56产生的根源可以追溯到需求阶段。AIRMICS所进行的一项调查发现,在一份美国军方大型管理信息系统的需求现格说明书(SRS)中存在着500多个错误,当然这仅仅是一个软件项目中的一次调查。v在需求阶段,代表性的错误为疏忽、不一致和二义性美国海军研究实验室从20世纪70年代起就对软件开发技术不断地进行研究。他们对海军A7E它机上的”宅行操作程序进行实地测试,以验证许多新设想的可行性。得出的研究数据表明:A7E项目中77的需求错误特点是不明确:疏忽
8、、不一致和二义性。按错误类型对这些错误分布进行分析的结果是:49不正确的事实,31疏忽,l 3不一致,5二义性8需求分析的重要性需求分析的重要性v需求错误是可以被检查出来的9需求分析的重要性需求分析的重要性在需求过程中会产生很多错误(事实3和4)。许多错误并没有在早期被发现(事实2)。这样的错误是能够在产生的初期被检查出来的(事实5)。如果没有及时检查出来这些错误,软件费用会直线上升(事实1)10需求管理的困难性需求管理的困难性11需求工程需求工程需求是什么?需求就是以一种清晰、简洁、一致且无二义性的方式,对一个待开发系统中各个有意义方面的陈述的一个集合。需求工程一般指应用已证实有效的原理、方
9、法,通过合适的工具和记号,系统地描述出待开发系统及其行为特征和相关约束;通常是一些过程的集合:需求获取(需求引出)、需求分析和编写软件规格说明书(SRS)及验证(包括鉴定和证实)。12需求工程涉及人员需求工程涉及人员13软件需求软件需求w功能需求w性能需求w环境需求w可靠性需求w安全保密要求w用户界面需求w资源使用需求w成本消耗需求w开发进度需求w预先估计以后系统可能达到的目标14需求分析与程序设计的不同需求分析与程序设计的不同15需求分析现状需求分析现状误解交流障碍缺乏共同语言“完整性”问题需求永远不会稳定用户意见不统一错误要求认识混淆16需求分析的任务需求分析的任务可行性分析阶段已经粗略了
10、解了用户的需求,甚至已经提出了一些可行的方案,但是,可行性研究的基本目的是用较小的成本在较短的时间内确定是否存在可行的方案。因此许多细节被忽略。在系统开发前,还需要进一步确定17需求分析的任务需求分析的任务可行性分析可行性分析DFDDD功能具体化功能具体化需求规格说明需求规格说明加细加细DFDDD算法算法描述描述IPOFinal stage of Definition phase仍然回答“What”,而不是“How”,但更细致、精确(合同的拟定)18需求分析的任务需求分析的任务完整准确清晰具体19需求分析的任务需求分析的任务20需求分析的任务需求分析的任务1、确定要求 功能要求(functio
11、nal requirements):系统必须做什么?性能要求(performance requirements):做得怎样?例:response time,memory,back-up memory,security,运行要求(operational requirements):运行环境、软硬件配置等。未来可能的扩充要求(possible evolution):如3维虚拟现实的效果等等。21需求分析的任务需求分析的任务 2分析数据分析数据建立概念模型建立概念模型(conceptual models):E-R Diagram形象描绘数据结构形象描绘数据结构:Data Hierarchy,Warn
12、ier Diagram,IPO数据结构规范化数据结构规范化(Normalization)3、导出逻辑模型:、导出逻辑模型:DFD+DD+IPO4、修正计划:重估成本、进度等、修正计划:重估成本、进度等22需求分析的任务需求分析的任务“样样机机试用试用”CDG5、开发原型系统(Prototyping)23分析过程分析过程软件系统本质上是信息处理系统,任何信息处理系统的基本功能都是把输入数据转变成需要的输出信息数据是分析的出发点,在可行性分析阶段许多实际的数据元素被忽略了,需求分析阶段将定义这些数据元素结构化分析方法就是面向数据流自顶向下逐步求精进行需求分析的方法24分析过程分析过程1、沿、沿DF
13、D回溯回溯(1)DFD的输出端是系统的最终目的的输出端是系统的最终目的(2)向回确定每个数据元素的来源)向回确定每个数据元素的来源(3)为了得到某个数据元素需要用到数据流图中目前还)为了得到某个数据元素需要用到数据流图中目前还没有的数据元素,或者得出某个数据元素需要用的算没有的数据元素,或者得出某个数据元素需要用的算法尚不清楚,可加细法尚不清楚,可加细DFD及及DD,并将相关算法记录在并将相关算法记录在IPO图图中。中。25分析过程分析过程2、用户复查 数据字典准确完整吗?算法正确吗?有没有遗漏必要的处理或数据元素?某些数据元素是从哪里来的?构成一个循环,认识螺旋式上升26分析过程分析过程3、
14、细化DFD:加细前后的IO须相同。分解到须考虑具体实现的代码时即可仃止27分析过程分析过程4、修正计划、修正计划5、文档:、文档:需求规格说明书需求规格说明书不需分解不需分解有补充有补充修正修正无补充修正无补充修正分析追踪分析追踪数据流图数据流图用户复查用户复查细细 化化数据流图数据流图需要需要分解分解28需求分析规格说明书需求分析规格说明书 文档编号文档编号:版版 本本 号:号:文档名称:文档名称:项目名称:项目名称:项目负责人:项目负责人:年年 月月 日日编写:编写:核对:核对:审核:审核:批准:批准:开发单位:开发单位:29需求分析规格说明书需求分析规格说明书系统规格说明:系统规格说明:
15、系统概貌系统概貌 功能要求功能要求 性能要求性能要求 运行要求运行要求 可能增加的要求可能增加的要求 DFD IPO 数据要求:数据要求:DD Hierarchy 或或 Warnier Diagram 用户系统描述用户系统描述 初步用户手册:从用户的观点考虑系统初步用户手册:从用户的观点考虑系统 系统功能、性能系统功能、性能 使用与步骤使用与步骤 等等修正的开发计划:修正的开发计划:成本估计成本估计 资源使用计划资源使用计划 进度计划进度计划30需求分析规格说明书需求分析规格说明书从现实中分离功能,即描述要从现实中分离功能,即描述要“做什么做什么”而不是而不是“怎样实现怎样实现”要求使用要求使
16、用面向处理面向处理的规格说明语言(或称系统定的规格说明语言(或称系统定义语言)义语言)如果被开发软件只是一个大系统中的一个元素,如果被开发软件只是一个大系统中的一个元素,那么整个大系统也包括在规格说明的描述之中那么整个大系统也包括在规格说明的描述之中规格说明必须包括系统运行环境规格说明必须包括系统运行环境规格说明必须是一个认识模型规格说明必须是一个认识模型规格说明必须是可操作的规格说明必须是可操作的规格说明必须容许不完备性并允许扩充规格说明必须容许不完备性并允许扩充规格说明必须局部化和松散耦合规格说明必须局部化和松散耦合31分析过程分析过程节选自目前我国的一些实际系统中的功能性需求的说明方式:
17、“根据详细的系统调研和需求分析,系统的功能必须满足以下需求:1)编制计划、计划工程拨款管理,工程批复管理,工程进度统计;2)工程项目管理;3)计划拨款、征费收缴信息及其他收拨款信息查询统计;4)路产管理,违章建筑管理,工程材料管理,超限运输管理;5)养征信息查询管理,收费站信息管理;6)文档管理,会议管理,合同管理,驾驶员外勤管理,常用管理;7)养护信息管理,公路维护预警;8)路况信息管理,交通量信息管理,科研项目信息管理;32需求表达需求表达需求说明语句v保持语句和段落的简短v采用主动语态的表达方式v编写具有正确的语法和标点的完整句子v使用的术语应该和词汇表中定义的一致v需求陈述应该具有一致
18、的式样,例如“系统必须”,或者“用户必须”,并紧跟一个行为动作和可观察的结果,例如“仓库管理子系统必须现实一张在所请求的仓库中有存货的药品名单。”33需求表达需求表达v为了减少不确定性,避免采用模糊的、主观的术语,例如,用户友好、容易、简单、迅速、有效、支持、许多、最新技术、优越的、可接受的和健壮的。v避免使用比较性的词汇,例如:提高,最大化,最小化和最佳化。定量地说明所需要提高的程度或者说清一些参数可接受的最大值和最小值。34需求表达需求表达“产品必须在固定的时间间隔内提供状态消息,并且每次时间间隔不得小于60秒”v后台任务管理器应该在用户界面的指定区域显示状态消息v在后台任务进程启动之后,
19、消息必须每隔60(+_10)秒更新一次,并且保持连续的可见性。v如果正在正常处理后台任务进程,那么后台任务管理器必须显示后台任务进程已完成的百分比v当完成后台任务时,后台任务管理器必须显示一个“已完成”的消息。v如果后台任务中止执行,那么后台任务管理器必须显示一个出错信息。35需求表达需求表达“产品必须在显示和隐藏非打印字符之间进行瞬间切换”v“用户在编辑文档时,通过激活特定的触发机制,可以在显示和隐藏所有HTML标记之间进行切换。”36需求表达需求表达“分析程序应该能生成HTML标记出错的报告,这样就可以使HTML的初学者使用它来迅速排错”v在HTML分析程序完全分析完一个文件后,该分析程序
20、必须生成一个出错报告,这个报告中包含了在分析文件中所发生错误的HTML所在的行号以及文本内容,还包含了对每个错误的描述。v如果分析过程中未发生任何错误,就不必生成任何错误报告37分析过程分析过程第六步 审查和复审以上六步构成一个循环38需求分析过程需求分析过程39数据库基本概念(数据库基本概念(1)在软件系统中需要处理的数据是现实世界中存在的事物及其联系的反映。人们通常将与数据处理有关的的领域分为三个世界:v 现实世界现实世界是存在于人们头脑之外的客观世界,现实世界中的事物可分成对象和性质两大类。对象可以是人、是物,还可以是实际的东西或概念的东西,例如,大学、城市等。对象还可以指事物与事物间的
21、联系。性质则是指事物的性质或特征。40数据库基本概念(数据库基本概念(2)v信息世界信息世界也叫做观念世界,是现实世界在人们头脑中的反映。客观世界中的事物在信息世界中叫做实体,反映事物之间联系的叫做实体模型。实体是由若干属性的属性值组成。属性是实体某一方面的特征,相应于事物的性质。例如,一个学生实体是如下的一个5元组:n(950836,袁星,男,20,计算机应用)n5元组中每一元素是学生的某一属性的属性值。他们对应的属性集合是:n这些属性集合表征了“学生”实体的类型,叫做实体型。同一类型的实体的集合叫做实体集。41数据库基本概念(数据库基本概念(3)v 数据世界数据世界则是信息世界中信息的数据
22、化,现实世界中的事物及其联系在数据世界中用数据模型描述。描述每一实体的数据称为记录,描述属性的数据叫做数据项或字段。与实体集相对应的称为文件。例如,学生文件就由多个记录组成,这些记录放在一起构成一个二维表。表中每一横排叫做一个记录或元组,每一纵列叫做一个属性。42数据库基本概念(数据库基本概念(4)记录由数据项组成,正如实体由若干属性的属性值组成一样。一般数据项沿用属性名。用做属性名时表示观念信息,用做数据项名时表示数据信息。每个数据项包括两个特征:即数据类型和数据长度。若干同类型的记录构成文件。为了对文件中的记录有效组织和存取,通常指定一个数据项进行区别,这个数据项叫做关键字。43数据库分析
23、及工具数据库分析及工具E-R方法方法E-R方法(Entity-Relationship Approach)和实体模型:使用E-R图,可定义一 个实体模型。实体模型是现实世界的纯表示,它不涉及数据世界的数据结构、存取路径、存取效率等问题。因此,它可以转换成数据库中的数据模型。E-R(实体-联系)方法可以进行数据库逻辑设计E-R图三要素:实体、实体属性、实体间的联系。在E-R图中,每个方框表示实体型或属性,方框之间的菱形表示实体之间的联系。44数据库分析及工具数据库分析及工具E-RE-R方方法法E-R图例部门职工家属由组成职工家属工程供应商零件工作于主管供应关系由组成1n1nmn11mnpmn45
24、数据库分析及工具数据库分析及工具E-R方法方法v在E-R图中,每个方框表示实体型或属性,方框之间的连线表示实体之间,或实体与属性之间的联系。出现在连线上的短竖线可以看成是“1”,而圆圈隐含表示“0”。例如,在教学管理中,一个教师可以教授零门、一门或多门课程,每位学生也需要学习几门课程。因此,教学管理中涉及的对象(实体型)有学生、教师和课程。用E-R图描述它们之间的联系,得下图。其中,学生与课程是多对多的联系,而教师与课程的联系是零、一对多。46数据库分析及工具数据库分析及工具E-R方法方法进一步,要确定属性。例如,学生具有学号、姓名、性别、年龄、专业(其它略)等属性;课程具有课程号、课程名、学
25、分、学时数等属性;教师具有职工号、姓名、年龄、职称等属性。此外,学生通过学号、分数与课程发生联系。如此可得教学实体模型47数据库分析及工具数据库分析及工具E-R模型向关模型向关系模型的转化系模型的转化ER模型是对现实世界的真实抽象,是直接面向现实世界的,因此,它只能转化为面向应用的关系模型才能进入软件设计阶段。v例:有三个实体型,即课程、学生和教师,用三个关系保存它们的信息:学生(学号,姓名,性别,年龄,专业,籍贯)教师(职工号,姓名,年龄,职称,工资级别,工资)课程(课程号,课程名,学分,学时,课程类型)48数据库分析及工具数据库分析及工具E-R模型向关模型向关系模型的转化系模型的转化为表示
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 GIS 需求 分析
限制150内