[架构之路-140]-《软考-系统架构设计师》-数据流图DFD(Data Flow Diagram)和控制流图CFD(Control Flow Diagram)的比较

第1章 什么是控制流(程)图CFD =》 执行的步骤或动作流

1.1 概述/定义

控制流图(Control Flow Graph, CFG)也叫控制流程图,是一个过程程序的抽象表现,是用在编译器中的一个抽象数据结构,由编译器在内部维护,代表了一个程序执行过程中会遍历到的所有路径。它用图的形式表示一个过程内所有基本块执行的可能流向, 也能反映一个过程的实时执行过程。

Frances E. Allen于1970年提出控制流图的概念 [1] 。此后,控制流图成为了编译器优化和静态分析的重要工具。

控制流图中每个在图形中的节点代表一个基本块,例如,没有任何跳跃或跳跃目标的直线代码块;跳跃目标以一个块开始,和以一个块结束。定向边缘被用于代表在控制流中的跳跃。在那里,在大部分介绍中,两个特定的设计块:项目块,通过它控制到流图的输入,和编辑块,通过它全面控制流输出。

控制流程图(CFD)是图来描述控制流程一个的业务过程、过程或审核。

控制流程图可以由细分组成,以显示顺序步骤,以及if-then-else条件、重复和/或case条件。适当注释的几何图形用于表示操作、数据或设备、箭头用于指示从一个到另一个的顺序流动。

1.2 控制流(逻辑运算流)

控制流是指按一定的顺序排列程序元素来决定程序执行的顺序。Visual BASICC和其他编程语言也继承了控制流,语句按照出现在程序中的顺序执行。LabVIEW 使用顺序结构实现数据流框架中的控制流。顺序结构是一系列顺序执行的有序帧集合。顺序结构顺序执行帧0,然后是帧1、帧2,直到最后一个帧。只有最后一个帧执行完毕,数据才会离开结构。共有两种风格的顺序结构:单层顺序结构和叠层顺序结构,可以在Functions 选项卡的Programming>>Structures 子选项卡中找到。

单层顺序结构和叠层顺序结构这两种顺序结构非常相似,都有像胶片一样的帧。

其区别在于单层顺序结构中的帧是一个接一个排列的;

叠层顺序结构的帧是顺序和Case结构相似。

除了外观不一样,这两种顺序结构(单层和叠层)以相同的方式执行代码。

第2章 什么是数据流图DFD =》 数据的流动

2.1 概述/定义

数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。

数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。在结构化开发方法中,数据流图是需求分析阶段产生的结果。

数据流图或数据流程图Data Flow Diagram),缩写为DFD。数据流图DFD是描述系统中数据流程的一种图形工具,它标志了一个系统的逻辑输入和逻辑输出,以及把逻辑输入转换逻辑输出所需的加工处理。

值得注意的是,数据流图不是传统的流程图框图数据流也不是控制流。数据流图是从数据的角度来描述一个系统,而框图是从对数据进行加工工作人员的角度来描述系统。

DFD显示系统将输入输出什么样的信息,数据如何通过系统前进以及数据将被存储在何处。它不显示关于进程计时的信息,也不显示关于进程将按顺序还是并行运行的信息,而不像传统的关注控制流的结构化流程图,或者UML活动工作流程图,它将控制流和数据流作为一个统一的模型。

数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。

2.2 数据流

数据流(data stream)是一组有序,有起点和终点的字节的数据序列。包括输入流和输出流。

数据流最初是通信领域使用的概念,代表传输中所使用的信息的数字编码信号序列。这个概念最初在1998年由Henzinger在文献87中提出,他将数据流定义为“只能以事先规定好的顺序被读取一次的数据的一个序列”。

第3章 控制流图与数据流图的区别

控制流中,“流动”的是逻辑,属于控制面,节点是逻辑运算。

数据流中,“流动”的是数据,属于数据面,节点是数据处理。

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
宾馆客房管理系统数据流图DFD)和实体-关系图(E-R图)是用于描述系统数据流和数据结构的工具。下面是对宾馆客房管理系统DFD和E-R图的简要介绍: 数据流图DFD)是一种图形化的工具,用于描述系统中数据的流动和处理过程。在宾馆客房管理系统中,DFD可以包括以下几个主要组成部分: 1. 上层数据流图(Context Diagram):该图显示了宾馆客房管理系统与外部实体之间的交互,例如顾客、前台、房间清洁人员等。它展示了系统的整体概览,不涉及具体的内部处理过程。 2. 一级数据流图(Level 1 DFD):该图展示了宾馆客房管理系统的主要功能模块和数据流之间的关系。例如,可以包括预订房间、入住登记、退房结算等功能模块,并显示它们之间的数据流动。 3. 二级数据流图(Level 2 DFD):在一级数据流图的基础上,进一步展开了各个功能模块的内部处理过程和数据流动。例如,可以展示预订房间模块中的验证客房可用性、生成订单等具体步骤。 实体-关系图(E-R图)是一种用于描述系统中实体、属性和它们之间关系的图形化工具。在宾馆客房管理系统中,E-R图可以包括以下几个主要组成部分: 1. 实体(Entity):例如顾客、房间、订单等,它们是系统中需要存储和管理的主要对象。 2. 属性(Attribute):描述实体的特征或属性,例如顾客的姓名、房间的类型、订单的状态等。 3. 关系(Relationship):描述实体之间的关系,例如顾客与订单之间的关系、房间与订单之间的关系等。 通过E-R图,可以清晰地了解宾馆客房管理系统中各个实体之间的关系以及它们的属性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文火冰糖的硅基工坊

你的鼓励是我前进的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值