业务流程管理工具的概览和比较分析
简介: 目前比较流行的工作流开发管理工具众多,包括 JBPM、PegaSystems、Software AG(SAG)、IBM Content Management、IBM BPMN 7、FileNet 等。如何选择更符合用户需求,并且最节省本的产品。 这样就需要对这些产品有更详细的调研和评估,分析他们各自的优势在哪里,采用哪种开发工具能更好的满足用户商业和成本的需求。本文主要针对这几个产品的核心优势,进行对比分析。为需要这方面调研的读者提供详细和集成的信息。
业务流程管理工具的概览和比较分析
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 系统架构
而 BPM 所包含的各项活动也可以分成六个阶段进行,这也是 BPM 系统所遵循的生命周期,如下图所示:
- Vision(愿景):包括企业或者组织的战略定位和目标设定,一般来说,规范流程,提高效率,节省成本,快速响应变化的市场需求等,一般由管理团队制定,并定下可度量的标准。
- Design (设计):从这个阶段开始 BPM 团队开始全面进入,针对不同行业的竞争现状,找出企业自身的优势和劣势,摒弃冗余、繁琐、低效的流程,设计新的流程,使得企业内部各部门都能无缝式协同工作,提高效率。
- Modeling(建模):通过建模来模拟和分析各种设计带来的可能的结果,结合现有系统的整合结果,确立模型。
- Execution(执行):把新建立的模型(包括流程,文档设计等)作为一个整体的解决方案部署到企业中去,并在日常运营中使用。
- Monitoring(监控):设定一个试运营的时间段,对新模型进行监控,出现异常情况时,记录下来,作为进一步调整模型的基础。
- Optimization(优化):根据对新模型的实际运营结果的反馈,对模型进行调整和优化,如果反馈表明模型无法通过调整和优化达到在 Vision 中预设的目标,可能需要重新回到第二步 Design。
图 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 的拓扑结构图和产品组件图
- Process Center - 提供一个中心开发环境 , 包括 Process Center Server 和 Performance Data Warehouse, 允许你构建和运行应用,而且还可以存储用来测试和重放的性能数据,优化出最佳效果。
- Process Server – 用于执行流程和内嵌在 Process Designer 中的服务,它们存储在 Process Center 容器中,然后安装在 runtime 环境。
- Performance Data Warehouse – 按照在 Process Designer 定义好的跟踪请求,收集流程数据。
- Process Center Console – 用于管理和维护 Lombardi 容器,包括管理应用、工作空间和快照。还可以在这里把应用安装到 runtime 环境中的 Process Server 上。
- Process Designer – 前期的版本被叫做 Authoring Environment, 你可以在 Process Designer 里对你的商业流程建模、实现、评估和调查。
- Process Portal - 提 供一个交互界面,你可以用它给你的流程参与者分配任务,查看历史任务,查看这些流程和小组的性能。
- Process Admin Console - 管理员可以用它配置和维护 runtime 环境上的 Lombardi Process Server,例如测试环境或者生产环境。管理员还可以用它配置和维护 Process Center Server。
- 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. 基于共享模型的协同开发环境
IBM BPM 7.5 提供了业界领先的版本管理功能。但是目前还不能支持内容管理功能,如果有内容管理的业务需求, 需要和其他内容管理软件集成来实现。
webMethods
webMethods 由 Software AG 公司开发的一款业务流程开发管理工具,它和 SoftwareAG 的其他产品集结合(例如数据库管理系统 ARIS)实现了从业务流程评估、分析、建模、IT 规划到 IT 落地、实施、执行、治理、监控的端到端的集成解决方案。 webMethods 业务流程管理套件联合了领先的 BPM 和 SOA 能力,为企业提供了一套综合的,充分集成的,用于自动化和流程管理的工具。在这个分工协同的环境中,业务与 IT 能够协同设计,模拟,测试并部署流程,然后对这些流程进行实时监控,通过整合全企业的所有资源来优化流程,这些资源包括企业人员,系统和文件。这一工具适用于任何流程优化项目。
webMethods 平台由 3 类组件构成:
- 运行时组件 – 用于执行业务流程,并在资源间传送消息,转换盒验证数据,执行集成逻辑。主要包括:IS(Integration Server)、Broker、Adapters、Mainframe、Trading Networks 和 Workflow 等。其核心结构如下图所示:
图 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 整合开发环境
- Workflow server 用于执行业务流程。
- 设计时组件 – 图形界面工具组,主要用于商业流程建模,设计和开发。包括 webMethods Modeler、 Workflow Designer, 、webMethods Developer。下图是这 3 个图形界面工具的简单演示。 图 7.webMethods 设计组件图形界面
- 管理组件 – 用于配置,管理和监控平台上的业务流程和集成解决方案。主要包括 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 套件由多个产品构成,依照不同的行业、不同的业务进行组合。这个套件包含以下组件:
- PegaRULES 规则引擎 - 是 SmartBPM 的核心。在 Pega 中,所有的都是规则,而不仅仅是我们传统意义上用来判定决策的“业务规则”。事实上,从任务指派、展现表单、业务活动监控、安全模型、集成等等都是规则。
- PegaRULES Process Commander 业务流程引擎 - 是一款纯 J2EE 的流程引擎。
- Process Simulator - 是 SmartBPM 的业务流程仿真工具,利用该工具来进行仿真分析并优化。
- Process Analyzer - 基于 OLAP,依照其创建的多维数据模型对业务活动进行分析。
- 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 架构图
FileNet 提供了如下 BPM 核心组件:
图 9.FileNet 的 BPM 核心组件
地址:http://www.ibm.com/developerworks/cn/websphere/library/techarticles/1203_wangr_bpmtool/1203_wangr_bpmtool.html