工作数字化的中国历程 | 从 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 -

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

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

相关文章

接口测试之什么是接口文档?

一、为什么要有接口文档? 没有接口文档的接口测试都是在抓瞎~前面的接口测试重点讲了协议,也讲了fiddler模拟接口请求,估计大部分还是不太懂怎么下手测试。这里小编专门拿出接口文档来做接口测试参考(估计很多测试小伙伴没见过接口…

Azure 机器学习 - 使用无代码 AutoML 训练分类模型

了解如何在 Azure 机器学习工作室中使用 Azure 机器学习自动化 ML,通过无代码 AutoML 来训练分类模型。 此分类模型预测某个金融机构的客户是否会认购定期存款产品。 关注TechLead,分享AI全维度知识。作者拥有10年互联网服务架构、AI产品研发经验、团队管…

java的线程池

线程池 可以做什么怎么创建 先了解下线程的生命周期 解释: 新建:线程创建但未被启动可运行:线程处于可运行的状态,当该线程有cpu的时间片后就可以执行睡眠:线程进入计时等待,等待一段指定的时间,可以通过wait()方法,sleep方法,join()方法等方式等待:线程进入等待模式,直到其…

抖音群控软件的作用是什么?

随着智能手机的普及和社交媒体的兴起,抖音成为了人们日常生活中不可或缺的一部分,许多人都通过抖音平台分享自己的生活、展示才艺、开展商业活动等。 然而,要想在抖音上获得更多的关注和收益,需要投入大量的时间和精力&#xff0…

【软件逆向】如何逆向Unity3D+il2cpp开发的安卓app【IDA Pro+il2CppDumper+DnSpy+AndroidKiller】

教程背景 课程作业要求使用反编译技术,在游戏中实现无碰撞。正常情况下碰撞后角色死亡,修改为直接穿过物体不死亡。 需要准备的软件 il2CppDumper。DnSpy。IDA Pro。AndroidKiller。 一、使用il2CppDumper导出程序集 将{my_game}.apk后缀修改为{my_…

基于jsp的采购管理系统的分析与实现

物资采购管理系统是针对内部而设计的,应用于的局域网,这样可以使得内部管理更有效的联系起来。企业采购管理系统是将IT技术用于企业采购信息的管理, 它能够收集与存储企业采购的档案信息,提供更新与检索企业采购信息档案的接口;提…

OpenGL ES入门教程(二)之绘制一个平面桌子

OpenGL ES入门教程(二)之绘制一个平面桌子 前言0. OpenGL绘制图形的整体框架概述1. 定义顶点2. 定义着色器3. 加载着色器4. 编译着色器5. 将着色器链接为OpenGL程序对象6. 将着色器需要的数据与拷贝到本地的数组相关联7. 在屏幕上绘制图形8. 让桌子有边框…

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

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

latex空心小写字母、数字

公式中可用 R \R R、 E \mathbb{E} E 等空心大写字母表示集合、期望等,latex 用 \mathbb 实现。有时想用空心的小写字母(虚数单位,因 i 已用来表示下标)和数字(指示函数用空心 1),此时 \mathbb…

用于 GaN-HEMT 功率器件仿真的 TCAD 方法论

目录 标题:TCAD Methodology for Simulation of GaN-HEMT Power Devices来源:Proceedings of the 26th International Symposium on Power Semiconductor Devices & ICs(14年 ISPSD)GaN-HEMT仿真面临的挑战文章研究了什么文章的创新点文章的研究方法…

asp.net docker-compose添加volume配置

打开docker-compose.override.yml下面添加 volumes:killsb-one-sqldata:external: false 服务下面添加volume配置 volumes:- "./dapr/config/social-client.json:/app/OidcSettings.json" 添加volume配置成功

【LeetCode刷题-队列与栈】--225.用队列实现栈

225.用队列实现栈 class MyStack {Queue<Integer> queue1;Queue<Integer> queue2;public MyStack() {queue1 new LinkedList<Integer>();queue2 new LinkedList<Integer>();}public void push(int x) {queue2.offer(x);while(!queue1.isEmpty()){que…

Docker学习——②

文章目录 1、Docker是什么1.1 Docker本质1.2 Docker的引擎迭代1.3 Docker和虚拟机的区别1.4 Docker 为什么比虚拟机资源利用率高&#xff0c;启动快&#xff1f;1.5 Docker 和 JVM 虚拟化的区别&#xff1f; 2、Docker架构3、Docker生态3.1 新时代软件诉求3.2 Docker 解决方案 …

C#知识总结 基础篇(下)

目录 5类和继承 5.1类继承 5.2访问继承的成员 5.3屏蔽基类的成员 5.4访问基类的成员 5.5虚方法与覆写方法 5.6构造函数的执行顺序 5.7成员访问修饰符 5.8抽象类 5.9密封类与静态类 6.表达式与运算符 6.1运算符和重载 7.结构 7.1结构体的感念。 7.2结构构造函数与…

C++笔记之动态数组的申请和手动实现一个简单的vector

C笔记之动态数组的申请和手动实现一个简单的vector code review! 文章目录 C笔记之动态数组的申请和手动实现一个简单的vector1.C语言中动态数组的申请与使用1.动态数组的申请使用new和delete使用std::vector 1.std::vector的底层实现2.手动实现一个简单的vector:使用一个指向…

Rocky 安装jdk17

1&#xff09;检测jdk是否安装&#xff1a; #运行 java -version如果提示安装&#xff0c;则输入N&#xff0c;跳过 2&#xff09;检测cpu 类型 若未安装查看linux处理器架构&#xff1a; #运行 hostnamectl #或运行 arch 3&#xff09;去官网下载相应的编译版本的Jdk Or…

CCLINK IEFB总线转ETHERNET/IP网络的协议网关使欧姆龙和三菱的数据互通的简单配置方法

想要实现CCLINK IEFB总线和ETHERNET/IP网络的数据互通。 捷米JM-EIP-CCLKIE是一款ETHERNET/IP从站功能的通讯网关&#xff0c;该产品主要功能是实现CCLINK IEFB总线和ETHERNET/IP网络的数据互通。本网关连接到ETHERNET/IP总线和CCLINK IEFB总线上都可以做为从站使用。网关分别…

C++笔记之lambda捕获列表中的‘this‘指针

C笔记之lambda捕获列表中的’this’指针 code review! 捕获this指针的lambda表达式在C中有多种应用场景。以下是一些示例&#xff1a; 异步编程&#xff1a;当您需要在异步操作中访问类的成员变量或成员函数时&#xff0c;可以使用捕获this指针的lambda表达式。例如&#xf…

STM32H750之FreeRTOS学习--------(四)中断管理

四、FreeRTOS中断管理 中断的概念不再过多叙述&#xff0c;学习过逻辑的都知道 中断的执行过程 中断请求 外设产生中断请求&#xff08;GPIO外部中断、定时器中断等&#xff09;响应中断 CPU停止执行当前程序&#xff0c;转而去执行中断处理程序&#xff08;ISR&#xff09;…

linux centos7安装colmap

centos安装colmap 一、安装依赖 sudo yum install \gflags-devel \glog-devel \glew-devel \atlas \atlas-devel \lapack-devel \blas-devel \flann-devel \lz4-devel \sqlite-devel \metis-devel \qt5-qtbase-devel二、编译安装colmap git clone https://github.com/colmap/…