数据流图作业指导
- 格式:pdf
- 大小:164.37 KB
- 文档页数:3
软件设计师考试的下午题的第一道题,数据库系统工程师考试的下午题的第一道题都是数据流图题,而能够将这道题全部做对的考生是非常少的。
根据历年的辅导和阅卷经验,发现很多考生不是因为这方面的解题能力不够,而是缺乏解这种题的方法与技巧。
本文介绍一些解这种类型题的方法和技巧,希望起来抛砖引玉的效果。
一.解题当中考生表现出的特点由于这是下午考试的第一道题,所以很多考生从考前的紧张氛围当中逐渐平静下来开始答题,头脑还比较清醒,阅读起来比较流畅,速度还可以,自我感觉不错。
可偏偏这道题有很多人不能全取15分,纠其原因有以下一些特点:1.拿卷就做,不全面了解试卷,做到心中有数。
这样会导致在解题过程当中缺少一种整体概念,不能明确自己在哪些题上必需拿分(多花时间),哪些题上自己拿不了分(少花时间)。
这样,在解题时目标就会明确很多。
2.速度快,读一遍题就开始动手做。
3.速度慢,用手指逐个字的去看,心想看一遍就能做出题来。
4.在阅读题目时,不打记,不前后联系起来思考。
5.边做边怀疑边修改,浪费时间。
6.缺少的数据流找不准,可去掉的文件找不出来。
7.由于缺少项目开发经验,对一些事务分析不知如何去思考。
8.盲目乐观,却忽略了答题格式,丢了不应该丢的分。
二.解题的方法与技巧1.首先要懂得数据流图设计要略。
有时为了增加数据流图的清晰性,防止数据流的箭头线太长,减少交叉绘制数据流条数,一般在一张图上可以重复同名的数据源点、终点与数据存储文件。
如某个外部实体既是数据源点又是数据汇点,可以在数据流图的不同的地方重复绘制。
在绘制时应该注意以下要点:(1)自外向内,自顶向下,逐层细化,完善求精。
(2)保持父图与子图的平衡。
为了表达较为复杂问题的数据处理过程,用一个数据流图往往不够。
实验报告课程名称_软件工程导论__________学院____计算机工程学院_________班级14软件1班学号2014144141姓名秦川2016年11月8日批阅教师时间实验成绩课程名称软件工程学号2014144141姓名秦川实验日期2016.11.8实验名称实验2分析数据流和绘制数据流图实验目的:1、掌握数据流的分析方法2、掌握数据流图的绘制实验内容:任务一绘制数据流图任务二分析数据流和绘制数据流图案例一:总务办公管理系统案例二:火车票预订系统实验原理:数据流图(DFD)是软件系统系统的逻辑模型,仅仅描绘数据在软件中流动(从输入移动到输出)的过程中所经受的变换(即加工处理)。
数据流图的绘制方法:根据数据流图的四种成分:源点或终点,处理,数据存储和数据流,从问题描述中提取数据流图的四种成分;然后依据“自顶向下、从左到右、由粗到细、逐步求精”的基本原则进行绘制。
基本符号如下:实验过程与结果:1.运行Microsoft Office Visio2007运行Microsoft Office Visio2007 2.选择“软件和数据库”中的“数据流模型图”模板选中数据流模型图模板3.用鼠标选拉图标进行绘图任务一绘制数据流图试绘制工资管理系统的数据流图,根据数据流图的符号说明仔细理解下图含义:这是学校教职工工资管理系统,教师根据课时表,职工根据任务表来确定个人工资情况,数据按以下方向传递:首先,对课时表或任务表进行审核,审核后的数据经排序形成专用表格;再进行一系列额外计算,包括个人所得说、住房公积金、保险费得出具体所发工资,并将工资表发给银行;然后,向教职工展示工资所得明细;最后,形成编制报表,更新分类表后,交于会计。
其中,人事科负责人事数据,教师与职工的工资由银行发放,会计做好报表的统计。
任务二分析数据流和绘制数据流图案例一:总务办公管理系统系统简介:某单位准备开发一个购买办公用品和设备的总务办公管理系统。
数据流图(DFD)画法要求一、数据流图(DFD)1.数据流图的基本符号数据流图由四种基本符号组成,见图5-4-1所示。
图5-4-1 数据流图的基本符号例:图5-4-2是一个简单的数据流图,它表示数据X从源S流出,经P加工转换成Y,接着经P加工转换为Z,在加工过程中从F中读取数据。
图5-4-2数据流图举例下面来详细讨论各基本符号的使用方法。
数据流由一组确定的数据组成。
例如“发票”为一个数据流,它由品名、规格、单位、单价、数量等数据组成。
数据流用带有名字的具有箭头的线段表示,名字称为数据流名,表示流经的数据,箭头表示流向。
数据流可以从加工流向加工,也可以从加工流进、流出文件,还可以从源点流向加工或从加工流向终点。
对数据流的表示有以下约定:对流进或流出文件的数据流不需标注名字,因为文件本身就足以说明数据流。
而别的数据流则必须标出名字,名字应能反映数据流的含义。
数据流不允许同名。
两个数据流在结构上相同是允许的,但必须体现人们对数据流的不同理解。
例如图5-4-3(a)中的合理领料单与领料单两个数据流,它们的结构相同,但前者增加了合理性这一信息。
两个加工之间可以有几股不同的数据流,这是由于它们的用途不同,或它们之间没有了解,或它们的流动时间不同,如图5-4-3(b)所示。
(a)(b)(c)图5-4-3 简单数据流图举例数据流图描述的是数据流而不是控制流。
如图5-4-3 (c)中,“月末”只是为了激发加工“计算工资”,是一个控制流而不是数据流,所以应从图中删去。
加工处理是对数据进行的操作,它把流入的数据流转换为流出的数据流。
每个加工处理都应取一个名字表示它的含义,并规定一个编号用来标识该加工在层次分解中的位置。
名字中必须包含一个动词,例如“计算”、“打印”等。
对数据加工转换的方式有两种:改变数据的结构,例如将数组中各数据重新排序;产生新的数据,例如对原来的数据总计、求平均等值。
4.文件文件是存贮数据的工具。
文件名应与它的内容一致,写在开口长条内。
1.一家汽车配件公司经过调研之后,初步确定系统的主要逻辑功能和基本目标,概括起来有以下20条:(1)顾客的订货要求有三种形式,一是邮寄订货单,二是打电话,三是直接到汽车配件公司营业部来办理。
(2)不管用哪种方式,都以一种标准的订货单格式用CRT显示终端输入到系统内。
(3)对每一张订货单必须首先加以验证,是否填写正确。
验证的内容包括汽车配件名称、规格、编号、顾客名称、地址、电话、开户银行、帐号等信息。
(4)如果正确无误才能给以处理。
(5)如果有错误、应当输出错误信息,通知业务人员加以纠正。
(6)按订货项目检索配件库存,确定是否能够满足顾客的要求。
(7)如果当前的库存量能够完全满足顾客的要求,销售子系统开出发货单给顾客提货,并记入应收款明细帐以备会计收款,同时记入销售历史存档,还要修改该配件库存量。
(8)如果这项配件的当前库存量不能全部满足顾客的订货要求,只能暂时提供一部分,那么对这部分配件办理销售业务(同第7条);同时还要把暂时不能满足的部分记录到暂存订货单文件中,通知采购子系统向供应商订货。
(9)如果这项配件现在一件也没有,就要把这张订货单记录到暂存订货单文件中,并通知采购子系统向供应商订货。
(10)采购子系统根据要求,按订货配件汇总,再按供应商汇总,分别填写向供应商的订货单,一式两联。
第一联寄给供应商,第二联保存,以便到货后核对。
(11)当收到来自供应商的发货单(即配件已经到货)以后,采购子系统要根据订货单核对验收。
(12)验收以后,把这项配件有关的数据,如配件名称、规格、数量、单价、供应商名称等记录到应付款帐目中。
(13)将验收后的配件入库,并修改库存量。
(14)采购子系统向销售子系统发出到货通知。
(15)销售子系统根据到货通知,查暂存订货单,将配件发给顾客,补齐订货数量,并办理销售业务(同第7条)。
(16)顾客的付款方式有两种,一是现金支付,二是支票转帐。
会计子系统收到顾客付款后要与应收款明细帐核对,正确无误才能接受,并修改应收款明细帐,同时开收据交给顾客。
1/3杭州电子科技大学计算机学院 软件与智能研究所阅读以下说明和图,回答问题1至问题5,将解答填入答题纸的对应栏内。
(20分) 【说明】某高校欲开发一个成绩管理系统,记录并管理所有选修课程的学生的平时成绩和考试成绩,其主要功能描述如下:1) 每门课程都有3到6个单元构成,每个单元结束后会进行一次测试,其成绩作为这门课程的平时成绩。
课程结束后进行期末考试,其成绩作为这门课程的考试成绩。
2) 学生的平时成绩和考试成绩均由每门课程的主讲教师上传给成绩管理系统。
3) 在记录学生成绩之前,系统需要验证这些成绩是否有效。
首先,根据学生信息文件来确认该学生是否选修这门课程,若没有,那么这些成绩是无效的;如果他的确选修了这门课程,再根据课程信息文件和课程单元信息文件来验证平时成绩是否与这门课程所包含的单元相对应,如果是,那么这些成绩是有效的,否则无效。
4) 对于有效成绩,系统将其保存在课程成绩文件中。
对于无效成绩,系统会单独将其保存在无效成绩文件中,并将详细情况提交给教务处。
在教务处没有给出具体处理意见之前,系统不会处理这些成绩。
5) 若一门课程的所有有效的平时成绩和考试成绩都已经被系统记录,系统会发送课程完成通知给教务处,告知该门课程的成绩已经齐全。
教务处根据需要,请求系统生成相应的成绩列表,用来提交考试委员会审查。
6) 在生成成绩列表之前,系统会生成一份成绩报告给主讲教师,以便核对是否存在错误。
主讲教师须将核对之后的成绩报告返还系统。
7) 根据主讲教师核对后的成绩报告,系统生成相应的成绩列表,递交考试委员会进行审查。
考试委员会在审查之后,上交一份成绩审查结果给系统。
对于所有通过审查的成绩,系统将会生成最终的成绩单,并通知每个选课学生。
现采用结构化方法对这个系统进行分析与设计,得到如图2-1所示的顶层数据流图和图2-2所示的第1层数据流图。
【问题1】(4分)使用说明中的词语,给出图1-1中的外部实体E1~E4的名称。
最初的数据流图应是描述当前的实际情况,即当前存在的人工数据处理情况(尽管当前情况也许有许多不合理之处),为此分析员应将他在一个企业组织中看到听到的事实如实画出来。
用户目前使用的单据、表格、卡片、清单等资料就是“数据流”或“文件”。
用户目前在做的工作就是“加工”,它们的名字就是用户习惯使用的名字。
总之,在刚开始时只是将现实情况反映出来,而不是急于去想像未来的计算机系统是怎样的。
在画数据流图时,首先应画出系统的输入数据流和输出数据流,也就是先决定系统的范围,然后再考虑系统的内部,同样,对每一个加工来说也是先画出它们的输入输出,再考虑这个加工的内部。
✧画系统的输入输出刚开始分析时,系统究竟应包括哪些功能还不清楚,所以我们应该保险一些,使系统的范围稍大,把可能有关的内容都包括进去。
此时应该向用户了解,“系统从外界接受什么数据?”,“系统向外界送出什么数据?”等,然后根据他们的答复画出数据流图的外围。
如培训中心管理系统从外界接受的数据是“函电”,向外界送出的数据是“通知单”,则数据流图的外围如图3.l1所示。
这时,我们不必担心是否有输入输出数据流被遗漏了,因为遗漏的数据流以后能够发现的。
✧画系统的内部逐步将系统的输入和输出数据流用一连串加工连接起来,一般可以从输入端逐步画到输出端,也可以反过来从输出端追溯到输入端。
在数据流的组成或值发生变化的地方应画上一个“加工”,它的作用就是实现这一变化。
如果系统中有一组数据,用户把它们作为一个单位来处理(如,一起到达,一起被加工)则应将这组数据看成是一个数据流。
反之,不要把一些相互无关的,用户也并不将它们看成为一个整体来处理的若干数据画成一个数据流。
对每一个数据流应该了解它的组成是什么,这些组成项来自何处,这些组成项如何组合成这一数据流,为实现这一组合还需要什么有关的加工和数据等等。
数据流图中还要画出有关的文件,即各种存贮的数据,此时也应了解文件的组成情况。
✧画加工的内部用“由外向里”的方式,可以继续分析每个加工的内部,如果加工的内部还有一些数据流,则可将这个加工用几个子加工代替,并在子加工之间画出这些数据流。
如何画数据流图数据流图是一种信息系统建模工具,用于描述系统中数据的流动和处理过程。
它通过标识数据流、处理模块、数据存储以及外部实体之间的关系来展现系统内部的结构和功能。
数据流图可以帮助人们更好地理解系统的各个组成部分以及它们之间的交互方式。
在数据流图中,数据流通过箭头表示,并附带标签描述数据的内容。
处理模块用矩形框表示,其中包含处理的功能描述。
数据存储通常用平行四边形表示,代表数据的存储和检索操作。
而外部实体则用双框表示,代表与系统进行交互的外部元素。
绘制数据流图的步骤如下:1. 确定系统范围:首先要明确需要绘制数据流图的系统的范围。
确定系统的输入、输出以及系统边界,确保数据流图能够囊括系统的主要功能。
2. 识别外部实体:根据系统的输入和输出,识别系统与外部实体之间的交互方式。
将这些外部实体标识为数据流图中的双框。
3. 标识数据流:分析系统中数据的流动路径,将数据流标识为数据流图中的箭头,并附带描述数据内容的标签。
4. 划分处理模块:确定系统中的处理功能,并将其划分为不同的处理模块。
每个处理模块用矩形框表示,并附带描述处理过程的标签。
5. 确定数据存储:分析系统中的数据存储和检索操作,并将其标识为数据流图中的平行四边形。
6. 连接各个组件:根据系统中各个组成部分的关系,使用箭头将外部实体、数据流、处理模块和数据存储连接起来。
7. 完善数据流图:检查数据流图的准确性和完整性,确保图中的每一个组件都能正确描述系统的功能和结构。
在绘制数据流图的过程中,需要注意以下几点:1. 粒度控制:数据流图应该尽量保持一定的层次结构,避免将系统的细节描述得过于复杂。
2. 清晰明了:数据流图上的标签应该简明扼要,能够准确描述数据流的内容和处理模块的功能。
3. 一致性:数据流图的符号、标签和命名应该保持一致,方便读者的理解和识别。
4. 反复迭代:数据流图是一个动态的工具,随着对系统的了解加深,可能需要不断地进行修改和调整。
如何画数据流图数据流图是一种用来描述系统中数据流动和处理流程的图形化工具。
它可以帮助用户理清系统在数据处理方面的整个过程,并可从中发现问题和优化解决方案。
数据流图通常是由以下几个部分组成:数据流,加工,存储和外部实体。
下面我们将详细讲解如何画数据流图。
一、准备工作画数据流图需要我们先了解该系统或过程的整体架构,明确对数据流向和处理流程的需求。
以下这些准备工作需要完成:1. 确定范围:确定数据流图的范围,即确定我们所要绘制的数据流图的具体应用场景和所包含的系统模块或过程。
2. 确认实体:确定系统中的内部和外部实体,内部实体指具有处理功能的模块(或部门),外部实体指与系统交互的其他系统、组织或个人。
3. 确认数据流:明确数据的流向和形式。
4. 确认加工:确定哪些功能模块和处理过程被用于对数据进行处理。
5. 确认数据存储:确定数据存储的位置和类型,以及数据在存储过程中的变化。
二、画图流程针对上述准备工作,我们开始进行画图。
1. 绘制外部实体外部实体即对于系统而言是接入的,需要绘制它们与系统之间的数据流动线路。
绘制外部实体通常是一个矩形,内部注明实体的名称。
在数据流图中,各个外部实体之间可以相互连接,也可以连接系统内部的各个实体。
2. 定义数据流通常情况下,数据流都是从一个实体流向另一个实体,表示数据的传递过程。
所以,在画图时需要以箭头的形式来表示其流动方向,并在箭头中标明数据类型和名称。
箭头的形状可以有很多种,例如圆形、三角形、矩形、菱形等等,不同的形状对应不同的含义。
3. 确定加工过程加工过程是指数据在系统中的处理过程,通常画图时需要将其以一个矩形的形式表示出来。
在矩形内注明模块名称和编号。
其属性包括输入输出,内部处理,控制等。
4. 标出数据存储数据存储通常是指在系统中的存储、传递、读取等过程中使用的数据存储介质,如文件、数据库等。
画图时需要用一个中间框架来表示。
在框架内注明存储介质、存储方式、存储数据类型等相关信息。
某银行储蓄所取款过程如下:
储户将填好的取款单及存折送交业务员。
业务员处理如下:首先核查要件,如果存折不符或取款单填写不合格,则将存折及取款单直接退还储户重新填写;如果检查合格,则将存折和取款单送交取款服务台,调出该储户账,审查有无足够存款,若有,记账后将存折与现金交给储户;若无足够存款直接将存折返还储户。
试对此业务画出二层数据流图,并用数据字典描述取款单和储户账各项。
数据字典之一——组项:存折、取款单、储户帐、取款记录
数据字典之二——基本项
取款单基本项
银行存折数据字典(基本项)
存折=户名+所号+帐号+开户日+性质+(印密)+1{存取行}50
户名=2{字母}24
所号=“001”…“999”注:储蓄所编码,规定三位数字
帐号=“00000001” (99999999)
开户日=年+月+日
性质=“1”…“6”注:“1”表示普通户,“5”表示工资户等
印密=“0”注:印密在存折上不显示
存取行=日期+(摘要)+支出+存入+余额+操作+复核
年=“00” (99)
月=“01” (12)
日=“01” (31)
摘要=1{字母}4
支出=金额
金额=“0000000.01”…“9999999.99”
操作=“00001” (99999)
某工厂成品库管理的业务过程如下:
成品库保管员按车间送来的入库单登记库存台账。
发货时,发货员根据销售科送来的发货通知单将成品出库,并发货,同时填写三份出库单,其中一份交给成品库保管员,由他按此出库单登记库存台账,出库单的另外两联分别送销售科和会计科。
试按以上业务过程画出数据流程图。