赵卫东,刘海涛
(复旦大学 软件学院,上海 200433)
随着企业竞争的日趋激烈,业务流程优化得到很多企业的重视。企业信息系统积累了大量的业务流程运行数据,这些数据记录了流程的执行过程。传统的流程优化多是通过人工经验发现流程中的问题,对流程数据的利用不足。流程挖掘(process mining)通过分析流程日志中的任务、参与者和时间等数据,重现业务流程的真实过程,为管理者提供流程运行的知识[1]。流程挖掘结合工作流管理和数据挖掘等相关技术,从控制流、组织结构、资源和性能等多个视图提取流程运行的知识,利用这些知识可以发现业务执行与企业战略目标的偏差、流程瓶颈、组织之间的低效率协作、流程资源的不合理分配等问题,从而对业务流程进行优化。
流程挖掘源于软件工程领域,目的是解决因主观因素导致的流程设计问题。根据分析视角的不同,流程挖掘可以分为控制流视图、组织视图和实例视图等[2]。早期的流程挖掘研究侧重于控制流的发现,通过分析流程中活动的执行顺序,以Petri网等形式表示流程模型。近年来,从组织视图的角度挖掘流程参与者之间的社会网络、角色和资源间协作关系的研究得到了重视。随着研究的不断深入,流程挖掘的视角增添了流程性能、时间、数据和复杂度等新的维度,在流程模型重建、组织视图分析、资源优化和流程决策支持等方面取得了许多成果[3]。在此基础上,学术界和企业界探讨了使用流程挖掘对业务流程进行优化的方法。基于流程挖掘的流程优化在医疗、政府、金融、软件、物流和电信等领域都得到了初步应用[4-10]。本文对流程挖掘在流程优化相关的分析方法进行系统的梳理,以便为流程优化研究提供新的思路。图1所示为流程挖掘在流程优化中应用的基本思路。
目前,从分析的角度来看,流程挖掘在流程优化中的应用可分为基于控制流的优化、基于组织视图的优化、基于资源视图的优化和基于性能的优化等。基于控制流分析的流程优化工作开展得较早,可用于优化流程结构、检测流程异常等。常用的方法是流程一致性检查(conformance check),将挖掘得到的流程模型与流程的最初设计对比,发现流程执行过程中的异常,为流程优化提供参考。分析流程模型的结构复杂性,发现流程中低效率的复杂结构,通过优化流程结构降低流程的复杂性,是传统经验式流程优化方法的重要补充。
基于组织视图的流程优化通过发现流程中组织间的最佳协作方式、角色之间的层级关系等信息,优化组织结构、促进资源高效协作。其中社会网络分析(Social Network Analysis,SNA)关注资源之间的协作关系,构建社交网络图谱,分析流程参与者之间的交互模式,促进资源之间的协作。根据组织、资源之间的协作关系优化组织结构,提高组织结构与业务流程的适应性,也是流程优化的一种思路。一些学者还研究了跨组织流程挖掘,通过发现行业最佳实践促进跨组织协作。
基于资源视图的优化通过挖掘资源低效率的原因,优化资源分配规则,提高资源利用率。决策树、关联规则挖掘等数据挖掘算法常被用来从流程日志中提取资源分配规则。在此基础上,根据分配规则实现流程运行过程中的资源自动化分配,提升资源的分配效率。此外,结合资源的行为特征,改进资源的分配规则,提升资源的工作效率,也是流程优化的一种思路。
基于性能的优化通过分析流程中的时间、成本等关键绩效指标,发现流程中效率低下的环节,从提升流程绩效的角度对业务流程进行优化。流程执行周期一般用来度量流程的执行效率。服务等待时间常被用来发现系统瓶颈,进而通过增强节点的服务能力等方式消除瓶颈,提升效率。除了上述方法外,一些学者从流程数据的角度研究了流程优化的方法。利用分类、关联分析等数据挖掘算法分析活动相关数据中的隐含规律,再利用这些规律对流程进行改进。例如,使用决策点挖掘分析客户特征与流程路由概率的关系,通过改变决策点位置等方式提高流程效率。
流程挖掘为流程优化提供了新思路和新方法,对该领域的方法和应用进行系统的总结和分析,对于指导流程优化实践和研究都有着重要意义。本文综合目前流程挖掘应用的成果,系统讨论了流程挖掘在业务流程优化中的分析方法。从改善流程结构、提升组织效率、优化资源配置和检测流程异常等方面综述了典型的相关研究成果。最后分析了流程挖掘在业务流程优化中亟待深入研究的问题。
流程模型的结构决定流程活动的执行顺序,直接影响了流程的质量和效率。但由于流程设计初期对实际需求考虑不周全,使流程中产生性能瓶颈等问题,这些问题降低了流程模型的可读性和流程执行效率。利用流程挖掘发现这些低效率的环节,根据业务的实际需要进行简化和改造,可以降低流程模型的复杂度。另一方面,流程日志中隐藏着参与者的行为模式,使用关联分析等算法发现这些规律,可以有针对性地对流程结构进行调整。
瓶颈节点较长的执行或等待时间影响整体的流程执行时间。利用流程挖掘发现系统中的瓶颈环节,可以有针对性地增强瓶颈点的服务能力,合理分配瓶颈点的工作负担,优化流程结构,提升系统性能。流程瓶颈发现可分为基于服务等待时间的方法和基于SNA 的方法。
基于服务等待时间的方法从瓶颈产生的结果出发,将等待时间较长的节点确认为潜在瓶颈点。服务等待时间可由任务的到达时间与活动开始时间的间隔得出。文献[11]以荷兰某油气公司为例,从时间维度分析了影响业务性能的瓶颈点。该公司原来的业务存在效率低下、执行总时间长等问题,流程调整使用开源流程挖掘工具ProM 的性能分析插件分析了各个节点的执行频度,计算可能产生瓶颈的执行较频繁节点的平均等待时间,发现了因节点服务人员不足产生的瓶颈。文献[11]使用流程仿真工具分析了瓶颈节点在流程中的位置、服务的重要性等因素对流程执行总时间的影响,针对瓶颈点的影响,采用增强瓶颈节点服务能力的方式进行缓解,通过仿真验证了消除瓶颈可大大提升流程的执行效率。
频繁参与任务转交的流程资源容易因工作负荷过大产生系统瓶颈。文献[12]以工作移交(handover of work)度量构建了员工间的社会关系网络,并将中间中心性(betweenness centrality)高的节点确认为潜在瓶颈点。在基于工作移交的社交网络中,中间中心性高的角色在业务流程处理中负责较多的任务传递,可能因资源数量不足造成系统瓶颈。
基于服务等待时间的瓶颈点发现原理简单、应用广泛,但该方法要求流程日志准确记录活动到达时间和活动开始时间,这在某些信息系统中有一定难度。使用SNA 分析参与者在流程协作中的重要程度,探索识别关键角色是否出现服务瓶颈,调整任务负担、消除瓶颈等问题的方法,还有待进一步研究。
为满足企业内部控制,流程中通常存在复核、审批等环节,业务申请经相关负责人审查后退回业务人员,形成循环结构。但由于对业务理解不到位、审批负责人的拖延等原因,会使流程中产生低效率、冗余的循环结构,导致业务项目反复转交却得不到及时有效的处理。通过流程挖掘分析任务转包(当任务由员工i转交给员工j,j完成后返回给i,i与j便构成转包关系,在流程结构上表现为循环结构)情况,识别冗余循环结构,可以采用消除或改善循环结构等方法对流程进行精简优化。
文献[5]使用SNA 分析了某公共服务部门发票处理流程中低效率的循环结构,该部门负责市政建设工程的转包和支付,由于流程结构复杂,存在发票配送延迟问题。文献[5]利用启发式算法挖掘了流程模型,发现业务中存在许多事先未知的循环结构,17%的发票处理都要经过至少一个循环过程,严重延迟了合同款的及时支付。针对该问题,使用转包度量分析了员工之间的协作关系。转包关系度量了任务在不同员工之间的移交和复核的情况,转包次数过多意味着流程结构中存在低效率的循环结构。分析发现,特定员工间存在频繁的任务转包情况。通过与业务人员讨论,得知相关负责主管不经常在单位办公,造成审批工作的延期处理,系统自动将流程状态回溯到前一阶段,从而形成低效率的循环结构。针对这种结果,可以采用权力下放等途径减少不必要的审批工作,消除冗余的循环结构,降低流程复杂性。
一些业务流程中的循环结构是不可避免的。针对这种情况,可以通过优化循环结构、提升循环结构的效率等途径改善业务流程。文献[13]通过调整关键活动的位置优化循环结构。利用启发式算法分析了某公司的晶片扫描器测试流程,结果表明,在任何测试阶段,当发现测试失败时,测试任务都要回滚到开始阶段重新进行测试,从而形成循环结构,大量的循环结构导致测试周期远远超出规定时间。针对这种问题,分析了各个阶段出现测试失败的概率,通过将出错率高的关键活动放置在测试初期作为标准测试任务,使循环结构出现在流程的早期,减少了测试回溯引起的反复测试,大幅度缩减了测试流程的时间和成本。
决策点对应流程的选择判断节点,根据决策点的结果选择不同的流程执行路径。决策点的选择对流程结构有很大的影响。决策点挖掘(decision mining)使用决策树等分类算法分析决策属性与结果之间的关系,从而发现流程的决策规则,通过调整决策点的位置优化流程结构。
文献[14]研究了决策点位置调整对流程效率的影响,使用C4.5决策树算法分析了决策点的相关属性和决策执行结果之间的联系,根据执行结果和后续活动之间的依赖关系得到各个决策点的决策效率,识别出决策效率低的冗余决策点。通过将决策效率高的决策点放置在流程初期,同时删除冗余决策点,可以简化流程结构。
决策点位置的调整对审查活动较多的业务流程有很好的效果。例如,在保险理赔、信用卡申请等业务中,将那些对申请人资格要求高的决策点放在早期进行,可以尽早排除不合格的申请,提高业务流程的执行效率。
流程中的频繁模式蕴含着流程活动的规律、流程参与者的行为模式等重要信息。使用流程挖掘可以发现频繁路径以及资源之间的频繁模式,利用这些规律做流程路径预测或资源推荐。基于频繁模式的流程优化的常用方法包括频繁路径挖掘、关联规则挖掘和决策树挖掘等。
流程频繁路径挖掘从全局角度出发,重点优化业务流程中的关键路径。通过分析流程日志中活动的执行顺序,使用Markov链、频度/依赖关系等方法发现流程执行频率较高的路径,然后提升这些关键路径上节点的服务能力,从而优化流程结构。文献[15]分析了某在线旅游订票网站用户点击流的频繁路径,该网站提供旅游、餐饮等在线预定服务,存在转化率低的问题。使用k-means聚类方法对用户浏览的网页进行分类,将Web会话映射为不同的流程活动,得到用户的购物流程日志。分析活动间频度/依赖关系较高的路径,发现购买流程的频繁路径为“查看详情→购买→支付”,较少经过搜索和对比操作,这与该网站重点优化搜索服务的策略不符。通过分析用户的购买习惯,重点改善购买流程中“关键路径”网页的设计,优化购物流程,最终将网站转化率从2%提升到46%。
相对于频繁路径挖掘,关联规则挖掘则是从数据流的角度关注具体的用户特征与流程活动之间的联系。例如,分析发现用户特征与流程活动之间的联系,可以利用这些关联关系调整流程结构,为用户提供个性化的服务。文献[16]使用Apriori算法研究医疗流程中的患病关联情况和医治活动关联规则,揭示了医护流程中的频繁模式,为业务人员提供了参考。例如根据医治活动关联规则,置信度高的医治活动同时出现的可能性较大。针对这种情况,医院可以调整医疗流程,提高诊断和治疗的效率。同时,置信度高的不同疾病通常为并发症,应该采用关联病情检查等方法优化诊断流程,为病人提供更优质的服务。决策树也是一种常见的频繁模式挖掘算法。文献[6]使用分类和回归树(Classifiation and Regression Tree,CART)算法分析了信用卡申请流程中的低效率审批与客户特征之间的联系,为优化流程结构提供了参考。通过分析申请流程各个活动的执行时间,发现一些用户申请书送回的等待时间过长,通常超过业务期限(31d),导致申请自动取消,而一般用户在23d内都会得到及时回复。针对这种问题,分析了申请人特征、等待时间与申请通过率之间的关系,根据分类树的分类属性和叶子节点的概率分布,业务人员预测客户的申请书送回时间,从而提高了信用卡申请审批流程的效率。
组织视图挖掘关注流程中的组织结构、角色和资源之间的关系,利用组织结构挖掘、角色识别、社会网络分析等方法,理解组织内和组织之间信息流通、工作协同的方式。通过促进资源协作、调整组织结构等方式提升流程效率。
业务流程的执行通常需要流程参与者之间紧密合作。分析参与者之间的协作关系有助于发现流程中的低效率协作和资源之间的协作模式,促进资源协作,提升流程效率。组织视图挖掘得到流程参与者之间的协作关系,为管理者优化资源组合、促进资源协作提供参考[12]。
文献[4]使用SNA 分析了癌症患者就诊流程中医院各科室之间的协作关系,发现了一些有趣的协作模式。文献使用工作移交度量评估各科室之间的协作紧密度,并使用社交网络图表示协作关系。在社交网络中节点代表部门,部门之间的紧密程度用节点间弧的粗细显示。例如,临床化学实验室与其他科室协作紧密,而产科与其他科室协作很少。意外的是营养科与其他科室协作也比较强,可能是因为接受化疗的病人一般会咨询营养师饮食问题。根据这一信息,医院可以在病人就诊时提供相关的饮食建议,从而减少病人在部门之间不必要的活动。此外,放射科与常规检查科的频繁交互显示了病人“去放射科就诊→在常规科接受病情检查”的序列模式,这些协作模式为流程优化提供了契机。例如,根据部门之间的频繁交互整合相关的诊断活动,简化医疗流程。
社交团体(community)发现也是常用的协作关系分析方法。文献[17]扩展了SNA 的研究,讨论了挖掘流程日志发现社交团体的方法,利用参与者一起工作的次数计算资源之间的协作程度,利用共同实例度量构建了社交网络,使用层次聚类算法,根据参与者之间的协作程度进行聚类。在聚类过程中,文献[17]使用了模块化的概念,使挖掘得到的社交团体内部协作紧密,而团体之间的协作关系松散。每次迭代都计算结果的模块化程度,最后将模块化最高的聚类作为团体划分结果。该文献使用社交团体发现分析了某医疗流程中医生间的团体协作关系。在社交图谱中,同一团体的医生用一种颜色的圆点表示,圆点之间的连线显示了医生、团体之间的协作程度。结果显示:急救科的医生合作紧密,而且与其他部门都有协作关系,在社交图谱中处于中心地位。根据这种情况,医院可以适当增加对急救科的资源分配,避免因人员不足影响流程的效率。此外,骨科、妇科的医生在社交团体中处于相对孤立的状态,与急救科存在较少的交互,且内部协作不够紧密。针对内部关系松散的团体,医院可以通过强化合作意识促进资源之间的有效合作,提高业务处理的效率。
组织视图挖掘不仅可以从流程日志中获取资源之间的协作关系,还可以挖掘组织结构、个人与组织的协作关系,从而优化组织结构和团队组合形式。组织结构优化的整体思路是调整组织结构,以适应业务需求、促进资源之间的协作。
利用组织视图挖掘发现员工之间的协作关系和员工在流程中的重要性,可以相应调整组织结构,更好地适应业务流程的需要。文献[18]分析了某航空设计院知识维护流程中的组织结构,讨论了使用组织视图挖掘优化组织结构的方法。在知识维护流程中,为保证知识的质量,当新知识加入知识库时需要依次经过提交、检查、专家检查和批准等步骤。每前进一个阶段,都需要具备更专业知识的员工进行检查。该文献使用聚类算法分析了知识维护业务中员工之间的知识层次结构。当工作由i转交给j时,表明j和i具有相同领域的知识且j的知识层次高于i。在转交矩阵生成的社会网络中,入度为0的节点的知识层次最低,出度为0的节点的知识层次最高,具有相同前驱和后继节点的节点处于同一领域的同一知识层次。挖掘结果与单位的组织结构对比存在较大差异,例如,一些单位的普通员工在知识层次结构中具有较高的专业知识水平,员工之间的知识传递常常需要跨越组织单元的界限。针对这些问题,该文献提出针对知识维护业务的组织结构优化,通过将同一知识领域的员工划分在同一单元,同时增加在知识传递中重要环节的业务人员数量,改善组织结构,以适应知识维护业务流程,加速组织内部知识的共享。
文献[19]提出基于SNA 的员工自动组合方法,综合考虑员工能力、社交关系中的地位等因素对资源组合的影响。该模型中的员工被分为不同团体,各个团体有相应的主题(topic),每个员工在团体中都有对应的社交角色,其中存在关键贡献者、影响者和协调者三种特殊的社交角色:①关键贡献者负责处理主要的流程任务,可以用度中心性度量;②影响者在团体中具有较高的领导能力,可以用特征向量中心性度量;③协调者负责团体之间的信息交互,可以用中间中心性度量。
文献[20]提出基于员工能力和协作关系的社会计算单元(Social Computing Unit,SCU)。在SCU中,为完成相应的任务,员工根据专长、知识和协作关系动态地组合在一起,构成灵活、高效的组织结构。该文献以旅游业的IT 事故处理流程为例,说明了创建动态灵活SCU 的过程。当新任务到达时,根据任务主题挑选主题相关的团体,然后根据任务量在该团体中选择相应数量的影响者和贡献者,若有多个团体参与则添加相关的协调者。该文献还提供了创建高效的动态协作团队SCU 的方法,为优化组织结构提供了新思路。
目前组织之间协作的研究成果较少,但该问题对于发现企业协作存在的问题、加强跨组织合作具有重要的作用。一些学者研究了跨组织流程挖掘在流程优化中的应用[21-23],但由于挖掘组织之间的协作流程模型存在数据安全、数据整合和协作模式等问题,这方面的应用还处于探索阶段。根据业务分配和合作形式的不同,组织间的协作可分为流程协作和知识协作。
(1)流程协作
在跨组织流程协作中,业务流程被分割为不同的任务块,组织之间通过分工协作共同完成业务流程。流程数据分散在不同组织的信息系统中,流程挖掘存在日志合并、模型汇总等难题。针对这种模式,目前的主要优化方法有基于合作协议的一致性检查方法和基于合作模型的优化方法。
基于合作协议的一致性检查方法通过对比流程执行情况与服务协议,发现业务执行中的问题,通过改进服务层协议(Service Level Agreement,SLA)、加强监管等方式提升组织之间协作的质量。文献[22]从流程一致性检查的角度,使用SLA 评估了服务供应商的服务质量,分析了某IT 服务外包公司的服务流程日志,挖掘了流程模型,从流程性能的角度分析了组织协作中的问题。分析服务的响应时间和客户满意度等度量后发现:外包公司将提升客户响应速度作为服务的主要目标,忽视了解决问题的质量,导致用户满意度不高,而问题的根源在于SLA 过于强调缩短服务时间,忽视了服务质量对客户满意度的影响。从而调整SLA 的关键指标,强调服务质量和客户满意度,优化服务流程。一致性检查为发现组织间协作的缺陷提供了客观的依据,有助于促进组织间改进合作方式,提高合作效率。
相对于上述流程日志集中存在于单个系统中的研究,挖掘分布于各个组织内部的流程模型对流程优化更有意义。文献[23]提出基于企业间合作模式的流程优化方法,分析了组织之间协作的任务同步、信息交换、资源共享和抽象过程协同四种模式,综合考虑了流程中的信息交流和资源分配,提出扩展的资源信息工作流模型:首先挖掘各个组织内部的流程模型,随后根据不同的协作模式将各组织内部的流程模型进行整合,得到跨组织流程模型。以某医院医护流程中接待室、外科、X-射线科、药房、心血管科等部门之间的协作流程为例,通过挖掘各部门的服务流程,分析部门之间的协作关系。例如,外科和心血管科在处方、就诊咨询等活动中需要共同参与,存在任务同步协作。而X-射线科在图像检查等活动中为外科提供信息,形成了信息交换协作。结合流程模型和协作关系,挖掘到整个医疗流程模型,为医院管理人员提供了部门之间协作的全景视图。根据协作模式,管理人员可以通过合理安排医疗设备和医护人员的调度等方式解决业务冲突,提升医疗流程的效率。
(2)知识协作
组织间协作的另一种模式是通过共享经验、知识进行协作。目前主要的优化方法是基于行业对比发现最佳实践,即使用流程挖掘与业界其他单位的业务流程进行对比,发现自身流程中的缺陷并加以改进,同时借鉴行业的最佳实践为流程优化提供参考。
文献[24]分析了意大利两家医院对中风患者的不同医治流程,通过对比为优化服务质量提供参考,并使用启发式算法分别挖掘了医治流程模型。通过对比两家医院在中风不同阶段(急性阶段和亚急性阶段)使用的诊断流程,发现两家医院采用了不同的治疗策略。一家医院通常较早地实施降压治疗;另一家医院则相对谨慎,实施了神经检查等医疗保护措施,而且早期采用推荐的物理疗法。通过分析不同医院对同一疾病治疗流程的差异,有助于发现业界的高质量疗法,为医生改进诊断流程提供参考。
Aalst教授在上述研究的基础上还提出了云计算时代利用集体智慧、借鉴行业最佳实践的优化方法[25]。Aalst研究了荷兰4个市政部门建筑执照审批流程的处理情况,发现这些部门使用相同的流程管理系统,却具有不同的办公效率。针对这种问题,通过发现最佳实践提高流程效率。讨论了流程模型质量、流程效率、流程日志与模型间的适应度,实际业务流程与流程模型间的适应度等评估模型质量和适应度的相关度量,通过挖掘4个部门的流程日志得到流程模型,计算上述度量得到相似度矩阵。对比与自身流程日志适应度较高的流程模型,可以发现适合业务特征的高质量流程模型;对比与自身模型适应度高的流程日志,可以发现与自身流程模型相似的业界最佳实践。
总之,目前基于跨组织流程挖掘的流程优化研究还没有系统的研究方法。
资源分配在业务流程管理中有重要的作用,合理的资源分配可以保证为每项活动分配合适的资源,充分发挥资源的利用率。使用流程挖掘分析流程中的资源分配规则可以发现分配中的问题并进行优化,同时利用资源分配中的规律实现资源的自动化分配。另一方面,分析资源的行为特征,调整资源分配方式,可以提高资源的工作效率,实现资源的优化配置。
资源分配有推模式和拉模式两种基本模式,这两种模式比较简单,没有考虑对流程性能的影响,在处理资源短缺、资源超载、资源不确定等复杂问题时无法得到最优解。因此,需要挖掘更加全面的资源分配规则,为资源优化提供基础。
文献[26]提出使用决策树挖掘任务分配规则,将活动参与者和活动类型作为输入,将参与者是否参与活动作为分类结果,得到员工的任务指派规则,然后使用流程模型作为先验经验,挖掘了基于角色的资源分配规则,但未考虑角色之间的重叠关系等问题。在此基础上,文献[27]扩展了基于决策树的员工指派规则,并在ProM 中以Staff Assignment Miner插件的形式实现了支持业务流程生命周期的资源分配管理和优化。利用流程挖掘得到的资源分配模型与业务规则进行对比,发现资源分配中的问题并加以改进。在流程执行过程中,通过不断挖掘分配规则进行优化,实现流程生命周期的资源分配优化。
文献[28]在以上研究的基础上,从资源关联性的角度挖掘资源分配规则,使用关联规则分析了某医院CT 检查流程中的资源分配规则,把参与者、活动的开始和结束时间作为约束条件,只考虑具有顺序关联的活动,从而改进了Apriori算法的挖掘效率。挖掘得到的资源分配规则可分为资源依赖规则和资源指派规则两类。前者表示资源之间参与不同活动的关联关系。例如,资源r1参与“诊断报告”活动后,经常由主管r6进行“诊断核对”活动。后者表示资源的角色与活动类型的对应关系,从质量、效率、规则精细度等方面验证了关联规则挖掘的有效性,并发现了有趣的资源分配规则。例如,病情为“一般”的病人接受“颅脑扫描”诊断时,通常由员工r4和r5完成,因为他们处理该活动更有经验,而且在时间有限的情况下,活动经常由经验丰富的员工处理。这些流程运行中的资源分配模式为管理者优化资源配置、提高流程效率提供了有价值的参考。
资源分配规则挖掘研究强调分配规则的发现,并未考虑在运行过程中对资源的优化配置。恰当的资源分配可以充分发挥资源的工作效率,提升流程的运行效率。目前,优化资源分配的工作包括基于资源分配问题发现的优化、基于分配规则挖掘的自动化分配和基于资源行为分析的合理分配等。
基于资源分配问题发现的优化方法通过分析资源、工作负载和流程执行速度之间的关系,利用流程资源的工作时间、闲置时间等资源效率指标,发现资源分配中存在的问题,从而有针对地进行优化。文献[29]使用流程挖掘分析了荷兰某金融机构贷款申请流程中的资源分配问题,分析资源在各个工作日中的表现,发现只有1/3的资源在每个工作日都参与了工作,企业存在员工冗余的问题。由于周末的任务堆积,周一通常需要较多的员工进行处理,企业可在周五加派资源数量,以缓解周一的工作压力。该文献对比了多任务分配和单任务分配两种分配策略的效率。通过分析各项活动的平均处理时间和每个流程实例的平均周转时间,发现在多任务分配中,由于资源同时处理多种业务活动,致使资源的业务处理效率低于单任务分配,不但造成资源浪费,而且影响了客户满意度。针对上述问题,可以通过利用冗余员工处理工作积压,根据员工特长进行专业化分工等途径,改进资源分配策略,提高资源利用率。
基于分配规则的资源自动化分配使用机器学习等方法发现资源分配的规则,在流程运行过程中根据这些规则进行自动化分配,从而解决因人工分配造成的资源分配错误、资源利用率低等问题[30]。文献[31]提出基于机器学习的资源自动分配方法,将资源分配作为员工参与活动的分类问题,把流程日志作为训练集进行监督学习,生成相应的分类器,挖掘员工任务分配规则,重点挖掘了流程运行阶段需要人工分配的活动资源分配规则。使用C4.5决策树、朴素贝叶斯分类和支持向量机等分类算法,分别对企业的流程资源分配进行挖掘。实验表明,自动化分配的准确率大于75%,但没有考虑资源自身的特性对资源分配的影响。
基于资源行为的资源优化考虑了资源的偏好、专业知识、协作方式等资源内在行为对资源效率的影响,根据资源的独特性进行合理分配。例如,文献[6]使用多维分析讨论了具有专业知识的员工在处理特定领域任务时的优势,从资源利用率的角度对比了专业分工和统一分配任务两种不同分配方法的资源利用率,发现领域专家处理专业任务的效率大于普通员工80%,而统一任务分配使他们忙于其他工作,大大削减了资源的价值,验证了专业化分工在优化资源配置、改善流程性能中的作用。
文献[32]从促进资源协作的角度讨论了优化资源分配的方法,提出衡量资源之间协作程度的资源相容性概念,相容性越高,资源之间的合作效率越高。使用服务时间作为资源间协作水平的指标,资源之间共同处理业务所需的服务时间越短,协作就越紧密,相容性就越高。该文献使用贪婪算法,以寻求最大系统相容性为目标,得出了最大化资源协作的分配方式,并以韩国某医院的医护流程为例,分析了员工间的合作关系,计算了员工间的相容性,并给出了优化的员工组合。实验模拟显示新组合下特定任务的平均处理时间由原来的42.9 min降低为6 min,大大提升了流程的效率。
文献[33]从社会学的角度考虑了工作负担等外界环境对资源行为的影响。使用服务时间衡量资源效率,以单位时间内的任务指派数量评估工作负担,使用线性回归分析了两者之间的关系。该文献使用某市政部门的建筑合同处理流程数据进行实验,较高的相关系数和拟合系数验证了资源工作量与流程绩效之间的关系,即资源绩效随工作量的增加而增加,但达到一定程度后随工作量的增加而降低,这种资源特性给资源分配提供了有益的知识。为提高资源利用率,需要调整任务到达率,合理分配资源的任务量,使资源发挥最大绩效。
综合考虑资源行为对资源分配的优化具有重要意义,但由于构建包含资源偏好、可用性、能力、协作等资源行为的资源模型难度较大,目前相关的研究工作还不充分[34]。
企业业务环境的日趋复杂、信息系统的日益分散给管理者洞悉流程执行状况增添了难度。使用流程挖掘分析流程的实际运行情况,通过与预定目标进行对比,可以及时发现流程执行中的异常和低效率情况。异常检测有助于流程管理者对流程进行实时监控,确保业务流程的有序执行。
基于业务规则的检测通过将挖掘得到的流程模型与业务规则进行对比,发现业务执行过程中的偏差,促使管理者对流程进行及时优化,已在欺诈检测、金融审计、系统安全监测和内部控制等领域得到广泛的应用[35-37]。
面对复杂多变的竞争环境,出于灵活性考虑,流程的实际执行与业务规则经常会存在偏差,而这些偏差中可能隐藏着流程隐患,利用流程挖掘的方法识别这些偏差,对优化规则制定、提升流程效率具有重要的意义。例如,文献[38]以某金融公司的采购流程为例分析了业务流程中的偏差,根据业务规则挖掘了流程中的偏差,使用Apriori算法重点分析了“未经审核签字产生订单”业务偏差的10种频繁模式。通过与业务人员讨论,区分了显式偏差、隐式偏差和业务异常等模式:显式偏差的订单额小于阈值,为保证业务灵活性,此种偏差得到公司许可;隐式偏差的订单额度虽大于阈值,但供货商为公司的合作伙伴,为其提供便捷服务此种偏差也得到公司认可;业务异常则为订单大于阈值且涉及非合作关系的供应商,其中可能含有欺诈行为,需要进一步审核。利用这些偏差信息,可以采取有针对性的优化方法,例如,将显式偏差和隐式偏差进行规范说明,利用业务流程规则的透明化提高流程的执行效率,同时深入分析业务异常出现的根源,及时发现业务中存在的问题,对流程进行相应改进。
Markov 模型也常用于发现流程异常。在Markov模型中,两个活动先后发生的概率显示了流程执行的路由概率。通过与标准业务流程的对比,可以发现流程变异的位置与可能性,从而发现异常的业务执行过程。文献[7]使用ProM 挖掘了巴西某软件公司的软件开发流程,使用Markov链模型,以概率的形式显示了开发流程中的各种可能路径。通过与业务标准进行对比,发现实际开发过程中存在许多不规范的流程。例如在开发初期,跳过计划环节直接进入开发阶段的概率高达25.2%。更严重的是,43.6%的开发流程未经过代码验证、软件测试和文档整理等阶段就完成了开发过程。使用聚类算法分析了其中常见的几种开发流程,其中均存在与业务规则不一致的情况。针对这些问题,通过加强对软件测试等环节的重视和监管,可以使开发流程更加规范化,从而优化企业软件开发流程。
文献[39]扩展了Markov模型的研究工作,使用时序聚类算法分析了葡萄牙某医院的急救医护流程。时序聚类(sequence clustering)算法使用基于Markov模型的距离度量,将具有相似任务执行序列的流程分为一类。该文献使用时序聚类算法得到含有8类流程模型的聚类图,其中每个节点代表一类流程模型,并标注了对应的支持度,支持度高的聚类表示正常的流程模型,支持度低的节点为异常的流程模型。该文献根据支持度最高的节点得到正常的医护流程,根据聚类图生成最小二分树,通过与正常流程对比并比较相邻模型的Markov链,发现了业务流程在实际执行中的逐渐变异过程。分析发现医治流程中存在医生将病人转交给其他医生的异常情况,违背了医院规定的只能由单个医生负责治疗的业务规则。聚类图清晰地反映了业务执行中的异常情况,为医院加强监管、优化医疗流程提供了有意义的指导。
不同于侧重控制流的基于业务规则的异常检测,基于组织视图的异常检测通过从流程活动参与者的角度分析业务人员的异常交互来发现流程中的异常,使用SNA 等方法分析组织中业务人员的交互关系,检查非常规的人员互动,有助于侦测违反业务规定的非法操作,从而加强企业内部控制。文献[35]研究了流程挖掘在审计领域的应用,使用SNA方法分析由交易人员组成的社交网络,通过检测存在欺诈嫌疑的异常社交互动,如不同职能部门之间员工的异常交互、供应商与某一业务人员的频繁交互等,发现传统审计中难以发现的合谋诈骗行为。基于组织视图的检测有助于审计人员全面洞察客户公司的业务流程,利用交易金额、交易比率和异常交易等指标识别公司的风险活动。
上述研究从不同的视角分析了流程的执行情况,而流程的各个方面并非独立存在,只有将不同的分析方法有机地结合在一起,才能获取全面的流程知识,为流程优化提供深入指导。此外,在流程挖掘过程中,分析人员与业务人员之间的深度交互有助于发现流程问题深层次的原因,提高流程挖掘的有效性。
文献[40]综合利用多种流程挖掘的分析方法,对某保险公司客户服务部门的文档处理日志进行了全面分析。首先从控制流的角度挖掘了流程模型,使用过滤器简化日志,在保证挖掘准确度的同时改进了流程模型的可读性;使用SNA 分析团队之间的协作过程,发现文档处理任务在团队间反复转交形成流程循环,并没有得到及时有效的处理;通过与业务人员讨论,发现文档分类不清晰,导致各个团队职责不明确;通过与优秀的基准模型进行性能对比,验证了分类问题对流程执行总时间的重大影响;提出使用OCR(optical character recognition)来提高文档分类准确性并规范业务人员职责的优化方案。
流程挖掘从流程结构、组织、资源和性能等方面详细分析了流程中的缺陷,以为流程优化寻找机会。但随着企业竞争业务的日趋复杂、市场环境的快速变化,以及企业间合作的日益紧密,目前的流程优化方法难以使企业敏捷、高效地调整流程方案,从而响应客户需求,流程优化的动态性、实时性及跨组织流程优化等问题有待进一步研究。
业务环境的复杂多变对流程挖掘和流程优化研究产生了重要影响。企业的业务流程通常随季节、市场等外部环境发生变化,即出现流程漂移(concept drift)现象[41]。如何在流程挖掘中分析流程漂移现象,帮助管理者动态地掌握流程的运行情况,还需要进一步研究。
企业内部员工间的分工协作、资源的可用性等组织环境也处于不断变化的复杂状态[42]。例如,员工通常处理多个流程实例,员工间的摩擦可能影响流程的进度,高负荷的工作压力会降低员工的业务绩效。目前的组织视图挖掘研究只是从单一、静态的视角出发优化员工间的协作关系和资源分配,并没有形成全面的、动态的流程优化方法;另外,如何定量地评估业务流程的变化与组织结构的适应度,以创建高效、敏捷的企业组织结构,也是动态流程优化需要解决的问题。
流程挖掘通常采用离线方式,从历史数据中挖掘流程知识,改进业务流程,而市场环境的飞速变化要求企业能够实时优化业务流程,快速响应客户的需求变化。
实时的流程优化可以从检测、预测和推荐三方面提高流程效率[3],即通过挖掘流程异常模型,实时检测流程异常;分析历史数据生成预测模型,对流程执行的时间、成本等指标进行预测[43];根据业务规律实时地向业务人员推荐合适的资源、流程模型、最佳时间等,以提高流程的执行效率。实时的流程优化对流程挖掘算法、流程数据质量和企业的计算能力都有较高的要求,如何提升流程挖掘算法的效率,增量式地挖掘流程知识,是实时流程优化需要解决的重要问题。
大数据时代的到来为实时性的流程优化提供了新思路[44]。企业计算能力的提升为挖掘更丰富的流程知识提供了新契机,从社交网站、智能终端中的海量非结构化数据中挖掘用户的行为习惯和用户偏好,指导企业根据用户需求实时地调整业务流程,成为流程优化研究的新方向。分布在各个企业的跨组织流程产生的大数据本身,也对流程分析方法提出了挑战。
随着竞争的激化,企业之间的合作越来越紧密,随之产生的业务模型也越来越复杂,如何挖掘跨组织模型、分析组织之间协作中的问题,还需要深入研究。
通过流程分工进行协作的跨组织业务流程分析,目前的研究重点基本限于跨组织流程模型的发现。进一步分析组织之间协作过程中的信息流动、资源共享、任务分配等信息,可以发现协作中出现的问题。例如,分析跨组织协作中需要共同参与活动的服务等待时间,可以发现因合作中的某一方工作效率低下、资源占用时间长等原因造成的系统瓶颈,进而采取有针对性的流程优化方案。对于共享流程知识的协作模式,目前的研究工作局限于基于最佳实践的优化。如何根据流程相似度、流程质量等度量,自动向管理者提供行业最佳实践,还有待进一步研究。
目前流程挖掘在流程优化的应用,一般还是考虑单个流程模型的分析。对多个相关流程综合分析流程的结构、组织、资源分配和业务规则等问题,将在更深层次、更大范围改进流程的性能。另外,利用云计算的优势,为共享基础资源的企业提供流程知识,也是未来业务流程优化的一个方向。
本文归纳了近年来流程挖掘在流程优化中的应用研究成果,结合典型的文献,从流程结构、组织结构、资源分配和异常检测等多个方面系统地介绍了使用流程挖掘改进业务流程的方法,并针对目前研究工作中存在的问题,指出了未来的发展方向。总之,流程挖掘需要从多个角度对业务流程进行全面、综合地分析。基于流程挖掘的流程优化取得了初步进展,但目前还存在诸多问题。基于流程挖掘的优化总体趋势是:挖掘更复杂的流程模型,进行跨组织、分布式的流程模型分析,从多视角综合分析流程并对运行中的流程数据进行实时、动态的分析。随着流程挖掘研究的不断深入,使用流程挖掘技术改善业务流程将得到更多的重视。
[1]VAN DER AALST W M P,WEIJTERS T,MARUSTER L.Workflow mining:discovering process models from event logs[J].IEEE Transactions on Knowledge and Data Engineering,2004,16(9):1128-1142.
[2]VAN DER AALST W M P.Process mining:discovery,conformance and enhancement of business processes[M].Berlin,Germany:Springer-Verlag,2011.
[3]VAN DER AALST W M P,ADRIANSYAH A,DEMEDEIROS A K A,et al.Process mining manifesto[M]//Business Process Management Workshops.Berlin,Germany:Springer-Verlag,2012:169-194.
[4]MANS R S,SCHONENBERG M H,SONG M,et al.Application of process mining in healthcare-a case study in a Dutch hospital[M]//Biomedical Engineering Systems and Technologies.Berlin,Germany:Springer-Verlag,2009:425-438.
[5]VAN DER AALST W M P,REIJERS H A,WEIJTERS A J M M,et al.Business process mining:an industrial application[J].Information Systems,2007,32(5):713-732.
[6]BAUTISTA A D,WANGIKAR L,AKBAR S M K.Process mining driven optimization of a consumer loan approvals process[C]//Proceedings of Business Process Management Workshops.Berlin,Germany:Springer-Verlage,2013,132:219-220.
[7]LEMOS A M,SABINO C C,LIMA R M F,et al.Using process mining in software development process management:a case study[C]//Proceedings of International Conference on Systems,Man,and Cybernetics.Washington,D.C.,USA:IEEE Press,2011:1181-1186.
[8]GERKE K,MENDLING J,TARMYSHOV K.Case construction for mining supply chain processes[C]//Proceeding of the 12th International Conference on Business Information Systems.Berlin,Germany:Springer-Verlag,2009,21:181-192.
[9]GOEDERTIER S,DE W J,MARTENS D,et al.Process discovery in event logs:an application in the telecom industry[J].Applied Soft Computing,2011,11(2):1697-1710.
[10]HU Haiyang,ZHANG Xiaofi,HU Hua,et al.Decision support method based on process mining[J].Computer Integrated Manufacturing Systems,2013,19(8):1755-1770(in Chinese).[胡海洋,张笑菲,胡 华,等.基于流程挖掘的决策支持方法[J].计算机集成制造系统,2013,19(8):1755-1770.]
[11]VAN B N R T,MARUSTER L.A process mining approach to redesign business processes-a case study in gas industry[C]//Proceedings of International Symposium on Symbolic and Numeric Algorithms for Scientific Computing.Washington,D.C.,USA:IEEE Press,2007:541-548.
[12]SONG M,VAN DER AALST W M P.Towards comprehensive support for organizational mining[J].Decision Support Systems,2008,46(1):300-317.
[13]ROZINAT A,DE J I S M,GUNTHER C W,et al.Process mining applied to the test process of wafer scanners in ASML[J].IEEE Transactions on Systems,Man,and Cybernetics,2009,39(4):474-479.
[14]SUBRAMANIAM S,KALOGERAKI V,GUNOPULOS D,et al.Improving process models by discovering decision points[J].Information Systems,2007,32(7):1037-1055.
[15]POGGI N,MUTHSAMY V,CARRERA D,et al.Business process mining from E-commerce Web logs[C]//Proceedings of the 11th International Conference of BPM.Washington,D.C.,USA:IEEE Press,2013,8094:65-80.
[16]GUPTA S.Workflow and process mining in healthcare[D].Eindhoven,the Netherlands:Eindhoven University of Technology,2007.
[17]FERREIA D R,ALVES C.Discovering user communities in large event logs[M]//Process Management Workshops.Berlin,Germany:Springer-Verlag,2012:123-134.
[18]LI M,LIU L,YIN L,et al.A process mining based approach to knowledge maintenance[J].Information Systems Frontiers,2011,13(3):371-380.
[19]LIU R,AGAWAL S,SINDHGATTA R R,et al.Accelerating collaboration in task assignment using a socially enhanced resource model[C]//Proceedings of the 11th International Conference of BPM.Berlin,Germany:Springer-Verlag,2013,8094:251-258.
[20]DUSTDAR S,BHATTACHARYA K.The social compute unit[J].IEEE Internet Computing,2011,15(3):64-69.
[21]ENGEL R,VAN DER AALST W M P,ZAPLETAL M,et al.Mining inter-organizational business process models from edi messages:a case study from the automotive sector[C]//Proceedings of the 24th International Conference on Advanced Information Systems Engineering.Berlin,Germany:Springer-Verlag,2012,7328:222-237.
[22]EDGINGTON T M,RAGHU T S,VINZE A S.Using process mining to identify coordination patterns in IT service management[J].Decision Support Systems,2010,49(2):175-186.
[23]ZENG Q,SUN S X,DUAN H U A,et al.Cross-organizational collaborative workflow mining from a multi-source log[J].Decision Support Systems,2013,54(3):1280-1301.
[24]MANS R,SCHONENBERG H,LEONARDI G,et al.Process mining techniques:an application to stroke care[J].Studies in Health Technology and Informatics,2008,136-573.
[25]BUIJS J C A M,VAN DONEN B F,VAN DER AALST W M P.Towards cross-organizational process mining in collections of process models and their executions[C]//Proceedings of the BPM 2011International Workshops.Berlin,Germany:Springer-Verlag,2012,100:2-13.
[26]LY L T,RINDERLE S,DADAM P,et al.Mining staff assignment rules from event-based data[C]//Proceedings of the BPM 2006International Workshops.Berlin,Germany:Springer-Verlag,2006,3812:177-190.
[27]RINDERLE S.VAN DER AALST W M P.Life-cycle support for staff assignment rules in process-aware information systems[R].Eindhoven,the Netherlands:Eindhoven University of Technology,2007.
[28]HUANG Z,LU X,DUAN H.Mining association rules to support resource allocation in business process management[J].Expert Systems with Applications,2011,38(8):9483-9490.
[29]BOSE R P J C,VAN DER AALST W M P.Process mining applied to the BPI challenge 2012:divide and conquer while discerning resources[C]//Proceeding of the BPM 2012International Workshops.Berlin,Germany:Springer-Verlag,2013,132:221-222.
[30]HUANG Z,VAN DER AALST W M P,LU X,et al.Reinforcement learning based resource allocation in business process management[J].Data &Knowledge Engineering,2011,70(1):127-145.
[31]LIU Y,WANG J,YANG Y,et al.A semi-automatic approach for workflow staff assignment[J].Computers in Industry,2008,59(5):463-476.
[32]AKHIL K,REMCO D,MINSEOK S.Optimal resource assignment in workflows for maximizing cooperation[C]//Proceedings of the 11th International Conference of BPM.Berlin,Germany:Springer-Verlag,2013,8094:4-9.
[33]NAKATUMBA J,VAN DER AALST W M P.Analyzing resource behavior using process mining[C]//Proceedings of the BPM 2009International Workshops.Berlin,Germany:Springer-Verlag,2010,43:69-80.
[34]HUANG Z,LU X,DUAN H.Resource behavior measure and application in business process management[J].Expert Systems with Applications,2012,39(7):6458-6468.
[35]JANS M,ALLES M,VASARHELYI M.The case for process mining in auditing:sources of value added and areas of application[J].International Journal of Accounting Information Systems,2013,14(1):1-20.
[36]JANS M,VAN DER WERF J M,LYBAERT N,et al.A business process mining application for internal transaction fraud mitigation [J].Expert Systems with Applications,2011,38(10):13351-13359.
[37]CARON F,VANTHIENEN J,BAESENS B.Comprehensive rule-based compliance checking and risk management with process mining[J].Decision Support Systems,2012,54(3):1357-1369.
[38]SWINNEN J,DEPAIRE B,JANS M J,et al.A process deviation analysis-a case study[C]//Proceedings of the BPM 2011International Workshops.Berlin,Germany:Springer-Verlag,2012,99:87-98.
[39]REBUGEÁ,FERREIRA D R.Business process analysis in healthcare environments:a methodology based on process mining[J].Information Systems,2012,37(2):99-116.
[40]DE WEERDT J,SCHUPP A,VANDERLOOCK A,et al.Process mining for the multi-faceted analysis of business processes-a case study in a financial services organization[J].Computers in Industry,2013,64(1):57-67.
[41]BOSE R,VAN DER AALST W M P,ŽLIOBAITE I,et al.Dealing with concept drifts in process mining:a case study in a Dutch municipality[J].IEEE Transactions on Neural Networks and Learning Systems,2013,25(1):154-171.
[42]VAN DER AALST W M P,DUSTDAR S.Process mining put into context[J].IEEE Internet Computing,2012,16(1):82-86.
[43]VAN DER AALST W M P,SCHONENBERG M H,SONG M.Time prediction based on process mining[J].Information Systems,2011,36(2):450-475.
[44]GAO X.Towards the next generation intelligent BPM-in the era of big data[C]//Proceedings of the 11th International Conference of BPM.Berlin,Germany:Springer-Verlag,2013,8094:4-9.