探索中国CIO人才现状 | 第四季调研报告
企业BPM统一流程平台的设计
2013-11-27  作者:CIO时代网 

  1问题提出


  信息时代,现代企业管理通常都采用管理信息系统。实践表明,常规的企业管理信息系统开发方式往往存在对需求表达不清晰、效率不高。主要表现以下几个方面:


  1.1工作流引擎能力重复建设


  大多数企业都有各类型业务应用系统,例如ERP、办公系统、电子报帐系统、知识管理平台、HR系统、合同管理系统、供应链系统等,这些系统都有各自的流程业务、相对独立、无法自动衔接等问题。功能强大的系统一般都具有独立流程引擎功能,每个引擎都是相互独立和无法交互,以人机交互为例,各个应用系统中都具有审批流程的能力,也都具有人员待办的活动节点,这样大量的人机交互能力散落在各应用系统内,导致各应用系统对用户角色的配置和同步要求不统一。


  1.2跨系统流程平台产品集成能力较差


  有些大公司内部建立了BPM系统,但未承载跨系统的流程无法实现系统间的异构、交互,造成跨应用流程衔接不畅的主要原因是各应用系统的建设均是从自身立场和角度出发,未从企业级流程的角度审视业务流程在IT系统中的承载,造成流程以系统边界分裂;另外系统往往只关注其对部门职能的支撑,而对企业流程和部门协作较为忽视。


  1.3端到端流程无法贯通监控


  从管理和运维角度看,因系统无法统揽大局,会造成不同的业务管理人员只能监控到端到端流程中的某一子段的运行情况,如“谈判审批”子段的运行情况,而无法监控到全流程的执行情况和相关绩效。由此带来的诸多问题会严重影响到“精细化管理和业务流程流程持续优化”的业务目标实现,导致业务管理人员无法从全景视图监控业务,导致业务管理人员无法掌控全流程的执行情况。


  1.4繁多的流程引擎采用的技术标准不一


  国内外工作流引擎通常有多种,其中有SOA/BPEL流程标准、WfMC/XPDL流程标准等,还有自设计未使用技术规范标准或满足部分技术规范标准。这些工作流引擎互相间较难实现衔接、结合和集成,即使是都是使用WfMC/XPDL规范实现的引擎,由于各自对引擎能力的建设程度也不一,局限在满足自身应用需求,使用方式和API也各不相同,因此也没有很好的办法直接进行流程集成。


  2平台实现目标


  为解决上述问题,本文在对企业业务流程管理进行深入研究后,规划了一套规范的、高效的“企业BPM统一流程管理平台”。该平台旨在整合现有企业数据、软硬件设备等多方资源,最大限度发挥企业信息化效率和价值。企业BPM统一流程平台从以下几个面着手:


  基于对企业业务流程管理的需求,遵循WFMC工作流参考模型中各功能部分的技术要求,以及SOA体系下业务流程管理要求框架的核心部分,建立统一业务流程的技术框架,去实现企业的信息流不仅可以在一个应用系统内部流动,更可以穿透各个应用系统进行流动,推动计划、供应链、财务、人力资源、战略与决策等核心业务流程的有机融合,支撑企业的业务融合战略。


  2.2实现统一部署、能力复用的BPM平台


  建立物理上统一部署的,可以被多个应用所共享使用的“共享式”业务流程平台.


  在这种“共享式”BPM平台使用过程中,为了支撑不同应用的特定需求,还需要特别考虑到不同应用的要求,如数据物理隔离要求、服务运行质量保障要求、组织机构模型差异化要求等,可以通过流程服务器“单引擎实例模式”和“多引擎实例模式”来进行部署,从而实现不同要求。


  2.3集中任务处理,提升用户操作体验


  集中任务处理中心是对BPM平台及各业务应用中的任务通过其中注册的“任务代理”推送到集中任务中心,其中几个关键点是支持多种流程应用中的任务接人、支持任务推送的可靠性、支持任务的转历史机制。


  2.4统一流程监控、流程服务和审计


  流程运行期的管理和监控也是实现BPM统一平台的关键,要实现端到端流程贯通的统一监控,甚至是基于多个流程产品实现的流程,可以做到对基于异构BPM产品所实现的子段流程的钻取监控,以及实现对其的人工干预,如挂起/恢复/终止等。


  在BPM平台中,基于跨系统的流程服务调用和应用服务调用的审计和监控能力,可以通过逐点排查和分析统计的方式快速定位流程执行过程中发生的故障,提供强大的运维支撑能力。基于调用栈的流程/服务调用审计日志,并且提供图形化的审计日志查看工具,迅速找到可能故障点,在发生故障时可以通过email或短信进行通知。


  3平台设计框架与实施


  3.1平台功能框架


  BPM平台业务流程管理分为基本功能部分和扩展功能部分。其中,基本功能部分包括基础支撑(业务流程引擎,业务规则引擎以及系统管理与维护),运行时环境(系统/组件的连接、用户/客户端应用的交互以及业务活动监控和业务事件管理),以及设计时环境(业务流程的建模和设计、业务规则管理部分内容以及功能组件的注册、发布与管理);扩展功能部分则包含一些扩展接口、业务流程引擎扩展能力、业务流程的仿真与优化,以及多租户服务能力。


  统一流程管理平台的功能模块包括实现BPM全生命周期的支持,包括建模与设计、部署与执行、监控与分析、优化与调整等环节。


  3.2系统部署模式


  BPM统一流程平台的部署最好不与现有业务应用混杂,即使投资限制无法提供满足高性能的设备,也争取利用现有设备将统一流程平台独立部署。


  BPM统一流程平台部署的特点主要有:


  (1)平台应用部署与不同应用系统部署的逻辑服务器分离,可在新服务器Web应用中;(2)平台数据库与流程业务数据库系统分离;(3)平台流程引擎与业务系统之间通过远程服务方式调用,事务一致性处理方式需要通过业务补偿的方式进行;(4)平台与应用之间引入企业服务总线,实现对多系统的流程整合。


  4BPM平台的创新


  经过规划设计与论证,BPM平台将实现一定程度的理论创新、应用创新和技术创新,能够较大地提升企业的信息化竞争力和管理效率。


  4.1理论创新


  将BPM生命周期划分为六个阶段:业务流程梳理、业务流程建模、业务流程执行、业务流程监控、业务流程分析、业务流程优化等。通过构建统一的需求引擎、构造引擎和流程运行控制引擎,来适应不同的业务系统之间的流程穿越,灵活提取公共流程和子流程,从而对流程集中管理、统一监控和处理,同时能让计算机自动根据用户需求来安排工作,自动化地将管理流程业务工作结合在一起。


  4.2应用创新


  建立统一流程平台,能有效地对战略与决策支持管理域、计划与预算管理域、供应链管理域、财务管理域、人力资源管理域和企业综合管理域等多个管理域的流程进行集成,对平台中的应用服务和流程服务进行抽取,并注册到企业服务总线中,达到了充分复用用户已有的流程资源的目的:


  (1)实现跨应用系统的工作任务的集中处理,实现统一待办;实现统一业务流程的统一建模、统一监控分析,实现端到端的流程管理监控;(2)基于LDAP目录服务技术完成的统一用户管理系统,对现有系统资源进行了很好的整合,实现了对企业中用户身份的统一管理,有效解决用户权限管理和身份认证的问题,减少多系统、多权限的繁琐;(3)实现跨系统流程用及务调用的审计和故障排查,能在系统运维期间使用户更全面的掌握流程轨迹、执行时间、异常环节等关键点。


  4.3技术创新


  4.3.1采用成熟技术的集成,使平台稳定


  基于面向服务的架构(SOA)体系架构+企业服务总线(ESB)实现各个业务服务的集成,能灵活的编排并转换协议,降低系统间的耦合;基于LDAP的统一用户认证,提供了快速响应大容量访问和广泛复制的能力,充分提高统一用户管理系统的可扩展性、可靠。


  4.3.2建立流程开发和整合的技术体系和规范标准


  建立一套统一流程规范来指导设计与实施。通过流程技术规范,一方面明确建立流程梳理、建模、设计、开发、部署、管控的一体化过程规范与方法,以及各个活动的执行原则与指导;另一方面,明确定义各应用子段流程的衔接规范、服务梳理和抽取的规范、服务及UI改造的规范等。


  4.3.3构建不同的引擎对流程的生命周期进行分解和设计


  通过构建需求引擎、构造引擎和流程运行控制引擎,构建一个统一的智能流程平台,来适应不同的业务系统,实现不同业务系统之间的流程穿越,能提取公共流程和子流程,从而对流程集中管理、统一监控和处理,同时能让计算机自动根据用户需求来安排工作,自动化地将管理流程业务工作结合在一起。


  5结束语


  企业BPM统一流程平台的设计是针对企业信息化的实际需求,根据一年多现实环境的运用分析,能够为企业的流程从调研、开发、测试、上线运行、调优等整个生命环节建立了一套完善的规范,提供了一系列的解决方案,为企业今后与第三方的流程开发商合作提供了强大的技术基础。平台不仅发挥了统一用户、统一待办、统一建模、统一监控等具体功能,更重要的还建立了一个多个应用系统集成的统一流程共享平台,改善企业的流程复杂度,大大提高了企业的工作效率。


  BPM平台的设计和实现,不仅能适用于有跨多个应用系统的流程业务的大型企业,例如电信企业、保险公司、银行、医疗和政府机构等,还适用于中小型企业来完成企业内部的采购、销售、项目管理、公文审批等需求。