当前位置: 首页 > news >正文

工作数字化的中国历程 | 从 OA 到 BPM 到数字流程自动化

业务流程是由“活动”(或称“工作任务”)构成的,在企业里的所有工作是不是都叫流程,或者属于流程的一部分,这个概念很绕,我觉得没有必要去做学究气的辨析。我曾经提出过一个从工作的两个特性(产出确定性和过程结构性)维度,将企业里工作分成四种模式,有些人可能把这四种模式都叫“业务流程”或“流程”,所以我在下文里,并不严格区分“工作”和“流程”的概念区别。

在这里插入图片描述

业务流程设计是工作数字化的起点,通过数字化业务流程设计工具产出的“业务流程模型”,只是对工作的定义,这些工作要运行起来,还需要执行平台,执行平台就叫“工作流(workflow)”。

对工作进行管理、调度的工具叫“工作流引擎”,一个实际运行的工作流可以说是一个流程模型的实例(instance),工作流就是对信息对象在工作空间的处理和流转,这些信息对象可以是一个非结构化信息对象,例如文本,也可以是结构化信息对象,例如表单,还可以是对外部信息系统或者服务的调用和操作。

工作流引擎的原理如下图:
在这里插入图片描述

工作流引擎和业务流程设计是两个不同的信息系统,这两个系统加起来构成了所谓“业务流程管理系统(BPMS)”的主要部分。不过在实际软件产品应用中,工作流引擎也可以不依赖于复杂的流程设计工具而单独存在。此外,我们前文所说的四种的工作模式,一般来说只有“流程”可以用业务流程设计工具来建模,另外三种模式用其他的方式来进行工作建模,或者因为结构化低就没法预先建模,但是这四种工作模式如果要进行工作管理,都需要工作流引擎。所以简单说就是——业务流程要落地运行,一定需要工作流引擎,工作流引擎不一定是支持业务流程的,而是支持一切工作模式。

工作流引擎本身是个“无头”的信息系统,即没有前端界面,它调度并唤起的工作,是交给人去操作,随着技术发展,也包括了用 RPA机器人来代替人。人或者 RPA被工作流通知去操作的界面,既可以是一个工作前台(这就是所谓的 OA),也可以进到任何一个企业系统或者 SaaS 里去。

内容管理是和工作流引擎同步产生的另一个系统,主要是管理工作相关的非结构信息,用于在工作流中流转,例如文档。主流的内容管理厂商(例如 IBM, OpenText)都发展了工作流引擎软件,这也是BPM 软件的一个分支。

最近十来年随着技术进步,跟工作流引擎相关,产生了其他提升数字化工作的编排、规则、决策的效率和智能化的软件工具,包括:

-低代码开发:让用户能快速开发数据模型、表单、工作流以及用户界面

-规则和优化:支持复杂的工作流转规则,利用机器学习和人工智能,优化工作步骤和路径的决策

-流程挖掘:发现流程的实际运行情况,支持优化流程的决策

-商业智能:发现业务的实际运营情况,支持优化业务的决策

工作流引擎唤起的工作最近几年有两个发展趋势,一是 RPA 机器人发展,二是随着企业应用系统(包括邮件、 ERP、CRM 等)云服务化,SaaS云服务之间采用 API 集成成为主流技术。所以现在国外市面上很多新兴的 RPA 厂商、API 集成厂商也纷纷声称自己是 BPM 厂商,或者使用了“数字流程自动化(DPA)”这个更时髦的词。

在中国的数字化生态比国外要落后很多,因为国内企业SaaS 应用不是很普及,很少出现API集成厂商,目前国内还很少炒作自己是 DPA 的。

无论是结构化工作,还是非结构化工作,其数字化工作场景的总体架构是这样的:

在这里插入图片描述

最后我来总结下企业 IT 市场的发展,从 90 年代出现业务流程建模和工作流软件技术,到 2010 年左右 业务流程管理系统这个词开始流行,再到今天厂商们包装炒作数字流程自动化(DPA)以及超自动化(hyper-automation),虽然 buzz word 在不断变化,其技术原理和产品理念是一脉相承的。

国内有一个中国特色、国外没有的 IT 系统名词,即办公自动化(OA)系统。实际上办公自动化系统就是一个以工作流引擎为内核,包括了文档管理、邮件服务和用户操作界面的系统。这个概念是从 2000 年以后开始的,因为中国企业普遍没有使用邮件的习惯,同时对审批有很高需求,需要一个兼具信息沟通和文件审批的操作界面系统,所以就出来了这个有中国特色的系统。早期工作流软件的主流技术是非结构化信息文档工作流,以 IBM Domino 为代表,所以国内第一代 OA 大多是使用文档工作流,直到今天,很多国内大型企业还是在使用这种类OA。

到 2005 年后,处理结构化数据、数据库驱动的表单工作流技术开始流行,用这一代技术做OA的厂商,为了和上一代产品以示区分,就把自己叫 BPM 而不叫 OA,所以国内企业软件圈前些年一直有 “OA 和 BPM 之分”的口水战,延续至今。今天网上常看到一些 OA 和 BPM 比较的文章,如果不了解这背后的技术发展历史,常让人看得云里雾里,其实他们说的OA 和 BPM 之分,也就是饺子和馄饨的区别。在我来看国内 OA厂商给自己贴的BPM 标签,和主流 BPM厂商对 BPM 内涵和外延的定义,还是有较大区别。

另外一个行业 Buzzword 就是低代码以及APaaS,他们和 BPM 也有密切联系,我总结了一下市面上厂商的产品话术所包含的真实含义:

在这里插入图片描述

  • END -

相关文章:

工作数字化的中国历程 | 从 OA 到 BPM 到数字流程自动化

业务流程是由“活动”(或称“工作任务”)构成的,在企业里的所有工作是不是都叫流程,或者属于流程的一部分,这个概念很绕,我觉得没有必要去做学究气的辨析。我曾经提出过一个从工作的两个特性(产…...

6-1 二叉排序树查找操作

description 本题要求实现二叉排序树的查找操作。 函数接口定义: BSTree SearchBST(BSTree T,ElemType e); 其中BSTree结构定义如下: typedef int ElemType; typedef struct BSTNode { ElemType data; struct BSTNode *lchild,*rchild; }BSTNode,*BS…...

服务上千家企业,矩阵通2.0重磅上线,全链路管理新媒体矩阵

自上线以来 矩阵通已服务了上千家企业级客户 覆盖汽车、家居、媒体、金融、教育等多个行业 矩阵通1.0时代 我们以“数据”为基座打造出10功能 帮助企业轻松管理新媒体矩阵 实现账号管理、数据分析、竞对监测、 人员考核、风险监管等需求 而现在 矩阵通2.0重磅上线 新增…...

【代码随想录】算法训练计划11

1、20. 有效的括号 题目: 给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号…...

Jmeter之JSR223

一、JSR223组件 JSR是Java Specification Requests的缩写,意思是Java规范提案。JSR已成为Java界的一个重要标准. JSR223其实包含了有好几种组件,但是其用法都是一致的,并且都是执行一段代码,主要分类如下: JSR223 PreProcessor JSR223 Timer JSR223 S…...

c++23中的新功能之十八新增的属性

一、c23新的属性 在前面的分析中说过,各种语言的发展整体思路是一致的,即朝着更加实用、简单和更接近自然语言的方向在前进。c23中也在不断的完善和增加相关开发的一些属性和预编译处理指令,这样就可以让开发者在开发的过程中对程序进行控制…...

动手学深度学习:1.线性回归从0开始实现

动手学深度学习:1.线性回归从0开始实现 1.手动构造数据集2.小批量读取数据集3.初始化模型参数4.定义模型和损失函数5.小批量随机梯度下降更新6.训练完整代码 1.手动构造数据集 根据带有噪声的线性模型构造一个人造数据集,任务是使用这个有限样本的数据集…...

【计算机网络】应用层

应用层协议原理 客户-服务器体系结构: 特点:客户之间不能直接通信;服务器具有周知的,固定的地址,该地址称为IP地址。 配备大量主机的数据中心常被用于创建强大的虚拟服务器;P2P体系结构: 特点&…...

python 深度学习 解决遇到的报错问题9

本篇继python 深度学习 解决遇到的报错问题8-CSDN博客 目录 一、can only concatenate str (not "int") to str 二、cant convert np.ndarray of type numpy.object_. The only supported types are: float64, float32, float16, complex64, complex128, int64, in…...

能源管理系统为什么选择零代码开发平台?

市面上有很多能源管理系统,但是零代码开发能源管理系统却非常少。那为什么推荐选择零代码开发平台呢?因为很多企业缺少技术人员,但是却仍然需要数字化工具和流程推进业务和项目,解决能源管理技术人员不懂代码的矛盾问题&#xff0…...

【LeetCode】剑指 Offer Ⅱ 第8章:树(12道题) -- Java Version

题库链接:https://leetcode.cn/problem-list/e8X3pBZi/ 类型题目解决方案二叉树的深搜剑指 Offer II 047. 二叉树剪枝递归(深搜):二叉树的后序遍历 (⭐)剑指 Offer II 048. 序列化和反序列化二叉树递归&…...

利用maven的dependency插件将项目依赖从maven仓库中拷贝到一个指定的位置

https://maven.apache.org/plugins/maven-dependency-plugin/copy-dependencies-mojo.html 利用dependency:copy-dependencies可以将项目的依赖从maven仓库中拷贝到一个指定的位置。 使用默认配置拷贝依赖 如果直接执行mvn dependency:copy-dependencies,是将项目…...

在Flask中实现文件上传七牛云中并下载

在Flask中实现文件上传和七牛云集成 文件上传是Web应用中常见的功能之一,而七牛云则提供了强大的云存储服务,使得文件存储和管理变得更加便捷。在本篇博客中,我们将学习如何在Flask应用中实现文件上传,并将上传的文件保存到七牛云…...

【Linux】centOS7安装配置及Linux的常用命令---超详细

一,centOS 1.1 centOS的概念 CentOS(Community Enterprise Operating System)是一个由社区支持的企业级操作系统,它是以Red Hat Enterprise Linux(RHEL)源代码为基础构建的。CentOS提供了一个稳定、可靠且…...

【ES专题】ElasticSearch搜索进阶

目录 前言阅读导航前置知识特别提醒笔记正文一、分词器详解1.1 基本概念1.2 分词发生的时期1.3 分词器的组成1.3.1 切词器&#xff1a;Tokenizer1.3.2 词项过滤器&#xff1a;Token Filter1.3.3 字符过滤器&#xff1a;Character Filter 1.4 倒排索引的数据结构 <font color…...

【iOS免越狱】利用IOS自动化WebDriverAgent实现自动直播间自动输入

1.目标 由于看直播的时候主播叫我发 666&#xff0c;支持他&#xff0c;我肯定支持他呀&#xff0c;就一直发&#xff0c;可是后来发现太浪费时间了&#xff0c;能不能做一个直播间自动发 666 呢&#xff1f;于是就开始下面的操作。 2.操作环境 iPhone一台 WebDriverAgent …...

Python基础入门例程28-NP28 密码游戏(列表)

最近的博文&#xff1a; Python基础入门例程27-NP27 朋友们的喜好&#xff08;列表&#xff09;-CSDN博客 Python基础入门例程26-NP26 牛牛的反转列表&#xff08;列表&#xff09;-CSDN博客 Python基础入门例程25-NP25 有序的列表&#xff08;列表&#xff09;-CSDN博客 目录…...

乌班图 Linux 系统 Ubuntu 23.10.1 发布更新镜像

Ubuntu 团队在其官网上发布了Ubuntu 23.10.1 版本,这是目前较新的 Ubuntu 23.10(Focal Fossa)操作系统系列的第一个发行版,旨在为社区提供最新的安装媒体。Ubuntu 22.04 LTS(Focal Fossa)操作系统系列于 2022 年 4 月 21 日发布。 Ubuntu 23.10 LTS(长期支持版本)可用…...

Java金字塔、空心金字塔、空心菱形

Java金字塔 public class TestDemo01 {public static void main(String[] args){//第一个for用于每行输出 从i1开始到i<5,总共5行for(int i1;i<5;i){//每行前缀空格&#xff0c;这个for用于表示每行输出*前面的空格//从上面规律可得,每行输出的空格数为总层数&#xff0c…...

前端 | (十四)canvas基本用法 | 尚硅谷前端HTML5教程(html5入门经典)

文章目录 &#x1f4da;canvas基本用法&#x1f407;什么是canvas(画布)&#x1f407;替换内容&#x1f407;canvas标签的两个属性&#x1f407;渲染上下文 &#x1f4da;绘制矩形&#x1f407;绘制矩形&#x1f407;strokeRect时&#xff0c;边框像素渲染问题&#x1f407;添加…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...

网络六边形受到攻击

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 抽象 现代智能交通系统 &#xff08;ITS&#xff09; 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 &#xff08;…...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制&#xff0c;因此这个了16进制的数据既可以翻译成为这个机器码&#xff0c;也可以翻译成为这个国标码&#xff0c;所以这个时候很容易会出现这个歧义的情况&#xff1b; 因此&#xff0c;我们的这个国…...

Python爬虫(一):爬虫伪装

一、网站防爬机制概述 在当今互联网环境中&#xff0c;具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类&#xff1a; 身份验证机制&#xff1a;直接将未经授权的爬虫阻挡在外反爬技术体系&#xff1a;通过各种技术手段增加爬虫获取数据的难度…...

12.找到字符串中所有字母异位词

&#x1f9e0; 题目解析 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义&#xff1a; 若两个字符串包含的字符种类和出现次数完全相同&#xff0c;顺序无所谓&#xff0c;则互为…...

MySQL用户和授权

开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务&#xff1a; test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...

Rapidio门铃消息FIFO溢出机制

关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系&#xff0c;以下是深入解析&#xff1a; 门铃FIFO溢出的本质 在RapidIO系统中&#xff0c;门铃消息FIFO是硬件控制器内部的缓冲区&#xff0c;用于临时存储接收到的门铃消息&#xff08;Doorbell Message&#xff09;。…...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码

目录 一、&#x1f468;‍&#x1f393;网站题目 二、✍️网站描述 三、&#x1f4da;网站介绍 四、&#x1f310;网站效果 五、&#x1fa93; 代码实现 &#x1f9f1;HTML 六、&#x1f947; 如何让学习不再盲目 七、&#x1f381;更多干货 一、&#x1f468;‍&#x1f…...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...