vlambda博客
学习文章列表

【毕设作品】asp.net基于工作流引擎的系统框架设计开发(源代码+论文)免费下载



摘要

    工作流就是一系列相互衔接、自动进行的业务活动或任务。工作流引擎是工作流管理系统的核心,它的主要功能是通过计算机技术的支持去定义、执行和管理工作流,协调工作流执行过程中工作之间以及群体成员之间的信息交互。
   论文主要讲述了工作流引擎的基本功能及设计方法,介绍工作流引擎的基本原理,具体分析了工作流引擎所包含的内容,详细介绍了相关的信息模型和控制模型。系统采用关系结构的理念来设计工作流引擎,给出了用Microsoft Visual Studio 2005和Microsoft SQL Server2000实现系统的方法。论文中利用本工作流引擎构建系统能适应大多数业务流程的扭转,大大缩短常见信息系统的项目开发周期,提高效率。

关键词:  
工作流引擎;关键业务;关系

目录:

【毕设作品】asp.net基于工作流引擎的系统框架设计开发(源代码+论文)免费下载



工作流引擎的设计:

4.1 模块的划分

通过对用户需求调研并分析,确定系统应具备的功能,所需模块包括:状态图管理,任务管理,任务指派,任务提交。

4.2 功能描述

这个系统主要涉及到状态图管理、任务管理、任务指派、任务提交。

状态图管理:包括添加、删除、修改流程。对流程进行控制,包括无条件转移、与分支控制、与合并控制、或分支控制、或合并控制、投票合并控制。查看任务的状态,包括了睡眠状态、就绪状态、执行状态、完成通过状态以及完成未通过状态,不同的任务状态显示为不同的颜色。

任务管理:从数据库中读取出任务列表,其中包括未完成任务和已完成任务,任务列表中包括了任务建立的时间,预计完成任务的时间,完成任务人员,任务完成时间。同时可以添加新任务。

任务指派:包括等待指派的任务,任务指派的基准以及任务指派的人群。其中任务指派的基准包括基于部门进行任务指派、基于团队进行任务指派、基于角色进行任务指派、基于自定义的方式进行任务指派。任务指派的人群包括将任务分配指定的所有人员,将任务分配给指定群体中的工作量最少的人员,将任务队列中最早创建的任务分配给相应群体中最先提出执行任务请求的个体,基于优先数分配。

任务提交:任务结束后提交系统。

4.3 工作流引擎的详细设计

根据工作流引擎的工作流程,综合上述的各功能模块,设计出的系统模块图如图5所示:

【毕设作品】asp.net基于工作流引擎的系统框架设计开发(源代码+论文)免费下载 

图5系统模块图

状态图管理如图6:

【毕设作品】asp.net基于工作流引擎的系统框架设计开发(源代码+论文)免费下载

图6状态图管理

用户通过对活动节点进行操作,主要操作动作有以下表1所示:

表1控制节点类型

控制类型名

中文名

说明

DIRECT

无条件转移

不做任何动作,直接激活下一个节点。

AND_BRANCH

与分支控制

流经此处的任务将进行与分支,通过查找TaskStatus表来决定下一动作。

AND_MERGE

与合并控制

流经此处的任务将进行与合并同步,通过查找TaskStatus表来决定下一动作。

OR_BRANCH

或分支控制

流经此处的任务将进行或分支,通过查找TaskStatus表来决定下一动作。

OR_MERGE

或合并控制

流经此处的任务将进行或合并同步,通过查找TaskStatus表来决定下一动作。

VOTE_MERGE

投票合并控制

通过查找TaskStatus表来决定投票结果。

上面所定义的6种控制类型的节点,若不能满足业务要求,可以自定义其他的控制节点类型。

一个流程实例产生之时一并产生所有活动节点的初始状态,生成以后则由控制节点来动态修改其状态。任务状态主要有6种:睡眠状态、就绪状态、执行状态、完成通过状态以及完成未通过状态。睡眠状态:流程实例创建时统一设置所有活动节点为该状态,等待唤醒。就绪状态:前趋控制节点将活动唤醒,等待人工处理。执行状态:表示正在进行人工处理,等待处理结果。完成通过状态:表示人工处理结束,移交给控制节点继续下一步处理。完成未通过状态:表示人工处理结束,处理意见为“否决”,同时移交给控制节点继续下一步处理。

任务列表用于记录那些已经创建但尚未完成的任务以及已完成的任务,它们之间用CompletionFlag标记。

任务指派是指依照某种规则将任务分配给具体人员来执行。只有常规交互活动才涉及到任务指派的问题;其他活动要么在前台不具备实际的应用逻辑,要么由工作流引擎自动调用,因此与任务指派无关。任务指派的基准是:基于部门进行任务指派、基于团队进行任务指派、基于角色进行任务指派、基于自定义的方式进行任务指派。任务指派的基准确定以后,再确定执行任务的群体,具体指派到哪些实际人员还取决于任务指派方法。指派方法有四种:ALL:表示任务将分配给由BasedOn指定的群体中的所有人员。LEAST_WORKING_LIST:表示任务将分配给指定群体中的工作量最少的人员,工作量的多少可以通过ToDoTaskList的统计数据得到。FCFA:表示先来先分配, 即将任务队列中最早创建的任务分配给相应群体中最先提出执行任务请求的个体,任务的创建时间由DateCreated指示。PRIORITY:表示基于优先数分配, 只适合于ROLE_BASED任务指派基准。在表UserInRole中有个字段PriorityNo用于指定相应人员的优先级。用户也可以根据具体需要来添加新的任务指派方法。

4.4 数据库结构的设计

根据前面的模块功能设计,系统所需要的数据库应包括“活动节点表”,“业务过程表”,“控制节点表”,“任务指派规则表”,“任务状态表”,“任务列表”等,各部分各自作为一个表存在。

具体设计如下:

1.活动节点表

用于存放活动节点信息,具体设计如表2所示:

表2 活动节点表

字段名

数据类型

说明

ActID

Int

活动编号

ProcID

Int

业务编号

ActName

Varchar(20)

活动名称

ActType

Varchar(20)

活动类型

TimeAllowed

Datatime

接受时间

PreCtrNodelist

varchar(20)

前面的控制结点表

NextCtrNodelist

varchar(20)

后面的控制结点表

2.业务过程表

用于存放业务过程,具体设计如表3所示:

表3业务过程表

字段名

数据类型

说明

ProcID

Int

业务编号

ProcName

varchar(20)

业务名称

ProcDesc

varchar(20)


3.控制节点表

用于存放控制节点,具体设计如表4所示:

表4 控制节点表

字段名

数据类型

说明

CtrNodeID

Int

控制节点编号

ActID

Int

活动编号

ProcID

Int

项目编号

CtrNodeName

varchar(20)

控制节点名

CtrNodeType

Varchar(20)

控制节点类型

CtrNodeDesc

varchar(20)


PreActNodelist

varchar(20)

前次的活动结点目录

NextActNodelist

varchar(20)

下次的活动结点目录

ExecCtrFunc

varchar(20)

实行的控制关系

PassedPercentage

float

通过的百分率

Parameterlist

varchar(20)

参数目录

4.任务指派规则表

用于存放任务指派规则,具体设计如表5所示:

表5 任务指派规则表

字段名

数据类型

说明

TeamID

Int

团队编号

DeptID

Int

部门编号

ActID

Int

活动编号

BasedON

varchar(20)

任务指派的基准

Method

Varchar(20)

任务指派的群体

ExeFuncID

Int

可执行的关系编号

5.任务状态表

用于存放任务状态,具体设计如表6所示:

表6 任务状态表

字段名

数据类型

说明

SerialNo

Int

流水号

TaskID

Int

任务编号

ActID

Int

活动编号

ProcID

Int

业务编号

TaskStatus

varchar(20)

任务状态

EntityID

Int

实体编号

6. 任务列表

用于存放为完成任务和已完成任务,具体设计如表7所示:

表7 任务列表

字段名

数据类型

说明

SerialNo

Int

流水号

TaskID

Int

任务编号

EntityID

Int

实体编号

UserID

Int

用户号

TaskStatus

varchar(20)

任务状态

DateCreated

Datatime

创建时间

DateAccepted

Datatime

开始执行时间

DateCompleted

Datatime

完成时间

CompletionFlag

Int

任务的状态

数据库关系图如图7所示:

【毕设作品】asp.net基于工作流引擎的系统框架设计开发(源代码+论文)免费下载

图7数据库关系图

总结: 对整个工作六引擎系统的功能模快的详细设计和所运用的Microsoft SQL Server2000数据库表的详细介绍。




系统页面展示:

【毕设作品】asp.net基于工作流引擎的系统框架设计开发(源代码+论文)免费下载

【毕设作品】asp.net基于工作流引擎的系统框架设计开发(源代码+论文)免费下载

【毕设作品】asp.net基于工作流引擎的系统框架设计开发(源代码+论文)免费下载





END

联系我

获取更多资源

学习更上一层楼