工作流引擎功能设计思想
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(三)模仿K2流程引擎
在接触的几类流程引擎中,K2 Blackpearl流程引擎应 当是如今市场上最成熟稳定、功能强大的流程引擎软件。 但由于费用颇高仅限于大型企业才会使用,使得许多中小 型企业在工作流管理上总是散乱无章,无法完全满足自身 使用。
而现今我将基于.Net技术,参照K2核心功能开发出一 套仿K2流程引擎。即引擎部分功能与K2实现一致,架构趋 于轻量且易于使用与设计流程,且保持稳定。
目录
一、实现目标 二、功能结构 三、总结
实现目标
(一)实现工作流程的自动化
我们都知道,办公过程中存在着大量流程化的工作, 例如公文的收发文、各种审批、请示、汇报等,都是一些 流程化的工作,通过实现工作流程的自动化,就可以规范 各项工作,提高单位的协同工作的效率。
(二)实现引擎的多元化
在各不同企业中都存在不同的企业文化与流程逻辑, 大部分流程引擎无法全面满足客户需求。通过以往专注于 各企业BPM系统,得出的归纳理解,开发出一套轻量级,功 能多元化,通用性强的流程引擎。使之可以满足大部分的 企业使用,并确保稳定性。
三、流转管理 对流程实例进行管控与分析。对流程启动后的流程实
例数据、节点实例数据、连线实例数据、流程与节点字段 信息等数据进行管控,确定流程按照设计正常流程。
统计生成数据报表,用以分析流程使用频率已经处理 时间,从而对系统进行更优设计。 四、版本控制
此项功能为K2比较强大功能之一,各启动流程按发起 时间执行此时间区间内的流程版本。目前此流程引擎并未 实现此功能,而是按照CCFlow流程引擎式,修改、保存、 生效方式进行流程流转。此项功能将作为下一阶段最主要 功能进行开发与设计。
流转引擎
引擎核心代码部分均有本人亲自设计,集合K2与 CCFlow两套引擎有点进行开发设计,基本适用于大部分企 业。 一、流程操作
1.发起流程 2.审批流程 3.回退流程 4.指派流程 5.拒绝流程 6.代理流程 7.流程跳转 8.流程冻结
二、流程流转 1.普通流转 2.分合流流转(会签) 3.子流程流转
以下为本人实施的不同工作流引擎项目:
K2实施项目
深圳某大型地产公司BPM系统
CCFlow实施项目
深圳某国企OA系统
Baidu Nhomakorabea
理中和处理后均可调用业务端方法触发事件。此处可以采 用WebService与Dll反射方式进行调用。目前尚未开发,暂 定于目标开发计划中。
总结
由于此套流程引擎为个人开发,技术力量有限,存在 许多不足之处,将在以后的时间里逐步进行完善。功能层 面结合K2与CCFlow流程引擎,取长补短,尽力打造一套轻 量全面,适用性高的流程引擎。
功能结构-整体
工作流引擎
设
计
绘制流程
器
部署流程
设置流程
流
程
流程分类
流程权限
流转管理
版本控制
管
理
流
转
流程
引
操作
擎
流程 流转
流程 寻人
自动 任务 处理
流转
事件 触发
流程设计器
流程设计器采用JS架构,轻量方便,效率高。实现流 程的基本绘制,数据保存,流程部署等功能。 优点:操作简易,简单高效。 缺点:目前功能较为单一,稳定性未测试。 目标:实现设计器功能多元化,功能手动配置化,设计人 员轻易上手。 以下截图为目前系统设计器图示:
设计器主界面
流程属性界面
节点属性界面
连线属性界面
流程管理
流程管理采用通用主数据管理方式,采用轻量级架构 进行数据的管控。 一、流程分类
流程按用户需求进行分类,组成流程树以便于查阅操 作。 二、流程权限
此功能尚在确定中,将权限功能放在引擎中还是业务 系统中。参照K2流程引擎,流程引擎会引入域账户概念, 仅按账户分组分配发起权限,具体权限均在业务系统中完 善。此引擎亦可按照此类操作进行开发设计。
三、流程寻人 流程寻人与K2保持一致,直接调用业务系统组织架构
进行寻人方式,只需提供接口地址返回操作人员即可。 CCFlow方式需要单独维护一套组织架构,成本过高,
容易出错。
四、自动任务处理 该功能为自动作业调度式操作,即在满足某些条件后
自动处理任务。目前尚未开发,暂定于目标开发计划中。
五、流转事件触发 此项功能参考K2流程引擎操作,在流程的处理前、处