博客 数据流图的基本图形元素

数据流图的基本图形元素

   数栈君   发表于 2023-12-26 10:01  138  0

 数据流图中的基本图形元素包括数据流(Data Flow)、加工(Process)、数据存储(Data Store)和外部实体(External Agent)。其中,数据流、加工和数据存储用于构建软件系统内的数据处理模型:外部实体表示存在于系统之外的对象,用来帮助用户理解系统数据的来源和去向。DFD 的基本图形元素如下图所示。
http://dtstack-static.oss-cn-hangzhou.aliyuncs.com/2021bbs/files_user1/article/2ddfae382cbb1539d49cc600c49de7cd..png
 

http://dtstack-static.oss-cn-hangzhou.aliyuncs.com/2021bbs/files_user1/article/b898e30fd8b323b8a3eb618ffe05a8a3..png
 

  1)数据流
  数据流由一组固定成分的数据组成,表示数据的流向。在 DFD 中,数据流的流向可以有以下几种:从一个加工流向另一个加工;从加工流向数据存储(写);从数据存储流向加工(读);从外部实体流向加工(输入);从加工流向外部实体(输出)。
  DFD 中的每个数据流用一个定义明确的名字表示。除了流向数据存储或从数据存储流出的数据流不必命名外,每个数据流都必须有一个合适的名字,以反映该数据流的含义。
  值得注意的是,DFD 中描述的是数据流,而不是控制流。
  数据流或者由具体的数据属性(也称为数据结构)构成,或者由其他数据流构成。组合数据流是由其他数据流构成的数据流,它们用于在高层的数据流图中组合相似的数据流,以使数据流图更便于阅读。

  2)加工
  加工描述了输入数据流到输出数据流之间的变换,也就是输入数据流经过什么处理后变成了输出数据流。每个加工都有一个名字和编号。编号能反映出该加工位于分层 DFD 中的哪个层次和哪张图中,也能够看出它是哪个加工分解出来的子加工。
  一个加工可以有多个输入数据流和多个输出数据流,但至少有一个输入数据流和一个输出数据流。数据流图中常见的 3 种错误如下图所示。
http://dtstack-static.oss-cn-hangzhou.aliyuncs.com/2021bbs/files_user1/article/ab50d95b3d64a959910008d0cbcad4cc..png
  
  加工 3.1.2 有输入但是没有输出,我们称之为“黑洞”。因为数据输入到过程,然后就消失了。在大多数情况下,建模人员只是忘了输出。
  加工 3.1.3 有输出但没有输入。在这种情况下,输入流似乎被忘记了。
  加工 3.1.1 中输入不足以产生输出,我们称之为“灰洞”。这有几种可能的原因:一个错误的命名过程;错误命名的输入或输出;不完全的事实。灰洞是最常见的错误,也是最使人为难的错误。一旦数据流图交给了程序员,到一个加工的输入数据流必须足以产生输出数据流。

  3)数据存储
  数据存储用来存储数据。通常,一个流入加工的数据流经过加工处理后就消失了,而它的某些数据(或全部数据)可能被加工成输出数据流,流向其他加工或外部实体。除此之外,在软件系统中还常常要把某些信息保存下来以供以后使用,这时可以使用数据存储。例如,在考务处理系统中,报名时产生的考生名册要随着报名的过程不断补充,在统计成绩和制作考生通知书时还要使用考生名册的相关信息。因此,考生名册可以作为数据存储存在,以保证相关的考生信息。
  每个数据存储都有一个定义明确的名字标识。可以有数据流入数据存储,表示数据的写入操作;也可以有数据流从数据存储流出,表示数据的读操作;还可以用双向箭头的数据流指向数据存储,表示对数据的修改。
  这里要说明的是,DFD 中的数据存储在具体实现时可以用文件系统实现,也可以用数据库系统实现。数据存储的存储介质可以是磁盘、磁带或其他存储介质。

  4)外部实体(外部主体)
  外部实体是指存在于软件系统之外的人员或组织,它指出系统所需数据的发源地(源)和系统所产生的数据的归宿地(宿)。例如,对于一个考务处理系统而言,考生向系统提供报名单(输入数据流),所以考生是考务处理系统的一个源;而考务处理系统要将考生成绩的统计分析表(输出数据流)传递给考试中心,所以考试中心是该系统的一个宿。
  在许多系统中,某个源和某个宿可以是同一个人员或组织,此时,在 DFD 中可以用同一个符合表示。考生向系统提供报名单,而系统向考生送出准考证,所以在考务处理系统中,考生既是源又是宿。
  源和宿采用相同的图形符合表示,当数据流从该符合流出时,表示它是源:当数据流流向该符号时,表示它是宿:当两者皆有时,表示它既是源又是宿。

————————————————
版权声明:本文为CSDN博主「qw&jy」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_43448856/article/details/124801069

免责申明:

本文系转载,版权归原作者所有,如若侵权请联系我们进行删除!


《数据治理行业实践白皮书》下载地址:https://fs80.cn/4w2atu

《数栈V6.0产品白皮书》下载地址:https://fs80.cn/cw0iw1

想了解或咨询更多有关袋鼠云大数据产品、行业解决方案、客户案例的朋友,浏览袋鼠云官网:https://www.dtstack.com/?src=bbs

同时,欢迎对大数据开源项目有兴趣的同学加入「袋鼠云开源框架钉钉技术群」,交流最新开源技术信息,群号码:30537511,项目地址:https://github.com/DTStack  
0条评论
社区公告
  • 大数据领域最专业的产品&技术交流社区,专注于探讨与分享大数据领域有趣又火热的信息,专业又专注的数据人园地

最新活动更多
微信扫码获取数字化转型资料
钉钉扫码加入技术交流群