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

一、流程图和数据流图

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

1、数据流(程)图

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

2、流程图

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

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

1、数据流(程)图

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

2、(业务)流程图

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

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

三、二者区别的联系

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

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

四、常用的工具

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

1、Visio

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

2、Xmind

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

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

在线工具:

1、drawio

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

2、ProcessOn

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

3、亿图

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

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

五、总结

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

相关推荐
BOB-wangbaohai6 小时前
Flowable7.x学习笔记(十三)查看部署流程图
笔记·学习·流程图
aiden:)17 小时前
UML 状态图:以共享汽车系统状态图为例
汽车·软件工程·软件构建·uml
holly_交易系统2 天前
如何开发一套TRS交易系统:架构设计、核心功能与风险控制
大数据·人工智能·软件工程·软件构建·开源软件
招风的黑耳2 天前
高保真动态项目管理图表集
流程图·axure·甘特图·关系图谱·项目管理图表
aiden:)3 天前
网上图书销售系统 UML 状态图解析:触发器事件、动作与监视条件
设计模式·软件工程·软件构建·uml
贝塔实验室4 天前
基于XC7V690T的在轨抗单粒子翻转系统设计
设计模式·fpga开发·系统架构·流程图·软件构建·个人开发·fpga
aiden:)4 天前
UML 状态图:陪伴机器人系统示例
机器人·软件工程·软件构建·uml
aiden:)4 天前
UML 状态图:解锁电子图书馆管理系统的高效设计
架构·软件工程·软件构建·uml
CodeJourney.5 天前
DeepSeek与Napkin:信息可视化领域的创新利器
数据库·人工智能·算法·excel·流程图
小龙在山东5 天前
利用 Deepseek 和 Mermaid 画流程图
android·流程图