业务建模工具BPMN

目录

一、什么是BPMN

二、业务流程梳理的重要作用

三、BPMN的全图

四、BPMN的组成

 1.BPMN的基本元素(2.0)

1.1 流对象(Flow Objects)

1.2 数据(Data)

1.3 连接对象(Connecting Objects)

1.4 泳道(Swimlanes)

1.5 人工信息(Artifacts)

2.基本的建模元素

2.1 流对象的建模元素

2.2 数据的建模元素

2.3 连接对象的建模元素

2.4 泳道的建模元素

2.5 人工信息的建模元素

五、绘制BPMN的方式


业务流程建模标注是一套规范标准,包括这些图元如何组合成一个业务流程图(Business Process Diagram)。

在产品设计的流程中,我们在用户需求调研之后,功能模块设计之前,往往要对业务进行建模,系统的表达产品人员对业务的理解,以尽早达成一致和共识。比起一般的流程图,BPMN的图元属性更加丰富,能够表达的业务流程更加具体。

一、什么是BPMN

BPMN (Business Process Model and Notation)是一种用于描述业务过程的图形化标准表示法。它提供了一种标准化的方法来可视化、分析及改进业务过程。

BPMN图中的元素包括流程中的活动、事件、网关、数据对象等组成部分。这些元素可以表示业务过程中的任务、决策,以及数据流动等。不同的元素之间可以通过箭头来表示控制流和数据流。

BPMN可以用于描述和分析各种不同类型的业务过程,包括工作流程、组织流程、决策流程等。它也被广泛用于业务流程管理软件中,以实现自动化和优化业务过程。

BPMN是由OMG(Object Management Group)制定的标准化表示法,目前已经成为业界广泛接受的标准。

BPMN 1.0 规范由标准组织BPMI(后并入到OMG)于2004年5月发布;BPMN 2.0 标准由OMG于2011年推出。

二、业务流程梳理的重要作用

如上所述,业务流程梳理,在产品设计过程中,是必不可少的一环,BPMN是业务流程梳理非常有效的一个工具。

更为重要的是,从产研人员的角度,业务流程的建模,是为了更好的设计产品。实际上,在企业和组织环境中,业务流程建模,对企业优化流程,明确职责,提高协同,都有重要的意义。

要实现流程的数字化,业务建模,主要有以下7个步骤:

  1. 找到流程中的核心业务对象
  2. 把核心业务对象的全量全要素数据补充完整
  3. 把核心业务对象流转中的所有过程数据记录下来
  4. 把涉及到流转的判定规则数据保持下来
  5. 基于过程数据找到流转短板
  6. 基于规则数据提升流转效率
  7. 重复1-6步骤

为什么业务流程的梳理的建模这么重要?华为认为,流程是为了实现客户价值和企业业务目标而形成的一套规范业务运作的规则和机制,是管理体系的核心,是改善客户体验、提升客户满意度、多打粮食的关键,也是公司长治久安的基础与保障。

对企业内部业务流程进行分析、整理、优化、设计和实施的过程。它是企业优化业务流程、提高效率和质量的关键步骤。

有助于我们:

  • 发现问题和瓶颈:通过分析业务流程,可以发现业务流程中存在的问题和瓶颈,如冗余、低效、错误等,从而提出改进意见。
  • 优化流程:通过对业务流程进行优化,可以消除不必要的步骤,减少人力和物力成本,提高效率和质量。
  • 提高客户满意度:通过优化流程,可以提供更加优质的服务,满足客户需求,提高客户满意度。
  • 降低风险:通过规范和优化业务流程,使企业的决策和操作更加明确、规范,减少风险。
  • 提高绩效:通过整理业务流程,明确各个部门的职责和任务,提高员工工作效率,提高企业整体绩效。

三、BPMN的全图

这是一图读懂BPMN。

四、BPMN的组成

 1.BPMN的基本元素(2.0)
1.1 流对象(Flow Objects)

流对象是定义业务流程的主要图形元素,主要有三种流对象。

  • 事件(Events)
  • 活动(Activities)
  • 网关(Gateways)
1.2 数据(Data)

数据主要通过四种元素表示。

  • 数据对象(Data Objects)
  • 数据输入(Data Inputs)
  • 数据输出(Data Outputs)
  • 数据存储(Data Stores)
1.3 连接对象(Connecting Objects)

流对象彼此互相连接或者连接到其他信息的方法主要有四种。

  • 顺序流(Sequence Flows)
  • 信息流(Message Flows)
  • 协同(Associations)
  • 数据协同(Data Associations)
1.4 泳道(Swimlanes)

有两种方式通过泳道对主要的建模元素进行分组。

  • 泳池:Pools
  • 泳道:Lanes
1.5 人工信息(Artifacts)

主要用来提供关于流程的额外信息。BPMN2.0定义两种标准Artifacts,但是建模者或者建模工具可以增加任意多Artifacts。

  • 组:Group
  • 文本注释:Text Annotation

这里还有一个概念要注意,就是关于几个名词的包含关系。

我们一般认为:流程分类>流程组> 流程>子流程>活动>任务

2.基本的建模元素
2.1 流对象的建模元素

BPMN的流对象是指用于表示业务流程中的活动、事件和网关等元素之间产生依赖关系的箭头或线条,主要包括以下几种建模元素:

  • 活动(Activity):表示业务流程中的一个任务或一组任务,可以用矩形、圆角矩形、圆形等形状来表示。
  • 事件(Event):表示业务流程中的某个状态或者特定时间发生的事情,可以用圆圈、菱形等形状来表示。
  • 网关(Gateway):表示业务流程中的逻辑分支、合并、多路合并等关键决策点,可以用菱形、双向箭头等形状来表示。
  • 连接线(Sequence Flow):表示活动、事件和网关之间产生的依赖关系和执行顺序,通常用箭头来表示。
  • 消息流(Message Flow):表示不同组织单元之间的信息传递,用带箭头的虚线表示。
  • 数据对象(Data Object):表示业务流程中需要处理的数据,可以用长方形、圆角矩形等形状来表示。
  • 数据存储(Data Store):表示业务流程中需要存储的数据,可以用矩形等形状来表示。
2.2 数据的建模元素

BPMN的数据是指业务流程中需要处理的数据或需要存储的数据,主要包括以下几种建模元素:

  • 数据对象(Data Object):表示业务流程中需要处理的数据,可以用长方形、圆角矩形等形状来表示。
  • 数据存储(Data Store):表示业务流程中需要存储的数据,可以用矩形等形状来表示。
  • 数据输入(Input Data):表示活动需要输入的数据,用圆角矩形加上向下的箭头来表示。
  • 数据输出(Output Data):表示活动的输出数据,用圆角矩形加上向上的箭头来表示。
  • 数据关联(Data Association):表示活动和数据对象之间的关联关系,通常用虚线箭头表示。

通过使用这些建模元素,可以清晰地表达业务流程中需要处理和存储的数据以及数据在业务流程中的流向。

2.3 连接对象的建模元素

 BPMN的连接对象是指用来连接任务、活动、事件和网关等建模元素的线条,主要包括以下几种建模元素:

  • 流程连线(Sequence Flow):表示任务、活动、事件和网关之间的顺序关系,通常用实线箭头表示。
  • 消息流(Message Flow):表示不同泳道或不同流程之间的信息交换,通常用虚线箭头表示。
  • 关联关系(Association):表示任务、活动、事件和网关之间的关联关系,通常用虚线箭头表示。
  • 流程链接器(Flow Link):表示任务、活动、事件和网关之间的隐式顺序关系,通常用长方形加上向上或向下的箭头表示。
  • 数据关联(Data Association):表示活动和数据对象之间的关联关系,通常用虚线箭头表示。

通过使用这些建模元素,可以清晰地表达业务流程中各个建模元素之间的关系和流程顺序。

2.4 泳道的建模元素

BPMN的泳道是指用来划分业务流程参与者和组织结构的建模元素,主要包括以下几种建模元素:

  • 水平泳道(Horizontal Lane):表示业务流程中的不同参与者或不同组织之间的关系。水平泳道通常沿着流程的水平方向排列,每个泳道包含一个或多个任务、活动、事件和网关等建模元素。
  • 垂直泳道(Vertical Lane):表示业务流程中的不同阶段或不同功能模块之间的关系。垂直泳道通常沿着流程的垂直方向排列,每个泳道包含一个或多个任务、活动、事件和网关等建模元素。
  • 池(Pool):表示业务流程中的不同组织之间的关系。每个池可以包含多个泳道,每个泳道表示一个组织或者参与者。
  • 池与泳道(Pool and Lane):池与泳道的组合建模元素可以更加清晰地表示业务流程中不同组织之间的关系以及每个参与者的任务范围。

通过使用这些建模元素,可以更加清晰地表达业务流程中各个参与者和组织之间的关系。

2.5 人工信息的建模元素

BPMN的人工任务和信息在建模中被认为是重要的元素之一,人工任务旨在表示在业务流程中需要人工干预的任务,而信息则表示在业务流程中传递的信息。以下是BPMN中与人工任务和信息有关的建模元素:

  • 人工任务(Manual Task):表示需要人工干预的任务。这种任务可能需要人工输入、审查、确认或处理数据等等活动。人工任务通常由人员执行,也可以是系统自动执行的,例如通过机器学习和自动化软件完成。
  • 用户任务(User Task):用户任务是人工任务的一种具体形式,它通常涉及到与业务流程相关的人工决策和交互。用户任务需要一个或多个业务用户来手动执行一些操作并完成任务。
  • 业务规则任务(Business Rule Task):表示需要基于一组规则做出决策或采取行动的任务。这些规则可以是人工制定的或是通过系统自动生成的。
  • 脚本任务(Script Task):表示需要执行特定脚本或代码的任务。这种任务可能涉及到数据转换、验证或其他逻辑操作。
  • 发送任务(Send Task):表示需要将信息发送到某个特定的目标,例如电子邮件、文本消息或API调用。
  • 接收任务(Receive Task):表示需要从某个特定的来源接收信息,例如电子邮件、文本消息或API调用。
  • 消息事件(Message Event):表示业务流程中传递的信息。消息事件可以是中间事件或结束事件,用于引发业务流程中的其他任务或决策。

五、绘制BPMN的方式

 借助好的工具,肯定是绘制BPMN的工具。

很多工具都有现成的BPMN模板可供使用,比如常见的金山文档,搜索BPMN模板,还有最近比较火的博思白板,当然,还有他们自己家的工具亿图图示,等等,都可以绘制BPMN图。

这是一个上门送货流程的DEMO。

这个没有使用泳道,但是也清晰的表达了业务建模。

这是招聘的BPMN流程模型。

BPMN的建模元素非常丰富,可以表达较为复杂的业务,但同时,易读性和绘制难度也较大。如果是应用于产品设计,特别是toC的场景,可以灵活借鉴优点。 

谢谢阅读。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Leetcode—1670.设计前中后队列【中等】

2023每日刷题(四十三) Leetcode—1670.设计前中后队列 实现代码 erase(iterator position)在删除vector中的元素后,会将该元素的后面所有元素都往前挪一位。因此,原先的迭代器指向的元素就不是原来那个了,而是它的后…

0 NLP: 数据获取与EDA

0数据准备与分析 二分类任务,正负样本共计6W; 数据集下载 https://github.com/SophonPlus/ChineseNlpCorpus/raw/master/datasets/online_shopping_10_cats/online_shopping_10_cats.zip 样本的分布 正负样本中评论字段的长度 ,超过500的都…

命令模式 rust和java实现

文章目录 命令模式介绍javarustrust仓库 命令模式 命令模式(Command Pattern)是一种数据驱动的设计模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象&…

git打tag和版本控制规范

我们在开发中经常会遇到要打tag的情况,但这个tag应该如何打呢?我不知道大家平时是怎么打的,但我基本就是从1.0.0开始进行往上递增,至于如何递增,基本凭感觉。今天同事新打了一个tag进行发版,然后被架构点名…

【esp32】可变时间的定时器中断的开启和关闭

前言 回忆若能下酒,往事便可作一场宿醉。醒来时,天依旧清亮,风仍然分明,而光阴的两岸,终究无法以一苇杭之。我知你心意。无须更多言语,我必与你相忘于江湖,以沧桑为饮,年华果腹&…

leetCode 216.组合总和 III + 回溯算法 + 剪枝 + 图解 + 笔记

找出所有相加之和为 n 的 k 个数的组合,且满足下列条件: 只使用数字1到9每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次,组合可以以任何顺序返回 示例 1: 输入: k 3, n 7 输出: [[1,2,4]] 解释…

Pytorch:torch.utils.data.DataLoader()

如果读者正在从事深度学习的项目,通常大部分时间都花在了处理数据上,而不是神经网络上。因为数据就像是网络的燃料:它越合适,结果就越快、越准确!神经网络表现不佳的主要原因之一可能是由于数据不佳或理解不足。因此&a…

Egg.js的方法扩展

Extend-application 方法扩展 eggjs的方法的扩展和编写 Egg.js可以对内部的五种对象进行扩展,以下是可扩展的对象、说明、this指向和使用方式。 application对象方法拓展 按照Egg的约定,扩展的文件夹和文件的名字必须是固定的。比如要对application扩…

C++学习之路(十一)C++ 用Qt5实现一个工具箱(增加一个进制转换器功能)- 示例代码拆分讲解

上篇文章,我们用 Qt5 实现了在小工具箱中添加了《时间戳转换功能》功能。为了继续丰富我们的工具箱,今天我们就再增加一个平时经常用到的功能吧,就是「 进制转换 」功能。下面我们就来看看如何来规划开发一个这样的小功能并且添加到我们的工具…

家政预约服务管理系统,轻松搭建专属家政小程序

家政预约服务管理系统,轻松搭建专属家政小程序app; 家政服务app开发架构包括: 1. 后台管理端:全面管理家政服务、门店、员工、阿姨信息、订单及优惠促销等数据,并进行统计分析。 2. 门店端:助力各门店及员工…

选择跨网数据摆渡系统时,你最关注的功能是哪些?

为什么要选择跨网数据摆渡系统呢?因为做了网络隔离后,要有数据交互。那为什么要做网络隔离呢?主要还是安全方面的考虑,一般有以下几个原因: 1、数据安全保护:对于一些重要数据,比如代码数据、隐…

根据端口查找进程

关闭kibana kibana自带命令 kibana没有提供关闭命令,通过命令 ps -ef|grep kibana查找不到kibana相关的信息。 可以通过进程暴露的端口来查找 netstat -anltp|grep 5601获取到进程号,然后kill掉进程 kill -9 进程号Docker管理Kibana 但是如果使用D…