工作流程的定义及工作流系统如何开发

工作流程的定义及工作流系统如何开发
工作流程的定义及工作流系统如何开发

工作流程的定义及工作流系统如何开发

时间:2004-10-10

工作流就是:

“在一个工作群组中,为了达成某一个共同目的而需要多人协力以循序或平行工作的形式来共同完成的任务”

关于工作流的几个名词解释:

工作的流动性是一个人接着一个人执行,或同时由多人分开执行,或是上述两类工作合并之后的混合性工作

任务泛指各种事务上所必需执行的流程性工作

循序或平行工作

多人若是单人就可以完成的工作,则不能归类为流程工作。凡是一件工作必须经由两个或更多人

来协力完成的工作才能称为流程工作

共同目的多人参的流程性工作,必须是以完成共同目的为前提。如果一群人是分别针对不同的专案来执行各别的工作,并不算构成一个工作流程

工作流程的应用范围

在一般的组织活动中,有相当多数量的事务性工作可以被归类到流程性工作的范围里面,举例如下:

工作报表呈报流程

采购单流程

贷款审核流程

员工绩效考核

流程

各类报

表会签

流程

如何架构一个工作流程

首先要定义出在一个群组工作的环境下,所需要执行或控管的事务性工作性质及其内容

根据所定义的工作内容,再将它分成许多子工作,或称为步骤。每个步骤都都包含了在这个阶段所需要完成的项目清单,而且这些步骤内的项目应当是在逻辑上适合在同一步骤内完成的。任何一件流程工作都会有许多不同的方法来分解成许多子工作,而如何切割一个流程工作,则要根据实际的情况来做判断;

决定各个步骤需要那些专业背景的人员来执行;

决定各个步骤在流程执行时的顺序;

在执行的过程中,有些步骤的执行会因为某些条件不同而产生不同的结果,进而影响到下一个步骤的执行。所以我们必须要找出这些特定的步骤,并且将相关的执行状态条件定义清楚;

将工作流程中的所有执行步骤及每个步骤之间的关系图画出来,并且根据这份关系图来验证流程的可行性。

根据各个步骤的不同需求,分别建立各阶段所需要的表单,工作指令,文件……等项目。

工作流系统开发

一般的工作流管理系统由三个部分组成:工作流引擎、流程管理工具、流程定义工具(含图形化的建模工具)和客户端。开发的重点在于流程定义工具,工作流引擎可以考虑使用别人的产品。其各个组成部分又包括自己的数据系统,接口与表现形式。最好都开发成图形的可交互操作界面。整个系统的工作流程如下:

工作流建模工具建立模型->流程定义工具对已建立的模型进行定义->把已建立的模型自动存入数据库或自动生成文件->工作流引擎从数

据库或者文件调用工作流定义->执行工作流程->返回执行后的相关数

据。

基本开发策略:

1、理解工作流的基本概念,工作流技术中所涉及到的概念较多,都不是

很容易理解。

2、把流程的导航问题做为核心。

3、开发过程中遵守一定的标准,例如的接口1

工作流引擎部分

工作流引擎基本功能

1、解释过程定义

2、控制过程实例—创建、激活、挂起、终止等

3

、为过程的活动导航,可能要包含顺序或者平行的操作、最后时间期限、

对工作流相关数据进行解释

4、参与者签名和退出

5、确定任务项目,实现用户意图;提供接口,支持用户交互

6 、维护工作流控制数据和工作流相关数据,在应用程序间或者用户间

传递工作流相关数据

7、提供调用外部程序的接口,连接所有工作流相关数据

8 、提供控制、管理和审查功能

工作流引擎部分,可以自己开发,也可以考虑选用其他公司的产品,但必

须保证以上基本的功能

流程管理器

流程管理器至少应该包含两个部分:管理部分和监控部分

管理部分:提供了完善的用户管理、角色管理、系统设置、系统安全管理、配置文件管理和日志管理,用户的操作权限分布如下:

以部门、用户组、角色分别描述组织结构

分别基于部门、用户组、角色、用户进行授权,达到最大灵活性

监控部分:主要实现对工作流程的监控,让管理者可以追踪和控管角色、

活动、节点、过程实例的状态和过程实例流经的路径;可以以图形的方式

再现已经完成的过程实例的路径、可以显示正在进行中的过程实例,并且

提供管理的机制,让监控者得以在必要时终止或暂停某些过程实例。同

时,系统亦提供有关工作过程的统计数据和报表,动态改变过程的状态,协调各个部分的关系,并进而提升经营管理的效率。负载平衡提高工作流的工作效率。

流程定义工具

这个部分是开发的重点,流程定义工具部分包括:过程建模部分、自动生成部分、界面设计部分、报表设计和自动生成部分和设计模型的仿真部分。

1)过程建模部分(

使用图形化的方法,让开发者用最少的时间设计或修改企业工作流程,建模工具提供相当丰富的流程逻辑表达方式,可以表示非常复杂的流程,和界面设计部分、报表设计部分相结合可以轻易的设定每个流程步骤要执行的功能,和组织机构建模工具相结合,可方便准确地选择每个活动执行的参与者。最大的优点是:让开发人员在设计与仿真流程的过程中,避

免复杂且耗时的流程程序开发过程。

基本功能特点如下:

1 图形化拖拽方式建立工作流模型

2 人性化的各种选项设置

3 多窗口的用户界面

4 丰富的过程图形元素

5 过程元素拷贝、粘贴、删除操作

6 支持同时打开多个模型文件进行编辑

7 快速定位过程元素

8 支持图形的分层显示

9 模型文件统一存放、安全管理

10 丰富多样的活动类型可以适应不同的业务处理需求

11 支持多种流程逻辑关系

12 支持子过程设计

13 支持用户自定义类型数据

14 工作流过程的参与者支持各种表达式

15 支持内置块设计

16 可设定工作流过程时限

17 支持工作流程的权限管理

18 模型的合法性检查

19 模型文件的图形输出

2)自动生成部分

此部分作用是使已经定义完的图形化的流程模型逻辑自动转变为文档或者其他通用的形式

工作流逻辑的物理形式:

1.采用数据库来存放逻辑

2.采用或者的文件格式存放逻辑

我的想法:一般来说用数据库来存放可获得更好的内部操作性,而文件格式更有利于系统的封装与对外接口的统一,实现了数据库逻辑后再做文件格式,先将模型中各个元素的属性存在数据库里,再从数据库生成标准的文件,作为标准的接口用,这样挺方便的(或者直接用语言生成标准的文件)

工作流流程逻辑实现的关键点:

(1)应当具有的接口方法

(2

(3)条件判断的实现

3)界面设计部分(

此部分提供了类似于页面设计的图形化应用开发工具,用户可以使用图形化设计方法,开发出动态页面应用,其结果可保存为或,并具有数据库访问能力。

运行时用户将从浏览器上访问到设计结果。它的最大的优点是:让开发人员避免了活动中应用程序的开发过程

4)报表设计及自动生成部分(

它提供了图形化设计复杂报表页面的能力,可设计非常复杂的报表,并可画出各种统计分析图,能够使用多种形式输出。

5)流程模型仿真部分

对已经定义好的模型进行仿真和测试

客户端

在客户端执行审批等各种操作,实现流程的具体流转

流程流转方式:

审批、建议、知会、决定、执行

审批:通过或者不通过,可以给出建议

建议:给出相关的建议

知会:流程通知事件,不影响流程的流转,可以通过知会的方式通知发文人流程的流转情况

决定:可以使流程继续或者终止至某一步,使流程具有重定向的功能

执行:在一定时间内可以具有审批的权限,超过了指定时间就可以按照已经指定的方式执行流程

最终,形成可由发文人或指定群组的人员可以查看的工作流流程流转报告

相关主题
相关文档
最新文档