2020年1月10日

数据流程图(需求分析方法和建模工具)

结构化分析是面向数据流开展需求分析工作的一种有效方法。一般采用自顶向下,逐层分解的演义分析法来定义系统的需求,即先把分析对象抽象成一个系统,然后自顶向下的逐层分解,将复杂的系统分解成简单的、能够清楚地被理解和表达的若干个子系统。这样就可以分别理解系统的每个细节、前后顺序和相互关系,找出各部分之间的数据接口。在结构化分析方法所采用的工具有数据流程图(DFD)、数据字典(DD)、结构化语言、判定树、判定表等。

结构化分析的核心是数据流程图,数据流程图是以图形的方式表达在问题中信息的变换和传递过程。它把系统看成是由数据流联系的各种概念的组合,用分解及抽象手段来控制需求分析的复杂性,采用分层的数据流程图来表示一个复杂的系统。

数据流图:简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。

基于计算机的信息处理系统由数据流和一系列的加工构成,这些加工将输入数据流加工为输出数据流

数据流图描述数据流和加工

数据流图用图形符号表示数据流、加工、数据源及外部实体

数据流图具有层次结构,支持问题分解、逐步求精的分析方法

它是数据驱动的数据流图既可以表示基于计算机的系统,也可以表示软件

数据流图可以用来抽象地表示系统或软件。它从信息传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程,同时可以按自顶向下、逐步分解的方法表示内容不断增加的数据流和功能细节。因此,数据流图既提供了功能建模的机制,也提供了信息流建模的机制,从而可以建立起系统或软件的功能模型。

数据流图的基本符号的意思

1.矩形表示数据的外部实体;

2.圆角的矩形表示变换数据的处理逻辑;

3.少右面的边矩形表示数据的存储;

4.箭头表示数据流。

数据流程图中有以下几种主要元素
→:数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。
□:数据源(终点)。代表系统之外的实体,可以是人、物或其他软件系统。
○:对数据的加工(处理)。加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。
〓:数据存储。表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。

—————————————————————————————————–

数据流程图(DFD)是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符号综合地反映出信息在系统中的流动、处理和存储情况。数据流程图是表示操作或数据的方向。

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

  • 箭头:表示数据流;
  • 圆或椭圆:表示加工;
  • 双杠:表示数据存储;
  • 方框:表示数据的源点或终点。
[编辑]

数据流程图的基本成分

系统部件包括系统的外部实体、处理过程数据存储和系统中的数据流四个组成部分如下图所示:

 

1,外部实体

外部实体指系统以外又和系统有联系的人或事物,它说明了数据的外部来源和去处,属于系统的外部和系统的界面。外部实体支持系统数据输入的实体称为源点,支持系统数据输出的实体称为终点。 通常外部实体在数据流程图中用正方形框表示,框中写上外部实体名称,为了区分不同的外部实体,可以在正方形的左上角用一个字符表示,同一外部实体可在一张数据流程图中出现多次,这时在该外部实体符号的右下角画上小斜线表示重复.

2,处理过程

处理指对数据逻辑处理,也就是数据变换,它用来改变数据值。而每一种处理又包括数据输入、数据处理和数据输出等部分。在数据流程图中处理过程用带圆角的长方形表示处理,长方形分三个部分,标识部分用来标识一个功能,功能描述部门是必不可少的,功能执行部门表示功能由谁来完成。

3,数据流

数据流是指处理功能的输入或输出。它用来表示一中间数据流值,但不能用来改变数据值。数据流是模拟系统数据在系统中传递过程的工具。在数据流程图中用一个水平箭头或垂直箭头表示,箭头指出数据的流动方向,箭线旁注明数据流名。

4,数据存储

数据存储表示数据保存的地方,它用来存储数据。系统处理从数据存储中提取数据,也将处理的数据返回数据存储。与数据流不同的是数据存储本身不产生任何操作,它仅仅响应存储和访问数据的要求。

在数据流程图中数据存储用右边开口的长方条表示。在长方条内写上数据存储名字。为了区别和引用方便,左端加一小格,再标上一个标识,用字母D和数字组成.

流程图的画法

1,画数据流程图的基本原则:

①数据流程图上所有图形符号必须是前面所述的四种基本元素。

②数据流程图的主图必须含有前面所述的四种基本元素,缺一不可。

③数据流程图上的数据流必须封闭在外部实体之间,外部实体可以是一个,也可以是多个。

④处理过程至少有一个输入数据流和一个输出数据流。

⑤任何一个数据流子图必须与它的父图上的一个处理过程对应,两者的输入数据流和输出数据流必须一致,即所谓“平衡”。

⑥数据流程图上的每个元素都必须有名字。

2,画数据流程图的基本步骤:

①把一个系统看成一个整体功能,明确信息的输入和输出。

②找到系统的外部实体。一旦找到外部实体,则系统与外部世界的界面就可以确定下来,系统的数据流的源点和终点也就找到了。

③找出外部实体的输入数据流和输出数据流。

④在图的边上画出系统的外部实体。

⑤从外部实体的输入流(源)出发,按照系统的逻辑需要,逐步画出一系列逻辑处理过程,直至找到外部实体处理所需的输出流,形成数据流的封闭。

⑥将系统内部数据处理又分别看做整体功能,其内部又有信息的处理、传递、存储过程。

⑦如此一级一级地剖析,直到所有处理步骤都很具体为止。

3,画数据流程图的注意事项:

①关于层次的划分

逐层扩展数据流程图,是对上一层图中某些处理框加以分解。随着处理的分解,功能越来越具体,数据存储、数据流越来越多。究竟怎样划分层次,划分到什么程度,没有绝对标准,一般认为展开的层次与管理层次一致,也可以划分得更细,处理块的分解要自然,注意功能完整性,一个处理框经过展开,一般以分解为4个至10个处理框为宜。

②检查数据流程图

对一个系统的理解,不可能一开始就完美无缺,开始分析一个系统时,尽管我们对问题的理解有不正确、不确切的地方,但还是应该根据我们的理解,用数据流程图表达出来,进行核对,逐步修改,获得较为完美的图纸。

③提高数据流程图的易理解性

数据流程图是系统分析员调查业务过程,与用户交换思想的工具。因此,数据流程图应简明易懂。这也有利于后面的设计,有利于对系统说明书进行维护。