基于流程剖面的弹性工作流系统设计与实现

2017-12-20 11:49
长江科学院院报 2017年12期
关键词:业务流程剖面职能

, ,

(长江科学院 信息中心,武汉 430010)

基于流程剖面的弹性工作流系统设计与实现

刘佩,杨君,宋蒲斌

(长江科学院 信息中心,武汉 430010)

2017,34(12):126-129

工作流技术在办公自动化系统内得到了广泛的应用,却面临业务流程的多样性和易变性等应用难点。针对这一问题,发现办公自动化系统中的流程多样性和易变性的主要原因在于不同人员、不同部门之间的协作,而不是单个流程环节的变化。基于此,所研发的弹性工作流系统首先依据部门职能细粒度的区分与定义部门的原子职能、定义并实现与原子职能匹配的、不可再分的原子业务,形成流程剖面。业务流程的新建和更改等则依据流程剖面,将业务流程实现为原子业务的组合与拼接,支持原子业务之间的任意组合,并以此来满足部门间协作等带来的业务流程易变性等需求。该系统既保留了柔性工作流引擎的多变性,同时也具有传统刚性工作流引擎易用性的特点。

办公自动化系统;工作流;流程剖面;弹性工作流引擎;原子业务

1 研究背景

工作流起源于20世纪70年代,它的主要特点是使处理过程自动化,通过将工作分解成定义良好的作业、角色等,按照一定的规则和过程来执行这些任务并对他们进行监控,使各类人员、各类部门能够协调工作,提高办公效率、降低生产成本、提高企业生产经营管理水平[1]。工作流技术现已普遍应用于企事业单位的办公自动化系统以协助生产与管理[2-3],提升了工作效率,并提高了工作规范性。

在全球范围内,针对工作流的技术研究以及相关产品的开发已经进入了更为繁荣的阶段,如金蝶、用友等著名软件商都推出了相关产品,并且己经成功运用到政府及企事业单位、医院、保险公司、银行等行业。然而,当前工作流管理技术的研究和应用中有许多热点和难点问题,其中关键难点是业务流程的多样性和易变性。以IBM公司的商业化产品Lotus Notes为代表的传统刚性工作流技术能够实现系统的集成化和固定化,无法满足业务流程的多样化需求。

柔性工作流技术主要研究如何使工作流在任务建模和执行的各个方面具有灵活性和自适应性[1,4-5]。然而,柔性工作流技术的灵活性和自适应性实现依赖于过程定义及工作流引擎中的多样化参数配置,尤其是工作流新建或变更时需要进行更多的参数设置和复杂的系统配置等[6-7]。可以说,柔性工作流技术在提高灵活性和扩展性的同时,也损失了部分易用性,对系统的操作人员,尤其是系统管理人员提出了更高的技术要求。

笔者发现,在办公自动化的应用推广中,业务流程的多样性和易变性主要源于不同人员、不同部门之间的协作;同时,就单个部门来说,其负责的职能和任务则是相对固定的。换言之,导致工作流系统内业务流程多样性的主要原因在于业务流程在不同部门业务之间的衔接,而不是单个业务的变化。

基于上述发现,本文提出基于流程剖面的工作流技术。剖面的概念源于建筑学,剖面图的主要作用是了解系统内部的结构。本文中的流程剖面旨在刻画各个部门的细粒度业务划分、以及在多样化的业务流程内的协作关系,通过协作关系的变化来表示业务流程的多样化,从而降低工作流系统应用的复杂性。为达到此目的,首先,依据部门职能,细粒度的区分与定义部门的原子职能,相应的在系统内定义并实现与原子职能匹配的、不可再分的原子业务,基于此实现部门职能与原子业务的关联,形成流程剖面。对于业务流程的新建和更改等,则依据流程剖面,将业务流程依据其涵盖的功能映射到不同的部门职能上去。相应的,在工作流系统内则将业务流程实现为原子业务的组合与拼接,支持各部门所辖的原子业务之间的任意组合,并以此来满足部门间协作等带来的业务流程易变性等需求。

该系统具有柔性工作流引擎的多变性,在部门职能不发生变化时,任务计划的构建及业务流程的编排可由系统管理者直接完成,并不需要开发人员的支持。

2 相关研究工作

2.1 研究现状分析

按照工作流管理联盟(Workflow Management Coalition,WFMC)的定义,工作流是一种自动执行的过程,过程规则、文档、信息或任务能够在不同的执行者之间进行传递与执行。借助于计算机和互联网,基于工作流技术的办公自动化、电子政务等系统可以将业务执行的结果进行传递或分发,大大降低了企事业单位的办公成本,近些年来得到长足发展。

当前工作流技术主要分为传统的刚性工作流技术和柔性工作流技术[4]。刚性工作流大多只支持固定的、已知的业务模型,因此无法满足当前更复杂和更多样的业务应用需求。相比刚性工作流技术,柔性工作流主要解决工作流在定义和流转过程中的灵活性,支持依据业务需求的动态调整,提高灵活性和扩展性。

然而,由于不同政务、企业等的业务区别非常大,为了满足灵活性和扩展性,柔性工作流技术往往采用过程定义及工作流引擎中的多样化参数配置来实现,这就给系统的用户提出了更高的要求,尤其是工作流新建或变更时需要进行更多的参数设置和复杂的系统配置等。因此,柔性工作流技术在提高了灵活性和扩展性的同时,也损失了部分易用性,操作人员和管理人员往往需要接受详细培训后才能够熟练使用系统。

2.2 研究目的

不管是传统的刚性工作流引擎还是柔性工作流引擎,业务流程的编排都是其核心模块。同时,工作流应用过程中多样化和易变性等带来的难点,也主要体现在业务流程编排的反复和重复,具体体现在以下2个方面:

(1) 业务流程中不同环节的复用现象明显,单个环节的更改会影响全部的相关业务流程。

从应用场景上来看,由于各单位的不同部门相互协作频繁,导致工作流系统中不同环节的复用现象较为明显。以人事管理中的人事审批为例,人事审批的主要作用是核查申请人的身份、职称、行政级别等人事信息,其牵扯的业务较多,因此人事审批这一环节通常会在项目管理及申报、财务及薪资管理、行政事务管理等各项业务流程中。

环节复用带来的最直接的问题就是业务流程更改复杂。同样以人事审批为例,一旦人事审批环节发生更改,则会影响其关联的全部业务流程,使得业务流程的升级变得非常复杂且易错。

(2) 业务流程的变化不仅表现在单个环节的变化,还表现在多个环节的协作关系变化。

通过分析应用场景发现,业务流程的多样性主要起源于不同人员、不同部门之间的协作。尽管单个部门所负责的职能和任务是相对固定的,但受业务优化升级、管理办法修订等多方面的影响,业务流程总是在发生变化,这就涉及到工作流系统内的环节增删及修改。

综上可以得出,工作流系统应用复杂的原因主要表现在业务流程的多样性和易变性。为了解决这一问题,提出基于流程剖面的弹性工作流系统设计与实现方法。其出发点在于,业务流程的多样性主要源于不同部门职能的协作,而单个部门的职能则是相对固定和独立的。如果将工作流系统按照部门职能进行细粒度的划分,实现环节的模块化,则可将业务流程转变为环节的拼接与组合。单个环节的更改与升级无关流程自身,而业务流程关系的变化则体现为环节的重新组合。依然以前文所述的人事审批环节为例,尽管该环节应用在多个业务流程内,但就其功能来说,这一环节与具体业务流程相对独立。倘若可以将人事审批的业务作为独立客体,其他业务流程的对人事审批环节的使用是一种引用而非复用的关系,则人事审批环节的升级只需要更改该独立客体。

3 系统设计

为了描述弹性工作流系统的设计,首先引入相关概念的定义:①原子业务环节是指各部门所辖职责内不可再分的任务客体;②流程剖面是指系统中的原子业务集合,系统管理员或其他系统使用人员通过流程剖面提交具体任务给操作人员实施执行。

以常规办公自动化系统为例[8],流程剖面依据系统使用单位的部门职能,通常包含以下几类具体的流程剖面和原子业务。

(1) 行政管理类:出差、加班、请假等日常管理,办公用品的申请、购买等,工作日报周报等各种行政表单。

(2) 人事管理类:人事审批、员工组织、绩效考评、职称管理、职位变动、档案信息管理等。

(3) 财务管理类:员工薪资、付款请求、应收款处理、日常报销、预算和计划申请等。

(4) 生产管理类:订单、报价处理、采购处理、合同审核、客户电话处理、供应链管理等。

3.1 总体设计

依据原子业务环节和流程剖面的定义,通过系统内细粒度来区分部门职能,实现部门职能的原子化,将业务流程转化为原子业务的组合与逻辑,以此来实现多个部门协作的易变性特性,降低系统维护成本和系统使用人员的复杂度。

流程剖面建立完成之后,对于业务流程的新建和更改等,则依据流程剖面,将业务流程依据其涵盖的功能映射到不同的部门职能上去。相应的,在工作流系统内则将业务流程实现为原子业务的组合与拼接,支持各部门所辖的原子业务之间的任意组合,并以此来满足部门间协作等带来的业务流程易变性等需求。

3.2 系统框架及功能设计

按照第3.1节的总体设计,本系统的构建依赖于对部分职能的细粒度划分和原子业务库的构建,系统总体框架如图1所示。

图1 系统框架

在本系统框架内,流程剖面的初始化是在系统需求分析和总体设计阶段完成,流程剖面的设计若不完善,则无法完整地实现业务流程的原子化切割,也就无法很好地解决业务流程的复杂组合问题。因此,流程剖面的初始化不仅要充分理解单个部门的职能,还要考虑多个部门的协同性,尤其是交互性较强的部门之间要仔细核查流程剖面。

对于业务流程的创建,流程分解器首先依据流程剖面将业务流程映射为各个原子业务环节的组合。随后,操作人员再利用工作流引擎完成流程的编排,完成原子业务环节的拼接与组合,并创建生成实例。

除了图1所示的模块之外,本系统内还设计有平台监控模块,主要监控和管理系统使用的异常和日志。各功能单元名称、与其他单元的输入输出接口及功能描述如表1所示。

4 原型系统实现及应用

4.1 原型系统实现

系统设计采用MVC模式,即视图—控制—模型模式,将各个层分别封装成动态链接库。这样既保证了系统结构的清晰,又使得系统易于重构和扩展。实现框架如图2所示。

图2 系统实现框架

采用B/S架构设计,在这种结构下,将主要事务在服务器中处理保证了系统具有较高的安全性和并发性能。在本系统中,服务器端采用ASP.NET开发,数据库为MS SQL SERVER。

4.2 应用分析

为了验证提出的基于流程剖面的工作流技术的有效性和实用性,笔者将此模型应用在长江科学院综合管理信息系统中。该系统包括人力资源、科研管理、院务管理、财务管理、资产管理、党群监审、科技信息和后勤保障8个子模块[9]。各子模块之间的流程交互非常频繁,同时,各业务流程之间的变动也非常复杂。截至2016年12月底,系统内包含的原子业务和业务流程如表2所示。

表2中的原子业务数目指的是各个子模块下设的原子业务数,共计68个。第3列为包含有该模块内原子业务的工作流数目,由于一个业务流程通常包含有多个原子业务,该业务流程会被多个子模块统计,因此表2中存在重复的情况。合计来看,系统内共包含131个独立的不重复业务流程。

表2 系统工作流统计

为了验证和说明本文系统的易用性和可扩展性,笔者统计了2016年度流程的增加情况,如表3。需要说明的是,这些流程的构建都是在不额外增加程序代码、不需要开发人员配置参数等前提下,由系统管理员统一完成的,说明本文设计的工作流系统具有很好的扩展性和易用性。

表3 新增流程统计

5 结 语

针对工作流技术在办公自动化系统的易用性和扩展性的权衡性问题,提出基于流程剖面的工作流技术。依据流程剖面,将业务流程依据其涵盖的功能映射到不同的部门职能上去,在工作流系统内将业务流程实现为原子业务的组合与拼接,既保留了柔性工作流引擎的多变性,同时也具有传统刚性工作流引擎易用性的特点。

[1] 黄 辉.基于工作流的企业办公自动化系统开发[D]. 武汉:华中科技大学,2006.

[2] 陈传波, 刘黎志.一个基于 Web 的工作流引擎及其实现[J].计算机工程与科学, 2010, 26(11):8-11.

[3] 张洪山, 殷人昆, 张素琴. 基于 Web 的工作流引擎设计[J].计算机工程, 2004, 30(4): 83-85.

[4] 蔡丽丽. 一种跨组织柔性工作流引擎的设计与实现[J].计算机工程与应用, 2014,50 (3): 30-35.

[5] 李竞杰, 王维平, 杨 峰. 柔性工作流理论方法综述[J]. 计算机集成制造系统, 2010, 16(8):1569-1577.

[6] 杨明顺, 韩周鹏, 余 婷, 等.一种轻型工作流引擎的设计与实现[J]. 西安理工大学学报, 2013, 29(1): 20-26.

[7] 何清法, 李国杰, 焦丽梅, 等. 基于关系结构的轻量级工作流引擎[J]. 计算机研究与发展, 2001, 38(2): 129-137.

[8] 幸 宽. 基于Web的县级电子政务系统设计与实现[D]. 福建:厦门大学,2011.

[9] 刘 佩, 周力峰. MSF过程模型在综合管理信息系统建设中的应用研究[J]. 长江科学院院报, 2011, 28(10): 217-220.

Design and Implementation of a Scalable Workflow SystemBased on Procedure Profiling

LIU Pei, YANG Jun, SONG Pu-bin

(Information Center, Yangtze River Scientific Research Institute, Wuhan 430010, China)

Widely applied in OA (Office Automation) systems, workflow technology is faced with challenges of diversity and volatility. In view of this, we found that the diverse and volatile work flows are mainly caused by the coordination among departments and individuals instead of single procedure change. On this basis, we present a scalable workflow system based on procedure profiling. First, the functionalities of OA system are split and mapped to different atomic units according to the functions of different departments. Second, to satisfy the requirements of inter-departmental collaboration and continuous updates for workflows, a workflow is combined with atomic steps within the jurisdiction of each department. The system retains usability and scalability characteristics.

OA systems; workflow; workflow profiling; scalable workflow engine; atomic unit

2017-07-06;

2017-07-21

刘 佩(1987-),女,湖北监利人,工程师,硕士,主要从事水利信息化应用技术研究,(电话)027-82820840(电子信箱)liupei@mail.crsri.cn。

10.11988/ckyyb.20170773

TP317

A

1001-5485(2017)12-0126-04

(编辑:黄 玲)

猜你喜欢
业务流程剖面职能
ATC系统处理FF-ICE四维剖面的分析
职能与功能
企业财务管理、业务流程管理中整合ERP之探索
互联网+背景下物流公司的业务流程再造
价格认定:职能转变在路上
建设项目全过程造价管理咨询服务的业务流程分析
基于财务业务流程再造的ERP信息系统构建探析
复杂多约束条件通航飞行垂直剖面规划方法
船体剖面剪流计算中闭室搜索算法
浅谈会计职能是否应该进行拓展