布式工作流的设计。
图1. 基于分布式工作流的物流信息系统的工作流程3 分布式工作流模型设计 工作流是针对工作中具有固定程序的常规活动而提出的一个概念,在计算机支持下可以实现整个或部分过程的自动化。物流作业也是一个工作流程,因而也可以采用工作流技术驱动物流信息系统的业务流程,实现物流作业的自动化。 3.1分布式工作流系统模型规划与设计 工作流系统模型中包含的三类对象:文档对象,工作流对象,操作员对象。这三种对象相互作用,共同完成工作流的运转。 ⑴ 文档对象(document):文档对象是物流信息系统中订货数据、配送路线等信息流转的载体。主要由三个字段(属性):id号、文档名、文档内容。id号:guid字符串,作为系统中文档的唯一标识符。通过id号就可以存取文档。文档名:文档的中文标识,可以由用户任意来命名,是文档的说明。文档内容:采用xml文档定义文档,包含有具体的物流信息。可对文档进行录入、浏览、打印三种操作。 ⑵ 操作员对象(user):操作员对象是标识登录系统的每个客户端的对象。操作员对象与权限设置密切相关。操作员对象采用多级分组设置,即操作员分为两种类型:个人用户操作员、小组用户操作员;其中分组操作员用户中至少有一个缺省操作员,作为接收文档的个人用户操作员。操作员采用树状结构管理;分组级数没有限制;在工作流中,操作员与部门是平等的关系,通称为操作员对象。⑶ 工作流对象(workflow):所谓工作流对象是指当前正在运转的工作流程。这里的工作流对象是每一个具体的、实际的流程,而不是工作流的定义(模板)。 ⑷ 三种对象之间的交互关系:利用工作流对象将文档对象与用户对象关联起来。工作流定义中,结点就是用户对象;数据载体就是文档对象;整个系统的核心就是文档根据工作流的定义在用户之间不断的流动。 3.2工作流流程设计⑴ 控制模型概念:所谓控制模型是指系统究竟如何控制操纵工作流,如何推动工作流的运行,如何与操作员进行交互。控制模型可以分为“工作流控制中心”、“流向控制中心”、“活动状态控制中心”、“文档派发中心”、“任务处理中心”、“文档提交中心”、“文档检测中心”7部分组成,如图2所示:
图2. 工作流控制中心模型示意图
⑵ 工作流控制中心:工作流控制中心是整个工作流引擎的最外层控制部分,所有的正在运行中的工作流程都将处在该中心的控制之下。控制中心具有管理所有工作流程的权利。主要包括:(1)启动、暂停、取消、终止工作流实例。(2)查看工作流的当前状态、历史运行记录。 ⑶ 工作流向控制中心:从起始点到终点的所有路径的控制都由控制中心解决,包括:(1)判断活动的后续活动。(2)判断活动的返工路线。(3)记录文档的流转路线。 ⑷ 活动状态控制中心:当一个工作流的实例启动之后,最初所有的活动都处于休眠状态。随着工作流的不断进行,活动陆续被激活。活动状态控制中心是该系统的独特之处,它充分的模拟现实中的工作场面,兼顾了智能性与实际工作流的复杂性和灵活性。该控制中心主要用来: (1)自动激活、完成某一活动。(2)手动激活、完成某一活动。(3)查看工作流中所有活动的状态。(4)记录活动状态轨迹。 ⑸ 文档派发中心:文档分发中心是当某一订货活动开启之后,负责管理将文档分配给某个人(组)的功能模块。文档的分发依靠“文档派发规则”。 ⑹ 任务处理中心:该中心并不具体执行业务,它只负责记录在当前活动的运行过程中用户的所有操作,以供查看之用。所谓“任务处理”是指每个活动用户针对文档进行操作。是一种前台操作,主要是录入、修改文档。⑺ 文档检测中心:该中心的功能比较单一,而且比较直观,相当于一个自动审表人。它负责检验文档是否合格。检验方法由文档检验规则确定。 ⑻ 文档提交中心:在某一订货活动中,参与人员完成文档操作之后就进行提交。是否提交完成由提交规则确定。文档提交中心负责暂时保管所有文档中已完成的部分。当根据“提交规则”,所有必须提交的文档全部完成之后,提交中心就将文档全部发送给活动控制中,再发送给流向控制中心,然后再回来由文档派发中心分给其他活动中的人员。4 分布式工作流系统实现 分布式工作流采用三层结构,分别对应客户端和服务器端。 4.1服务器端设计与实现 服务器端包含两部分功能,一部分是各种具体服务;另一部分是工作流引擎。(1)具体服务包含各种服务,包括数据录入,查询检索等各种功能。(2)工作流引擎是服务器端的核心工作组件,也是整个系统的核心运行组件。整个工作引擎的结构可分为功能模块和数据模块两部分,如图3所示。其中,图中左侧为功能模块,右侧为数据模块。图3. 工作流引擎的结构架构
⑴ 功能模块结构划分为三个层次:(1)步骤管理cpu:专门管理和执行不同的步骤(step),负责启动步骤、执行步骤、结束步骤等功能。(2)文档提交代理:在一个步骤处理的内部,根据文档的提交规则,判断什么时候文档提交完成,等全部的文档提交完成以后,该步骤完成,同时通知步骤管理cpu。(3)文档发放代理:在一个步骤内部,根据文档发放规则,将文档分发给指定的客户端。 ⑵ 数据模块结构:保存每个步骤的运行过程中的数据,也对应着数据库中的数据表。可以划分为以下几个层次:(1)工作流(步骤队列):对应着工作流实例数据表中的每个工作流实例。其中保存着该工作流实例中的所有步骤;(2)单个步骤:对应着步骤数据表,该数据表中保存着全部的正在进行的所有步骤。每一条记录对应着一个步骤。其中保存着关键数据:接收任务人员列表、任务中接收的文档列表、任务执行人指定下一步骤的执行人列表、下一步任务需要的文档列表。步骤结束的标志:任务分发给指定的人员,然后任务完成以后,完全全部的提交工作,此时标志着步骤的结束,也标志着下一个步骤的开始。(3)客户端缓存:代表着客户端正在编辑的文档,是一种中间结果,临时保存在服务端的缓冲区。客户端发送提交指令时,文档提交代理才将这些文档检验后提交给步骤管理cpu。 4.2 客户端设计与实现 整个系统分为三个层次,分别为:主窗体、子窗体、孙窗体;调用关系:主窗体调用子窗体,子窗体包含各个孙窗体,同时调用各个孙窗体。(1)主窗体:主窗体主要负责调用和管理各个子窗体,本身并不实现任何业务。同时,它还负责设置各种参数。(2)子窗体(模块):每个子窗体对应一个功能模块,每个功能模块之间都是独立的,彼此间没有任何联系。每个模块的初始参数都是从数据库中提取出来的。每次打开一个窗体,都必须访问数据库,从数据库中读取所有的参数,将内容显示在窗体上。(3)孙窗体(模块内部的功能):孙窗体是每个模块内部的各项功能。 系统功能:(1)任务管理:客户端的主要模块,负责任务的接收、处理和任务相关信息的查询。(2)短消息处理:端消息接收,端消息发送,端消息浏览,管理。(3)用户管理:用户的录入,浏览和删除。(4)文档浏览:文档浏览和查看。(5)工作流浏览:工作流浏览和查看。(6)文档模板管理:文档模板的浏览查看和模板的录入。(7)工作流模板管理:工作流模板的浏览查看和模板的录入。 4.3 工作流平台相对于传统mis的优点 与传统的mis系统相比,采用分布式工作流技术的物流信息系统具有以下特点: (1) 扩展性好。由于采用了工作流技术,如果要增加物流流程的步骤,只需在定制的流程中增加结点,不需要修改或编写程序代码。 (2) 分布式特点。由于基于intranet和internet进行通信,物流平台和仓库配送可以在全球分布,订货可以分散进行,可以减轻物流中心的压力,增长物流流程的速度,提高效率。 (3) 可以应用于多行业物流,尤其是在第三方物流中,实现物流信息交换的统一。5 结论 本文提出的物流信息系统工作流程可以用来进行物流中的订货、配送等业务,其模型以及工作流核心—工作流引擎完全适合物流信息系统的流程化、多业务、分布式的特点。基于上述思想设计的工作流系统核心平台运行情况良好。参考文献:1. zhang jin,yang dongyuan,tong xiaohua. architecture of logistics information proceeding of the china association for science and technology.2004,355-3612. 郑波,高琦,姜兆亮.基于web的计算机协同工作流管理系统.山东大学学报.2004,22-253. 范玉顺.工作流管理技术基础—实现企业经营重组与经营过程自动化的核心技术.清华大学出版社.2001.中国论文网(www.lunwen.net.cn)免费学术期刊论文发表,目录,论文查重入口,本科毕业论文怎么写,职称论文范文,论文摘要,论文文献资料,毕业论文格式,论文检测降重服务。 返回通信学论文列表