工作流业务生成系统的设计与实现
2016-12-17陈保华詹舒波
陈保华,詹舒波
(北京邮电大学网络技术研究院,北京 100876)
工作流业务生成系统的设计与实现
陈保华,詹舒波
(北京邮电大学网络技术研究院,北京 100876)
近年来,国内客户关系管理业务发展迅速,为了提供更好的客户服务质量,业务员迫切需要一套使用方便、功能齐全的工作流业务生成系统。本课题将结合数据流以及工作流管理等功能,探索提供方便有效的工作流业务生成方式,为数万业务人员提供直观、灵活、可扩展的业务生成功能,快速高效地生成业务文件。本系统目前已经实际运行在CCWF工作流引擎上,实践表明,本系统提高了业务人员的工作效率,促进了CRM系统的发展,促进呼叫中心和工作流融合的使用和发展
计算机应用;工作流;CRM
本文著录格式:陈保华,詹舒波. 工作流业务生成系统的设计与实现[J]. 软件,2016,37(11):105-109
0 引言
工作流是工作流程的计算模型[1],也就是把工作流程中的任务前后组织在一起的逻辑和规则以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间,按某种预定规则自动传递文档、信息或者任务[2]。本文主要针对工作流业务开发过程中遇到的工作流业务生成复杂、属性混乱、控件与任务不匹配以及数据流传输不畅等问题进行了探讨和研究,对工作流业务生成系统进行了开发和优化,大大提高了业务人员的工作效率。
1 相关技术介绍
1.1 CRM简介
CRM即客户关系管理[3],通常是指用计算机分析电子销售、客户服务以及应用支持等流程的系统。CRM以客户为中心,主要是为了缩短销售周期,降低销售成本和提高客户满意度。
CRM系统的功能主要有以下三点。第一,对客户服务业务流程的信息化。第二,与客户交互所需的短信、传真、邮件等的集成以及自动化处理。第三,对客户信息进行加工处理,挖掘有用的客户信息。
1.2 工作流和工作流图简介
WfMC(工作流管理联盟 Workflow Management Coalition)给予工作流的定义如下:工作流是一类能够完全或者部分自动化执行的经营过程,它根据一系列过程规则,文档,信息或任务能够在不同的执行者之间进行传递与执行。工作流的思想源自于工业自动化的流水线,随着信息技术的发展和普及,该思想被企业信息系统所采用。在企业的经营过程中,根据企业内部的规章制度和具体的业务流程,一项事务往往会由多个业务部门按照一定顺序串行或并行合作执行来完成企业的经营目标[4]。
工作流图是通过适当的符号记录全部工作事项,用以描述工作活动流向顺序[5]。它是用图的形式反映一个组织系统中各项工作之间的逻辑关系,用以描述工作流程之间的联系与统一的关系。工作流程图由一个开始点、一个结束点及若干中间环节组成,中间环节的每个分支也都要求有明确的分支判断条件。
2 系统整体设计
2.1 现有系统不足之处
现有的工作流业务生成系统用户体验较差,在生成业务的过程中操作繁琐,节点固定,界面不够美观,并且对业务文件的保存和再利用非常不方便,使得大量的业务数据无法准确快速批量高效的分析统计,因此对工作流业务生成系统的改版迫在眉睫。
2.2 设计目标
在满足工作流业务的需求的基础上,本系统的主要设计目标便是设计一个简单灵活易用,易扩展,稳定,界面美观的工作流业务生成系统,而这一切的关键在于需要有一个好的系统结构。在调研了大量现有的编辑器程序之后,本系统采用了HTML5+ jQuery+AJAX的技术方案,使得整个系统各个功能模块清晰明了,易于维护。本文所述系统生成的工作流业务可应用到CRM系统开发中,针对原有的工作流业务生成系统的弊端和不足,现在将其分为四个部分,包括工作流业务文件生成,工作流管理,启动工作流,执行工作流业务,整个流程如图1所示:
3 工作流业务生成系统的设计与实现
3.1 工作流业务生成系统的功能设计
业务员使用本系统,首先要选择是编辑空白工作流业务文件还是编辑既有的业务。如果是编辑空白工作流业务文件,则直接新建即可。然后业务员操作本系统,对各个节点进行编辑,并定义节点之间的流程跳转关系,最后选择保存到本地或者通过HTTP服务上传到工作流引擎中,从而完成本次工作流业务的编辑。如果对已有工作流业务文件进行修改或者对未完成的工作流业务文件进行完善,则可以选择本地既有的工作流文件,然后通过本系统的读取功能对工作流文件进行解析,并调用页面生成功能将工作流重现到系统画板上。之后业务员可以使用本系统对各个节点进行修改并添加或者编辑节点,并重新调整各节点之间的流程跳转关系,直到符合业务员所期望的设计。当业务员完成编辑后,可以将生成的工作流文件上传到工作流引擎,当第三方系统向工作流发送执行工作流的请求时,工作流引擎可以执行指定的工作流任务。
工作流业务生成系统的流程如图2所示。
图1 工作流开发总体流程Fig.1 Workflow development process
3.2 工作流业务生成系统的控件
工作流业务生成系统的控件主要有以下几个控件,分别为root控件、start控件、calculate控件、sql控件、if控件、task控件、fork控件、join控件、config控件和end控件等十种基本类型。这些控件类型都可以做不同的定制以满足各种不同工作流的设计需求,每个控件都具有几个共同的属性,包括控件序号step id,类型type,控件描述remark,下一跳控件next。
下面对控件属性分别一一描述:
公共属性共4个,分别为:
控件ID:每个控件都有自己的ID,在系统中从1开始递增。业务员也可以根据设计需求自行更改控件序列号,如果不更改则按系统默认ID保存。
控件类型:控件生成后会对应自己的控件类型,总共有十种,控件类型不可更改,由系统生成。
控件描述:该属性用于解释该控件,主要用来描述这个工作流步骤的主要功能或者问题,使业务员对工作流有更加直观的理解。也可以加入业务员对该工作流步骤的备注信息。
下一跳控件:该属性用来标识工作流控件的下一个步骤,存储的是下一个控件的控件ID。当业务员用箭头连线将两个控件连接起来时,工作流业务生成系统将自动标识控件的下一跳。除了end控件以外,其他控件都有下一跳。
3.3 系统整体设计
基于面向对象的设计方法对本系统进行设计,系统的层次划分由图4可知。根据各个层次的功能,本文将系统划分为四个模块,分别为用户界面层、应用服务层、数据层和外部服务层。各个层次之间的消息通信关系如图3所示。
图2 工作流业务生成系统流程图Fig.2 Flow chart
图3 系统层次划分Fig.3 System level division
3.4 工作流业务生成系统模块设计
根据上文的分析,本文将工作流业务生成系统分为十个模块。
各个模块的定义如下:
第一:画板模块。画板模块用于提供一个画板区域,业务员可以把控件拖动到画板区域上,并且拖拽带箭头的线段使各个控件相互连接。画板类用HTML5中的canvas标签来实现。
第二:属性栏模块。属性栏模块用于展示各个控件的属性。当业务员点击选中画板上的控件时,会在属性栏模块中显示对应控件的所有属性,控件的
序号、类型、描述和下一跳都显示在这里。
第三:XML节点模块。此模块主要负责定义各个控件对应的XML节点。每当点击不同的控件时,就会找到相应的XML节点,获取控件的属性信息并显示到属性栏模块上。
第四:工作流跳转模块。工作流跳转模块主要负责控件之间连线时,修改上一个控件的下一跳节点属性。并且在最后提交时,会检查逻辑判断时候符合逻辑,接口是否闭合等等。
第五:XML显示页模块。此模块用于实时显示当前工作流将要输出的XML结果。
第六:数据传输模块。数据传输模块用于本系统的数据上传和下载功能。本系统可以从工作流引擎下载已有的工作流业务文件,或者将编辑好的工作流业务文件上传到工作流引擎中。数据传输模块使用HTTP的post方法上传和下载工作流业务文件。
第七:XML解析模块。XML解析模块用于将既有的工作流业务文件解析出来,并调用属性栏模块、画板模块、跳转模块等多个模块将工作流业务文件中的各个节点对应的控件和跳转关系完整地展示在画板上。
以上模块的相互作用关系如图4所示。
3.5 工作流业务生成系统模块设计
完成代码设计与测试之后,主界面效果如下图5所示。
图4 模块关系图Fig.4 Module relation
图5 工作流业务示例Fig.5 example of workflow business
4 结论
本文在分析目前工作流业务生成的用户需求以及现有工作流业务系统的特点之后,给出了工作流业务文件生成的解决方案,提供了工作流绘制、业务文件解析、文件保存、数据上传和下载等功能,结合CRM系统,对工作流业务做统一管理,对既有的工作流业务文件进行复用。
图6 生成工作流业务效率比较Fig.6 contrast of generating efficiency
业务员可以使用本系统,通过拖拽控件、连接控件等功能来设计工作流业务。还可以读入和复用既有的工作流业务,并将设计好的工作流业务上传到工作流引擎中,从而运行工作流业务。如图6所示,对比过去业务员用手工生成工作流业务的方式,本系统便于业务员的操作和使用,加快了业务员的工作效率,对CRM的发展有较大帮助。
[1] 刘洪政. 工作流系统时间管理[J]. 软件, 2013, 07(2): 4-8.
[2] 金正晔, 蔡月茹, 马伟勤, 柳西玲. 工作流系统的构件化开发[J]. 计算机工程与设计, 2006, 23(2): 8-11.
[3] 陈 旭. CRM综述[J]. 计算机应用研究, 2001, 08(1): 7-10.
[4] 罗海滨, 范玉顺, 吴澄等. 工作流技术综述[J]. 软件学报, 2000, 11(7): 899-907.
[5] 赵瑞东, 陆晶, 时燕等. 工作流与工作流管理技术综述[J].科技信息(科学·教研), 2007, (8): 105-107.DOI:10.3969/j. issn.1001-9960.2007.08.084.
Design and Implementation of the Workflow Business Generation System
CHEN Bao-hua, ZHAN Shu-bo
(Beijing University of Posts and Telecommunications, Institute of Network Technology, Beijing 100876, China)
This paper aimed to study CRM workflow business system and design a flexible CRM workflow business generation environment to fullfill the function of the workflow engine. This paper introduced an easy and convenient way to generate workflow business files using data stream and workflow management. This system has provided a straightforward and flexible function for thousands of businessman to easily generate business files. The system has been running in CCWF workflow engine and promote the development of the CRM system and the combination of call center and workflow.
Computer application; Workflow; CRM
TP311
A
10.3969/j.issn.1003-6970.2016.11.023
国家基金项目
陈保华(1991-),男,硕士,主要研究方向:通信软件,呼叫中心技术。
詹舒波(1965-),硕士生导师,主要研究方向:电信增值系统,基于智能网及其相关技术在电信网络的应用研究与开发。