精华内容
下载资源
问答
  • 数据流图画法

    2013-04-18 19:33:02
    数据流图画法
  • 数据流图画法.pdf

    2021-09-15 16:56:06
    数据流图画法.pdf
  • 数据流图画法 规范

    2011-02-20 15:16:07
    数据流图 画法
  • 高校教学管理系统数据流图画法

    热门讨论 2011-06-24 19:13:41
    这个文件会让你更明白高校管理信息系统的数据流图画法
  • 数据流图画法,如何画数据流图

    千次阅读 2020-04-15 16:19:58
    1.数据流图的定义: 数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。 数据流图英文缩写DFD(Data Flow ...

    1.数据流图的定义:

    数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。
    数据流图英文缩写DFD(Data Flow Diagram)它是描绘信息流和数据从输入移动到输出的过程中所经受的变换。数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。

    2.数据流图的基本图形元素有:
    (1)数据流
    (2)加工(处理)
    (3)文件(数据存储
    (4)数据池(数据源或终点)

    数据流是一组数据。在数据流图中数据流用带箭头的线表示,在其线旁标注数据流名。在数据流图中应该描绘所有可能的数据流向,而不应该描绘出现某个数据流的条件。


    加工(处理)
    在数据流图中加工用圆圈表示,在圆圈内写上加工名。一个处理框可以代表一系列程序、单个程序或者程序的一个模块。

    文件(数据存储)

    是按照某种规则组织起来的、长度不限的数据。在数据流图中文件用一直线表示,在线段旁注上文件名。一个数据存储也并不等同于一个文件,它可以表示一个文件、文件的一部分、数据库的元素或记录的一部分等;

    数据池(源点和终点)

    在数据流图中用方框表示,在框内写上相应的名称。

    3.数据流图的四种基本图形符号:

     -->:箭头,表示数据流;

     〇:圆或椭圆,表示加工;

      = :双杠,表示数据存储;

     □:方框,表示数据的源点或终点。

    4.画数据流图所使用的工具:visio

    5.数据流图的画法步骤:

     

    1)确定系统的输入输出

    由于系统究竟包括哪些功能可能一时难于弄清楚,可使范围尽量大一些,把可能有的内容全部都包括进去。此时,应该向用户了解“系统从外界接受什么数据”、“系统向外界送出什么数据”等信息,然后,根据用户的答复画出数据流图的外围。

    2)由外向里画系统的顶层数据流图

    首先,将系统的输人数据和输出数据用一连串的加工连接起来。在数据流的值发生变化的地方就是一个加工。接着,给各个加工命名。然后,给加工之间的数据命名。最后,给文件命名。

    顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据、输出数据流。顶层图的作用在于表明被开发系统的范围以及它和周围环境的数据交换关系。

    3)自顶向下逐层分解,绘出分层数据流图

    对于大型的系统,为了控制复杂性,便于理解,需要采用自顶向下逐层分解的方法进行,即用分层的方法将一个数据流图分解成几个数据流图来分别表示。

     

    • 分层:一般将层号从0开始编号,采用自顶向下,由外向内的原则。画0层数据流图时,分解顶层流图的系统为若干子系统,决定每个子系统间的数据接口和活动关系。
    • 编号:如果一张数据流图中的某个加工分解成另一张数据流图时,则上层图为父图,直接下层图为子图。子图及其所有的加工都应编号。
    • 父图与子图的平衡:子图的输入输出数据流同父图相应加工的输入输出数据流必须一致,此即父图与子图的平衡。
    • 局部数据存储。当某层数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。
    • 提高数据流图的易懂性。注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性

     

    例题:

    假设一家工厂的采购部门每天需要一张定货报表。报表按零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应该列出下述数据:零件编号、零件名称、定货数量、目前价格、主要供应商、次要供应商。零件入库或出席称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。当某种零件的库存数量少于库存临界值时就应该再次定货。

    • 逐步分解地画出数据流图
    • 第一步,画出最概括的系统模型。因为任何系统实质上都是由若干个数据源点/终点以及一个处理组成。这个处理就代表了系统对数据加工变换的基本功能。

    对上图进行细化

    再细化一点

    勾画出边界

    命名的方法
    1)为数据流(或数据存储)命名
        A.名字应该代表整个数据流(或数据存储)的内容;
        B.不要使用空洞的、缺乏具体含义的名字(如“数据”、“输入”);
        C.如果为某个数据流(或数据存储)起名字时遇到困难,则很可能是因为对数据流图的分解不恰当造成的,应该试试重新分解数据流图;

    2)为处理命名
        A.通常先为数据流命名,然后再为与之相关联的处理命名;
        B.名字应该反映整个处理的功能;
        C.应该尽量避免空洞笼统的动词做名字,如“处理”、“加工”;
        D.通常用一个动词命名,如果必须用两个动词才能描述整个处理的功能,则可能要把这个处理分解成两个处理更恰当;
        E.如果在为某个处理命名时遇到困难,则很可能是发现了分解不当的情况,应考虑重新分解。

    3)为数据源点/终点命名
    通常,为“数据源点/终点”命名时,采用它们在问题域中习惯使用的名字(如“仓库管理员”、“采购员”)。

    展开全文
  • 数据流图 画法教程 入门级 实例 名师手把手教你,分层级数据流图
  • 分层数据流图画法+例子)

    千次阅读 2021-07-17 21:57:05
    分层数据流图画法+例子) 1. 步骤 1.1 个人理解(说人话) 画数据流图的大概步骤就是: 我们根据题目分析出这个系统的外部系统,找出数据流的源和宿,搞清楚每个数据流的流向。画出顶层。 根据刚刚我们画出的...

    分层数据流图(画法+例子)

    数据流图基本元素

    1. 数据流图基本元素:
      1. 数据流:每个数据流都应该命名,以反映该数据流的含义
      2. 加工:每个加工应有名字和编号以反映其功能和在DFD中的层次位置。有输入无输出称位黑洞,输入不足以产生输出称为灰洞。
      3. 数据存储:读,写,修改
      4. 外部实体:存在于软件系统之外的人员或组织,指出系统数据的源和宿
    2. 数据流图一些扩充符号:
      1. 星号(*):表示数据流之间的“与”关系
      2. 加号(+):表示数据流之间的“或”关系
      3. 异或符号
    3. 数据流图层次结构:层次+编号;(一般控制在7±2的范围内)
      在这里插入图片描述

    1. 步骤

    1.1 个人理解(说人话)

    画数据流图的大概步骤就是:

    1. 我们根据题目分析出这个系统的外部系统,找出数据流的宿,搞清楚每个数据流的流向画出顶层图
    2. 根据刚刚我们画出的顶层图,把系统的加工分成若干个子加工,这里是关键点,一个数据流图画的好不好大概率就取决于我们把加工分得合不合理。
    3. 画得时候搞清楚有哪些数据流注意一下数据该不该存储

    1.2 具体步骤(说得人话过于简单,看看加深理解)

    1. 画系统的输入输出:
      系统的输入和输出用典藏图来描述 ,及描述系统从哪些外部实体接收数据,以及系统发送数据到哪些外部实体。顶层图只有一个加工及开发的软件系统 顶层图中的数据流就是系统的输入输出信息定成图中通常没有数据存储。

    2. 画系统的内部
      将顶层图的加工分解成若干个加工 并用数据流将这些加工连接起来 使得顶层图中的输入数据经过若干个加工处理后 变换成顶层图的输出数据流 这张图称为零层图 。从一个加工画出一张数据流图的过程 实际上就是对这个加工的分解 。

      1. 确定加工。 这里的加工指的是父图中某加工分解而成的子加工,可以采用下面两种方法来确定加工。
        1. 根据功能分解来确定加工。一个加工实际 上反映了系统的一种功能,根据功能分解的原理,可以将一一个复杂的功能分解成若干个较小的功能,每个较小的功能就是分解后的子加工。这种方去多应用于高层DFD中加工的分解。
        2. 根据业务处理流程确定加工。分析父图中待分解的加工的业务处理流程,流程中的每一步都可能是一 个子加工。特别要注意在业务流程中数据流发生变化或数据流的值发生变化的地方,应该存在一个加工, 该加工将原数据流(作为该加工的输入数据流)处理成变化后的数据流(作为该加工的输出数据流)。该方法较多应用于低层DFD中加工的分解,它能描述父加工中输入数据流到输出数据流之间的加工细节。
      2. 确定数据流。 当用户把若干个数据看作一个整体来处理(这些数据一起到达, 一一起加工)时,可以把这些数据看成一一个数据流。通常,实际工作环境中的表单就是一种数据流。在父图中某加工分解而成的子图中,父图中相应加工的输入/输出数据流就是子图边界上的输入/输出数据流。另外,在分解后的子加工之间应增添- 些新的数据流,这些数据流是加工过程中的中间数据(对某子加工输入数据流的改变),它们与所有的子加工一起完成了父图中相应加工的输入数据流到输出数据流的变换。如果某些中间数据需要保存,以备使用,那么可以表示为流向数据存储的数据流。
      3. 确定数据存储。 在由父图中某加工分解而成的子图中,如果父图中该加工存在流向数据存储的数据流(写操作),或者存在从数据存储流向该加工的数据流(读操作),则这种数据存储和相关的数据流都画在子图中。在分解的子图中,如果需要保存某些中间数据,以备以后使用,那么可以将这些数据组成一个新的文件。 在自顶向下画分层数据流图时,新数据存储(首次出现的)至少应有一个加工为其写入记录,同时至少存在另一个加工读取该数据存储的记录。注意,对于从父图中继承下来的数据存储,在子图中可能只对其读记录,或者写记录。
      4. 确定源和宿。 通常在0层图和其他子图中不必画出源和宿,有时为了提供可读性,可以将顶层图中的源和宿画在0层图中。当同一个外部实体(人或组织)既是系统的源,又是系统的宿时,可以用同一一个图形符号来表示。为了画图的方便,避免图中线的交叉,同一个源或宿可以重复画在DFD的不同位置,以增加可读性,但它们仍代表同一个实体。
    3. 画加工的内部。 当DFD中存在某个比较复杂的加工时,可以将它分解成一张DFD子图。分解的方法是将该加工看作一一个小系统,该加工的输入/输出数据流就是这个假设的小系统的输入/输出数据流,然后采用画0层图的方法画出该加工的子图。

    题目:考务处理系统

    考务处理系统的功能需求如下。
    ①对考生送来的报名单进行检查。
    ②对合格的报名单编好准考证号后将准考证送给考生,并将汇总后的考生名单送给阅卷站。
    ③对阅卷站送来的成绩清单进行检查,并根据考试中心指定的合格标准审定合格者。
    ④制作考生通知单(内含成绩合格/不合格标志)送给考生。
    ⑤按地区、年龄、文化程度、职业和考试级别等进行成绩分类统计和试题难度分析,产生统计分析表。
    部分数据流的组成如下。
    报名单=地区+序号+姓名+文化程度+职业+考试级别+通信地址
    正式报名单=准考证号+报名单
    准考证=地区+序号+姓名+准考证号+考试级别+考场
    考生名单={准考证号+考试级别} (其中, {w}表示w重复多次)
    考生名册=正式报名单
    统计分析表=分类统计表+难度分析表
    考生通知单=准考证号+姓名+通信地址+考试级别+考试成绩+合格标志

    1. 顶层图分析:我们先分析以下题目找出外部实体。分析可知外部实体有:学生,阅卷站,考试中心。(特别说明一下,别把考务处理系统也理解成实体,处理系统要完成我们得数据处理工作,所以考务处理系统是加工)。接下来我们分析每个数据流的走向
      1. 报名单:考生–>考务处理系统
      2. 准考证:考务处理系统–>考生
      3. 考生名单:考务处理系统–>阅卷站
      4. 成绩清单:阅卷站–>考务处理系统
      5. 合格标准:考试中心–>考务处理系统(这里得好好理解,合格标准是审判合不合格的依据,也是数据流)
      6. 考生通知单:考务处理系统–>考试
      7. 统计分析表:考务处理中心–>考试中心(题中没有说清楚该数据流的宿,但是仔细分析,统计分析表应该是送回给考试中心,供他们进行下次考试的参考准备,所以宿应该的考试中心)
      8. 不合格报名单:考务处理系统–>考生(看到这里别觉得奇怪,题中确实没有这个数据流。但是仔细想想,我们的系统应该是有容错处理的,考试送上来一张错的报名单,系统应该退回告诉考生的。注意有提到要检查报名单的)
      9. 错误成绩清单:考务处理系统–>阅卷站(同上条,注意考务处理中心要检查阅卷站送来的成绩清单的)

    有了这些东西我们就能画出我们的顶层图啦, 图如下:
    在这里插入图片描述

    1. 画完顶层图(找动词, ),接下来我们就该分析我们的考务处理系统究竟做了那些工作了(加工–>子加工)。分析一下我们的考务处理系统为考生提供了啥处理?就登记学生提交的报名单,合格的报名单就等级上,给考生发准考证,不合格的就退回给考生;给考试中心提供了啥处理?就根据合格标准和成绩清单来统计考生成绩然后生成考生通知单和统计分析表和错误成绩清单。这里再考虑一个问题,我们登记和统计中间产物是啥?我们得形成一个正式得报名单(=考生名册)吧。上述分析中加粗字:动词是加工,名词是数据存储

    通过上述分析,我们把加工分为了两个子加工,画出0层图,图如下:
    在这里插入图片描述

    1. 同样的画出0层图之后,我们两个子加工工作量还是有点杂。我们尽力让我们的每个加工只完成一件事。(到这里了就看个人发挥了(记住加工找动词,数据存储找名词哈)。注意加工工作单一的同时,我们还要特别注意的是数据的流向,以及给每个加工标号)。下面的图就不一一赘述了
      在这里插入图片描述
      在这里插入图片描述
    展开全文
  • 数据流图画法

    万次阅读 多人点赞 2015-06-28 09:48:30
    值得注意的是,数据流图中描述的是数据流,而不是控制流。除了流向数据存储或从数据存储流出的数据不必命名外,每个数据流必须要有一个合适的名字,以反映该数据流的含义。 加工:加工描述了输

     

    数据流图的画法   

     

    参考:http://blog.csdn.net/xianshengsun/article/details/7439537

     
     
     
     

    一、数据流图的基本组成成分

    数据流:是由一组固定成分的数据组成,表示数据的流向。值得注意的是,数据流图中描述的是数据流,而不是控制流。除了流向数据存储或从数据存储流出的数据不必命名外,每个数据流必须要有一个合适的名字,以反映该数据流的含义。

    加工:加工描述输入数据流到输出数据之间的变换,也就是输入数据流经过什么处理后变成了输出数据。作用是把输入数据加工成所要的输出数据每个加工都有一个名字和编号。编号能反映该加工位于分层的数据流图的哪个层次和哪张图中,能够看出它是由哪个加工分解出来的子加工。

    数据存储:数据存储表示暂时存储的数据。每个数据存储都有一个名字。

    外部实体:外部实体是指系统外的人员或组织,指出数据所需要的发源地或系统所产生的数据的归属地。

                           

                     

       外部实体               加工             数据存储

     

    二、分层数据流图的设计方法    

       

    第一步:画子系统的输入输出

    画顶层图:把整个系统视为一个大的加工,然后根据数据系统从哪些外部实体接收数据流,以及系统发送数据流到那些外部实体,就可以画出输入输出图。

     

    第二步:画子系统的内部

    画0层图:把顶层图的加工分解成若干个加工,并用数据流将这些加工连接起来,使得顶层图的输入数据经过若干加工处理后,变成顶层图的输出数据流。

    加工的分解:从一个加工画出一张数据流图的过程就是对加工的分解。

          1)确定加工方法:

    1.数据流的组成或值变化的地方决定加工。

    2.根据系统的功能决定加工。

    2)确定数据流的方法:

    一起到达,一起处理的数据可看成数据流。

    3)关于数据存储:

    对于以后要使用的数据,可以组织成为一个数据存储来表示。

     

    第三步,画加工的内部

    1)把每个加工看作一个小系统;

    2)把加工的输入输出数据流看成小系统的输入输出流。

    3)象画0层图一样画出每个小系统的加工的数据流图。

     

    第四步,画子加工的分解图

    对第三步分解出来的DFD图中的每个加工,重复第三步的分解过程,直到图中尚未分解的加工不可再分解。至此,得到了一套分层数据流图。

     

    第五步,对数据流图和加工编号

    对于一个软件系统,其数据流图可能有许多层,每一层又有许多张图。为了区分不同的加工和不同的DFD子图,应该对每张图进行编号,以便于管理。

    ●     顶层图只有一张,图中的加工也只有一个,所以不必为其编号。

    ●     0层图只有一张,图中的加工号分别是0.1、0.2、…,或者1, 2 。

    ●     子图就是父图中被分解的加工号。

    ●     子图中的加工号是由图号、圆点和序号组成,如:1.12,1.3 等等。

     

    应该注意的问题:

           1.       应适当的为数据流、加工、数据存储以及外部实体命名,名字应该反映该成分的实际含义,避免使用空洞的名字。

    2.       画数据流图,不是画控制流。

    3.       一个加工的输出数据流,不应与输入数据流同名,及时他们的组成完全相同。

    4.       允许一个加工有多条数据流流向另一个加工,也允许一个加工有两条相同的输出数据流流向不同的加工。

    5.       保持父图与子图的平衡。也就是说,父图中的某加工的输入输出流必须与他的子图的输入输出数据流在数量上和名字上相同。值得注意的                      是,如果父图中的一个输入(输出)数据流对应于子图中的几个输入(输出)数据流,而子图中组成这些数据流的数据项的全体正好是父图                  中的这一个数据流,那么他们仍然算是平衡的。

    6.       在自顶向下的分解过程中,若一个数据存储首次出现时,只与一个加工有关系,那么这个数据存储应作为这个加工的内部文件而不必画出。

    7.       保持数据守恒,也就是,一个加工的所有输出数据流中的数据必须能从该加工的输出流中直接获得,或者通过该加工能产生的数据。

    8.       每个加工必须既有输入数据流,又有输出数据流。

    9.       在整套数据流图中,每个数据存储必须既有读的数据流,又有写的数据流。但是在某张子图中,可能只有读没有写,或者只有写没有读。

    特别注意上面的几点,都是考试的目标。近两年考试的内容都集中到2、5、6、8的几点上。

     

    三、例子

     

    数据流图(DFD):数据流图,简称DFD,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。

    下图是一个飞机机票预订系统的数据流图,它反映的功能是:旅行社把预订机票的旅客信息 (姓名、年龄、单位、身份证号码、旅行时间、目的地等)输入机票预订系统。系统为旅客安排航班,打印出取票通知单(附有应交的账款)。旅客在飞机起飞的前一天凭取票通知单交款取票,系统检验无误,输出机票给旅客。

    数据流图的画法转载 - 扬扬 - yang_ping111的博客

    3.3.1 基本图形符号

    数据流图有四种基本图形符号:

     :箭头,表示数据流;

        〇:圆或椭圆,表示加工;

        = :双杠,表示数据存储;

        □:方框,表示数据的源点或终点。

          (1) 数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。

          (2)加工(又称为数据处理)。对数据流进行某些操作或变换。每个加工也要有名字,通常是动词短语,简明地描述完成什么加工。在分层的数据流图中,加工还应编号。

          (3)数据存储(又称为文件),指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。

          (4)数据源点或终点,是本软件系统外部环境中的实体(包括人员、组织或其他软件系统),统称外部实体。一般只出现在数据流图的顶层图。

    3.3.2画数据流图的步骤

          (1)首先画系统的输入输出,即先画顶层数据流图。顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据、输出数据流。顶层图的作用在于表明被开发系统的范围以及它和周围环境的数据交换关系。下图为飞机机票预订系统的顶层图。

    数据流图的画法转载 - 扬扬 - yang_ping111的博客

    (2)画系统内部,即画下层数据流图。不再分解的加工称为基本加工。一般将层号从0开始编号,采用自顶向下,由外向内的原则。画0层数据流图时,分解顶层流图的系统为若干子系统,决定每个子系统间的数据接口和活动关系。例如,在上面的机票预订系统按功能可分成两部分,一部分为旅行社预订机票,另一部分为旅客取票,两部分通过机票文件的数据存储联系起来,0层数据流图如图3-4。

          (3)注意事项。

          ①命名。不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。

          ②画数据流而不是控制流。数据流反映系统“做什么”,不反映“如何做”,因此箭头上的数据流名称只能是名词或名词短语,整个图中不反映加工的执行顺序。

          ③一般不画物质流。数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的数据流图一般不要画物质流。

          ④每个加工至少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工的结果。

          ⑤编号。如果一张数据流图中的某个加工分解成另一张数据流图时,则上层图为父图,直接下层图为子图。子图及其所有的加工都应编号。

    数据流图的画法转载 - 扬扬 - yang_ping111的博客

    ⑥父图与子图的平衡。子图的输入输出数据流同父图相应加工的输入输出数据流必须一致,此即父图与子图的平衡。

          ⑦局部数据存储。当某层数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。

          ⑧提高数据流图的易懂性。注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性。

      图3-6给出了采用这套符号画出的等价于图3-2的DFD。

    数据流图的画法转载 - 扬扬 - yang_ping111的博客

    3.3.3流程图的实例

    数据流图的画法转载 - 扬扬 - yang_ping111的博客

    数据流图的画法转载 - 扬扬 - yang_ping111的博客

     

    展开全文
  • 软件工程数据流图画法

    千次阅读 多人点赞 2019-04-27 19:55:49
    系统流程是在系统分析员在做系统构架阶段,或者说,在接触实际系统时,对未来构建的信息处理系统的一种描述。这种描述是相对简单且完全的,涉及到未来系统中使用的处理部件,如磁盘,显示器,用户输入以及处理过程...

    摘自百度经验

    系统流程图是在系统分析员在做系统构架阶段,或者说,在接触实际系统时,对未来构建的信息处理系统的一种描述。这种描述是相对简单且完全的,涉及到未来系统中使用的处理部件,如磁盘,显示器,用户输入以及处理过程的先后顺序表示等,标准的系统流程图应该有10种图元,具体的有国家标准。当然,系统流程图还可以用来表示现有的信息系统处理过程涉及的各个部件以及次序。系统流程图是描绘物理系统的传统工具.它的基本思想是用图形符号以黑盒子形式描述系统里面的每个部件(程序,文件,数据库,表格,人工过程等等).系统流程图表达的是信息在系统各部件之间流动的情况,而不是对信息进行加工处理的控制过程,因此尽管系统流程图使用的某些符号和程序流程图中使用的符号相同,但是它确是物理流程图而不是程序流程图  

           数据流程图(DFD)是在系统分析员在系统设计阶段,对实际构建的系统分析综合后,提取逻辑模型的一个过程,它更关注于过程内数据的处理,而把具体处理数据的物理过程,物理分布忽略。实际上,最初始的数据流程图标准图元只有四个!实体,过程,数据流,数据的存储。并且,数据流的分析过程是逐步对实际过程求精的,从顶层数据流图,到分层数据流图,数据流,过程类型也逐步增加,直到形成最后的数据字典和底层数据流图。需要注意的是数据流图和程序设计中的程序流程图(Flow Chat)是不同的,数据流图关心的是企业业务系统中的数据处理加工的客观过程,并不关心未来电子化处理的加工过程;数据流图中流动的只是数据,并没有控制过程,但在程序流程图当中,必须有控制逻辑。

    1. 数据流图的画法

      数据流图也称为数据流程图date flow diagram , DFD,是一种便于用户理解和分析系统数据流程的图形工具,他摆脱了系统和具体内容,精确的在逻辑上描述系统的功能、输入、输出和数据存储等,是系统逻辑模型的重要组成部分。

      数据流图的基本组成成分

      数据流:是由一组固定成分的数据组成,表示数据的流向。值得注意的是,数据流图中描述的是数据流,而不是控制流。除了流向数据存储或从数据存储流出的数据不必命名外,每个数据流必须要有一个合适的名字,以反映该数据流的含义。

      加工:加工描述了输入数据流到输出数据之间的变换,也就是输入数据流经过什么处理后变成了输出数据。每个加工都有一个名字和编号。编号能反映该加工位于分层的数据流图的哪个层次和哪张图中,能够看出它是由哪个加工分解出来的子加工。

      数据存储:数据存储表示暂时存储的数据。每个数据存储都有一个名字。

      外部实体:外部实体是存在于软件系统之外的人员或组织,他指出数据所需要的发源地或系统所产生的数据的归属地。

      外部实体               加工             数据流

    2. 2

      分层数据流图的设计方法

      第一步,画子系统的输入输出

          把整个系统视为一个大的加工,然后根据数据系统从哪些外部实体接收数据流,以及系统发送数据流到那些外部实体,就可以画出输入输出图。这张图称为顶层图。

       

      第二步,画子系统的内部

         把顶层图的加工分解成若干个加工,并用数据流将这些加工连接起来,使得顶层图的输入数据经过若干加工处理后,变成顶层图的输出数据流。这张图称为0层图。从一个加工画出一张数据流图的过程就是对加工的分解。

      可以用下述方法来确定加工:在数据流的组成或值发生变化的地方应该画出一个加工,这个加工的功能就是实现这一变化,也可以根据系统的功能决定加工。

      确定数据流的方法

      用户把若干数据当作一个单位来处理(这些数据一起到达、一起处理)时,可以把这些数据看成一个数据流。

      关于数据存储

      对于一些以后某个时间要使用的数据,可以组织成为一个数据存储来表示。

      第三步,画加工的内部

            把每个加工看作一个小系统,把加工的输入输出数据流看成小系统的输入输出流。于是可以象画0层图一样画出每个小系统的加工的DFD图。

      第四步,画子加工的分解图

            对第三步分解出来的DFD图中的每个加工,重复第三步的分解过程,直到图中尚未分解的加工都是足够简单的(即不可再分解)。至此,得到了一套分层数据流图。

      第五步,对数据流图和加工编号

           对于一个软件系统,其数据流图可能有许多层,每一层又有许多张图。为了区分不同的加工和不同的DFD子图,应该对每张图进行编号,以便于管理。

      ●     顶层图只有一张,图中的加工也只有一个,所以不必为其编号。

      ●     0层图只有一张,图中的加工号分别是0.1、0.2、…,或者1, 2 。

      ●     子图就是父图中被分解的加工号。

      ●     子图中的加工号是由图号、圆点和序号组成,如:1.12,1.3 等等。

      应该注意的问题:

      1.  应适当的为数据流、加工、数据存储以及外部实体命名,名字应该反映该成分的实际含义,避免使用空洞的名字。

      2.  画数据流图,不是画控制流。

      3.  一个加工的输出数据流,不应与输入数据流同名,及时他们的组成完全相同。

      4.   允许一个加工有多条数据流流向另一个加工,也允许一个加工有两条相同的输出数据流流向不同的加工。

      5.   保持父图与子图的平衡。也就是说,父图中的某加工的输入输出流必须与他的子图的输入输出数据流在数量上和名字上相同。值得注意的是,如果父图中的一个输入(输出)数据流对应于子图中的几个输入(输出)数据流,而子图中组成这些数据流的数据项的全体正好是父图中的这一个数据流,那么他们仍然算是平衡的。

      6.   在自顶向下的分解过程中,若一个数据存储首次出现时,只与一个加工有关系,那么这个数据存储应作为这个加工的内部文件而不必画出。

      7.   保持数据守恒,也就是,一个加工的所有输出数据流中的数据必须能从该加工的输出流中直接获得,或者通过该加工能产生的数据。

      8.   每个加工必须既有输入数据流,又有输出数据流。

      9.   在整套数据流图中,每个数据存储必须既有读的数据流,又有写的数据流。但是在某张子图中,可能只有读没有写,或者只有写没有读。特别注意上面的几点,都是必须学会的目标。考查的内容都集中到2、5、6、8的几点上。

    3. 3

      例如:

      数据流图(DFD)

            数据流图,简称DFD,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。

      下图是一个飞机机票预订系统的数据流图,它反映的功能是:旅行社把预订机票的旅客信息 (姓名、年龄、单位、身份证号码、旅行时间、目的地等)输入机票预订系统。系统为旅客安排航班,打印出取票通知单(附有应交的账款)。旅客在飞机起飞的前一天凭取票通知单交款取票,系统检验无误,输出机票给旅客。

    4. 4

      第一步 基本图形符号

      数据流图有四种基本图形符号:

       :箭头,表示数据流;

        〇:圆或椭圆,表示加工;

        = :双杠,表示数据存储;

       □:方框,表示数据的源点或终点。

        (1) 数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。

         (2)加工(又称为数据处理)。对数据流进行某些操作或变换。每个加工也要有名字,通常是动词短语,简明地描述完成什么加工。在分层的数据流图中,加工还应编号。

         (3)数据存储(又称为文件),指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。

         (4)数据源点或终点,是本软件系统外部环境中的实体(包括人员、组织或其他软件系统),统称外部实体。一般只出现在数据流图的顶层图。

    5. 5

      第二步 画数据流图的步骤

            (1)首先画系统的输入输出,即先画顶层数据流图。顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据、输出数据流。顶层图的作用在于表明被开发系统的范围以及它和周围环境的数据交换关系。下图为飞机机票预订系统的顶层图。

    6. 6

      (2)画系统内部,即画下层数据流图。不再分解的加工称为基本加工。一般将层号从0开始编号,采用自顶向下,由外向内的原则。画0层数据流图时,分解顶层流图的系统为若干子系统,决定每个子系统间的数据接口和活动关系。例如,在上面的机票预订系统按功能可分成两部分,一部分为旅行社预订机票,另一部分为旅客取票,两部分通过机票文件的数据存储联系起来,0层数据流图如图3-4。

      (3)注意事项。

            ①命名。不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。

            ②画数据流而不是控制流。数据流反映系统“做什么”,不反映“如何做”,因此箭头上的数据流名称只能是名词或名词短语,整个图中不反映加工的执行顺序。

            ③一般不画物质流。数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的数据流图一般不要画物质流。

            ④每个加工至少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工的结果。

            ⑤编号。如果一张数据流图中的某个加工分解成另一张数据流图时,则上层图为父图,直接下层图为子图。子图及其所有的加工都应编号。

    7. 7

      ⑥父图与子图的平衡。子图的输入输出数据流同父图相应加工的输入输出数据流必须一致,此即父图与子图的平衡。

      ⑦局部数据存储。当某层数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。

       ⑧提高数据流图的易懂性。注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性。

        图3-6给出了采用这套符号画出的等价于图3-2的DFD。

    8. 8

      流程图的实例

    欢迎关注技术公众号:架构师成长营

     

    展开全文
  • 本教程介绍了数据流模型的建立方法,非常详细
  • 数据流图画法以及实例(精选)

    千次阅读 2019-10-02 16:10:49
    数据流图也称为数据流程date flow diagram , DFD,是一种便于用户理解和分析系统数据流程的图形工具,他摆脱了系统和具体内容,精确的在逻辑上描述系统的功能、输入、输出和数据存储等,是系统逻辑模型的重要组成...
  • 讲述了结构化分析与设计,数据流图画法,数据字典,等软件工程基础知识,适合初学者.
  • 数据流图(DFD)画法

    2021-02-20 16:56:58
    1. 数据流图(data) 数据流图 (date flow diagram , DFD),是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能...
  • 数据流图画法 确定系统的输入输出、画出顶层 开始由于系统究竟包括哪些功能可能一时难于弄清楚,所以把整个系统视为一个大的加工,可能有的内容全部都包括进去。此时,应该向用户了解“系统从外界接受什么数据...
  • 数据流图的示例

    2021-02-24 03:45:33
    本文主要讲解了数据流图是什么,然后通过几个示例详细展示,详情请看下文。本文来自csdn,由火龙果软件Anna编辑、推荐。画法:第0层DFD称为系统基本模型,可以将整个软件系统表示为一个具有输入和输出的黑匣子。用一...
  • 数据流图画法规范

    2008-06-03 19:03:23
    详细介绍数据流图画法规则
  • 数据流图(DFD)画法要求
  • 数据流图画法及其三大原则

    万次阅读 多人点赞 2018-12-23 13:11:54
    对于数据流图,我们不做过多具体的介绍,网上有非常多丰富的资源(百科),一定了解的它的由来,这才是学习的关键。 以下我们看看数据流图基本图形符号、设计原则、应用和总结。   基本图形符号       ...
  • 软件工程-分层数据流图画法

    千次阅读 多人点赞 2020-10-26 14:35:49
    数据流图 Data Flow Diagram(简称DFD):描述输入数据流到输出数据流的变换(即加工)过程,用于对系统的功能建模,基本元素包括: 数据流图示例: 数据流图的扩充符号 描述一个加工的多个数据流之间
  • 数据流图DFD画法

    万次阅读 多人点赞 2017-04-13 17:05:23
    数据流图(DFD- Data Flow Diagram)让系统分析者弄清楚“做什么”的问题,其重要性就不言而喻了。那么我们怎么画数据流图呢?数据流图与系统流程又有什么区别呢? 步骤1 数据流图里包含的内容 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,614
精华内容 645
关键字:

数据流图画法