一、前言
- 19世纪70年代,流程管理思想萌芽阶段。怎样提高工作效率?泰勒:标准化个人操作流程亨利·福特:规定标准时间定额标准化、精简化、通用化、专业化。
- 20世纪70年代,工作流技术起源于办公自动化领域的研究。由于当时计算机尚未普及,网络技术水平还很低以及理论基础匮乏,这项新技术并未取得成功,许多公司采用纸张表单,手工传递的方式,一级一级审批签字,工作效率非常低下。
- 20世纪90年代,信息技术驱动流程自动化阶段。信息技术开始引入管理领域,对传统的业务进行自动化改造。产品:Sabre订票系统,MRP(物料需求计划),MIS(管理信息系统),CIMS(计算机集成制造系统)。
- 21世纪初,BPM管理与治理结合。BPR/BPI:以信息技术为核心重新设计业务流程,失败率高达50%-70%;BPM:以业务流程为主导的管理思想;BPM治理思想:对BPM实施的成功率以及ROI的高要求,强调BPM与企业战略相结合。
二、BPMN介绍
BPMN(Business Process Modeling Notation,业务流程建模符号)是一种用于描述业务流程的标准化建模语言。它通过图形符号及规则,帮助企业建模、分析和优化各种业务流程。BPMN有两个主要版本:BPMN 1.0和BPMN 2.0。BPMN 1.0规范由标准组织BPMI(后并入到OMG)于2004年5月发布;BPMN 2.0标准由OMG于2011年推出。
2.0相对于1.0规范了流程引擎的语义和格式,利用标准的图元描述真实的业务发生过程,保证相同的流程在不同的流程引擎中得到一致的执行结果。
BPMN的理论基础
- 流程建模:BPMN使用不同的图形符号来表示业务流程中的各项活动、任务、决策和事件等。这些符号包括任务、网关、事件等,每个符号都有特定的含义和用法。
- 流程分析:通过BPMN模型,企业可以分析业务流程的效率、资源利用率和风险等,以便进行优化和改进。
- 流程执行:BPMN不仅是一种建模语言,还可以将建模的业务流程实际执行起来,并进行监控和控制。
BPMN的优势
图片
传统使用场景
- 采购流程:通过BPMN建模,企业可以规范采购流程,包括需求确认、供应商选择、合同签订、物品收货等环节,提高采购效率。
- 请假审批流程:BPMN模型可以帮助企业规范请假审批流程,包括员工请假申请、直属主管审批、人力资源部门审批等环节,减少误差和纠纷。
- 客户投诉处理流程:利用BPMN,企业可以清晰地展示客户投诉处理流程,包括客户投诉登记、处理人员分配、处理过程跟踪、客户反馈等环节,提高客户满意度。
三、实践举例:XX平台XXX商家合规治理任务优化项目(非真实场景)
背景目标
- 商家合规治理手段的单一性和对线下人工的过度依赖方面需要优化,通过整合商家合规治理策略,并实现这些策略的可在线化配置。这一举措将打破传统的手工操作模式,允许业务方直接在系统中配置和更新治理策略,减少人工干预,提高治理效率。同时,在线化配置也便于策略的快速部署和灵活调整,以应对不同业务场景下的合规要求。
- 各商家的合规治理进度和状态的透明度方面需要优化,为改变这一现状,我们需要搭建一套高效的工作流引擎。该引擎将支持商家合规治理流程的编排和自动化流转,从任务触发到完成审核、记录反馈等各个环节都将实现自动化处理。同时,内置的进度跟踪机制将确保业务团队能够实时查看各商家的治理进度,及时发现问题并采取相应措施。这将大大提高治理的透明度和可控性。
- 评估治理成果和手段的有效性分析方面需要优化,将合规治理成果的数据可视化,通过强大的数据分析与可视化系统,我们将关键指标(如治理效率、违规率、改进情况等)以图表、报告等形式直观展现。同时,通过持续的数据分析与改进循环,我们将逐步优化治理策略和方式,最终形成商家合规治理的闭环机制。
方案
业务流程
治理流程1
治理流程2
系统架构图
流程编排
工作流技术选型
SmartEngine详细介绍
E-R图
CREATE TABLE `se_deployment_instance` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'PK' ,
`gmt_create` datetime(6) NOT NULL COMMENT 'create time' ,
`gmt_modified` datetime(6) NOT NULL COMMENT 'modification time' ,
`process_definition_id` varchar(255) NOT NULL COMMENT 'process definition id' ,
`process_definition_version` varchar(255) DEFAULT NULL COMMENT 'process definition version' ,
`process_definition_type` varchar(255) DEFAULT NULL COMMENT 'process definition type' ,
`process_definition_code` varchar(255) DEFAULT NULL COMMENT 'process definition code' ,
`process_definition_name` varchar(255) DEFAULT NULL COMMENT 'process definition name' ,
`process_definition_desc` varchar(255) DEFAULT NULL COMMENT 'process definition desc' ,
`process_definition_content` mediumtext NOT NULL COMMENT 'process definition content' ,
`deployment_user_id` varchar(128) NOT NULL COMMENT 'deployment user id' ,
`deployment_status` varchar(64) NOT NULL COMMENT 'deployment status' ,
`logic_status` varchar(64) NOT NULL COMMENT 'logic status' ,
PRIMARY KEY (`id`)
) COMMENT='流程定义表' ;
CREATE TABLE `se_process_instance` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'PK' ,
`gmt_create` datetime(6) NOT NULL COMMENT 'create time' ,
`gmt_modified` datetime(6) NOT NULL COMMENT 'modification time' ,
`process_definition_id_and_version` varchar(128) NOT NULL COMMENT 'process definition id and version' ,
`process_definition_type` varchar(255) DEFAULT NULL COMMENT 'process definition type' ,
`status` varchar(64) NOT NULL COMMENT ' 1.running 2.completed 3.aborted',
`parent_process_instance_id` bigint(20) unsigned DEFAULT NULL COMMENT 'parent process instance id' ,
`parent_execution_instance_id` bigint(20) unsigned DEFAULT NULL COMMENT 'parent execution instance id' ,
`start_user_id` varchar(128) DEFAULT NULL COMMENT 'start user id' ,
`biz_unique_id` varchar(255) DEFAULT NULL COMMENT 'biz unique id' ,
`reason` varchar(255) DEFAULT NULL COMMENT 'reason' ,
`comment` varchar(255) DEFAULT NULL COMMENT 'comment' ,
`title` varchar(255) DEFAULT NULL COMMENT 'title' ,
`tag` varchar(255) DEFAULT NULL COMMENT 'tag' ,
PRIMARY KEY (&