优秀的流程图应该怎么设计呢?

news2024/12/23 10:17:10

优秀的流程图应该怎么绘制呢?

本文将带大家学习优秀流程图的绘制要点和技巧,以及讲解流程图与UML活动图、BPMN图之间的关系和区别。

1、认识流程图

流程图简单讲就是用图描述流程,这种流程可以是一种有先后顺序的操作组成,可以是系统的输入到输出的整个环节的描述,也可以是不同人员、组织或系统协同有序的处理某件事的全过程。

流程图包含以下要素流程图组件类型(形状)

图片

流程图的结构

顺序结构
图片
分支结构
图片
循环结构
图片

流程图的流向/顺序控制

绘制流程图时,按我们的阅读习惯,应遵循从左到右、从上到下的顺序排列。流程图分区使用泳池泳道组件,使流程参与方的职责看起来更清晰
图片

其他相似绘图对比

活动图
流程图着重描述处理过程,它的主要控制结构是顺序、分支和循环,各个处理过程之间有严格的顺序和时间关系。而UML活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。UML活动图能够表示并发活动的情形,而流程图不行。UML活动图是面向对象的,而流程图是面向过程的。
图片
BPMN
流程图主要是描述给人看的,BPMN主要是描述可执行模型图,需要被工作流引擎或业务流程管理系统精确解释生成代码,而且是可执行的,描述的粒度更细,符号更多,标识的含义越精确。
图片

2、画流程图基本要求

  • 复杂流程图请分为主子流程图来绘制,不要画在同一流程图中。
  • 流程图禁止死循环。
  • 流程图须以单一入口,单一出口特征绘制。“开始”符号只能出现一次,但是“结束”符号可以出现多次。
  • 相同流程图,符号大小最好一致,看起来更美观。
  • 流程图符号绘制顺序,应从上至下,从左到到右的顺序。
  • 同一路径,指示箭头应只有一个,用来表示流程的执行顺序或数据的流向。
  • 流程图如有参考到其他流程。可引用已定义的流程,不需要重复绘制。
  • 路径符号应避免相互交叉。

3、常用流程图组件

(1)此组件表示流程的开始和结束,在此图标需标志上“开始”和“结束”。
图片
(2)用于标识分支判断(二选一)的情况,特别是成功/失败、是/否的情况,需要在分支出口线上标识出此分支表示的情况。此标志在框中,需要说明判断的内容.
图片
(3)调用外部数据,引用外部数据
图片
(4)存储数据,输出存储数据
图片
(5)表示流程中涉及的文档
图片
(6)表示手动输入处理。如手动输入用户名和密码。或者手动录入数据等等。
图片
(7)对于公共的流程处理或版面需要,需要本页中用一个标识符号来表示一组流程的,可以通过页内引用进行标识。页内引用必须设定一串字符来标识,并在同一个页面的其它处以相同的标识进行流程的具体描述。
图片
(8)对于公共的流程处理或版面需要,需要再其它页中用一个标识符号来表示一组流程的,可以通过离页引用(页面外引用)进行标识。离页引用必须设定一串字符来标识,同时VISIO自动会根据字串标识自动生成一个单独的页面。
图片
(9)预先定义的子流程。引用某一预先定义的流程进行处理。如示例,汽车空调加工子流程。
图片
(10)流程步骤/操作
图片
(11)标签
图片
(12)流程流转关系与方向描述
图片

4、绘图示例

作为PDDON在线画图的作者,又是市面上唯一完全免费的商业级画图软件,十分欢迎大家免费使用,以下绘图均是采用PDDON绘制,各位看官记得点赞收藏哦!
图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

5、总结

如果需要画好流程图,本文的基础知识点和使用技巧也是需要流程图小白认真学习的哦,相信通过本文的学习,绘制优秀的流程图能带给你更多的收获。

PDDDON除了支持绘制流程图,还支持UML建模、流程图、思维导图、数据库模型图、鱼骨图、韦恩图、BPMN、网络拓扑图、自由风格绘图等等一系列绘图,关注PDDON在线画图公众号,再也不用担心找不到好用的画图工具了。

PDDON声明:提供的画图功能绝不收费,欢迎大家免费使用。

喜欢的朋友可以关注我,定期分享画图教程和绘图模板。觉得不错的朋友可以点赞、喜欢、收藏哦,谢谢大家。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/560431.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024王道数据结构考研丨第六篇:查找、排序

到此,2024王道数据结构考研笔记专栏“基础知识”部分已更新完毕,其他内容持续更新中,欢迎 点此 订阅,共同交流学习… 文章目录 第七章 查找7.1查找表相关概念 第八章 排序8.1排序的基本概念8.2 插入排序8.2.1直接插入排序8.2.2折半…

使用Maven管理项目、导入依赖、测试打包项目、常用依赖

使用Maven管理项目 文章目录 使用Maven管理项目Maven项目结构Maven依赖导入Maven依赖作用域Maven可选依赖Maven排除依赖Maven继承关系Maven常用命令Maven测试项目Maven打包项目 Maven 翻译为"专家"、“内行”,是 Apache 下的一个纯 Java 开发的开源项目。…

hive函数03

自定义函数 Hive 自带了一些函数,比如:max/min等,但是数量有限,自己可以通过自定义UDF来方便的扩展。 在企业中处理数据的时候,对于敏感数据往往需要进行脱敏处理。比如手机号。我们常见的处理方式是将手机号中间4位…

MySQL表设计原则

前言 这里简单整理一些常用的数据库表设计原则以及常用字段的使用范围。 表的设计准则 1、命名规范 表名、字段名必须使用小写字母或者数字,禁止使用数字开头,禁止使用拼音,并且一般不使用英文缩写。主键索引名为 pk_字段名;唯…

SSL/TLS认证握手过程

一: SSL/TLS介绍 什么是SSL,什么是TLS呢?官话说SSL是安全套接层(secure sockets layer),TLS是SSL的继任者,叫传输层安全(transport layer security)。说白点,就是在明文的上层和TCP层之间加上一层加密,这样就保证上层信…

ACP(MaxCompute篇)-MaxCompute开发工具

创建MaxCompute项目 第一种创建项目方式 1.知道MaxCompute服务。 2.创建项目。 3.创建成功。 第二种创建项目的方式 1.进入DataWorks控制台。 2.创建工作空间。 3.创建的类型。 4.创建计算方式。 5.自定义选择。 6.创建成功。 MaxCompute开发工具简介 Odpscmd 安装配置 下…

java boot项目认识一下三种格式的配置文件

之前我们在 application.properties 中写了很多配置 但boot并不是只有这种配置方式 boot提供了三种配置方式给我们 话不多说 直接上代码 我们先将 resources下的 application.properties给他干掉 然后在下面创建一个 application.yml 在下面编写代码如下 server:port: 81这…

Hystrix底层核心原理

1、Hystrix资源隔离技术 hystrix github 官方文档:Home Netflix/Hystrix Wiki GitHub hystrix可以完成隔离、限流、熔断、降级这些常用保护功能。 hystrix的隔离分为线程池隔离和信号量隔离 1.1、信号量隔离 信号量隔离就是hystrix的限流功能。虽然名字叫隔离…

企业应该如何选择一个靠谱的软件测试供应商?

人们的生活越来越离不开软件产品,随着选择越多,产品质量愈发重要,因此企业选择一个靠谱的软件测试供应商是一项关键任务,因为测试结果将直接影响到产品的质量、用户的体验和公司的声誉。以下是一些选择靠谱的软件测试供应商的技巧…

C++常用的支持中文的GUI库Qt 6之二:项目的结构、资源文件的使用

C常用的支持中文的GUI库Qt 6之二:项目的结构、资源文件的使用 上一篇Qt 6的下载、安装与简单使用https://mp.csdn.net/mp_blog/creation/editor/130730203,本文介绍Qt 6的项目的结构、资源文件的使用与发布。 基础 这一部分,初学时不明白是…

交通 | 考虑网络效应的共享出行差异化定价

封面图来源: https://www.pexels.com/zh-cn/photo/210182/ 编者按: 本文考虑了单程式共享汽车的定价问题,在考虑顾客需求网络效应以及实现影响的场景下,根据空间以及时间确定汽车租赁的单价以实现系统利润最大化。 1.引言 在过…

【C++】unordered_map unordered_set 练习题

文章目录 unordered系列关联式容器unordered_mapunordered_map的文档介绍unordered_map的构造接口使用: unordered_multimapunorder_map&&unorder_multimap对比:unordered_setunordered_set的文档介绍unordered_set的构造接口使用 unordered_multisetOJ练习961.在长度2…

( 回溯算法) 27. 移除元素 ——【Leetcode每日一题】

❓27. 移除元素 难度:简单 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以…

ip地址段分解与合并

1、为什么要分解和合并ip地址段 无他,工作需要嘛,谁没事去划分ip地址段 优点:可以节省大量的时间,减少算错的可能性 2、工具下载 下载链接: https://github.com/zhanhb/cidr-merger github在国内使用不太友好&#…

14、IIC主机控制--引脚软件模拟

时序图: 软件基于STM32 HAL库 IIC–定时器精确延时 软件用涉及到使用定时器做精确延时,可以参考我的文章–“CubeMx 定时器高精度延时” 延时使用的文件: tim.c /*********************************************************************…

Linux基础内容(21)—— 进程消息队列和信号量

Linux基础内容(20)—— 共享内存_哈里沃克的博客-CSDN博客 目录 1.消息队列 1.定义 2.操作 2.信号量 1.定义 2.细节 3.延申 4.操作 3.IPC的特点共性 1.消息队列 1.定义 定义:是操作系统提供的内核级队列 2.操作 msgget:…

Java实现MQTT传输协议通信

Java实现MQTT传输协议通信 1. MQTT1.1 概述1.2 发布和订阅模型1.3 客户端1.4 服务器1.5 订阅、主题、会话1.6 协议中的方法2. Java使用MQTT2.1 添加 pom 依赖2.3 订阅方2.4 发布方2.4 MQTT 连接创建方式2.4.1 普通 TCP 连接2.4.2 TLS/SSL 连接1. MQTT

java_day01_单元测试_配置文件

一、软件的生命周期 **软件的可行性分析:**分析该软件是否值的研发,会消耗多少成本,能带来多少的利益等分析 **需求分析:**分析该软件具体该具备有那些功能,产品经理与客户一起讨论 **软件设计:**该软件应该使用什么样的架构,用什么样的数据库,每个模块的具体功能 **程序编…

2023年8大黑客编程语言

以下是2023年最适合黑客攻击的8种编程语言的列表。 道德黑客被定义为合法进入各种网络的做法,目的是识别黑客可能利用的潜在弱点来访问网络。此类黑客攻击旨在在任何漏洞进入危险攻击者手中之前发现它们,然后及时修复它们以防止攻击。让我们进入文章&am…

【数字通信】PAM基带信号的功率谱原理推导详解

PAM信号可以说是最简单的数字通信信号,很多理论最初都是由该信号的表达式推导得到并进行拓展的,纵观各类数字信号的表达式,或多或少都有PAM信号的“影子”,也就是说PAM信号相关的理论知识是最基本的,很有必要搞清楚,本博客主要讨论PAM基带信号的功率谱的原理及推导过程,…