数据库系统工程师考点精讲之分层数据流图
分层数据流图的设计方法
分层数据流图的设计方法第一步,画子系统的输入输出把整个系统视为一个大的加工,然后根据数据系统从哪些外部实体接收数据流,以及系统发送数据流到那些外部实体,就可以画出输入输出图。
这张图称为顶层图.第二步,画子系统的内部把顶层图的加工分解成若干个加工,并用数据流将这些加工连接起来,使得顶层图的输入数据经过若干加工处理后,变成顶层图的输出数据流.这张图称为0层图。
从一个加工画出一张数据流图的过程就是对加工的分解。
可以用下述方法来确定加工:在数据流的组成或值发生变化的地方应该画出一个加工,这个加工的功能就是实现这一变化,也可以根据系统的功能决定加工。
确定数据流的方法用户把若干数据当作一个单位来处理(这些数据一起到达、一起处理)时,可以把这些数据看成一个数据流.关于数据存储对于一些以后某个时间要使用的数据,可以组织成为一个数据存储来表示。
第三步,画加工的内部把每个加工看作一个小系统,把加工的输入输出数据流看成小系统的输入输出流.于是可以象画0层图一样画出每个小系统的加工的DFD图。
第四步,画子加工的分解图对第三步分解出来的DFD图中的每个加工,重复第三步的分解过程,直到图中尚未分解的加工都是足够简单的(即不可再分解)。
至此,得到了一套分层数据流图。
第五步,对数据流图和加工编号对于一个软件系统,其数据流图可能有许多层,每一层又有许多张图。
为了区分不同的加工和不同的DFD子图,应该对每张图进行编号,以便于管理.●顶层图只有一张,图中的加工也只有一个,所以不必为其编号。
● 0层图只有一张,图中的加工号分别是0.1、0.2、…,或者1,2 。
●子图就是父图中被分解的加工号.●子图中的加工号是由图号、圆点和序号组成,如:1.12,1。
3 等等。
应该注意的问题:1. 应适当的为数据流、加工、数据存储以及外部实体命名,名字应该反映该成分的实际含义,避免使用空洞的名字。
2. 画数据流图,不是画控制流。
3. 一个加工的输出数据流,不应与输入数据流同名,及时他们的组成完全相同。
【软考】——数据流图
【软考】——数据流图
在软考学习中,下午题的前三道:数据流图,ER模型,UML图是基本上不能失分的,这⼏个题是最基本的题,出题的形式都是固定的,⽽数据流图这道题拿满分最重要的是耐⼼和细⼼的分析试题。
考点突破
①补充数据流图的缺失部分,包括补充数据流、补充外部实体及补充数据存储。
——实体出现的频率⽐较多
②数据流图的改错,包括改正数据流名称,数据流的起始点与终点及删除多余数据流——通过仔细分析题就可以找到错误。
③附加与数据流图相关的概念简答题。
——积累的过程
基础
数据流图(Data Flow Diagram):简称DFD,它从数据传递和加⼯⾓度,以图形⽅式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析⽅法的主要表达⼯具及⽤于表⽰软件模型的⼀种图⽰⽅法。
【基本图形符号】
【分层数据流图】
分层的数据流图主要分为:顶层图和0层图。
顶层图是确定与外部实体之间的输⼊和输出数据流。
0层图是将顶层图中的加⼯分解成若⼲个加⼯,并⽤数据流连接这些加⼯。
是顶层图的细化过程。
满⾜结构化⽅法原则中的⾃顶向下,逐层分局的原则。
【数据平衡原则】
1、分层数据流图中的数据平衡原则
⽗类和⼦类之间的数据流必须保持⼀致,包括数量和内容上⼀致,或者上(下)层输出等于上(下)层的输出。
2、每张数据流图的数据平衡原则
加⼯的输⼊数据流和输出数据流要平衡,保证加⼯的输出数据流都有对应的输⼊和输出数据流。
⿊洞:只进不出
奇迹:只出不进
灰洞:加⼯不出输出流
答题技巧总结
详细分析试题说明,充分利⽤数据平衡原则!。
教你怎么画数据流图包括数据流图实例PPT课件
2021/3/9
管理信息系统》
第一步,画出关联数据流图。
S1顾客
F1订单
P 图书预订
F2汇总订单
S2 出 版 社
图书预订系统关联图
2021/3/9
管理信息系统》
第二步,逐层分解加工,画出下层DFD。注意到根据题意,当绘出系统 顶层图后并不能将所有加工分解成基本加工,还要进行二层图分解。 并在分解加工过程中逐步充实进数据存储。见图。
2021/3/9
管理信息系统》
(3)加工 加工又称处理亦称变换,它表示对数据流的操作。 加工的符号分成上、下两部分,从上到下分别是标识部分和功能描 述部分。 标识部分用于标注加工编号,加工编号应具有唯一性,以标识加工 ,以“P”开头。 功能描述部分用来写加工名。为使DFD清晰易读,加工名应简单,能 概括地说明对数据的加工行为,其详细描述在数据词典中定义。 加工要逐层分解,以求得分解后的加工功能简单、易于理解。
建立新系统的DFD是一项十分重要的工作。因为建立的DFD是系统 开发乃至系统维护的依据,是系统的重要文档之一。系统分析员要在 详细调查中,在与用户的反复交流中修改DFD,力求新建DFD是正确的 、准确的。
2021/3/9
管理信息系统》
放映结束 感谢各位的批评指导!
谢 谢!
让我们共同进步
2021/3/9
21
D5 订单数目
D6
顾
P2.2
客
情
订单分类
况
D7
D4 出版社要求
P3 发送订单
F2汇总订单
S2 出 版社
优
P2.3
先
订
随时处理
单
D3
D8
分层的数据流图-2022年学习资料
2.3-系统流程图->~系统流程图是概括地描绘物理系统的传统工具。
-它的基本思想是用图形符号以黑盒子形式描绘组成-系的每个部件(程序,文档,数据库,人工过程-等。
->系统流程图表达的是数据在系统各部件之间流动的-情况,而不是对数据进加工处理的控制过程,因-此尽管系统流程图的某些符号和程序流程图的符号-形式相同,但是它却是物理数据流图而不是程序流-图。
基本符号--一-一以概括的方式抽象地描绘一个实际系统所用符号-名称-说明-处理-能改变数据值或数据位置的加工或部件,如,程序、处理机、-人工加工等都是处理-输入输出-表示输入或输出(或既输入又输出),是一个广义的不指明具体-设备的符-连接-指出转到图的另一部分或从图的另一部分转来,通常在同一页上-换页连接-指出转到另一页图上或由另一页图转来-数据-用来连接其他符号,指明数据流动方向符号-名称-说明-穿孔卡片-表示用穿孔卡片输入或输出,也可表示一个穿孔卡片义件-系统符号-文档-通常衣示打印输出,也表示用打印终端输入数据-磁带-磁带输入输,或表示·个磁带文件-具体地描绘一个物理系统所用符号-联机存储-表示任何种类联机存储,包括磁盘、磁鼓、软盘和海量存储器件等-磁盘输入输出,也可表示存储在磁盘上的义件或数据库-磁鼓输入输出,也可示仔储磁鼓的文件或数据库-显示-CRT终端或类似的显示部件,用于输入或输出,也可既输入又输出-人工输入-人工输入数据脱机处理,例如,填写表格-人工操作-人工完成的处理,例,会计在工资支票上签名-辅助操作-使用设备进行的脱机操作-通信路-通过远程通信线路或链路传送数据事务-库存清单程序-主文件-定货-信息-报告生成程序-定货报告-图2.3库存清单系统的系统流程图2.4-数据流图-DFD----Data Flow Diagram-一种图形化技术,它描绘信息流和数据从输入移动到-出的过程中所经受的变换。
-~在数据流图中没有任何具体的物理部件,它只是描绘-数据在软件中流动和被处理的逻辑过程,是系逻辑-功能的图形表示。
数据库系统工程师考点精讲之数据字典
数据库系统工程师考点精讲之数据字典数据字典数据流图描述了现行系统的总体框架结构,在数据流图的基础上,还需要对其中的每个数据流、文件和数据项加以描述,将这些描述所组成的集合称为数据字典。
数据字典的任务就是对数据流图中出现的所有被命名的图形元素在数据字典中作为一个词条加以定义和说明,目的是进行数据分析和归档,使得每个图形元素的名称都有一个确切的解释,同时也是数据库/数据文件设计的依据。
除此之外,数据字典还要对系统分析中其他需要说明的问题进行定义和说明。
数据流图和数据字典共同构成系统的逻辑模型,没有数据字典,数据流图就不严格,没有数据流图,数据字典也无法发挥作用。
只有数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明。
数据字典是系统逻辑模型的详细、具体说明,是系统分析阶段的重要文件,也是内容丰富、篇幅很大的文件,编写数据字典是一项十分重要而繁重的任务。
编写数据字典的基本要求是:(1)对数据流图上各种成分的定义必须明确、易理解、惟一。
(2)命名、编号与数据流图一致,必要时(如计算机辅助编写数据字典时)可增加编码,方便查询搜索、维护和统计报表。
(3)符合一致性与完整性的要求,对数据流图上的成分定义与说明无遗漏项。
数据字典中无内容重复或内容相互矛盾的条目。
(4)格式规范、风格统一、文字精炼,数字与符号正确。
数据字典可以用人工方式建立,事先印好表格,填好后按一定顺序排列,就是一本字典;也可以建立在计算机内,数据字典实际上是关于数据的数据库。
数据字典的内容包括数据流、数据文件、加工逻辑、源(汇)点及数据元素等词条的描述。
在数据流和数据文件词条的数据字典描述中包含一定的数据结构,对于数据结构常用的描述是定义式。
表给出了数据结构定义式可能出现的符号。
在数据字典中有6种类型的条目:数据项(数据元素)、数据结构、数据流、数据存储、外部实体和处理。
不同类型的条目有不同的属性,现分别说明如下。
1.数据项数据项也称为数据元素,是最小的数据组成单位,也就是不可再分的数据单位。
数据流图
数据流图DFD(Data Flow Diagram)是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。
数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。
数据流程图包括:a.指明数据存在的数据符号,这些数据符号也可指明该数据所使用的媒体;b.指明对数据执行的处理的处理符号,这些符号也可指明该处理所用到的机器功能;c.指明几个处理和(或)数据媒体之间的数据流的流线符号;d.便于读、写数据流程图的特殊符号。
在处理符号的前后都应是数据符号。
数据流程图以数据符号开始和结束(除9.4规定的特殊符号外)数据流图有两种典型结构,一是变换型结构,它所描述的工作可表示为输入、主处理和输出,呈线性状态。
变换型结构数据流图另一种是事务型结构,这种数据流图呈束状,即一束数据流平行流入或流出,可能同时有几个事务要求处理。
事务型结构数据流图数据流图的组成元素数据流。
数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。
如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。
由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。
数据源(终)点。
代表系统之外的实体,可以是人、物或其他软件系统。
对数据的加工(处理)。
加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。
数据存储。
表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。
或数据的源/终点(外部实体)或处理(数据的加工)或文件(数据存储)数据流数据A或B,或A和B同时输入,变换成C数据A和B同时输入,才能变换成C只有数据A或数据B(但不能A、B同时)输入时变换成C分层数据流图根据层级数据流图分为顶层数据流图、中层数据流图和底层数据流图。
除顶层数据流图外,其他数据流图从零开始编号。
数据流图
一数据流图数据流图表达了数据与处理的关系。
一、数据流图的基本元素数据流图中只能有四种基本元素,如下:描述一个处理。
输入数据在此进行变换产生输出数据。
其中注明处理的名称。
描述一个输入源点或输出汇点。
其中注明源点或汇点的名称。
描述一个数据流。
被加工的数据及其流向。
流线上注明数据名称,箭头代表数据流动方向。
描述一个数据存储。
通常用于代表一个数据表,其中注明数据表的名称。
二、分层数据流图为了表达数据处理过程的数据加工情况,用一个数据流图往往是不够的。
稍为复杂的实际问题,在数据流图上常常出现十几个甚至几十个加工。
这样的数据流图看起来很不清楚。
层次结构的数据流图能很好地解决这一问题。
按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统。
下图给出分层数据流图的示例。
数据处理S包括三个子系统1、2、3。
顶层下面的第一层数据流图为DFD/L1。
第二层数据流图DFD/L2.1、DFD/L2.2及DFD/L2.3分别是子系统1、2和3的细化。
对任何一层数据流图来说,我们称它的上层图为父图,在它下一层的图则称为子图。
三、画数据流图的步骤和原则基本步骤:自外向内,自顶向下,逐层细化,完善求精。
基本原则:①数据流图上所有图形符号只限于前述四种基本元素。
②顶层数据流图必须包括前述四种基本元素,缺一不可。
③顶层数据流图上的数据流必须封闭在外部实体之间。
④每个加工至少有一个输入数据流和一个输出数据流。
⑤在数据流图中,需按层给加工框编号。
编号表明该加工处在哪一层,以及上下层的父图与子图的对应关系。
⑥规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致。
此即父图与子图的平衡。
⑦可以在数据流图中加入物质流,帮助用户理解数据流图。
⑧图上每个元素都必须有名字。
数据流和数据文件的名字应当是“名词”或“名词性短语”,表明流动的数据是什么。
加工的名字应当是“名词+宾语”,表明做什么事情。
2016年数据库系统工程师试题精选之数据流图(四)
2016年数据库系统工程师试题精选之数据流图(四)试题四阅读以下说明和流程图,如图1至图4所示,回答问题1至问题3,将解答写在答卷的对应栏内。
【说明】下面给出的是某房产管理系统的一套分层数据流图。
其功能描述如下:(1)系统随时根据住户送来的入住单更新住户基本信息文件。
(2)每月初系统根据物业管理委员会提供的月附加费(如清洁费、保安费和大楼管理费等)表和房租调整表,计算每家住户的月租费(包括月附加费),向住户发出交费通知单。
住户交费时,系统输入交费凭证,核对后输出收据给住户。
(3)系统定期向物业管理委员会提供住房分配表和交费情况表。
(4)住户因分户或换房,在更新住户基本信息文件的同时,系统应立即对这些住户做月租费计算,以了结分户或换房前的房租。
假定题中提供的顶层图是正确的,请回答下列问题。
【问题1】指出哪张图中的哪些文件可不必画出。
【问题2】指出在哪些图中遗漏了哪些数据流。
回答时请用如下形式之一:(1)XX图中遗漏了XX加工(或文件)流向XX加工(或文件)的XX数据流。
(2)XX加工XX遗漏了输入(或输出)数据流XX.【问题3】指出加工图4中加工2.3能检查出哪些不合格交费凭证。
试题4分析房产管理系统是描述住户与物业管理委员会之间的数据输入与输出的变换过程。
试题明确指出了顶层图的正确性,所以根据试题说明与顶层图确定系统的基本功能:(1)分类处理用户的入住单,更新住户基本信息,结算分户或换房前的房租,以及制作住房分配表。
(2)计算住户月租费,发出交费通知单,处理住户交费,以及制作住房分配表和交费情况表。
根据试题的提问可以掌握如下的知识点:首先,问题1的"不必画出"的含义,是指在某层数据流图中,只画流程图中各加工之间的公共数据文件,隐藏某加工的局部数据文件,这个规则只是为了使整个流程图的层次结构更为科学,更加清晰。
当然画出那些"不必画出的数据文件"对流程图阅读不会造成理解错误。
数据库系统工程师考点精讲之数据流图基本概念
数据库系统工程师考点精讲之数据流图基本概念考点精讲数据流图的考查中需要考生掌握数据流图的基本概念,另外还会涉及数据字典、数据库、面向对象方法、转换图、状态迁移图等概念,考生对这些概念都要非常清晰。
对于基本概念的考查一般都结合在题目中,有时也会针对这些基本概念出题,比如有的题目要求说明逻辑数据流图和物理数据流图之间的主要区别。
数据流图的基本概念数据流贯穿于企业组织的每一个活动中,可以说没有数据流就没有企业的活动。
通过对数据流程的分析,一方面可以更准确地了解企业管理活动的全过程,分析出各种管理活动的实质和相互间的关系;另一方面,数据是信息的载体,是正在开发的企业信息系统的主要对象,因此必须对系统调查中所收集的数据和数据处理过程进行分析整理,为以后的新系统逻辑模型、数据库结构和功能模块设计打下基础。
数据流程分析就是把数据在现行系统内部的流动情况抽象出来,舍去了具体组织机构、信息载体、处理工作等物理组成,单纯从数据流动过程来考查实际业务的数据处理模式。
数据流程分析主要包括对信息流动、传递、处理、存储等的分析,其目的就是确定合理的数据项,确定合适的数据流向,确认合适的数据处理过程,并发现和解决数据流通中存在的问题。
1.数据流一个系统的基本组件包括输入流、输出流以及处理过程。
企业作为一个系统也存在输入流、输出流以及处理过程,企业输入流、输出流的表现形式多种多样,在处理过程中经常要涉及各式各样的输入流、输出流。
要想很好地了解一个企业的活动,需具体分析其中所包含的各种流。
(1)物资流工厂输入原材料与零配件,经过加工制造过程,输出成品;商店进货,经过销售过程,把货卖给顾客。
这些输入与输出物品的流动都属物资流。
(2)事务流事务是指系统与其外部环境或子系统之间发生的交往活动而引起的一系列信息处理活动。
例如,工商企业接到订货单,便有开发货单、发票、记账等信息处理活动,它们统称为订单处理,这就是一项事务。
再如政府经济行政管理部门接到下级的请示报告,经过调查研究和有关主管人员分析、开会讨论,协调不同意见,做出统一决定,作为对下级的指示,这也是一种事务,可称之为请示报告的处理。
2016年数据库系统工程师试题精选之数据流图(六)
2016年数据库系统工程师试题精选之数据流图(六)试题6阅读下列说明和数据流图,回答问题1-问题3.【说明】某医院收费系统的主要功能是收取病人门诊的各项费用。
系统的收费功能分为3个方面:病历收费、挂号收费和根据处方单内容收取检查或药物费用。
(1)病人初次来该医院看病首先需记录病人基本情况,并购买病历。
(2)病人看病前要挂号。
根据病人的病历和门诊部门(内科、外科等),系统提供相应的挂号单和处方单,并收取费用。
(3)病人根据处方单做进一步检查或取药前需交纳各项费用。
系统首先根据病人基本情况检查处方单中病历号是否正确,记录合格的处方单并提供收据。
(4)所有收费都必须依据定价表中的定价来计算,且所有收费都必须写入收费记录中。
医院收费系统的顶层图如图1所示;医院收费系统的第0层DFD图如图2所示。
其中,加工1的细化图如图3所示,加工3的细化图如图4所示。
假定顶层图是正确的,"定价表"文件已由其他系统生成。
【问题1】指出哪张图的哪些文件可以不必画出。
【问题2】图3中缺少4条数据流,请直接在图中添加。
【问题3】图4中缺少两条数据流,请直接在图中添加。
试题6分析【问题1】在0层图中的"处方记录"是加工3"处方收费"的局部数据文件,所以不必画出。
【问题2】根据说明"系统首先根据病人基本情况检查处方单中病历号是否正确",因此,在加工3.1"检查处方单"中,需读入病人基本情况,所以缺少从"病人基本情况"到"3.1检查处方单"的数据流。
然后系统"记录合格的处方单",所以加工3.2"记录处方"中需要将处方的内容记录到文件"处方记录"中,因此缺少从"3.2记录处方"到"处方记录"的数据流。
软考数据库系统工程师复习资料(完全版)
目录第一章计算机系统知识 (2)第二章数据结构与算法 (9)第三章操作系统知识 (11)第四章程序设计基础 (17)第五章网络基础知识 (18)第六章多媒体基础知识 (21)第七章数据库技术基础 (25)第八章关系数据库 (31)第九章SQL语言 (36)第十章系统开发与运行 (43)第十一章数据库设计 (49)第十二章数据库运行与管理 ............................. 错误!未定义书签。
第十三章网络与数据库. (56)第十四章数据库发展趋势与新技术 (57)第一章计算机系统知识1.计算机软件=程序+数据+相关文档。
2.操作数包含在指令中是立即寻址,操作数的地址包含在指令中是直接寻址。
3.计算机硬件的典型结构:单总线结构、双总线结构、采用通道的大型系统结构。
4.CPU由运算器和控制器组成;控制器由程序计数器(PC)、指令寄存器(IR)、指令译码器(ID)、状态条件寄存器、时序产生器和微操作信号发生器组成。
a)PC: pc自动增加一个值,指向下一条要执行的指令,当程序转移时将转移地址送入PC。
b)IR:用于存放当前要执行的指令。
c)ID:对现行的指令进行分析,确定指令类型、指令要完成的操作和寻址方式。
5.指令执行的过程:a)取指令:控制器首先按程序计数器所指出的指令地址从内存中取出一条指令。
b)指令译码:将指令的操作码部分送入指令译码器中进行分析,然后根据指令的功能发出控制命令。
c)按指令操作码执行。
d)形成下一条指令地址。
6.CPU的基本功能:a)程序控制b)操作控制c)时间控制d)数据处理——CPU的根本任务7.计算机体系结构和计算机组成的区别:体系结构要解决的问题是计算机系统在总体上、功能上需要解决的问题,而计算机组成要解决的是逻辑上如何具体实现的问题。
8.计算机体系结构分类(指令流、数据流、多倍性):a)Flynn分类:传统的顺序执行的计算机在同一时刻只能执行一条指令(即只有一个控制流)、处理一个数据(即只有一个数据流),因此被称为单指令流单数据流计算机Single InstructionSingle Data即SISD计算机)。
数据流图、E-R图、层次图
数据流图
简介:
数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型
数据流程图中有以下几种主要元素:
例子:
实体-联系图(ER图)
目的:
为了把用户的数据要求清楚准确地描述起来系统分析员通常建立一个概念性的数据模型要素:
在E-R图中要明确表明1对多关系,1对1关系和多对多关系:
例子:
层次方框图
概述:
层次方框图用树形结构的一系列多层次的矩形描述数据的层次结构.树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表这个数据的子集,最底层的各个框代表组成这个数据的实际数据元素(不能再分割的元素)
例子:。
数据流图(DFD)作用描述逻辑模型的图形工具,表示数
创建DFD图指南:
第0层的DFD图应将软件/系统描述为一个整体处理项,在图 的边上画出外部实体。
应仔细的在第0层标记外部实体对系统的输入和输出数据流 通过隔离要表示在下一层的候选加工,数据对象和存储而开
商品 商
3
配送管 缺货单 缺货单
理
门路单门售店信销息
销售预
5 测信息
销售管
店
理
4
采购管 理
单正 价格
确订
记录
货 物 清
单
D4 商品价
格表
D5 订单表 订单
库存管理子系统的DFD(第一层)
供 应 送货单 商
D3 出货单表
1.1 入库单号 D1 订货单表
入库
1.2
1.3
出库
出库单 门 店
D2 库存表
库存记录
需求分析建模
需求分析的步骤 需求分析模型 数据建模 功能建模和信息流 行为建模
功能建模和信息流 使用工具: 数据流图 ( Data Flow Diagram, DFD)
数据字典 ( Data Dictionary, DD ) 判定树 /判定表 结构化语言
数据流图(DFD)作用: 描述逻辑模型的图形工具,
始精划过程,精划过程按分层给加工编号,保正父图与子 图加工编号的对应关系。 所有的箭头和处理使用有意义的名称标记 当从一个级到下一级时要维护“信息流的连续性”,即一 个子图必需对应父图的一个加工,两者的输入和输出数据 流必需一致,实现父图与子图的平衡。 一次精化一个处理,存在一种使DFD过份复杂的自然趋势。
中,超过期限罚款。
2016年数据库系统工程师试题精选之数据流图(一)
2016年数据库系统工程师试题精选之数据流图(一)试题一【说明】某基于微处理器的住宅系统,使用传感器(如红外探头、摄像头等)来检测各种意外情况,如非法进入、火警、水灾等。
房主可以在安装该系统时配置安全监控设备(如传感器、显示器、报警器等),也可以在系统运行时修改配置,通过录像机和电视机监控与系统连接的所有传感器,并通过控制面板上的键盘与系统进行信息交互。
在安装过程中,系统给每个传感器赋予一个编号(即id)和类型,并设置房主密码以启动和关闭系统,设置传感器事件发生时应自动拨出的电话号码。
当系统检测到一个传感器事件时,就激活警报,拨出预置的电话号码,并报告关于位置和检测到的事件的性质等信息。
【问题1】如图1所示,数据流图1(住宅安全系统顶层图)中的A和B分别是什么?【问题2】如图2所示,数据流图2(住宅安全系统第0层DFD图)中的数据存储"配置信息"会影响图中的哪些加工?【问题3】如图3所示,将数据流图3(加工4的细化图)中的数据流补充完整,并指明加工名称、数据流的方向(输入/输出)和数据流名称。
【问题4】请说明逻辑数据流图(Logical Data Flow Diagram)和物理数据流图(Physical Data Flow Diagram)之间的主要区别。
试题1分析本题是一道分层数据流图的题。
解答此类问题最关键的一点就是要细心,把题目看清,不要丢掉任何一个条件。
还有就是解题有一定的技巧,从一些常规的入口作为突破口,会事半功倍。
现在我们就利用分层数据流图的数据流的平衡原则(即父图和子图(加工图)的一致性)来解题。
子图是其父图中某一部分内部的细节图(加工图)。
它们的输入/输出数据流应该保持一致。
就像你看到地上有只蚂蚁有6条细细的腿,中间是一个小黑点,你想看得更清楚一些就拿个放大镜看。
这时,你能看到它的头、触角、身体和比较粗的腿,但是你看到的一定还是6条腿,不是7条,也不是3条。
数据流图PPT课件
2021
7
2.4.2 绘制数据流图的例子
事务
库存清单程序
定货 信息
库存清单 主文件
报告生成程序
定货报告
图2.3 库存清单系统的系统流程图
2021
8
2.4.2 例子
分析:
数据的源点和终点: “采购部每天需要一张 定货报表”,“通过放在仓库中的CRT终端 把事务报告给定货系统”
处理: “采购部ቤተ መጻሕፍቲ ባይዱ要报表”
说明 穿孔卡片输入/输出,或穿孔卡片文件 打印输出,或打印终端输入数据 磁带输入/输出,或表示磁带文件 任何种类磁盘存储,如磁盘、磁鼓等 磁盘输入/输出,或磁盘上文件、数据库 磁鼓输入/输出,或磁鼓上文件、数据库 显示器部件 人工输入数据,如填写表格 人工完成的处理 使用辅助设备进行的脱机操作 通过远程通信线路传送数据
数据流:定货报表、事务
数据存储:产生报表和处理事务这两个处理 在时间上明显不匹配——每当有一个事务发 生时立即处理它,然而每天只产生一次定货 报表。
2021
9
组成该例子的数据流图的元素
源点/终点
处理
采购员
产生报表
仓库管理员
处理事务
数据流
数据存储
订货报表 零件编号 零件名称 订货数量 目前价格 主要供应商 次要供应商
图2.2 系统符号
2021
2
2.3.2 例子
事务
库存清单程序
定货 信息
库存清单 主文件
报告生成程序 定货报告
图2.3 库存清单系统的系统流程图
2021
3
2.4 数据流图(描绘数据在系统中流动的逻辑过程) 2.4.1 符号
或
数据源点或终点
数据库系统工程师考点知识精讲
2013数据库系统工程师考点知识精讲一第一篇:计算机数据库系统知识计算机系统由硬件系统和软件系统组成。
硬件由运算器、控制器、存储器、输入设备、输出设备5部分组成;软件由系统软件、应用软件组成。
运算器:对数据进行处理的部件,主要完成算术和逻辑运算;控制器:从主存中取出指令,并指出下一条指令在主存中的位置,取出的指令经指令寄存器送往指令译码器,经过对指令的分析发出相应的控制和定时信息;1.控制器的组成部分为:程序计数器;指令寄存器;指令译码器;状态条件寄存器;时序产生器;微信号发生器。
计算机硬件的典型结构:单总线、双总线(以cpu为中心、以存储器为中心)、采用通道的大型系统。
2、二、八、十、十六进制间的转换方法。
十进制转换成二进制:十进制整数转换成二进制整数通常采用除2取余法,小数部分乘2取整法。
例如,将30D转换成二进制数。
2| 30 …0 ----最右位2 15 (1)2 7 (1)2 3 (1)1 …1 ----最左位∴30D=11110B八、十六进制转二进制方法类似。
二进制数转换成八进制数:对于整数,从低位到高位将二进制数的每三位分为一组,若不够三位时,在高位左面添0,补足三位,然后将每三位二进制数用一位八进制数替换,小数部分从小数点开始,自左向右每三位一组进行转换即可完成。
例如:将二进制数1101001转换成八进制数,则001 101 001B| | |1 5 1O1101001B = 151O八进制数转换成二进制数:只要将每位八进制数用三位二进制数替换,即可完成转换,例如,把八进制数(643.503)8,转换成二进制数,则(6 4 3 . 5 0 3)8| | | | | |(110 100 011 . 101 000 011)2(643.503)8=(110100011.101000011)2二进制与十六进制之间的转换(1)二进制数转换成十六进制数:由于2的4次方=16,所以依照二进制与八进制的转换方法,将二进制数的每四位用一个十六进制数码来表示,整数部分以小数点为界点从右往左每四位一组转换,小数部分从小数点开始自左向右每四位一组进行转换。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库系统工程师考点精讲之分层数据流图分层数据流图
从数据流图的基本目标出发,可以考虑在一张数据流图中包含多少个元素合适的问题。
一些调查研究表明,如果一张数据流图中包含的加工多于5-9个,人们就难于领会它的含义了。
因此为了表达较为复杂问题的数据处理过程,数据流图应该分层。
当把功能级数据流图细化后得到的加工超过9个时,用一个数据流图往往不够,应该采用画分图的办法。
一般按问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。
也就是把每个主要功能都细化为一张数据流分图,而原有的功能级数据流图用来描绘系统的整体逻辑概貌。
1.分层数据流图的基本概念
根据层次关系一般将数据流图分为顶层数据流图、中间数据流图和底层数据流图,除顶层图外,其余分层数据流图从0开始编号。
对任何一层数据流图来说,称它的上层数据流图为父图,称它的下一层数据流图为子图。
顶层数据流图只含有一个加工,表示整个系统;输入数据流和输出数据流为系统的输入数据和输出数据,表明了系统的范围,以及与外部环境的数据交换关系。
底层数据流图是指其加工不能再分解的数据流图,其加工称为"原子加工".
中间数据流图是对父层数据流图中某个加工进行细化,而它的某个加工也可以再次细化,形成子图。
中间层次的多少,一般视系统的复杂程度而定。
2.分层数据流图的画法
(1)画系统的输入和输出。
把整个软件系统看作一个大的加工,然后根据系统从哪些外部实体接收数据流,以及系统发送数据流到哪些外部实体,就可以画出系统的输入和输出图,这张图称为顶层图。
(2)画系统的内部。
将顶层图的加工分解成若干个加工,并用数据流将这些加工连接起来,使得顶层图中的输入数据经过若干个加工处理后变换成顶层图的输出数据流。
这张图称为0层图。
从一个加工画出一张数据流图的过程实际上就是对这个加工的分解。
可以用下述的方法来确定加工:在数据流的组成或值发生变化的地方应画一个加工,这个加工的功能就是实现这一变化;也可根据系统的功能确定加工。
确定数据流的方法:当用户把若干个数据看作一个单位来处理(这些数据一起到达,一起加工)时,可把这些数据看成一个数据流。
对于一些以后某个时间要使用的数据可以组织成一个数据存储来表示。
(3)画加工的内部。
把每个加工看作一个小系统,该加工的输入/输出数据流看成小系统的输入/输出数据流。
于是可以用与画0层图同样的方法画出每个加工的DFD图。
对第(3)步分解出来的DFD子图中的每个加工,重复第(3)步的分解,直至图中尚未分解的加工都足够简单(也就是说这种加工不必再分解)为止。
至此,就得到了一套分层数据流图。
3.对分层数据流图和加工进行编号
对于一个软件系统。
其数据流图可能有许多层,每一层又有许多张图。
为了区分不同的加工和不同的数据流图子图,应该对每张图和每个加工进行编号,以利于管埋。
(1)父图与子图
假设分层数据流图里的某张图(记为图A)中的某个加工可用另一张图(记为图B)来分解,则称图A是图B的父图,图B是图A的子图。
在一张图中,有些加工需要进一步分解,有些加工则不必分解。
因此,如果父图中有n个加工,那么它可以有0至n张子图(这些子图位于同一层),但每张子图都只对应于一张父图。
(2)编号
顶层图只有一张,图中的加工也只有一个,所以不必编号。
0层图只有一张,图中的加工可有多个,加工号可以分别是0.1、0.2、……或者是1、2、……
子图号就是父图中被分解的加工号。
图的加工号由图号、圆点和序号组成。
4.分层数据流图应注意的问题
对于一个规模较大且结构复杂的信息系统,它的数据流图可能包括几千个加工,要把它们都画在同一张纸上是不可能的。
为了控制复杂性,通常按照"自顶向下,逐层分解"的技术分层处理,因此在多数情况下,这样的数据流图被称作分层数据流图。
分层数据流图便于人们理解和使用,但在绘制时应注意以下事项:
(1)自顶向下、逐层分解。
就是由系统外部至系统内部、由总体到局部、由抽象到具体的系统逻辑模型建立的过程。
在整个数据流图绘制过程中,始终要把握住对系统总体目标与总体功能的要求,在给定的系统边界范围内进行工作。
为了使数据流图简洁、清晰、功能明确、方便交流,分解的层次和每张图的内容要适当。
根据经验,每张图包含的加工项目以不超过7-8个为宜。
加工的分解要抓住主要问题,每个分解后的加工环节功能明确,易于理解,一般分解后的加工先确定输出数据流,再确定输入数据流,然后定义加工的内容,进行命名和编号。
图上不应该有无输入或无输出的加工环节。
在数据流图分解中,要保持各层成分的完整性与一致性。
数据流图的逐层分解是以加工的分解为中心的,属于功能分解性质。
把上层加工环节称为父加工环节,下层环节为子加工环节。
加工的分解可能导致数据流的分解、数据存储的分解甚至外部项的分解。
分解时一定要保持父项(被分解项)的内容为对应各子项(即分解后的各项)的内容之和。
下层数据流图不应出现不属于上层图中的数据流子项的新的数据流,但可以出现不属于上层图的数据存储环节子项的新的数据存储环节。
因为随着加工的分解,分解后的加工(子加工)之间的界面可能是上层图未定义的数据存储,这就需要在下层图加以定义、命名与编号。
数据流图逐层分解也可能导致某个或某些外部项的分解。
因为分解后的各子加工可能与上层图中某个外部项的不同组成部分相联系。
当外部项的分解有助于更明确描述系统某些部分的功能与信息需求时,下层图要对分解后的外部项加以定义和命名。
下层图不应出现不属于上层图外部项的子项的新外部项。
(2)数据流必须经过加工环节,每条数据流的输入或者输出都是加工,即必须进入加工环节或从加工环节流出。
不经过加工环节的数据流(如外部项之间的数据交换)不在数据流图上表示。
因这类数据流与所描述的系统无直接关系。
(3)数据存储环节一般作为两个加工环节的界面来安排。
只与一个加工环节有关的数据存储,如果不是公用的或特别重要的,可不在数据流图上画出。
直接从外部项来与直接到外部项去的数据流应直接与加工环节相连,不应通过数据存储环节相连。
(4)适当地为数据流、加工、数据存储、外部实体命名,名字应反映该成分的实际含义,避免空洞的名字。
(5)编号。
每个数据加工环节和每张数据流图都要编号。
按逐层分解的原则,父图与子图的编号要有一致性,一般子图的图号是父图上对应的加工的编号。
如0层图的图号为0,其中各加工环节按1,2,3,…顺序编号,1号加工环节分解后的子加工按1.1,1.2,1.3,…编号,2号加工环节按2.1,2.2,2.3,…依此类推。
数据流与数据存储环节也要进行编号以便于编写、分析与维护。
编号方法原则上与加工环节的编号方法相同。
(6)保持父图与子图平衡。
也就是说,父图中某加工的输入/输出数据流必须与它的子图的输入/输出数据流在数量和名字上相同。
值得注意的是,如果父图的一个输入(或输出)数据流对应于子图中几个输入(或输出)数据流,而子图中组成这些数据流的数据项全体正好是父图中的这一个数据流,那么它们仍然算是平衡的。
(7)保持数据守恒。
也就是说,一个加工所有输出数据流中的数据必须能从该加工的输入数据流中直接获得,或者是通过该加工产生的数据。
(8)局部数据存储的隐蔽性
当某层数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口时,那么这些数据存储为局部数据存储。
为了强调局部数据存储的隐蔽性,一般情况下,局部数据存储只有作为某些加工的数据接口或某个特定加工的输入和输出时,才画出来。
即按照自顶向下的分析方法,某数据存储首次出现时只与一个加工有关,那么这个数据存储应该作为与之关联加工的局部数据存储,在该层数据流子图中不必画出,而在该加工的子图中画出,除非该加工为原子加工。
在自顶向下的分解过程中,若一个数据存储首次出现时只与一个加工有关,那么这个数据存储应作为这个加工的内部文件而不必画出。
(9)在整套数据流图中,每个加工必须既有输入数据流,又有输出数据流,允许一个加工有多条数据流流向另一个加工,也允许一个加工有两个相同的输出数据流流向两个不同的加工,一个加工的输出数据流不应与输入数据流同名,即使它们的组成成分相同;每个数据存储必须既有读的数据流,又有写的数据流,但在某一张子图中可能是只有读没有写,或者是只有写没有读。
(10)只绘制所描述的系统稳定工作情况下的数据流图,不描述系统启动或结束工作时功能和数据流运动规律处于变动状态的情况。
(11)画数据流而不要画控制流。
更多数据库系统工程师考试资讯请到希赛软考学院。