web工作流管理系统开发之一 工作流概念
曾经在2001年做CRM产品的时候,因为CRM产品的客户状态升迁,每个具体用户的升迁规则可能会不一样,技术主管说要集成一个工作流软件工具......,那是我第一次听说工作流。当时很不理解,这工作流软件如何能做到将业务流程定义进去呢?当然,那时候工作流软件工具还不成熟和完善,也或者我们也没有达到那个层次,后来终究还是没有用上工作流。
工作流软件,顾名思义,就是业务信息数据在多个环节模块之间的流转。按照工作流管理联盟的定义,工作流指的是“业务过程的部分或全部在计算机应用环境下的自动化”。在实际应用过程中,为了实现对业务过程的工作流管理,需要对业务流程及其各个步骤之间业务规则的抽象,概括,做成一个统一通用的流程管理软件系统,这种软件系统就是工作流管理系统。
工作流管理系统的主要功能是通过计算机技术的支持去定义、执行和管理工作流,协调工作流执行过程工作之间以及群体成员之间的信息交互。工作流管理系统将业务流程中工作如何组织协调在一起的规则抽象出来,从而分离了具体工作的逻辑和流程组织的逻辑。实现对业务过程的抽象建模、业务过程仿真分析、业务过程优化、业务过程管理与集成。从而最终实现业务过程的流程自动化管理。
开发人员或者流程的应用人员遵从工作流管理系统的规则或约定,设计和实现具体的业务流程。
工作流系统结构图:
天蓝色蓝色:软件构件,完成工作流管理系统不同组成部分功能的实现;
黄色:系统控制数据,工作流管理系统中的一个或多个软件构件使用的数据;
棕色:应用与应用数据,对于工作流管理系统来说,它们不是工作流管理系统的组成部分,而是属于外部系统和数据,它们被工作流系统调用来完成整个和部分工作流管理的功能。
web工作流管理系统主要功能:
业务流程建模;
参与的用户,权限,角色设计;
工作流测试运行;
业务表单模块的建立;
流程发布运行;
流程管理和监控;
流程出错后的修复。
通常开发一个工作流管理系统主要包含如下几个部分:
工作流引擎开发
工作流定义工具
自定义表单模块
流程管理和监控
工作流引擎: 主要是实现业务流程的规则抽象,模型的建立,解释,以及为流程实例提供运行环境,并解释执行流程实例。
工作流定义工具:主要是实现工作流的描述文件的定义和建立,通过可视化的方式把复杂的流程定义以图形化的方式显示出来,并加以操作。
自定义模块:主要指自定义表单,实现业务模块的工具。
流程管理和监控:主要指组织机构、角色,流程实例等数据的维护管理和流程执行情况的监控;
(责任编辑:laiquliu)
|