yinxin
作者yinxin·2015-04-15 20:42
项目经理·某金融机构

业务流程管理工具的概览和比较分析

字数 8699阅读 1718评论 0赞 0
业务流程管理工具的概览和比较分析

BPM 是 Business Process Management 即业务流程管理的缩写,业务流程也称作经营流程是为了实现一定的经营目标而把制定、执行、监控、优化等一系列逻辑相关的活动的进行集合,使得业务流程的输出满足是满足市场需要的产品或者服务,属于运营管理方面。在 IT 业界,越来越多的产品线层出不穷为实现 BPM 的方法提供快捷方便灵活的服务。比如 SmartBPM suite, webMethods, IBM Websphere Lombardi, IBM FileNet P8, jBPM … 我们如何选择更符合用户需求,更能提高优化公司效率,更节省本的产品, 这样就需要对这些产品有更详细的调研和评估。分析他们各自的优势在哪里,采用哪种开发工具能更好的满足用户商业和成本的需求。 本文主要针对这几个产品的核心优势,进行对比分析,为需要这方面调研的读者提供详细和集成的信息。

BPM 系统架构介绍

一般来说 BPM 所代表的方法论能用以下四种不同方法实现:1)面向工作流的 BPM 2) 面向文档的 BPM 3) 面向业务规则的 BPM 4)面向 EAI 的 BPM。这四种方法有各自的侧重点,相应的在 IT 业界也有不同的产品针对这四种方法提供特色服务。本文的目的在于让读者更好地从不同的角度来分析四种方法实现中的主流产品,更好地解读他们各自的特点和长处,根据自己的业务需求选取合适的产品来构建和优化自己特有的业务流程。

典型的 BPM 系统架构如下图所示:其中流程设计器和流程存储(包含 Content Management 内容管理)对应的是工作流的设计和运作以及文档的结构和展现形式,是集中实现四种方法中的 1)面向工作流和 2)面向文档的关键模块。规则引擎和模拟 / 分析模块对应的功能是通过提取商业模式中的规则,结合人工智能的研究成果,建立模型,然后生成可用的业务逻辑代码,起着建立模型的作用,是实现 3)面向业务规则的模块,一旦规则有所改变则能迅速高效地自动产生新的逻辑代码,是随需应变中不可或缺的一环。其它的模块,如组织目录系统、流程存储、流程服务器、应用程序、用户环境等,都属于 4)面向 EAI(Enterprise Application Integration 企业应用集成)的部分,使得企业中已经存在的多个系统能在逻辑上集成为工作流的一部分,并且各个系统中的数据在集成后都可以被其它系统引用和访问,提高了文档数据的商业价值上的可读性。

图 1. BPM 系统架构图 1. BPM 系统架构

而 BPM 所包含的各项活动也可以分成六个阶段进行,这也是 BPM 系统所遵循的生命周期,如下图所示:

  1. Vision(愿景):包括企业或者组织的战略定位和目标设定,一般来说,规范流程,提高效率,节省成本,快速响应变化的市场需求等,一般由管理团队制定,并定下可度量的标准。
  2. Design (设计):从这个阶段开始 BPM 团队开始全面进入,针对不同行业的竞争现状,找出企业自身的优势和劣势,摒弃冗余、繁琐、低效的流程,设计新的流程,使得企业内部各部门都能无缝式协同工作,提高效率。
  3. Modeling(建模):通过建模来模拟和分析各种设计带来的可能的结果,结合现有系统的整合结果,确立模型。
  4. Execution(执行):把新建立的模型(包括流程,文档设计等)作为一个整体的解决方案部署到企业中去,并在日常运营中使用。
  5. Monitoring(监控):设定一个试运营的时间段,对新模型进行监控,出现异常情况时,记录下来,作为进一步调整模型的基础。
  6. Optimization(优化):根据对新模型的实际运营结果的反馈,对模型进行调整和优化,如果反馈表明模型无法通过调整和优化达到在 Vision 中预设的目标,可能需要重新回到第二步 Design。

图 2. BPM 生命周期图 2. BPM 生命周期

业界主流的 BPM 应用软件对以上四种实现方式的支持各有所长,有的包括了 BPM 典型的体系结构中四大关键模块中的一种或者两种,有的甚至包括了全部四种,接下来我们根据具体的产品来分析它们各自的特点。

IBM BPM 7.5

IBM BPM7.5 是 IBM 的一款简单便捷的工作流开发工具, 通过引入了共享流程模型、简洁的版本控制、集成开发平台、流程工具包和回放等功能,彻底改变了传统业务流程管理方式,使得不同角色的流程用户可以在同一集成平台上对流程进行建模、迭代开发以及流程分析与优化等操作,加强了不同角 色人员之间的协作,大大缩短了流程开发的时间。通过将 IBM WebSphere Process Server(业界简称 WPS) 和 IBM WebSphere Lombardi Edition(业界简称 Lombarid)整合,使 IBM BPM 7.5 更好的和 IBM 其他业务流程工具更好的集成,提供流程管理和 IT 资产整合的强大功能。

图 3. Lombardi 的拓扑结构图和产品组件图图 3. Lombardi 的拓扑结构图和产品组件图

  1. Process Center - 提供一个中心开发环境 , 包括 Process Center Server 和 Performance Data Warehouse, 允许你构建和运行应用,而且还可以存储用来测试和重放的性能数据,优化出最佳效果。
  2. Process Server – 用于执行流程和内嵌在 Process Designer 中的服务,它们存储在 Process Center 容器中,然后安装在 runtime 环境。
  3. Performance Data Warehouse – 按照在 Process Designer 定义好的跟踪请求,收集流程数据。
  4. Process Center Console – 用于管理和维护 Lombardi 容器,包括管理应用、工作空间和快照。还可以在这里把应用安装到 runtime 环境中的 Process Server 上。
  5. Process Designer – 前期的版本被叫做 Authoring Environment, 你可以在 Process Designer 里对你的商业流程建模、实现、评估和调查。
  6. Process Portal - 提 供一个交互界面,你可以用它给你的流程参与者分配任务,查看历史任务,查看这些流程和小组的性能。
  7. Process Admin Console - 管理员可以用它配置和维护 runtime 环境上的 Lombardi Process Server,例如测试环境或者生产环境。管理员还可以用它配置和维护 Process Center Server。
  8. Performance Admin Console - 管理员可以用它配置和维护 runtime 环境上的 Lombardi Performance Data Warehouse,例如测试环境或生产环境,管理员还可以用它配置和维护包括在 Process Center 里的 Performance Data Warehouse。

IBM BPM7.5 在流程管理监控、SOA 资源整合以及协同开发这三方面的特点:

  • 基于共享模式的协同开发:便捷的前端页面开发,随时调试,回放以及集中式流程管理和快速部署,将流程的开发根据用户角色分成不同的阶段,不同阶段有不同的目标,不同阶段之间相互影响。使得不同角色人员之间的协作更加紧密,更加有利于业务流程的实施,缩短流程开发的时间。BPM 全生命周期管理:通过流程状态监控、内嵌报表、自定义报表、节点等待和执行时间、流程分支执行比例来监控业务收据,分析和优化业务流程。
  • BPM 全生命周期管理:通过流程状态监控、内嵌报表、自定义报表、节点等待和执行时间、流程分支执行比例来监控业务收据,分析和优化业务流程。
  • 强大的整合能力:除了 Lombardi 自身提供的与 Java 和 WebService 的基本整合能力,Integration Designer 继承于 WPS 的开发工具 WebSphere Integration Developer,基于面向服务 (SOA)的架构 为整合复杂的业务流程提供了一套高级的注重于整合数据和应用 IT 解决方案。

图 4. 基于共享模型的协同开发环境图 4. 基于共享模型的协同开发环境

IBM BPM 7.5 提供了业界领先的版本管理功能。但是目前还不能支持内容管理功能,如果有内容管理的业务需求, 需要和其他内容管理软件集成来实现。

webMethods

webMethods 由 Software AG 公司开发的一款业务流程开发管理工具,它和 SoftwareAG 的其他产品集结合(例如数据库管理系统 ARIS)实现了从业务流程评估、分析、建模、IT 规划到 IT 落地、实施、执行、治理、监控的端到端的集成解决方案。 webMethods 业务流程管理套件联合了领先的 BPM 和 SOA 能力,为企业提供了一套综合的,充分集成的,用于自动化和流程管理的工具。在这个分工协同的环境中,业务与 IT 能够协同设计,模拟,测试并部署流程,然后对这些流程进行实时监控,通过整合全企业的所有资源来优化流程,这些资源包括企业人员,系统和文件。这一工具适用于任何流程优化项目。

webMethods 平台由 3 类组件构成:

  1. 运行时组件 – 用于执行业务流程,并在资源间传送消息,转换盒验证数据,执行集成逻辑。主要包括:IS(Integration Server)、Broker、Adapters、Mainframe、Trading Networks 和 Workflow 等。其核心结构如下图所示: 图 5.webMethods 核心结构图图 5.webMethods 核心结构图
    • IS(Integration Server)基于面向服务 (SOA)的架构 , 用于集成和整合数据,逻辑和应用系统。
    • Broker 作为一个高速路由器,来传递匿名异步消息。
    • Adapter 用于整合企业后台资源、数据和业务逻辑,包括连接资源、管理通信、对数据进行编码和解码、以及通过资源 API 调用进程。
    • Mainframe 位于 IS 和主机之间,通过 TCP/IP 或 SNA 网络与主机通信。
    • Trading Networks 是 IS 的一个附加组件,用于实现外部客户系统的信息交换,支持 SOAP、 UDDI、XML、HTTP 等信息标准。下图是 Trading network 的整合开发环境: 图 6.Trading network 整合开发环境图 6.Trading network 整合开发环境
    • Workflow server 用于执行业务流程。
  2. 设计时组件 – 图形界面工具组,主要用于商业流程建模,设计和开发。包括 webMethods Modeler、 Workflow Designer, 、webMethods Developer。下图是这 3 个图形界面工具的简单演示。 图 7.webMethods 设计组件图形界面图 7.webMethods 设计组件图形界面
  3. 管理组件 – 用于配置,管理和监控平台上的业务流程和集成解决方案。主要包括 Administrator、 Monitor、Manager。

以下是 webMethods 的特点:

  • webMethods 业务流程管理套件集成了一个行业领先的来自 FICO 的业务规则管理解决方案。凭借此方案,一旦市场规范和动态操作发生改变,IT 和业务部门的利益相关者能够定义并改变驱动流程的规则,通过把规则从应用程中分离来增加灵活性。还可以重复利用已经建立的元数据,例如,流程、子流程、服务和规则等。同时通过模拟的绩效视图来识别潜在的瓶颈,并使流程效用最大化。
  • 企业级的企业集成,包括企业服务总线 ESB,一种高速的信息中枢和 B2B 网关。该平台还能提供电子数据交换 EDI 的协同支持,以及应用程序适配器,使以系统为中心的流程和任务更加便捷。并提供市场领先的 SOA 治理平台。支持多达 50 种标准,涵盖了各种版本的 SOAP、WSDL、UDDI、网络服务、XML 和 HTTP。
  • 统一的基于 Eclipse 的流程开发设计工具,任何人都可以使用该工具快速设计流程,只需简单的拖放一些要素和文件,这使得IT和业务人员协作变得非常容易,能够快速搭建流程。开发者能够通过与业务分析者的紧密协作来快速创建并改变流程。 
  • 内容管理,对于涉及到文件和格式的业务流程,webMethods BPMS 不仅可以支持多数通用的格式(包括 Microsoft,Infopath 和 Adobe)解决方案,并且嵌入了文件管理功能。而且可以对文件的历史进行追溯,包括文件等级和版本的全生命周期管理。
SmartBPM Suite

SmartBPM Suite 是 PeagaSystem 公司提供的一个基于规则驱动的业务流程管理平台,其主要功能在于帮助制定业务计划,管理整个生命周期的业务流程。SmartBPM Suite 基于自动化决策引擎 PegaRULES, 在一个整合的包中提供流程和练习规则, 让用户能够高效的开发,执行,管理,维护和扩容他们自己的基于规则的 BPM 应用程序。作为规则驱动流程自动化市场的领导者,Pegasystems 已经建立了分布在全球的各个行业的企业解决方案,它们包括零售、电力、制造、旅游和酒店业,以及先进的金融服务和医疗保健机构。

SmartBPM 套件由多个产品构成,依照不同的行业、不同的业务进行组合。这个套件包含以下组件:

  1. PegaRULES 规则引擎 - 是 SmartBPM 的核心。在 Pega 中,所有的都是规则,而不仅仅是我们传统意义上用来判定决策的“业务规则”。事实上,从任务指派、展现表单、业务活动监控、安全模型、集成等等都是规则。
  2. PegaRULES Process Commander 业务流程引擎 - 是一款纯 J2EE 的流程引擎。
  3. Process Simulator - 是 SmartBPM 的业务流程仿真工具,利用该工具来进行仿真分析并优化。
  4. Process Analyzer - 基于 OLAP,依照其创建的多维数据模型对业务活动进行分析。
  5. Solution Framework - 针对不同行业构建的相对应的解决方案框架,这些框架包括特定行业的行业数据模型标准,例如 COSO、 COBIT、 ACORD、 HIPAA 等;行业通用的业务流程、表单以及跨行业的法规遵从模块、IT、HR 管理模块、呼叫中心以及信用卡服务等。

以下是 SmartBPM 的特点:

  • 基于 PegaRULES 的业务规则引擎产品,提供了最基础的规则和流程管理功能。在此基础上,Pega 针对不同的业务领域提供了相应的产品。
  • 基于 Web 的共享模式的协同开发使 IT 人员和业务人员共同工作,提高效率。
  • 内嵌的规则和业务逻辑 以及简单的版本控制 ,使得代码需求达到最低。
  • 业务活动监控, 自动快速定位业务流程中的瓶颈。同时具有独特的,创新性的 debug 和跟踪工具。
  • 流程引擎基于纯 J2EE,因此具有非常好的开放性。
FileNet P8

FileNet P8 BPM(Business Process Management) 是 IBM 新一代的、统一的企业级内容和流程管理平台,它包含广泛的产品和服务,帮助用户在面向服务架构(SOA)的环境中构建、部署、运行和管理企业的内容和流程。它在分布式,可获取性,可调控性,安全,标准化等诸多方面都有很强的表现。它包含三大产品组:内容管理,流程管理和记录管理。流程管理包含流程配置控制台,流程设计器,流程引擎,应用引擎等产品和应用。相对于 IBM BPM7.5,FileNet P8 更侧重于企业内容管理和以人为中心的流程管理。尽管它有一个自带的流程管理器和流程跟踪器来监控和管理运行时流程,但这两个应用比较适合于专业的 IT 人员,而且界面风格比较固定和单一,难以适应企业多变的需求。

这个图展示了 IBM FileNet P8 的整体架构,其中 BPM 是其中的重要组成部分。

图 8.IBM FileNet P8 架构图图 8.IBM FileNet P8 架构图

FileNet 提供了如下 BPM 核心组件:

图 9.FileNet 的 BPM 核心组件图 9.FileNet 的 BPM 核心组件

  1. 流程引擎 - 负责管理各个方面的业务流程 ,如流程执行、进程路由、规则管理、过程模拟和建模和工作流程分析。流程引擎组件允许您创建,修改和管理工作流程执行的应用,企业用户,或外部用户。
  2. 应用引擎 - 内嵌 Workplace Web 应用程序、Workplace 的 Java 程序和应用开发工具。
  3. 内容引擎 – 用来处理的大量需求的大型企业。它有能力管理整个企业的工作对象,自定义对象和文件,可以提供强大的和易于使用的系统管理工具。使用这些工具,管理员可以创建和管理的类别、性质、存储和数据,形成了基础企业内容管理系统。
  4. P8 eForms - 帮助用户设计、管理和处理用于企业内容管理(ECM)的电子表单。它的设计环境功能强大,无需编写代码或后端脚本。
  5. 流程分析器 - 提供的分析能力,找到性能瓶颈, 生成报告和图表。
  6. 流程模拟器 –用于模拟程序、执行假设或历史数据。
  7. 流程跟踪器 - 对正在运行的流程,提供监控和跟踪的功能。并且提供流程状态和历史视图,以及完整的流程工作状态图。
  8. 流程设计器 - 是一个基于 Web 的图形设计工具。用来完成工作流的设计、逻辑关系的验证和工作流的启动。能够和 Microsoft visio 整合提供流程定义和导入导出功能。(如下图所示)

图 10.visio 流程定义和导入导出功能图图 10.visio 流程定义和导入导出功能图

以下是 FileNet P8 的特点:

  • 全面的 process 管理,其中包括 process 建模、高级分析、模拟和业务活动监控。 自动化的 process 异常管理, 对于内部事件和客户需求,能够提供敏捷,及时的响应。
  • 与其他 IBM 企业级内容管理解决方案整合。
  • 通过分析和模拟来优化流程。
  • 通过对完整的流程模板和设计自动化来提高生产力,节省成本。
  • eForm 和内容管理和业务流程整合, 提供便捷的,不用开发前端页面。
jBPM

Jboss jBPM,全称是 Java Business Process Management( 业务流程管理 ),它覆盖了业务流程管理、服务协作等领域, 是一个开源的、灵活的、易扩展的流程管理套件,使用它要遵循 Apache License。 jBPM 在 2004 年 10 月 18 日,发布了 2.0 版本,并在同一天加入了 JBoss,成为了 JBoss 企业中间件平台的一个组成部分,它的名称也改成 JBoss jBPM。和 FileNet 一样,jBPM 的开发更适合于专业技术人员。

JBoss jBPM 的核心架构如下图所示:

图 11.Jboss JBPM 核心架构图图 11.Jboss JBPM 核心架构图

  1. 核心流程引擎 - 是执行业务流程的轻量级的工作流引擎, 也是整个 jBPM 的核心。它可以被嵌入在你的应用程序里或者作为一个单独的服务被部署。通常核心服务和其他独立的服务整合提供人机交互或日志管理的功能。
  2. Human Task Service – 作为一个独立的服务,用于管理在流程中需要人机交互的操作,例如,基于规则分派任务、上报、下发任务等。
  3. 历史日志 – 作为一个独立的核心服务,用于保存所有现有的和历史的流程执行信息。可用于监控、分析和优化流程。
  4. Eclipse Editor – 基于 Eclipse 的流程开发工具。其界面如下图所示: 图 12.JBoss 开发界面图图 12.JBoss 开发界面图
  5. Web-Based Designer – 基于 Web 的流程开发工具。其界面如下图所示: 图 13.JBoss jBPM 流程开发界面图图 13.JBoss jBPM 流程开发界面图
  6. jBPM Console – 以 Web 控制台的形式来管理用户和其他主要功能,例如 Human Task、 Process Instance、Reporting 等。

JBoss jBPM 的特点:

  • 通过 pvm(process virtual machine) 支持多种流程定义语言 BPEL、XPDL、BPMN、JWT 以及自定义 JPDL。
  • 利用可扩展的 Event-Action 机制,灵活的条件表达式机制,可扩展的 Task 分配机制,使得系统结构更加清晰, 扩展更加灵活,并且能够处理更加复杂的人工活动。
  • 灵活的 Node 机制,使得开发人员可以很容易定制业务化语义的节点,并满足运行时候处理的需要。
  • 借助 Hibernate 的 ORM 的优势,JBPM 能够很容易支持多种数据库。

JBoss jBPM 虽然提供了详细的流程跟踪和日志记录能力,但是没有提供完善的日志分析功能,需要二次开发来更好的完成流程分析功能。另外,通过和 JBoss Seam 结合实现前端页面开发, 使得页面开发更加灵活,但是只有专业的 IT 技术人员才能实现。

四维比较

从流程管理监控、文档管理,SOA 资源整合以及协同开发这三个方面特点出发,对以上介绍的 BPM 工具进行一个 4 维立体比较分析(此比较图只代表我们的个人观点):

图 14.BPM 产品思维比较图图 14.BPM 产品思维比较图-1图 14.BPM 产品思维比较图-2图 14.BPM 产品思维比较图-3图 14.BPM 产品思维比较图-4

结束语

本文从 BPM 的系统介绍出发,根据 BPM 产品的 4 个发展发向和生命周期,分析比较了目前业界比较流行的 5 种 BPM 产品,并从流程管理、文档管理、SOA 资源整理以及协同开发这四个方面具体分析各个产品的特点。还用生动的 4 维雷达图对他们进行比较。希望能对您的工作提供帮助。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广