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

一、流程图和数据流图

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

1、数据流(程)图

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

2、流程图

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

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

1、数据流(程)图

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

2、(业务)流程图

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

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

三、二者区别的联系

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

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

四、常用的工具

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

1、Visio

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

2、Xmind

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

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

在线工具:

1、drawio

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

2、ProcessOn

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

3、亿图

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

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

五、总结

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

相关推荐
空中湖3 小时前
手绘风格流程图工具:简单高效的在线流程图绘制工具
流程图
全星0076 小时前
失效模式分析(FMEA)、控制计划(CP)、流程图(Flowchart)的无缝衔接与高效管理--全星FMEA软件系统
流程图
朴拙数科2 天前
plaintext 流程图和Markdown 的 Mermaid格式流程图的区别要点
编辑器·vim·流程图
月巴月巴白勺合鸟月半3 天前
一个流程图的后续
流程图·健康医疗
青花瓷4 天前
VSCode中使用Markdown以及Mermaid实现流程图和甘特图等效果
vscode·流程图·甘特图
fish-man4 天前
测试流程图显示问题
java·服务器·流程图
BerryBC4 天前
ChatBI的流程图
java·前端·流程图
刀法如飞5 天前
探索MVC、MVP、MVVM和DDD架构在不同编程语言中的实现差异
架构·mvc·软件构建
Jiaberrr6 天前
Vue3 实战:基于 mxGraph 与 WebSocket 的动态流程图构建
前端·javascript·vue.js·websocket·流程图
独好紫罗兰7 天前
洛谷题单1-B2002 Hello,World!-python-流程图重构
python·算法·流程图