APP下载

一种基于工作流的跨平台公文系统的设计与实现

2021-04-22袁帅欧阳侃夫

电脑知识与技术 2021年8期
关键词:工作流跨平台协同

袁帅 欧阳侃夫

摘要:公文系统是办公自动化的核心,建立一个稳定高效的公文系统,能进一步促进企业上下办公的协同化,加强办公和审批流程的控制、监督,并提高办公效率。依据公文管理特点,该文提出了一种基于工作流的跨平台公文系统的设计思路与实现方法,论述了如何在工作流模型基础上建立灵活的公文流转机制,实现了跨平台的数字化公文流转解决方案。

关键词:协同;公文;跨平台;工作流;办公效率

中图分类号:TP311      文献标识码:A

文章编号:1009-3044(2021)08-0223-03

1 背景

企业的公文流转原先采用的是线上发文,线下流转,纸质签字的方式,线上内容无人维护升级,线下流转的方式效率很低,且办理人员无法实时追踪公文流转情况。因此,自主研发一套独立的公文管理系统非常必要。作为OA系统关键技术之一的工作流技术可以为提高综合办公能力、层次组织管理及协作的多样性提供先进的手段[1]。因此,系统采用了这种先进和成熟的信息化技术,实现了包含收文、发文、请示报签等功能,同时对外设计了统一的数据接口,使第三方平台可以安全快捷地使用公文系统的数据进行展示和应用,该平台同时集成在移动App上,实现了跨终端的兼容。系统从全局性、整体性的角度对公文管理模式进行构架,实现了一种基于工作流的跨平台公文系统,将公文“从头到尾”的整个流转过程全面而又系统地管理起来,形成了一整套公文生命周期的数字化管理模式。

2 系统设计

2.1 基于工作流

工作流是由计算机自动执行的业务过程的描述,在这种描述过程中,按照给定的业务规则进行流转,用于实现企业业务的整体目标,该种工作模式被认为是高效和准确的。

工作流引擎,既是指工作流作为整个应用系统的一部分,并为其提供对各应用系统的,有决定性作用的,根据角色、分工和条件的不同决定信息传递路由、内容等级等核心的解决方案[2]。本文使用的工作流引擎基于Petri Net(PN)。Petri Net(PN)是对离散并行系统的数学表示,适合于描述异步的、并发的计算机系统模型。现如今,大量的工作流系统都是基于PN进行描述,因此,本文使用的工作流过引擎也是基于相关模型。该工作流引擎使用了PN中托肯(Token)、位子(Place)和转移 (Transition) 等术语来进行描述,同时引入全局变量、值域、功能函数等关键描述。另外,工作流过程定义包含以下活动元素:

1)手工活动:由参与人执行的活动,在活动完成后根据条件自动执行,例如收文管理中的领导秘书签收。

2)开始活动:表示一个活动的正式开始,例如收文管理中的收文登记。

3)结束活动:表示一个过程已经结束,例如收文管理中办结后所到达的节点。

4)同步活动组:完成同一个任务的活动集合称为活动组。存在以下情况,在同一个任务需要多个参与人同时执行才可以完成时,被称为同步活動组,例如收文管理中的公文领导传阅。

5)子过程活动:某一个流程模型中,一个复杂的过程,可以拆分成多个子过程,子过程和主过程并不在同一个维度可以描述,通常采用子过程活动进行描述。例如请示报签中的会签流程,会签流程即作为请示报签的子过程活动。

公文管理系统正是基于以上的工作流模型所设计的。

2.2 跨终端应用

企业员工对任意时间、地点都可处理工作的移动办公解决方案提出需求,系统在解决了公文处理流程从线下到线上的问题后,也不再仅仅局限于PC终端的处理方式,开发了可运行在移动终端的跨终端数字化流程,突破了公文处理的地域限制。

由于PC端和移动端的开发体系不同,移动端是基于企业移动云平台的流程办理平台,无法修改和变更,这直接导致需要维护两套不同系统。业务逻辑开发过程中,如有相关变化,两套系统的代码都将进行变更,这会造成后期维护的困难。

公文的跨终端流转为解决安全性问题、网络状态不佳、多平台协同和信息流整合这些移动电子政务建设面临的通用问题[3],有必要构建一个适用于企业的公文管理跨终端的应用架构。由于企业的移动端进展落后于PC端开发的进展,大量的PC端公文流转服务已经上线使用,本次的设计思路将不同于主流的以移动端为主的开发模式,改为以PC端为主的开发模式。提供一套中间件服务,模拟PC端浏览器进行访问,移动端将所需读取和写入的数据提交给中间件,再由中间件进行转发和提交[4],中间件封装的服务包括以下几项。

1)转发数据服务:中间件的核心服务,将移动端产生的数据请求进行包装,使其符合PC端的提交需求,模拟浏览器进行转发。

2)电子公文生成服务:PC端的电子公文可以在线预览,移动端的公文则采用实时生成的方式。中间件提供了电子公文的实时生成服务,中间件获取相关的流转数据和公文模板,组装完成后返回给移动端进行查看。

3)业务工作流数据服务:中间件包装了所有的业务工作流信息的读取方式,可以被移动端调用查看,统一为标准的JSON数据格式。

4)认证服务:由于电子公文的保密性,在转发相关数据的过程中,需要对访问来源进行合法化验证,来确保业务功能访问的安全性,需要对接口调用凭据进行验证,验证通过后方可正常调用,否则认为是非法调用。

2.3 公文全生命周期管理模式

系统提供了完整的公文管理模式。为了使公文系统的审批流程服务可以按照每个业务单位的需求进行扩展,系统提供了非常灵活的审批流程服务。第一,根据审批的业务需求,系统可以灵活配置审批节点的审批单位、人员甚至是并行或者是串行的审批方式;第二,系统利用审批流程的一致性,提炼出一些通用的审批流程模型,比如部门传阅和会签等流程,使流程关联松耦合;第三,由于每个单位的公文流转方式不尽相同,系统提供了弹性伸缩的审批流程模型,在一次审批过程中,提供无限次复用同一个审批流程模型的服务,达到了公文转发和传阅不受限制的目的。

另外,公文全生命周期管理模式拥有以下特点。

1)所有的公文痕迹都可追踪,原先的线下处理模式中,除了线下办理人员,审批流程的人员无法追寻该流程的去向,造成了管理方式的混乱,而现在的数字化公文管理模式可以有效解决这一问题,所有公文处理痕迹都进行了保留。

2)公文管理中心存储公文元数据,可以灵活展现为各种样式,满足各样的展示需求,如发文稿纸样式,请示报签的各种签字样式,发文的清样样式都可以进行展现,而所依赖的元数据正是公文数字化管理过程中进行处理和保留的。

3 系统架构

系统功能划分为收文模块、发文模块、系统管理、请示报签模块、查询模块,底层用工作流引擎、文档在线编辑器、润乾报表组件进行功能支撑。最后实现跨终端使用,系统架构如图1所示。

4 系统实现

4.1 功能设计

公文流转系统的主要功能是为企业行政人员的公文流转提供一个非常方便、快捷的操作方式和储存的管理流程的网络化信息交互平台[5]。其详细的功能结构如图2所示。

公文管理系统是对实现公文在机关内部流转过程中所有环节进行电子化处理的系统。包括机关内部上行文的请示报签和发文管理和下行文的收文管理内容,另外包含了查询模块和系统管理功能用于支撑系统的使用。

4.2 核心业务

1)收文管理

收文流程指的是接收其他单位文件所启动的流程,其中包括来文登记、办公室拟办、秘书提交、公文处理、领导秘书处理、公文传阅、汇总领导意见、办结。

2)请示报签

请示报签流程通过部门审核、组织部门初审、呈送前查看、领导审批、领导审核、总院领导秘书处理、办公室生成正式报签多个节点。

3)发文管理

发文流程通过部门审核、文档检查、领导会签、办公室核稿、领导签发、文档编号、清样、拟稿人校对、文档终校、文档秘书处理多个节点。

4)工作流调度算法

由于下行文需要转发或传阅给所有人,这种需求势必造成大量流程同时启动和处理,经过统计,启动1个流程平均需要0.45秒的时间,这包括了写入流程引擎创建实例、工作项、转移项、Token等内容,如果同时转发200人以上则需要几十秒的时间。另外,由于本系统的工作流引擎和业务系统是分离的,所以存在业务和工作流数据库事务顺序需要协调的问题。为了解决这些问题,本系统提出了一种工作流调度算法。

该算法采用类似消息队列的方式进行工作流的调度,调度算法分为加入流程队列和启动流程两个部分,两个部分算法分别如下:

加入流程队列

if(business.isFinished()) //判断业务处理是否完成

queue.enqueue(businessId) //将业务ID存入队列

end

队列启动流程

count = 0;

while(1)

if(!queue.isEmpty()) //判断队列是否为空

businessId = queue.deque();   //将队列的首个业务ID取出

processInsId = createProcess(); //创建流程并获取流程实例ID

correlate(businessId,processInsId); //关联业务主键ID和流程实例ID

startProcess(processInsId); //启动流程实例

count = count + 1; //线程已经启动的流程实例数+1

end

if(count > max) break;  //如果流程启动数达到上限,则等待下次线程启动

end

算法将启动一个单独的线程用于随时监听工作流的实时调度情况,并保证启动流程不会达到堵塞状态,该算法成功在公文系统中使用并保证了工作流的启动的正确和高效。

5 结束语

公文管理平台由于平台设计扩展性好,流程处理具备并行操作能力,且兼容移动平台,在应用到办公环境后,公文流转速度提高了3~4倍。平台的使用提高了各级办公人员的工作效率,节约了纸张,提升了公文归档的能力,节省了大量的人力和物力。同时,平台可维护能力的提高为办职人员的工作带来了便利。

参考文献:

[1] 邵雷,李毓偉.基于工作流技术和B/S结构的办公自动化系统研究[J].浙江科技学院学报,2003,15(2):85-90.

[2] 张凝.基于工作流引擎的电子政务系统的设计与实现[D].上海:上海交通大学,2013.

[3] 隋暖.基于数字签名技术的移动公文流转系统的研究与实现[D].青岛:中国海洋大学,2014.

[4] 张垚,张天一,袁帅.跨终端、多专业数字化流程解决方案的设计与应用[J].电脑知识与技术,2019,15(14):271-272.

[5] 单长波.基于J2EE的政府公文流转系统的设计与实现[D].长春:吉林大学,2015.

【通联编辑:谢媛媛】

猜你喜欢

工作流跨平台协同
蜀道难:车与路的协同进化
“四化”协同才有出路
跨平台APEX接口组件的设计与实现
工作流在电力生产管理信息系统中的设计和应用
三医联动 协同创新
基于QT的跨平台输电铁塔监控终端软件设计与实现
基于OPC跨平台通信的电机监测与诊断系统
基于B/S的跨平台用户界面可配置算法研究
协同进化