设计心得——流程图和数据流图绘制

一、流程图和数据流图

在软件开发中,画流程图和数据流图可以说是几乎每个人都会遇到。

1、数据流(程)图

Data Flow Diagram,DFG。它可以称为数据流图或数据流程图。其主要用来描述系统中数据流程的一种图形工具,可以将系统的逻辑输入和输出以及在此过程中进行的数据加工处理通过图标表现出来。它是一种进行结构化系统分析方法的表达工具。DFD是可以分层进行设计的,这一点大家要知晓。

2、流程图

Flowchart,流程图。而在流程图里最常用的就是业务流程图,其它还有状态流程、工作流程、过程流程等等。做为一种图形化的工具,流程图可以通过图形方式对系统从输入到输出的整体逻辑过程进行描述。需要注意的是,有的书籍和资料中在流程图中也独立出来一个数据流程图,它和DFG还是有一定的区别的。这是一种比较例外的情况,大家遇到再分析也不晚。

二、组成和常见的图形元素

1、数据流(程)图

数据流程图的基本元素包括数据流、处理、数据存储和外部实体。其相关的图形元素包括以下以下几种:

2、(业务)流程图

流程图的基本元素包括输入/输出、过程、决策和开始/结束,当然它们中间要以箭头来进行控制逻辑的方向描述。其相关的图形元素包括以下以下几种:

看上去比数据流图多很多,但其实一般实际用到的只有前四个,后面的用到的较少。

三、二者区别的联系

二者的最核心的区别在于数据流图更直观的描述数据流动的过程和处理,重视数据的输入输出、逻辑变换以及存储、流向。流程图更直观的描述的是对数据、状态等的控制处理从而表现其先后顺序和关系。前者更适合于在需求分析阶段即逻辑建模,而流程图在进入了设计阶段后非常有用即物理建模。

数据流图可以分层进行处理而流程图不会。当然,它们的相关的内容元素和一些图标细节也是有不同的意义表示,这些都需要大家仔细看相关的资料。

四、常用的工具

常用的工具有在线和本地的,本地的一般不同平台有不同的软件,常用的有:

1、Visio

这个勿用细说,微软提供的强大的绘图工具,不光可以绘制流程图还可以绘制其它很多的图形。但它只能在Windows平台使用,而且生成的文件体积比较大。

2、Xmind

这个比较有名,而且几乎在常见的平台上都支持,推荐大家使用

其它还有不少的相关软件都不错(如StarUML等),大家可以自行根据习惯和平台选择

在线工具:

1、drawio

目前应用的比较多,而且是免费,没有各种的限制条件。这个有一个国内的版本visionon,用哪个都可以。

2、ProcessOn

这个以前不错,现在也还行,不过增加了很多限制条件(如导出有水印),不太方便了

3、亿图

这个没用过,但据说还不错,大家可以试试

这种在线的工具非常多,大家可以找一款最合适自己的用就行。

五、总结

这篇文章不是教大家怎么绘制这两类图形的,因为这种资料太多了。这里主要是对其中的不同和应用的细节进行对比说明,这样让大家在实际的设计应用中不会混淆。主要是起一个借鉴和随时拿来做个参考的内容。

相关推荐
龙哥·三年风水12 小时前
接口项目架构流程图-thinkphp6-rabbitmq
rabbitmq·php·流程图
小参宿1 天前
高效绘图不再受限!本地搭建Excalidraw与随时随地高效绘制流程图教程
运维·服务器·windows·docker·centos·流程图
小破孩呦1 天前
Vue3中使用 Vue Flow 流程图方法
前端·vue.js·流程图
敏编程1 天前
Mermaid 使用教程之流程图 - 从入门到精通
流程图·mermaid
风生水气1 天前
哦?将文本转换为专业流程图的终极解决方案?
人工智能·ai·流程图
lisacumt2 天前
【Flink CDC】Flink CDC的Schema Evolution表结构演变的源码分析和流程图
大数据·flink·流程图
cheese-liang5 天前
Markdown中流程图的用法
流程图
AIGC大时代5 天前
学术写作中的各种流程图如何利用Kimi进行辅助构建?
人工智能·深度学习·chatgpt·aigc·流程图·ai写作