GIS软件需求分析实践.ppt_第1页
GIS软件需求分析实践.ppt_第2页
GIS软件需求分析实践.ppt_第3页
GIS软件需求分析实践.ppt_第4页
GIS软件需求分析实践.ppt_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

GIS软件需求分析实践 2006年11月13日 GIS结构化需求分析方法 GIS结构化分析常用的分析工具主要有数据流模型(数据 流图)、数据字典以及对数据流进行描述的加工逻辑说明 。GIS数据流图是GIS结构化分析的核心部分,它通过一套 分层次(由综合到具体)的GIS数据流图,辅以GIS数据字 典、小说明工具来描述GIS系统。 1 GIS数据流模型 GIS数据流模型是GIS软件系统逻辑模型的一种图形表示, 它描述了GIS数据流动、存储、处理等逻辑关系,一般采 用数据流图(Data Flow Diagram,简称DFD)来表示。 GIS数据流图的基本成分 基本成分名称备备注 加工或处处理 输输入数据在此进进行变换产变换产 生输输 出数据,要注明加工的名字 外部实实体 数据输输入的源点或数据输输出的 汇汇点,要注明源点和汇汇点的名 字(数据源点或数据终终点) 数据流 被加工的数据与流向,应给应给 出 数据流名字,可用名词词或动词动词 性短语语命名 数据存储储 需用名词词或名词词性短语语命名 分层的GIS数据流图(一) 对于大型的GIS软件系统,如果只用一张数据流图 表示所有的数据流、处理和数据存储,那么这张 图将十分复杂、庞大,而且难于理解。层次结构 的数据流图可以很好地解决这个问题。分层的数 据流图起到了对信息进行抽象和隐秘的作用。由 于高层次的数据流图不体现低层次的数据流图的 细节,因此可暂时掩盖低层次数据处理的功能和 它们之间的关系。 分层的GIS数据流图(二) 我们按分层的思想将GIS数据流图划分为顶层DFD、中间层 DFD、底层DFD三种。顶层数据流图的结构简单,它描述了 整个GIS系统的作用范围,对GIS系统的总体功能、输入和 输出进行了抽象,反映了GIS系统和环境的关系。中间层数 据流图是通过分解高层数据流和数据加工得到的。层次较高 的数据流图经过进一步分解得到层次较低的数据流图,一张 中间层数据流图具有几个可分解的加工,就存在几张对应的 低层次的数据流图。高层次的数据流图是相对应的低层次图 的抽象表示,而低层次的数据流图表现了它相应的有关数据 处理的细节。 S 1 3 2 1.2 1. 1 1.3 2.12.4 2.2 2.3 3.1 3.2 3.3 F F F F F F 顶层 中间层 底层 数据流图的层次关系图 “先全局后局部,先整体后细节,先抽象后具体” 通常可将这种分层的DFD图,分为顶层、中间层、底层。 具体步骤: 1。先确定系统范围,画出顶层的DFD图。 2。逐层分解顶层DFD图,获得若干中间层DFD图。 3。画出底层的DFD图。 顶层图说明了系统的边界,即系统的输入和输出数据 流,顶层图只有一张。底层图由一些不能再分解的加工 组成,这些加工都已足够简单,称为基本加工。在顶层 和底层之间的是中间层。中间层的数据流图描述了某个 加工的分解,而它的组成部分又要进一步分解。 画各层DFD图时,“由外向内”。 画分层DFD图的方法 GIS数据流图绘制流程 找出外部实体,由它们确 定系统与外界的接口 找出GIS的数据源点和汇点 从各加工出发画出所需的子图 检查和修改数据流图 从GIS外部实体的输出数据流出发,画出逻辑加工, 直到找到输入数据流,形成封闭数据流 画出GIS的外部实体 找出GIS外部实体的输入数据与输入数据流 顾客 出版社 验证 订单 汇总 订单 订单 出版社 订单 图书目录文件 待处理订单文件 正确 订单 一批 订单 出版社档案文件 订货存根文件 画图步骤 : 1、确定外部实体及输入、输出数据流。 2、确定分解顶层的加工。 3、确定使用的文件。 4、用数据流将各部分连接起来,形成数据封闭。 注意:标注各加工框及数据流名称。 例1:图书预定系统(顶层DFD) 顾客档案 系统功能要求: 1、监视病员的病症(血压、体温、脉搏等) 2、定时更新病历 3、病员出现异常情况时报警。 4、随机地产生某一病员的病情报告。 顶层 : 病员 护士 护士 病员监 护系统 病员日志 病症信号 要求报告 病症报告 报警 例2 医院病房监护系统 第一层 : 病员 护士 护士 中央监视 病员日志 病症信号 要求报告 病症报告 报警 局部监视 生成报告 病员极限 更新日志 病员数据 格式化 病员数据 生理信号 极限值 1 3 2 4 日志数据 日志数据 医院病房监护系统顶层DFD图 第二层:加工“中央监视”分解 计算超过 极限值否 病员数据 超过极限值 报警 开解信号 产生 报警信息 病员极限 格式化 病员数据 体温 血压、体温 脉搏 生理信号 极限值 时间 脉搏 血压 日期 时钟 格式化 病员数据 3.1 3.2 3.33.4 医院病房监护系统二层DFD图 计算超过 极限值否 病员数据 超过极限值 报警 开解信号 产生 报警信息 病员极限 格式化 病员数据 体温 血压、体温、 脉搏 生理信号 极限值 时间 脉搏 血压 日期 时钟 格式化 病员数据 3.1 3.2 3.3 3.4 第二层:加工“中央监视”分解 医院病房监护系统分层医院病房监护系统分层DFDDFD图图 图 215 第一层 格式化 病员数据 生理信号 极限值 病员 护士 护士 中央监视 病员日志 病症信号 要求报告 病症报告 报警 局部监视 生成报告 病员极限 更新日志 病员 数据 1 3 2 4 日志数据 图 216 2 数据字典 数据字典(Data Dictionary ,简称DD)是关于数据信息的 集合。它是数据流图中所有要素严格定义的场所,这些要 素包括数据流、数据流的组成、文件、加工小说明及其它 应进入字典的一切数据,其中,每个要素对应数据字典中 的一个条目。 数据字典的用途 数据字典最重要的用途是作为分析阶段的工具。在数据字 典中建立严格一致的定义有助于增进分析员和用户之间的 交流,从而避免许多误解的发生。数据字典也有助于增进 不同开发人员或不同开发小组之间的交流。同样,将数据 流图和对数据流图中的每个要素的精确定义放在一起,就 构成了系统的、完整的系统规格说明。数据字典和数据流 图一起构成信息系统的逻辑模型。没有数据字典,数据流 图就不严格;没有数据流图,数据字典也没有作用。 实现数据字典的方法 实现数据字典的常见方法有三种:全人工过程、全自动过 程和混合过程。全自动过程一般依赖数据字典处理软件。 混合过程是指利用已有的使用程序(如正文编辑程序、报 告生成程序等)来辅助人工过程。 GIS数据字典的任务是对GIS数据流图中出 现的所有被命名的图形要素在数据字典中 作为一个词条加以定义,使得每一个图形 要素的名字都有一个确切的解释 GIS数据字典中所有的定义必须是严密的、 精确的,不可有半点含糊,不可有二义性 GIS数据字典的主要内容包括数据流图中每 个图形要素的名字、别名或编号、分类、 描述、定义、位置等 GIS数据字典 GIS数据字典的作用 通过建立GIS数据字典,在GIS分析过程中,就可 以通过名字方便地查阅数据的定义;也可以按各 种要求,列出各种表格供分析员使用;还可按描 述内容或定义来查询数据的名字;甚至可以通过 检查各个加工的逻辑功能,实现和检查数据与程 序之间的一致性和完整性。从以后的设计、实现 到维护阶段,都需要参考数据字典进行设计、修 改和查询。 数据字典组成 数据字典:各类数据描述的集合,是对数据流图中出现 的所有名字(数据流、处理、数据存储)进行定义。 数据流:是数据结构在系统内传输的路径。数据流描述数据 流名,说明,数据流来源,数据流去向,组成:数据结构, 平均流量,高 峰期流量 数据项:是不可再分的数据单位。对数据项的描述数据项名, 数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他 数据项的逻辑关系 数据存储:是数据结构的停留或保存处,也是数据流的来源和 去向之一。数据存储描述数据存储名,说明,编号,流入的数据 流 ,流出的数据流 ,组成:数据结构,数据量,存取方式 处理过程:描述处理过程的说明性信息。处理过程描述处理 过程名,说明,输入:数据流,输出:数据流,处理:简要说明 数据字典描述元素之间的关系,可采用下面的符 号 = 表示等价于(或定义为); 表示与; | 表示或(从方扩号内由“|”号隔开的分量中选择一个); 表示重复; ( ) 表示选择; 示例 例:学生学籍管理子系统的数据字典。 数据流以体检结果为例 数据流: 体检结果 说明: 学生参加体格检查的最终结果 数据流来源:体检 数据流去向:批准 组成: 学号姓名专业性别年龄血型体重身高 数据项(数据流的条目)以学号为例: 数据项: 学号 含义说明: 唯一标识每个学生 别名: 学生编号 类型: 字符型 长度: 8 取值范围: 00000000至99999999 取值含义: 前两位标别该学生所在年级,后六位按顺序编号 示例 数据存储以学生登记表为例 数据存储: 学生登记表 说明: 记录学生的基本情况 流入数据流: 流出数据流: 组成: 学号姓名年龄性别 数据量: 每年3000张 存取方式: 随机存取 处理过程以分配宿舍为例 处理过程:分配宿舍 说明: 为所有新生分配学生宿舍 输入: 学生,宿舍, 输出: 宿舍安排 过程描述:在新生报到后,为所有新生分配学生宿舍。要求同一间宿舍只能安排同一性 别的学生,同一个学生只能安排在一个宿舍中。安排新生宿舍其处理时间应不超过 15分钟。 3 加工逻辑说明 在分层的GIS数据流图中,子图及数据流、文件等都说 明了父图的加工,实际上就是给出了定义。但最底层的数 据流图中的加工不能通过子图做进一步的描述,所以必须 有一个加工小说明来定义底层数据流图中的加工。 小说明中应精确地描述加工的激发条件、加工逻辑、优 先级、执行频率和出错处理等。加工逻辑是其中最基本的 部分,是指用户对这个加工的逻辑要求。 对基本加工说明有三种描述方式: 为什么需要加工逻辑说明 在分层的GIS数据流图中,子图及数据流、文件等都说明 了父图的加工,实际上就是给出了定义。但最底层的数 据流图中的加工不能通过子图做进一步的描述,所以必 须有一个加工小说明来定义底层数据流图中的加工。 加工逻辑说明的概念 加工逻辑说明应精确地描述一个加工做什么,包括加工的 激发条件、加工逻辑、优先级别、执行频率、出错处理等 细节,其中最基本的部分是加工逻辑。加工逻辑是指用户 对这个加工的逻辑要求,即加工的输入数据流与输出数据 流之间的逻辑关系。特别应注意,分析阶段的任务是理解 和表达用户的要求,而不是具体考虑系统如何实现,所以 对加工应说明做什么,而不是用程序设计语言来描述具体 的加工过程,即加工逻辑说明的重点是描述加工实现的策 略而不是加工实现的细节。 结构化语言 判定表 判定树 加工逻辑说明的表达方法 结构化语言 结构化语言是一种介于自然语言和形式化语言之 间的半形式化语言,它使用有限的词汇和语句来 描述加工逻辑。结构化英语的词汇表由英语命令 动词、数据字典中定义的名字、有限的自定义词 和控制结构关键词(如if_then_else、while_do、 repeat_until、case_of)等组成。语言的正文用基 本控制结构进行分割,加工中的操作用自然语言 短语来表示。其基本控制结构有简单陈述句结构 、判定结构和重复结构。 在某些数据处理问题中,数据流图的处理需要依赖多个逻辑 条件的取值,这些取值的组合可能构成多种不同情况,相应 需执行不同的操作。这类问题用结构化语言来叙述很不方便 ,最适合使用判定表作为表示加工小说明的工具。判定表为 说明复杂的决策逻辑提供了一种形式化的以表格为基础的表 示方法,它能够自动地实现对诸如完整性和无歧义性等特点 的检测。 判定表 判定表包括四个要素:基本条件、基本操作、条 件项、操作项。 基本条件列出了各种可能的条件。除去某些特殊问题 以外,通常判定表对各条件的先后次序不予要求 基本操作列出了可能采取的操作。这些操作的排列顺 序没有限制,但为便于阅读也可令其按适当的顺序排 列 条件项给出各个条件的取值组合 操作项是和条件项紧密相关的,它指出了在条件项的 各种取值的组合的情况下应采取什么操作。这里将任 一条件取值组合及其相应要执行的操作称为规则,它 在判定表中是贯穿条件项和操作项的一列。显然,判 定表中列出了多少个条件取值的组合,也就有多少条 规则,即条件项与操作项有多少列 判定表举例 规则规则 号 1234 条件发货单发货单 金额额$500$500$500$500 赊赊欠情况60天60天60天60天 操作 不发发出批准 书书 发发出批准书书 发发出发货单发货单 发发出赊赊欠报报 告 判定树是判定表的变形,本质完全一样,所有用判定表能 表达的问题都能用判定树来表达。事实上,判定树比判定 表更加直观,用判定树来描述具有多个条件的数据处理, 更容易被用户接受。判定树的分枝表示各种不同的条件, 随着分枝层次结构的扩充,各条件完成自身的取值,判定 树的叶子给出应完成的操作,如图4.4所示为某企业核发批 准书、发货单流程的判定树。 判定树 判定树举例 检查发货单 金额$500 金额$500 欠款60天-不发出批准书 欠款60天-发出批准书、发货单 欠款60天- 发出批准书、发货单及赊欠报告 欠款60天-发出批准书、发货单 4 软件需求规格说明 GIS的软件需求规格说明是在GIS结构化分析的基础上 建立的自顶向下的任务分析模型。规格说明描述了系统 的需求,是联系GIS需求分析与GIS设计的重要桥梁。 同时,GIS软件需求规格说明书作为系统分析阶段的技 术文档,是提交审议的一份必要的工作文件。需求规格 说明书一旦审议通过,则成为有约束力的指导性文件, 成为用户与技术人员之间的技术合同,成为下一阶段 GIS设计的依据。 GIS软件需求规格说明的主要内容 1.引言 1.1 编写目的(阐

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论