工学]软件工程讲义_陆丽娜自考内容摘要:

是动词短语,简明地描述完成什么加工。 在分层的数据流图中,加工还应编号。 (3)数据存储 (又称为文件 ),指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。 (4)数据源点或终点,是本软件系统外部环境中的实体 (包括人员、组织或其他软件系统 ),统称外部实体。 一般只出现在数据流图的顶层图。 (1)首先画系统的输入输出,即先画顶 层数据流图。 顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据、输出数据流。 顶层图的作用在于表明被开发系统的范围以及它和周围环境的数据交换关系。 下图为飞机机票预订系统的顶层图。 (2)画系统内部,即画下层数据流图。 不再分解的加工称为基本加工。 一般将层号从 0开始编号,采用自顶向下,由外 向内的原则。 画 0 层数据流图时,分解顶层流图的系统为若干子系统,决定每个子系统间的数据接口和活动关系。 例如,在上面的机票预订系统按功能可分成两部分,一部分为旅行社预订机票,另一部分为旅客取票,两部分通过机票文件的数据存储联系起来, 0 层数据流图如图 34。 (3)注意事项。 ① 命名。 不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。 ② 画数据流而不是控制流。 数据流反映系统 “ 做什么 ” ,不反映 “ 如何做 ” ,因此箭头上的数据流名称只能是名词或名词短语,整个图中不反映加工的执行顺序。 ③ 一般不画物质流。 数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的数据流图一般不要画物质流。 ④ 每个加工至少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工的结果。 ⑤ 编号。 如果一张数据流图中的某个加工分解成另一张数据流图时,则上层图为父图,直接下层图为子图。 子图及其所有的加工都应编号。 ⑥ 父图与子图的平衡。 子图的输入输出数据流同父图相应加工的输入输出数据流必须一致,此即父图与子图的平衡。 ⑦ 局部数据存储。 当某层数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。 ⑧ 提高数据流图的易懂性。 注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性。 销售管理系统 某企业销售管 理系统的功能为: (1)接受顾客的订单,检验订单,若库存有货,进行供货处理,即修改库存,给仓库开备货单,并且将订单留底;若库存量不足,将缺货订单登入缺货记录。 (2)根据缺货记录进行缺货统计,将缺货通知单发给采购部门,以便采购。 (3)根据采购部门发来的进货通知单处理进货,即修改库存,并从缺货记录中取出缺货订单进行供货处理。 (4)根据留底的订单进行销售统计,打印统计表给经理。 根据上述的功能描述,画出如下的数据流程图。 数据字典 (DD) 数据字典 (Data Dictionary,简称 DD)就是用来定义数据流图中的各个成分的具体含义的,它以一种准确的、无二义性 的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。 它和数据流图共同构成了系统的逻辑模型,是需求规格说明书的主要组成部分。 数据字典的任务是对于数据流图中出现的所有被命名的图形元素在数据词典中作为一个词条加以定义,使得每一个图形元素的名字都有一个确切的解释。 数据字典有以下四类条目:数据流、数据项、数据存储、基本加工。 数据词典中所有的定义应是严密的、精确的,不可有半点含混,不可有二义性。 数据流条 目给出了 DFD中数据流的定义,通常列出该数据流的各组成数据项。 在定义数据流或数据存储组成时,使用的符号如 31表: 符号 含义 例及说明 = 被定义为 + 与 x=a+b表示 x由 a和 b组成 [...|...] 或 x=[a|b]表示 x由 a或 b组成 m{...}n或 {...}mn 重复 x=2{a}5表示 x中最少出现 2次 a,最多出现 5次 a,2为重复次数的上、下限。 {...} 重复 x={a}表示 x由 0个或多个 a (...) 可选 x=(a)表示 a可在 x中出现,也可不出现。 ... 基本 数据元素 x=a,表示 x是取值为字符 a的数据元素。 .. 连接符 x=,表示 x可取 1到 9中任意一个值。 举例:定义数据流组成及数据项。 机票 =姓名 +日期 +航班号 +起点 +终点 +费用 姓名 ={字母 } 航班号 =“Y7100”...“Y8100” 终点 =[上海 |北京 |西安 ] 数据流条目主要内容及举例如下: 数据流名称:订单 别名:无 简述:顾客订货时填写的项目 来源:顾客 去向:加工 1“ 检验订单 ” 数据流量: 1000份 /每周 组成:编号 +订货日期 +顾客编号 +地址 +电话 +银行账号 +货物名称 +规格 +数量 数据存储条目是对数据存储的定义,如: 数据存储名称:库存记录 别名:无 简述:存放库存所有可供货物的信息 组成:货物名称 +编号 +生产厂家 +单价 +库存 量 组织方式:索引文件,以货物编号为关键字 查询要求:要求能立即查询 数据项条目是不可再分解的数据单位,其定义格式如下: 数据项名称:货物编号 别名: GNo,Gnum,GoodsNo 简述:本公司的所有货物的编号 类型:字符串 长度: 10 取值范围及含义: 第一位:进口 /国产 第 24位:类别 第 57位:规格 第 810位:品名编号 工条目 加工条目是用来说明 DFD中基本加工的处理逻辑的,由于上层的加工是由下层的基本加工分解而来,只要有了基本加工的说明,就可理解其他加工。 举例如下: 加工名:查阅库存 编号: 激发条件:接收到合格订单时 优先级:普通 输入:合格订单 输出:可供货订单、缺货订单 加工逻辑:根据库存记录 IF 订单项目的数量 该项目库存量的临界值 THEN 可供货处理 ELSE 此订单缺货,登录,待进货后再处理 ENDIF 加工逻辑的描述 加工逻辑也称为 “ 小说明 ” ,描述加工逻辑一般用以下三种工具:结构化语言、判定表、判定树。 结构化语言是介于自然语言和形式语言之间的一种半形式语言。 结构化语言是在自然语言基础上加了一些限定,使用有限的词汇和有限的语句来描述加工逻辑,它的结构可分成外层和内层两层: (1)外层:用来描述控制结构,采用顺序、选择、重复三种基本结构。 (2)内层:一般是采用祈使语句的自然语言短语,使用数据字典中的名词和有限的自定义词,其 动词含义要具体,尽量不用形容词和副词来修饰。 在有些情况下,数据流图中的某些加工的一组动作信赖于多个逻辑条件的取值。 用自然语言或结构化语言都不易清楚地描述出来。 而用判定表就能够清楚地表示复杂的条件组合与应做的动作之间的对应关系。 判定表由四个部分组成,如下 32表所示,构造一张判定表,可采用以下步骤: (1)提取问题中的条件。 (2)标出条件的取值。 (3)计算所有条件的组合数 N。 (4)提取可能采用的动作或措施。 (5)制作判定表。 (6)完善判定表。 表 32判定表结构 条件定义 条件取值的组合 动作定义 在各种取值的组合下应执行的动作 判定树 判定树是判定表的变形,一般情况下它比判定表更直观,且易于理解和使用。 这三种描述加工逻辑的工具各有优缺点,对于顺序执行和循环执行的动作,用结构语言描述。 对于存在多个条件复杂组合的判断问题,用判定表和判定树。 判定树较判定表直观易读,判定表进行逻辑验证较严格,能把所有的可能性全部都考虑到。 可将两种工具结合起来,先用判定表底 稿,在经基础上产生判定树。 IDEF方法 IDEF 方法是美国空军在 1981 年针对集成化计算机辅助制造 (Integrated Computer Aided Manufacturing,简称 ICAM)工程项目中用于进行复杂系统分析和设计的方法 ,是在结构化分析与设计技术的基础上提出来的。 IDEF 是 ICAM Definition 的缩写。 IDEF 方法分为三部分。 IDEF0: 用来描述系统的功能活动及其联系,建立系统的功能模型。 IDEF1: 用来描述系统的信息以及其联系,建立系统的 信息模型。 IDEF2: 用来进行系统模拟,建立系统的动态模型。 IDEF0 的图形表示 IDEF0 方法采用简单的图形符号和简洁的文字说明,描述系统在不同层次上的功能。 在该方法中,将系统功能称为活动,将表示系统功能的图形称为活动图形。 在活动图形中,用方框和箭头表示系统的各种活动及相互间的关系。 建立功能模型的基本方法 、观点及目的 在开始为系统建立模型时,首先要确定建模的立足点,包括范围、观点及目的。 范围所讨论的对象是什么,它的边界和外部接口 是什么;观点指从什么角度去考虑所研究的题;目的指确定所研究问题的意图及理由。 A0 图 IDEF0 方法建立的功能模型是一组有层次关系的图形,以字母 A开头的编号来标志图形在层次中的位置。 先建立系统的内外关系图,该图用来抽象地描述所研究的问题及其边界或数据接口。 图中只有一个活动,活动名概括地描述系统的内容,用进入和离开的箭头表系统与环境的数据接口,确定了系统边界。 A0 图 把 A0 图分解为 36 个主要部分得到 A0 图,它清楚地表达了 A0 图 在同样信息范围内的细节,从结构上反映了模型的观点,是系统功能模型真正的顶层图。 该图中各方框所表示活动的详细含义由低层次的图形说明。 按照自顶向下的方法,从 A0 图开始逐层分解,建立一系列的活动图形,直到最低层为止。 第 3 章例题分析与解答 3 章 一、填空题 1.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的 是 _________需求。 [答案 ] 2.结构化分析的基本思想是采用 __________的方法,能有效地控制系统开发的复杂性。 [答案 ] 3.当数据流图中某个加工的一组动作存在着多个复杂组合的判断时,其加工逻辑使用 __________描述较好。 [答案 ] 4.在 IDEF0 图中,连在方框上的箭头有四种类型,它们分别是 _________。 [答案 ] 5.为了较完整地描述用户对系统的需求, DFD 应与数据库中的 ________图结合起来。 [答案 ] 二、选择题 1.需求分析最终结 果是产生 ( )。 [答案 ] 2.需求分析中,开发人员要从用户那里解决的最重要的问题是 ( )。 [答案 ] 3. DFD 中的每个加工至少有 ( )。 [答案 ] 4.数据字典中,一般不出现的条目是 ( )。 [答案 ] 5. IDEF0 图并不反映出系统 ( )。 [答案 ] 应用题 1. 某银行计算机储蓄系统的功能是:将储户填写的存款单或取款单输入系统,如果是存款,系统记录 存款人姓名、住址、存款类型、存款日期、利率等 信息,并打印出存款单给储户;如果是取款,系统计 算清单给储户。 请用 DFD 和 IDEF0 描绘该功能的需求。 [分析 ] 该题功能比较简单,首先找出该系统的外部环境,从而获得系统的输入输出。 与该系统打交道 的外部实体只有储户,输入有存取款原始单。 该系统经过处理后,输出给储户正式的存款单或结算清单。 这 样,该系统的顶层 DFD 就确定了。 其次,考虑该系统内部功能。 系统要检验用户填写单据的合法性及区分存款还是取款,然后分别进行 存款处理和取款处理。 存款处理要登记储户的存款信息,需要建立数据存储文件;而取款处理要读取数据 存储文件及查阅储户的信息,取款后要修改储户信息。 另外还要通过银行自己的利率计算存款利率。 根据以上分析。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。