王云光 张妍 邵泽国 周朋
摘要:通过对公路养护信息系统的业务进行需求分析,发现该系统的流程性非常强,故此系统采用了基于工作流的思想和技术来进行开发。文章介绍了工作流的概念,分析了系统的业务需求和系统框架,介绍了流程属性,提出了流程考核方法,实现了各流程菜单API,譬如流程的发起、待办、在途、退回、移交、挂起等。本系统采用Visual Studio2010+SQL SERVER2008R2+Silverlight工具开发。本文基于某市公路管理署公路养护信息系统的需求,对一般的工作流进行完善和优化,提出了一套完整的工作流解决方案。目前该系统已在上海市某公路署公司试运行,实践表明了该系统的有效性,大大提高了公路养护管理的质量与效率。
关键词:工作流;系统框架;流程考核;流程引擎;流程菜单API;公路养护管理系统
随着计算机技术和网络技术的快速发展,公路养护管理工作朝着无纸化、网络化和规范化的方向发展,因此,很多公路工程建设项目实现了信息化的管理。
但是传统的信息系统把业务过程编码到应用程序中,给后期的维护和升级变更带来难度。而基于工作流的公路养护管理系统则能将过程逻辑和应用逻辑很好的分离开来,这种分离不仅克服了不同系统之间数据不能共享而造成的数据冗余问题,而且创建了易于更改和灵活的系统结构,通过修改过程模型来适应公路署管理过程的需求变化,改进和优化业务流程,实现更好的业务过程控制,提高业务工作效率。针对这些现状,本文以上海市某公路管理署的公路养护信息系统为例,在工作流的设计思想指导下,论述了工作流系统的基本概念,介绍了如何设计与实现公路养护信息系统。
一、工作流概述
工作流管理联盟(WFMC)对工作流的定义是:工作流是一类能够完全或者部分自动执行的经营流程,它根据一系列流程规则、文档信息或任务能够在不同的执行者之间进行传递与执行。从而实现预期的业务目标,或者促使该目标的实现。工作流包含业务处理系统中的控制流和信息流。控制流决定了流程轨迹,即信息在哪些角色之间传递及其传递顺序。信息流就是流转于各部门各角色之间的信息,包括附件、文档、数据、图片等。工作流将业务流程进行分解,得到良好定义的角色、活动以及过程规则,对流程进行分析、管理以及再造。
二、需求分析
三、系统框架
该系统的框架结构如图2所示。
流程引擎是由流程设计器和流程解析执行器组成。流程设计器的功能 设计流程图、流程运转方向、流程运转条件、流程属性、节点属性、表单与节点的关系等。流程解析执行器由菜单、工作处理器和工作查看器组成,其功能是读取流程设计器所定义的流程信息、按照其定义的规则运转流程。菜单由发起、待办、在途、挂起、查询等API组成。工作控制按钮工具栏和表单构成了工作处理器。工作查看器显示所有流程实例的详细信息和运行情况,由流程轨迹图和流程日志两部分组成。
表单引擎是由表单设计器和表单解析执行器组成。表单设计器是用来定义表单的结构,譬如表单的元素以及表单元素之间的业务规则等。表单解析执行器的功能是读取表单设计器所定义的表单信息,展现表单的元素,解释并执行表单的业务逻辑等。其中,流程解析执行器和表单解析执行器构成了工作流的前台,流程设计器和表单设计器构成了工作流的后台。
组织机构是用来控制用户的权限。在该系统中有5张组织机构表:岗位表Port_Station、部门表Port_Dept、人员表Port_Emp、人员岗位表Port_EmpStation、人员部门表Port_EmpDept。每一任务并不直接分配给某一具体员工,而是分配给某一特定角色,再把角色赋予相关岗位人员;赋予相应角色权限的员工,可以对业务过程中相应工作项进行处理、跟踪、监控及催办。
Server文件夹里是该系统的一些公用类和方法,包括与数据库交互的BP框架的底层类库、BP框架的控件类库、流程引擎层类库。
四、系统实现—流程菜单API
流程菜单就是指系统呈现当前用户能对流程实例进行的操作,包括发起、待办、在途、退回、移交、挂起等。本系统采用Visual Studio2010、SQL SERVER2008R2、Silverlight工具来进行开发。
(二)待办
待办是指等待当前登录人员办理的任务,这些任务是系统根据当前登录人员的No.从数据库查询出其待办项集合并将其呈现出来的,按照到达该节点的时间先后顺序排列,单击一个待处理的工作标题,页面就跳转到相应的工作处理器页面。如果施工队的一个员工申请了该任务,但是后来发现自己不能处理,则可以将其从自己的待办事项中移到任务池中,那么施工队的同事便可重新申请该任务。
(三)退回
如果当前节点发现任务出现错误,可以选择退回节点,写出退回原因及更改建议,将其与该任务一起退回到该流程中的任意节点。被退回节点参照退回原因对任务进行重新处理,然后任务按原路返回。
譬如,“开(竣)工报告”流程中,有四个节点,依次是施工监理、施工队、投资监理、建设单位,如果建设单位发现错误并要退回给施工监理,则书写退回原因及更改建议,将其与该任务一起退回给施工监理。退回成功后,该任务从建设单位的待办菜单中转移到施工监理的待办菜单,施工监理根据建设单位的意见重新处理该任务,然后发送,任务会按原路返回,直接发送给建设单位,而不经过施工队和投资监理,建设单位便可对其进行进一步的处理再发送。
(四)移交、挂起
如果当前登录人员无法处理自己待办菜单的某项工作,或者因为公司人员变动需要将该工作移交给其他员工去处理,这个过程就是工作的移交。执行移交后,该任务从当前人员的待办菜单转移到被移交人的待办菜单,被移交人处理好任务后,将其发送给流程的下个节点。
一个任务由于一些情况,需要被搁置一段时间再被处理,这就是挂起操作。挂起之后,该任务就从该员工的待办列表中转移到挂起列表。譬如某个任务A中需要其他任务B的某个数据,但是任务B还没被处理结束,此时就需要将A任务挂起,待任务B被执行结束后,再将任务A取消挂起,重新处理任务A。
五、结语
采用工作流思想,设计与实现了公路养护系统。系统研究的关键点在于系统框架的提出、流程属性、流程考核、各流程菜单API,如发起、待办、在途、退回、移交、挂起的实现。该系统使公路署管理工作朝着无纸化、网络化、和规范化方向发展,使之具有一定的智能型。该系统经过上海市某公路管理署进行试运行,取得了良好的效果,提高了公路养护管理的质量与效率。
参考文献:
[1]蔡孝武,韩永国,蓝科.一种轻量级工作流引擎的研究与设计[J].计算机工程,2010(20).
[2]黄双喜,范玉顺.基于工作流的ERP系统开发与实施[J].计算机集成制造系统,2004(02).
[3]张勇,黄涛.基于工作流的网上协同办公系统的设计与实现[J].计算机应用研究,2004(09).
[4]刘建军,杜荣华,谌海军,等.OA与MIS的结合及其在公路工程项目集成管理系统中的应用[J].中外公路,2005 (01).
[5]丁晶,曹健.基于工作流管理系统的人力资源考核[J].计算机工程,2004(S).
[6]杨扩武,武凤翔.工作流管理技术及其应用研究[J].机械科学与技术,2009(02).
[7]张洪山,殷人昆,张素琴.基于Web的工作流引擎设计[J].计算机工程,2004(04).
[8]溫小勇.基于工作流和角色协同的毕业论文管理系统的设计与实现[J].实验室研究与探索,2012(04).