了解业务流程管理 (BPM) 2.0(下一代 BPM)如何利用 Web 2.0。本文介绍 Web 2.0 与 BPM 的融合及其他标准的使用,这些可帮助组织变得更加灵活和机动,并让业务分析人员在建模、管理、执行和优化核心业务流程方面担任重要角色。了解 BPM 2.0 的属性,以及 IBM® 在该领域提供了哪些产品。

Pradip Roychowdhury, 高级 IT 架构师, IBM

http://www.ibm.com/developerworks/i/p-proychowdhury.jpgPradip Roychowdhury 是 IBM 的一名高级认证 IT 架构师。他在位于印度的 IBM GBS GD 服务执行中心的 IBM 全球客户部门工作。他在提供集成供应链(采购)、电信 (OSS)、零售 (POS) 及制药垂直行业领域的技术解决方案方面拥有 13 年经验。他参与了许多项目的完整软件开发生命周期,其范围包括从传统客户端-服务器体系结构到多层、面向对象的企业应用程序(开发工具包括 C++、CORBA/COM+、J2EE、ORACLE、SQL Server 2000),以及使用 SOA 工具进行跨平台企业应用程序集成。他感兴趣的领域还包括业务流程建模及其相关技术。他是 IBM 内部多个技术社区的活跃成员。



Diptiman Dasgupta, 高级 IT 架构师, IBM

http://www.ibm.com/developerworks/i/p-ddasgupta.jpgDiptiman Dasgupta 是一名 IBM 高级认证 IT 架构师,目前担任 ISV 计划、电子行业及 Global Business Solution Center (GBSC) 中名为 CBS Nano 的高级技术项目的首席架构师。他在设计和开发、体系结构设计、为创建和利用客户解决方案中的资产提供技术策略和解决方案,以及为组织提供技术指导等方面拥有 12 年的经验。他还是 WW SOA 和 Web 服务 CoP 的核心成员。他是 TEC-India 的主席之一,目前领导许多与改进 IBM 的思想领导力和技术创新力相关的组织级活动。



2008 年 11 月 13 日

引言

为实现业务敏捷性和灵活性,大多数组织正采用 BPM 作为模拟、建模、执行、监视和管理与领域一致的关键业务流程的方法(通过抽象底层技术系统、应用程序逻辑和 IT 的其他方面)。一些组织已将这一活动作为其 IT 基础设施向面向服务体系架构 (SOA) 转换的一部分(自底向上方法)开始施行,而其他组织正在使用即时可用的 BPM 工具先建模和模拟业务流程,再将业务流程部署到运行时环境中(自顶向下方法)。在这两种情况下,组织都面临一些挑战,这些挑战包括:

  • 多个不同的数据源。
  • 多个隔离的业务流程。
  • 漫长而复杂的集成工作。

而且,市场上出现的大多数 BPM 工具缺少对业务用户、企业对企业 (B2B) 场景的支持,以及对生产环境中运行的业务模型和 IT 组件的端到端跟踪能力。这导致业务用户和 IT 专家之间出现技术理解鸿沟。业务分析人员和主题专家 (SME) 对业务有充分的了解,而通过有效地使用工具,应当可以将他们创建的业务模型方便地转化为现实。本文介绍 Web 2.0 及其支持技术的出现如何通过减少业务分析人员在构建和管理流程模型时对其 IT 对等项的依赖性,为这一长期存在争议的问题带来了一线希望。


BPM 问题

在竞争激烈的商业世界,有效地管理业务流程并非超越竞争对手的唯一关键点。您还必须不断地提高工作效率,并提供实时业务性能可视性以占据市场的领先位置。BPM 在为您的核心业务流程提供可见性以及为改进这些流程提供灵活性方面扮演了重要角色。为此,BPM 需要将高级业务目标与业务流程相关联的结构化方法,这些业务流程可以分解为与健壮的企业级平台集成的可执行流程。下列问题是建立真正的 BPM 环境的常见障碍:

  • 虽然 BPM 适合业务流程分析人员使用,但相对于 IT 用户而言,大多数工具缺少对业务用户角色的支持。在任何 BPM 合约中,业务分析人员在定义业务流程方面都扮演着重要角色。但在大多数 BPM 工具中,在不了解编程语言的情况下,很难定义关键 BPM 模型元素。因此对于业务用户而言,BPM 工具有时让定义或修改业务流程变得过于复杂。具有不同角色的用户之间进行适当协作的能力受到限制。
  • 大多数 BPM 工具被视为绘制流程图的工具或根据业务需求建模的工作流建模器,以生成一些类似代码的实现构件。从业务需求到分析模型,再到实现代码的转换过程的可跟踪能力不足。在设计元素和可实现构件之间无法实现无缝导航。
  • 通常缺少一种单一、可移植、可接受的业务流程执行标准和业务流程模型符号标准。由于缺少标准,因此无法重用由不同 BPM 工具生成的模型。这降低了与其他系统之间的互操作性,以及面向不同 BPM 产品的可移植性。
  • 由于缺少动态流程优化,因此很难动态地更改生产环境中的流程模型。修改生产中的可执行业务流程需要贯穿建模、模拟和部署整个流程生命周期。
  • 由于在业务建模、流程建模和服务建模工具之间缺少集成,因此到目前为止,尚未促进业务服务的高级编排、BPM 中的人工交互,以及使用单一工具在较低级别上创建这些服务。所以,尚不存在有效地进行业务和 IT 建模的单一平台。
  • 来自不同供应商的多个已有工具增加了学习的复杂程度,并导致缺乏标准化。
  • 许多优选的 BPM 工具要求您编写代码以实现您的 BPM 环境。因此,这些工具只能供技术专业人员使用,而业务分析人员对使用这些工具存在疑虑。
  • 临时的流程模拟机制无法保证所模拟流程语义的准确性,以及要在生产环境中部署和执行的流程语义的准确性。

BPM 2.0 策略

在分析多个 BPM 套件后,BPM 专家在 BPM 中引入了新的体系结构范例,并称之为 BPM 2.0。这一新模型可帮助技术业务分析人员理解业务需求,并且将其直接实现为利用现有 IT 系统的流程。而且,BPM 2.0 支持通过 Web 2.0 执行流程,从而提供了在企业内外进行通信的新方法。因此,它允许任何企业的业务模型快速地响应策略变化。接下来介绍在企业内采用 BPM 2.0 的三个重要策略。

利用整个 Web 进行流程协作(Mashup、SaaS)

Web 2.0 的一个关键概念是创建自助服务环境,也称为“长尾”策略。简而言之,这表示延伸至整个 Web,并鼓励协作解决问题。在企业环境中,这表示在企业服务水平低下(以前无法核实开支)的部门中经济高效地使用 Web 2.0 技术。Web 已演变为世界范围内的开放、高价值服务平台。当企业尝试将这些服务组装成为有用的业务流程时,需要一些关键要素作为业务流程的组成部分,例如标识、位置、业务上下文及其他信息。Web 2.0 中的 BPM 可以采用一致的方式将这些要素添加到业务流程中,以创建基于集成服务的健壮业务流程。因此,这可以将全球业务服务市场的概念转变为现实(请参见图 1)。

图 1. 使用 Web 2.0 的 BPM
使用 Web 2.0 的 BPM

增加隐含交互

研究表明,企业中通常有 20% 的作业类型是提取和转换原始材料,40% 的作业类型是例行事务交互、标准化工作等,其余 40% 则是复杂的交互,涉及决策制定、协作、知识消费,等等。这些复杂交互称为隐含交互 (tacit interaction)。它们并非简单地基于规则,而是需要专业知识和判断力。专家表示,提高企业内部的隐含交互可以提高工作效率。自动化隐含交互很难实现,这源于其固有的变化性,也就是说,用户每次都尝试做不同的事情。低门槛、易于更改、Mashup 样式的 BPM 2.0 工具允许用户在恰当的时间查找或构建及调整正确的解决方案。它还通过更好地利用数据和相关信息的表示来支持增强的通信、协作和决策制定。因此,在 BPM 2.0 中自动化和管理事务交互允许您将节约的时间花在构建支持和启用隐含交互的解决方案上,而最终会产生更高的投资回报率 (ROI)。

BPM、SOA 和 Web 2.0 的融合

BPM 2.0 在下一代企业平台领域推出的另一个基础策略是 SOA、BPM 和 Web 2.0 的融合。您的业务策略和规则需要足够灵活,以快速地适应变化。BPM 本身足以满足此需求,但 BPM 与 SOA 和 Web 2.0 可以共同实现这一目标。BPM 为流程编排提供灵活性;SOA 通过标准接口提供业务服务;而 Web 2.0 为通信提供标准平台。许多组织正在各自独立地使用这些技术。到目前为止,SOA 作为一种体系结构范式,在为企业提供对业务功能、服务和数据的无缝、全局访问上起着推动作用。另一方面,BPM 通过编排各种业务功能和人工交互为构建业务系统提供了抽象,以实现共同的业务目标。而且,BPM 还提供了其他功能,例如监视和管理业务流程。因此,SOA 与 BPM 的结合借助于有效的流程监视和流程优化,提高了效率、IT 灵活性、IT 运营系统的兼容性和一致性、业务认识和业务转换能力。BPM 2.0 为此融合增加了另一个方面:Web 2.0。在两个方向上,Web 2.0 可以与 BPM 和 SOA 集成:

  • 从 SOA 和 BPM 工具角度来看,您可以通过 Web 2.0 并使用异步 JavaScript + XML (Ajax) 和 Adobe Flex 引入富 Internet 界面和可靠的用户体验。这些内容可以通过在线下载(请参见参考资料中的链接)。
  • 从业务协作角度来看,Web 2.0 支持社会网络;这是传递消息和服务 Mashup 的新方法。因此,它使最终用户能够以丰富多样的方法开始探索世界,并使他们的工作效率更高。
图 2. BPM 2.0、SOA 和 Web 2.0 的融合
BPM 2.0、SOA 和 Web 2.0 的融合

Web 2.0 作为 BPM 的驱动力

Web 2.0 创建了在 Web 2.0 环境中执行 BPM 的新方法,即上面所说的 BPM 2.0。这不是标准的、以工作流为中心的 BPM。BPM 2.0 设想了一种简单、价廉的新工具,并使用 Web 2.0 样式来促进服务间通过流程引导的交互,在 Web 上或防火墙后以相同方式启用整个业务流程。例如,使用 Web 2.0 技术,业务用户可以在仪表板中方便地定义和组织业务流程的关键性能指标 (KPI),然后根据其首选项通过拖动进行自定义。使用 Web 2.0 的丰富虚拟化技术将使这些仪表板的功能更强大,以使用在业务级别和 IT 级别定义的流程监视发生的情况。BPM 2.0 背后的一些驱动力包括:

  • 允许更多业务流程分析人员参与:易于使用、基于 Web 的技术将鼓励业务分析人员使用 BPM 工具和部署可执行业务流程。大多数以工作流为中心的 BPM 工具要求更多技术人员参与,以便将业务分析人员创建的业务流程模型转换为可执行形式。因此业务分析人员在整个流程设计中所占份额较少。但是,Web 2.0 的协作影响引入了流程 wiki 的概念,它隐含了某种普遍可用的流程存储库,以利用流程分析人员的集体智慧来创建流程,并最终将其部署到运行时环境中。
  • 加快开发和内容创建:大多数 BPM 工具基于专有符号和执行语言。它们通常要求编写大量自定义代码以使流程可以执行,并且最终使代码维护工作变得极为昂贵。而且,业务流程本质上容易改变。在早期的 BPM 工具中,更改业务流程模型并将其重新部署到生产环境的过程极为繁琐。您必须更改多个部署描述符、配置文件和各种接口。BPM 2.0 在此领域引发了根本性转变。它声明一个完整的业务流程模型(在模型中设置和定义了其所有映射、业务规则和其他参数)仅仅需要一次点击部署即可解决此问题。

BPM 2.0 的功能

如上所述,BPM 2.0 利用了 Web 2.0 的一些技术功能使 BPM 变得更强大,并且更容易被业务流程分析人员社区所接纳。BPM 2.0 的远景是让客户创建更多灵活而动态的流程,这些流程在未来可以作为进一步创新和提高灵活性的基础。因此其目的在于利用 BPM 作为协调业务体系结构与 IT 服务的催化剂,并持续地快速适应更改。BPM 2.0 的主要功能包括:

  • 丰富的用户体验:Web 2.0 技术提高了用户对富用户界面的预期。这些界面使用 Ajax、RSS Feed 和代表性状态传输(Representational State Transfer,REST)API 来提供合理的轻量级 Web UI 体验。用户可以创建复杂的表格、网络日志、Wiki 和业务流程文档内容;为任务计划创建基于 Web 的日历;处理业务事件;维护用户任务列表,等等。
  • 流程标记:Web 2.0 专注于连接人员及支持其协作工作,而 BPM 2.0 则利用这种集体智慧进行协作流程设计。它允许业务用户结构化业务信息和内容。例如,它是普遍可用的流程存储库,某个业务用户可以创建初步流程,而位于另一个地点的同事可以修改该流程。
  • 轻量级集成模型:通常,BPM 涉及通过编排各种松散耦合的独立 Web 服务和组合服务来编排流程。所有这些服务都是基于 WS-* 或 SOAP 标准创建的。另一方面,BPM 2.0 可以集成相对轻量级的 REST 服务、小部件等,这些是使用 Web 2.0 协议(例如 JavaScript Object Notation (JSON) 和 Atom)构建的。这样就创建了价廉、简单和高度可伸缩的服务集成模型。

除了上述 Web 2.0 功能外,BPM 2.0 领域的产品(也称为业务流程管理套件 (BPMS))采用了业务流程建模符号(Business Process Modeling Notation,BPMN)和业务流程执行语言(Business Process Execution Language,BPEL)作为建模和执行标准。这些功能使 BPM 2.0 获得业务流程社区的广泛认可。其中部分内容包括:

  • BPMN 和 BPEL:以前,大多数以工作流为中心的 BPM 产品基于专有建模符号。它们彼此之间也不兼容。同样,存在多种针对可执行流程的标准,例如来自 Microsoft® 的 XLANG 和来自 IBM 的 Web 服务流语言 (WSFL)。但是,在接受 BPMN 作为建模可执行业务流程的标准符号后,此问题在 BPM 2.0 中得到了解决。BPM 2.0 已接受 BPEL 作为流程执行的标准。
  • 零代码:在 BPM 2.0 中,将使用 BPMN 建模的业务流程转换为以 BPEL 表示的可执行流程非常简单。您不需要编写任何代码即可执行此转换。这使 BPM 2.0 不必编写和维护代码即可实现复杂的业务流程。
  • 动态流程优化:业务流程优化以前一直是 BPM 的驱动概念之一。但是,它实际上很难实现,因为它需要更改整个现有流程生命周期,从重新建模流程开始,到部署已修改流程结束。因此,业务流程优化的优点很难实现。BPM 2.0 通过引入新的动态流程优化概念解决了这一问题。不需要重新部署整个流程即可优化流程模型的必要元素。BPEL 所具有的后期绑定、业务规则外部化等核心功能使上述功能在 BPM 2.0 中得以实现。
  • 业务性能优化:满足跨功能、端到端业务流程的业务性能挑战很有难度,这是由于其固有的复杂性和对其他业务领域的依赖性导致的。现在,在 SOA 和 Web 2.0 的支持下,BPM 为性能优化带来了新的机会和挑战。例如,在 IBM WebSphere® BPM 套件允许客户快速地实现 BPM 之后,IBM 认识到它的客户可能需要使用 BPM 技术为业务性能改进预先构建设计模式、模板和最佳实践。这里的“它”表示在定义业务流程模型时,规范化重用模板、设计模式或来自 IBM 以前成功的客户合作项目等任何其他资产的流程。对重用模板、设计模式和其他资产的流程进行规范化是基于称为业务创新与优化(Business Innovation and Optimization,BIO)的新活动,该活动提供了结构化方法、行业专业知识,以及在 BPM 套件上构建的软件组件集。BIO 方法的建立包含三个主要步骤:
    • 第 1 步是基于业务目标的概念,这表示 BIO 是一种目标驱动的方法,即确认关键业务目标,并围绕已确认的目标进行处理。
    • 在第 2 步,流程模型和 KPI 处理实现。流程模型创建结构和执行流,执行流在其运行时通过 SOA 调用 IT 服务来满足业务需求。每个流程都由衡量业务目标的 KPI 提供支持。
    • 第 3 步是描述流程执行过程中的输出,以持续监视、分析结果,并在此基础上采取适当的措施。
  • BPM 中的行业特色:业务灵活性和响应能力是关系到业务解决方案能否成功的关键方面。因此各个行业正在探索支持灵活性和响应能力的最快上市选择,而 BPM 可以扮演主要角色。通过在组合业务应用程序中组合 IT 资产,BPM 可以在流程级别实现更高的灵活性、更快的上市时间,并降低运营成本。像 IBM WebSphere Business Services Fabric 这样的产品通过帮助您构建称为组合业务服务的模块化、业务级构件(这些构件是策略驱动的,并且可以在运行时动态地调用服务),提供了 BPM 中的不同方面。通过引入行业内容包进一步扩展了价值,行业内容包是预构建、可重用的业务服务模板,可加快业务服务的构建和组装。

BPM 2.0 挑战

BPM 2.0 以 Web 2.0 为中心,因此为组织带来了一些与 Web 2.0 类似的挑战。以前,组织内各部门之间的信息共享受到限制,这意味着业务流程的灵活性较差。在 BPM 2.0 中,内容在组织内不是集中存放的。使用 Web 2.0,BPM 2.0 提高了用户在创建、修改和管理业务流程中的参与程度。为此,每个用户都有权访问业务内容,并且每个用户都可以更改内容。这使得组织内的内容管理更分散。例如,在 BPM 2.0 中,业务用户可以从不同流程的 RSS Feed 控制替换管理仪表板中的内容的流程,以监视整个业务流程中的特定情况。这增加了内容共享和用户参与的程度,会在组织内创建不同的流程管理文化,这可能需要组织花费时间来适应。


IBM BPM 产品

IBM 是 BPM 2.0 领域的主要参与者,并且是 BPMN 和 BPEL 规范的强力支持者。事实上,IBM 参与设计了 BPEL 规范。IBM 的 BPM 产品套件包含一套全面的协作式、基于角色的功能,可用来建模、模拟、执行、更改、监视和优化特定行业的核心业务流程。IBM BPM 套件包括两款冠以 WebSphere 和 FileNet 品牌的主要产品:

  • IBM WebSphere Dynamic Process Edition
  • 针对活动内容的 IBM Enterprise Content Management BPM 产品(以前称为 IBM FileNet® Active Content Edition)

IBM FileNet P8 支持 BPMN 和 BPEL 规范,为 IBM BPM 产品套件增添了强大的内容管理功能。FileNet 使用 XML Process Definition Language (XPDL) 作为文件格式,采用可互换和可扩展的格式存储流程。IBM FileNet Workplace XT UI 使用新兴的 Web 2.0 和 Ajax 技术在 BPM UI 中融合了舒适、高效的桌面应用程序体验。

在 WebSphere 产品套件中,IBM WebSphere Business Modeler 也支持 BPMN 和 BPEL 规范。IBM WebSphere Business Monitor 是健壮的业务活动监视工具,提供了可自定义的 Web 2.0 仪表板,允许业务用户方便地定义和查看 KPI。WebSphere Business Services Fabric 是跨生命周期的 SOA 产品,用于快速建模、组装、部署、管理和控制业务服务,这些服务是组合业务应用程序的构件。它还定义和利用通用行业语义作为帮助简化异类系统之间的互操作性的语言。

图 3. IBM 的 BPM 产品
IBM 的 BPM 产品

结束语

本文探讨了 BPM 在 Web 2.0 技术发展背景下的现有问题、如何从中受益,以及如何向下一代 BPM (BPM 2.0) 迈进。您了解了 BPM 2.0 的基本功能和策略;相对于第一代以工作流为中心的 BPM 而言,BPM 2.0 提供的主要好处;Web 2.0 如何成为 BPM 2.0 的基础;以及如何利用 BPM 2.0 来定义或修改您的业务流程。我们还简单介绍了 BPM 领域内的一些 IBM 产品。

参考资料

学习

获得产品和技术

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=SOA and web services, Architecture
ArticleID=351672
ArticleTitle=在下一代 BPM 2.0 中利用 Web 2.0
publish-date=11132008