工作流技术在企业信息系统开发中的应用
2017-03-22李新建
李新建
摘 要在信息系统建设中工作流技术可以使企業内部业务流程自动化,各类业务信息的流转实现无纸化,可以有效提高办公效率。本文在对工作流技术的相关理论进行研究的基础上,将工作流技术引入到企业信息系统的开发中,满足了企业信息系统中流程自动化的管理需求,大幅提高了企业的办公效率。
【关键词】工作流 工作流管理系统 工作流引擎
1 引言
目前,公司信息化建设不断加快,不但构建了自己的企业内联网和企业门户网站,并且开发了多套信息管理系统,一定程度上实现了管理的自动化。但是这些系统在工作流程建设方面的研究还不是特别深入,将工作流技术引入到企业信息系统的建设中,可以将信息系统中的流程逻辑从业务逻辑中分离出来,由工作流引擎来专门管理。并为以后信息系统的开发提供相应的接口,这样以后的开发中,涉及到业务流程审批时只要通过工作流进行定制即可,无需再次通过程序员编程实现。提高了企业信息系统的通用性,更加有利于信息系统的推广工作。
2 工作流技术概述
2.1 工作流
目前对工作流的定义还没有统一的标准,但是在对工作流的描述中,本质都是围绕业务过程进行描述,描述如何将实际业务过程进行形式化定义,通过建立工作流模型映射实现实际业务流程的信息化。所以在给工作流定义时,基本都达成了这样的共识:工作流就是工作流程计算模型,将工作流程中的工作按照业务逻辑和规则前后组织在一起,在计算机中以恰当的模型进行表示和计算。
2.2 工作流管理系统
工作流管理系统是运行在一个或多个工作流引擎上的用于定义、实现和管理工作流运行的一套软件系统。它主要是协调工作流执行过程之间以及参与成员之间的信息交互,工作流需要依靠工作流管理系统来实现。
2.3 工作流主要功能
工作流至少应能提供流程定义、流程运行控制、工作流与用户交互三个方面的功能支持。以下是各个功能说明:
(1)流程定义功能:用来定义工作流,根据组织或角色数据等信息生成工作流模型。
(2)流程运行控制功能:在业务运行环境中管理工作流的运行过程,对工作流运行过程中的相关活动进行调度。
(3)工作流与用户交互功能:在工作流运行中,提供与业务工作参与者或外部应用程序交互的功能。
3 面向工作流的开发
3.1 案例介绍
企业在日常的管理中产生了非常多的业务审批流程,如行政办公流程、人事作业流程、财务作业流程、项目管理作业流程等。本文将以公司项目管理流程中的投标管理流程为例,论述工作流技术在企业信息系统中的应用。
目前,企业内部的投标申请主要是由公司各部门的投标管理人员填写纸质投标申请表,交部门相关负责人审批、然后提交公司相关主管部门及相关主管领导进行逐级审批。
3.1.1 投标审批流程
投标审批流程如下:
部门投标管理人员填写投标申请表→部门技术负责人审核→部门商务负责人审核→部门经理审核→主管部门商务经理审核→市场部经理审核→公司投标主管领导审批。
3.1.2 投标审批流程特点
(1)投标管理流程审批节点比较多。
(2)由于投标具有时效性的特点,所以各审批节点必须在规定时间内将其审核完成。
(3)各级审批人可以对投标申请进行驳回。
结合投标审批流程的现状和特点,如果采用传统纸质审批的工作方式,往往需要投标管理人员去多个部门找审核人签字,会耗费较大的人力资源和时间资源,还可能由于审核人出差等原因,造成延误审核。所以非常必要将企业已有的投标申请流程实现在线流转和审批,并提供投标信息的管理和查询,提高工作效率。
3.2 设计与实现
3.2.1 业务表单设计
调用工作流管理系统中的工作表单设计工具,根据投标业务的需要,设计具体的业务电子表单。将表单输入项,如文本框、复选框、单选框等控件位置及属性设置好后,保存在一个格式定义文件中,然后将该文件导入业务数据库形成业务表单的定义。
3.2.2 工作流程设计
工作流的基本要素包括参与者、活动节点和数据。流程设计的主要任务是定义流程的业务逻辑,根据投标审批的实际流转规则,定义各个节点的流转顺序和每个节点的参与者,参与者可以在设计流程时进行设置或在任务流转的过程中由上一个参与者进行指定。流程设计完成后将会以固定格式的文件进行保存,供启动流程实例时进行调用。工作流的基本模式有串行,分支/选择等。
3.2.3 数据存储机制
工作流与业务系统的数据是异步存储的。工作流的相关配置信息,如流程节点的定义、节点之间的关系以及工作流等信息存储在工作流的数据库中,这些数据可以被业务系统进行调用,生成具体的业务流程;具体业务相关的数据,如投标审批过程中需要填写的表单数据,存储在投标业务数据库中,这些数据是启动和运转审批工作流的对象。
3.2.4 权限管理
为了流程的定义具有相对的灵活性,在人员基本信息、角色信息设置的基础上,引入了岗位的概念,每个岗位可以设置一个人员,也可以设置多个人员,每个岗位的实际权限为这些岗位权限的并集。通过岗位的设计模式,可以使流程的规范化和灵活性得到完美结合。
3.2.5 工作流与信息系统的整合
工作流只负责处理与业务流程的流转和执行相关的事宜,而信息系统的具体业务则需要单独进行架构,这样可以保持工作流与具体业务的独立性,同时可以增加业务系统的柔性,便于扩展。下面简单描述工作流与投标业务的整合方式:投标管理人员在业务系统上填写投标申请表并提交信息,将投标业务的URL地址和相关参数传递给工作流引擎,由工作流引擎按照工作流的设置规则决定该活动由哪个用户来执行,然后发送到用户的任务列表中,用户通过点击该URL来进行业务处理,处理完成后通知工作流引擎活动执行完毕,由工作流引擎根据流程的过程模型执行后续的相关活动。所以,信息系统主要是通过业务的具体URL和相关参数实现与工作流的整合。
4 结束语
本文结合企业信息系统开发经验,对工作流相关技术进行研究,提出了企业信息系统与工作流技术结合的思路,同时以信息系统开发中的投标业务为案例,给出了业务审批流程的设计和实现方法,对于企业信息系统的建设是一种有意义的探索。
参考文献
[1]Wilvan derAalst,KeesvanHee,王建民,闻立杰.工作流管理:模型方法和系统[M].清华大学出版社,2004.
[2]侯志松,余周,冯启高.工作流管理系统开发实录[M].中国铁道出版社,2010.
[3]杨恩雄.基于Activiti的工作流应用开发[M].电子工业出版社,2014.
作者单位
中海油能源发展股份有限公司工程技术分公司 天津市塘沽区 300452