GIS软件工程03GIS软件工程的系统分析



《GIS软件工程03GIS软件工程的系统分析》由会员分享,可在线阅读,更多相关《GIS软件工程03GIS软件工程的系统分析(47页珍藏版)》请在装配图网上搜索。
1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,3,章,GIS,软件工程的系统分析,基本内容,系统分析的任务、难点、要求、过程与方法;如何进行需求分析,。,教学要求:,重点掌握用户需求分析报告的内容。,重点:,数据流图。,系统分析的定义:,应用系统思想和方法,确定系统的开发对象,把复杂的系统分解成简单的部分,找出这些部分的基本属性和彼此间的关系。,系统分析的任务:,充分了解用户的要求,并把双方的理解用软件需求规格说明书表达出来,即是要深入描述软件的功能和性能,确定软件设计的限制和软件同其他系统元素的接口细节,定义软件的其他有效性需求。,3.1,系统分
2、析,系统分析的难点:,1.,对数据的理解困难,2.,系统分析员与用户的沟通困难,3.,环境的变化,系统分析的要求:,1.,系统分析员要具备良好的,GIS,开发知识,并要了解用户业务知识。,2.,系统分析员与用户要具有良好沟通能力和合作精神。,3.,确立总体规划、分阶段进行的思路,即采用螺旋模型开展,GIS,建设。,系统分析的过程:,1.,问题识别,确定对目标系统的综合要求,即软件的要求。,包括功能、性能、数据、环境、可靠性、安全保密、用户界面、资源使用等需求。,2.,分析与综合,问题分析,:从数据流和数据结构出发,逐步细化所有的系统功能,找出系统各元素之间的联系、接口特征和设计上的限制,分析它
3、们是否满足功能要求,是否合理。,方案综合,:依据功能需求、性能需求、运行环境需求等,剔除其不合理的部分,增加其需要部分,最终综合成系统的解决方案,给出系统目标和详细逻辑模型。,3.,编制需求分析的文档:,需求分析的文档即,软件需求规格说明,它是分析阶段的最终成果。下面给出的简略大纲可以作为软件需求规格说明的框架。,.,引言,A.,系统简介,B.,系统参考文献,.,概述,A.,系统描述,B.,主要功能,C.,实现语言,D.,用户特点,E.,一般约束,.,用户业务管理现状分析,包括业务流程、数据流程、数据量、应用频率、数据源情况,业务管理依据的行政和技术文件,各阶段业务之间的关系,现有组织机构等。
4、,.,具体需求,A.,功能需求,B.,外部接口需求,C.,性能需求,D.,设计约束,E.,属性需求,F.,其他需求,.,数据需求,A.,数据描述,B.,数据采集,C.,数据字典,.,提出测试的准则,4.,需求分析评审,对系统功能的正确性、完整性和清晰性,以及其他需求给予评价。,系统分析的方法:,系统需求分析方法由对软件的,数据域,和功能域的系统分析过程及其表示方法组成。,物理视图,指反应当前系统的组织机构、输入输出、资源利用情况和日常数据处理过程的模式,这一模式应客观的反映现实世界的实际情况。,逻辑视图,指在物理模型的基础上进行分析,区分出本质的和非本质的因素,去掉非本质的因素,从而形成反映系
5、统本质的模型。,数据域,具有三种属性:数据流、数据内容和数据结构。,图,3.1,需求分析的流程图,需求工程的概念:,需求工程,就是确定系统,“,做什么,”,的问题。它分为三个步骤:需求获取、需求分析和编写软件规格说明书及验证。,需求,是以一种清晰、简洁、一致且无二义性的方式,对一个待开发系统中各个有意义方面的陈述的一个集合。,需求工程的,目的,是给待开发系统提供一个清晰的、一致的、精确的并且无二义性的模型,通常以需求规格说明书的形式来定义待开发系统的所有外部特征。,3.2,需求工程,需求工程中涉及的角色:,需求工程中涉及的,角色,有需求者、分析员和实现者。,需求工程的作用:,1.,支持项目开发
6、,2.,支持软件测试和验证,3.,支持维护,4.,支持项目承包商,5.,支持管理,需求工程的内容:,1.,需求获取,需求获取的过程就是分析人员借助各种工具和方法,获取对用户需求的基本理解,然后在需求获取方法的驱动和指导下,从非形式需求陈述中提取出用户的实际需求,并由此确定软件的功能、性能、接口关系及有关属性、软件条件、限制和边界等,标定软件的作用范围,确定支持性的软、硬件环境及辅助工具与条件。,需求获取方法包括指导开发小组获得用户需求的方法框架和支持控制此项活动进展的过程控制机制两方面。,需求工程的内容:,2.,需求分析,需求分析是开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式
7、的需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式功能规格说明的过程。,用户的需求可分为功能性需求和非功能性需求。,功能性需求主要说明了系统各功能部件与环境之间的相互作用本质,即在职能上应做到什么。,非功能性需求主要从各个角度对所考虑的可能的解决方案起约束和限制作用。,需求工程的内容:,3.,验证,验证的作用可以通过对需求规格说明文档进行仔细的复核、审查与评审来降低失误。,需求分析的原则,1.,必须能够表达和理解问题的数据域和功能域。,2.,必须按自顶向下,逐层分解的方式对问题进行分解和不断细化。,3.,要给出系统的逻辑视图和物理视图,即建模。,3.3,需求分析,3.3.2,需求分析
8、的原则,需求分析的注意事项,1.,需求搞不清,经费就算不准。,2.,在编写需求规格说明书之前,应明确要解决的问题。,3.,立即确定需求,并记录下该需求的背景。,4.,一旦在需求规格说明书中发现问题,立即改正。,5.,在众多需求中确定各个需求的优先顺序,确定可能存在的子集。,6.,需求分析时,不要进行设计工作。,需求分析的注意事项,7.,对于复杂的系统,要用多种视角进行需求分析。,8.,对需求进行编号,以便以后跟踪。,9.,重视形式方法,也决不放弃自然语言。,10.,需求中不应存在“待确定”的条款。,3.3.3,需求分析的方法,需求分析的方法:,1.,结构化分析方法(,SA,)。,2.,面向对象
9、的分析方法(,OOA,)。,3.,以用户为中心的分析方法(,UCRA,)。,需求分析的方法:,1.,结构化分析方法(,SA,)。,结构化分析方法是面向数据流进行需求分析的方法,适于数据处理类型系统的需求分析,采用图形、表等形式表达需求,特点是清晰、简明、方便开发者和用户进行沟通。,它用抽象模型的概念,按照系统内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止。,需求分析的方法:,2.,面向对象的分析方法(,OOA,)。,面向对象的分析概述:,1,)获取用户需求,2,)标识对象和类,3,)定义类的结构和层次,4,)建立对象模型,5,)建立动态模型,需求分析的方
10、法:,3.,以用户为中心的需求分析方法(,UCRA,)。以用户为中心的需求分析方法是一种为软件应用开发详细需求分析说明的方法。,UCRA,方法关注解决拥有大量用户交互操作和集成数据库的目标系统的需求分析问题。,数据流图是对软件系统逻辑结构的图形表示,描绘的是系统的逻辑模型。数据流图仅仅描绘了数据在系统中流动和处理的情况。,3.3.4,数据流程图,数据流程图的主要图形元素,1.,数据源点和汇点,2.,加工(处理),3.,数据文件(数据存储),4.,数据流,图,3.2,数据流图的符号,(a),基本符号的含义,数据流程图的主要图形元素,1.,数据源点和汇点,数据源点和汇点表示图中要处理数据的输入来源
11、或处理结果要送往何处。,2.,加工(处理),加工(处理)以数据结构或数据内容为对象。一个处理框可以表示对象中的一个函数,也可以是一系列函数,还可以表示一个对象,甚至可以代表一些人工处理过程。,数据流程图的主要图形元素,3.,数据文件(数据存储),数据文件起保存数据的作用,它是处于静止状态的数据,通常存放在数据库中。,4.,数据流,数据流是处于运动中的数据,通常体现为模块之间传递的信息。它是沿箭头方向传送数据的通道,指被加工的数据与流向。,(1),数据流,(,或数据存储,),命名,名字应代表整个数据流,(,或数据存储,),的内容,而不是仅仅反映它的某些成分。,不要使用空洞的、缺乏具体含义的名字。
12、,(1),数据流,(,或数据存储,),命名,若某个数据流,(,或数据存储,),不能取一个合适的名字,则有可能是对数据流图分解不合适,应该考虑重新分解,有可能解决这个问题。,(2),加工(处理)命名,一般先为数据流命名,然后再为处理命名。,名字应准确反映整个处理的功能,而不是它的一部分功能。,名字最好由一个具体的及物动词,加上一个具体的宾语组成。,(2),加工(处理)命名,通常名字中只使用一个动词,如果需要用两个动词才能描述整个处理的功能,则可以把这个处理分解成两个处理。,如果在命名时遇到困难,则可能是分解不当造成的,应考虑重新分解或合并处理。,数据流与加工之间的关系表达方法,(b),附加符号的
13、含义,数据流与加工之间的关系表达方法,表示数据流之间是“与”关系,(,同时存在,),表示数据流之间是“或”关系,表示只能从几个数据流中选一个,(,互斥关系,),分层的数据流图,顶层数据流程图描述了整个软件系统的作用范围,对系统的总体功能、输入和输出进行了抽象,反映了系统和环境的关系。,中间层次的数据流程图是通过分解高层数据流和加工得到的。,低层次数据流程图通常有很多中间层,甚至,79,层。这种分解可以不断重复,直到新的数据流程图中每个数据加工的功能明确、相关的数据流被严格定义为止。,分层的数据流图,数据流图的画法,画数据流图的基本步骤就是自外向内,自顶向下,逐层细化,完善求精。,具体步骤:,(
14、,1,)先找系统的数据源点与汇点,它们是外部实体,由它们确定系统与外界的接口。,(,2,)找出外部实体的输出数据流和输入数据流。,(,3,)在图的边上画上系统的外部实体。,数据流图的画法,画数据流图的基本步骤就是自外向内,自顶向下,逐层细化,完善求精。,具体步骤:,(,4,)从外部实体的输出数据流出发,按系统的逻辑需要,逐步画出一系列逻辑加工,直到找到外部实体所需的输入数据流,形成数据流的封闭。,(,5,)按原则进行检查和修改。,(,6,)按上述步骤,再从各加工出发,画出所需的子图。,数据流图的画法,分层数据流程图举例,教学管理数据流程顶图,数据流图的画法,分层数据流程图举例,教学管理数据流程
15、中图,数据流图的画法,分层数据流程图举例,学籍管理数据流程底图,课间练习,高考录取统分子系统有如下功能:,(,1,)计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件。,(,2,)计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。,试根据要求画出该系统的数据流程图,并将其转换为软件结构图。,课间练习,录取分数,招生数,原始分,标准分,标准分,录取分数,招生计划,分数,考生,计算标准分,计算录取线分数,标准分,进行检查和修改的原则,1.,数据流图只限于前述四种基本图形元素。,2.,数据流图的主图必须包括前述四种基本元素。,3.,数据流图的主图上的数据流必须
16、封闭在外部实体之间,外部实体可以不止一个。,4.,每个加工至少有一个输入数据流和输出数据流。,5.,在数据流图中,需按层给加工框编号。,6.,任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致。,7.,图上每个元素必须有名字。,8.,数据流图中不能夹带控制流。,概述:,数据字典的定义:,数据字典是关于数据信息的,集合,,是数据流程图中所有元素(数据流、数据存储、处理过程和外部实体)严格定义的场所。,数据字典的用途:,1.,数据流程图和数据字典一起构成了系统的,逻辑模型,;,2.,有助于改进不同的开发人员或不同的开发小组之间的通信;,3.,是存储文件或数据库设计的基础;,4.,在实施阶段,还可参照数据字典描述数据。,3.3.4,数据字典,属性数据字典条目:,属性数据字典包含六类条目:,1.,数据元素:是最小的数据组成单位。,2.,数据结构:描述数据之间的组成关系。,3.,数据流:描述数据流的来源、去处、组成、流通量、高峰时的流通量等属性。,4.,数据存储:描写该数据存储的结构,及有关的数据流、查询要求。,5.,处理过程:描述处理框的编号、名称、功能的简要
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。