美文网首页
流程引擎在企业OA中的应用

流程引擎在企业OA中的应用

作者: Eliza_0512 | 来源:发表于2020-08-13 17:20 被阅读0次

    作者:王永佳 时间:2020-01-05

    题目:针对中小规模的企业,请站在产品经理的角度,分析流程引擎在企业OA中的应用

    一、背景分析

    1.1 什么是流程引擎

    BPM

    流程引擎作为一个底层支撑平台,它是为提供流程处理的开发而设计的。其实就是一个可供用户定义流程并且执行流程的业务框架。

    流程引擎并不是流程管理软件(BPM),作为引擎需要不被上层应用所局限,因此流程引擎需要包含以下核心部件:

    1. 节点定义
    2. 流程定义
    3. 状态存储
    4. 事件处理
    5. 组织适配
    6. 时间调配
    7. 消息通知

    引擎的职责是非常“精简”的:确保流程按照既有的定义,从一个节点运行到另一个节点,并正确执行当前节点。
    总的来说,流程引擎主要解决如下四个问题:

    1. 流程定义问题:不是说如何图形化的定义流程,而是如何用一套定义对象,来诠释所定义的流程。
    2. 流程调度问题:提供什么的机制,可以确保流程能够处理复杂的“流程图结构”,诸如串行、并行、分支、聚合等等,并在这复杂结构中确保流程从一个节点运行到另一个节点。
    3. 流程执行问题:当流程运行到某个节点的时候,需要一套机制来解决:是否执行此节点,并如何执行此节点的问题,并维持节点状态生命周期。
    4. 流程实例对象:需要一整套流程实例对象来描述流程实例运行的状态和结果。

    就应用上说流程引擎的价值在于固化企业业务流程,增强执行力改善工作质量,提高效率,降低企业成本,实现企业业务流程自动化,持续改进和优化企业业务流程,促进向知识型企业转变,实现和强化团队合作。

    这些对于信息化应用多元化的企业而言具有很大的吸引力,特别是在信息化应用孤岛等问题频现的状况下,流程引擎的应用空间不可估量。

    1.2 什么是企业OA

    企业OA示意图

    OA系统就是用网络和OA软件构建的一个单位内部办公平台,用于辅助办公。OA是组织行为管理软件,实现单位内部的协同管理,提升人与人、部门与部门之间的管理和办公效率,涵盖了单位内部的沟通与协作、信息与资料的共享、文档管理、工作流程(各类请示、汇报、审批)等内容。

    OA系统的使用门槛非常低,通过OA办公系统实现多人、多部门、跨地域的协同办公模式,使日常许多通过手工完成的事情,被计算机和网络提供的功能所代替。

    OA主要应用范围包括但不限于:

    1. 建立内部通讯平台如:通知、公告、工作日记、工作计划、即时通讯等。
    2. 实现工作流转和事务处理的自动化, 一般常见的是审批型事物
    3. 建立信息发布平台在单位内部建立一个有效的信息发布和交流的场所
    4. 实现文档管理的自动化

    1.3 流程引擎与企业OA的结合

    一般我们把流程引擎和OA结合都是倾向于用流程引擎完善OA的功能,举个简单的例子,人事考勤与请假制度是大部分OA都有的功能,实际上是利用了流程管理的做法:

    常见的OA请假流程

    传统行业做法实际是利用流程引擎在做OA,而忽略了OA的状态数据对企业业务流程管理的作用,实际上OA的管理系统,尤其是对人和部门等管理的数据,在业务流程中是有很大的帮助的。依旧用上面的人事请假为例:

    传统OA与BPM的关系,如下图所示,员工A的请假在OA登记完成后,还需要手动/系统调动 在BPM系统中对原来涉及A的工作流进行重新安排


    OA与BPM1

    即便这个过程可以由外部的业务层重新封装,OA与BMP用的还是两套状态数据库,并不是真正意义上的同步与统一。

    OA与BPM2

    但是如果我们用BPM作为底层框架,实际上所有的应用都是用的同一套流程引擎,那么就不需要进行系统的二次登记。调整后的系统流程如下图所示:

    新业务流程

    我们要做的不是将流程引擎应用到OA中,而是基于流程引擎将OA纳入BPM管理之中。

    新框架

    二、用户分析

    中小型企业的特点:

    1. 价格接受能力较低
    2. 技术团队配比较少
    3. 各个公司管理制度不一

    这就要求了我们的产品需要有以下几个特点:

    1. 可以针对不同的功能范围制定不同的价格方案,供企业自行选择
    2. 产品易用,交互力求简单直接,不要过于复杂。尽可能减少流程处理中的代码性或者是编程性环节,尽量用基于图形的页面操作和简单的表单配置完成流程定义。
    3. 成熟的运维机制,最好有一个简单的系统管理后台,供运维人员操作
    4. 有一定的灵活性。提供OA管理功能模板,用户可以直接使用已有的OA流程模板,也可以自己编辑自己的企业管理流程
    5. 提供完善的运维支持。例如OA中业务流的监控,流程数据的统计等。

    三、产品需求

    3.1 OA中常见流程

    OA常见业务流

    以上列举流程是一般企业管理会用到的业务流程,针对常见通用流程,我们需要设计流程模板,作为相应业务的默认处理流程。

    3.2 管理后台核心功能分析

    OA后台设计

    主要是对自己企业OA业务流的管理,主要功能如下:

    1. 模板市场
      1)浏览。后台运维人员登录系统后,根据功能分类(人事、后勤、会务等)查看系统内置业务模板/线上模板商城。点击模板可以查看模板具体的业务流程
      2)使用。运维人员查看某项模板详情后点击“购买”按钮,购买模板到自己的模板列表中
    2. 流程模板管理
      1)查看企业模板列表。包括自己创建的模板和从市场选择的模板。
      2)编辑模板。运维人员在管理后台可以编辑自己库中模板的业务流程和节点类型、属性等。
    3. 创建业务流。用户可以通过两种方式创建业务流:
      1)基于流程模板。基于流程模板可以直接使用模板,也可以基于模板进行二次编辑后再使用。
      2)自定义。用户从节点定义到流程处理全过程自定义。
    4. 处理业务流。
      一旦管理后台设置某种模板后,相应用户界面的数据流向/操作流程就会按照流程模板既定的方式进行处理。

    3.3 核心用例

    1. 模板管理
    2. 流程管理:流程列表,流程详情,流程编辑
    3. 流程创建
      a. 定义节点
      b. 定义表单
      c. 设计流向
      d. 设置组件权限
      e. 发布流程:上线配置
    4. 流程监控

    四、产品功能架构

    产品功能架构

    五、产品交互框架

    pageClass.png

    参考资料

    相关文章

      网友评论

          本文标题:流程引擎在企业OA中的应用

          本文链接:https://www.haomeiwen.com/subject/rvvzoctx.html