企业服务总线与BPM

时间:2015-12-19 14:50:43

标签: soa esb bpm

我所研究的ESB和BPM工具都采用了一些输入,调用了多个步骤来完成任务。我看到的不同之处在于,在ESB中,一切都是自动化的 - 过程是自动触发的,涉及大量外部调用/数据被转换并发送到适当的系统以供消费。在BPM系统的情况下,该过程要么手动启动,要么自动启动,它涉及一系列决策步骤,其中一些涉及手动决策步骤。一旦完成这些步骤,任务就被标记为完成。是否有可能解释BPM和ESB之间的明显区别?

2 个答案:

答案 0 :(得分:12)

我认为你是对的,使用ESB可以实现任何可以通过BPM实现的功能,并且可以通过一些Web UI实现手动步骤的调用。但如果您只是从技术角度严格看待,那就是这样。在更成熟的SOA中,涉及许多不同的方和角色,ESB和BPM都有其独特的地方。

您正在寻找的区别更“模糊”,它是关于这些工具的焦点,它们的预期最终用户以及它们构成的逻辑类型。这是我谦虚的尝试解释ESB和BPM之间的区别:

焦点和目标

  • ESB 更侧重于实现互操作性,关注点分离和技术细节抽象。它具有更多的基础架构角色,它还关注监控,可扩展性性能,可用性,状态延迟。在ESB中,您的目标是通过抽象所有技术细节并公开可重用功能来启用联合可互操作层的创建。

  • BPM 更注重业务,在完美的世界场景中,它由业务人员和业务分析师自己管理,他们无需了解任何技术细节即可修改流程。 BPMN语言完全与工作流程有关,旨在实现业务友好。在BPM中,您的目标是通过使用这些构建块来实现实际业务流程。

目标用户

  • ESB 服务将由架构师和托管人管理(仍然根据业务分析师的要求)。

  • 理想情况下,
  • BPM 工作流程将由业务人员,业务分析师等进行管理和修改。

组合逻辑

  • 在BPM 中,作文(工作流程)包含面向业务的任务(例如,检查客户忠诚度级别,如果用户X批准并且他的级别为金牌,则给予折扣。)< / p>

  • 在ESB 中,组合通常包含更多技术服务(例如,从数据库中检索此项,与此组件中的组合,使用xslt进行转换)。可以像BPM那样实现整个工作流程的编排任务,这完全是以业务为中心的,没有任何可重用性,但是您没有方便的工具和可视化来轻松地委派管理这种商业逻辑对商业人士而言。

如上所述,理想情况下,如果您拥有成熟的SOA,您将在一个或多个ESB和相应的服务库存之上拥有一个BPM层:

    底部的
  • 实体实用程序 服务(在ESB中实施)
  • 任务,在某些情况下 Orchestrated Task services 组成所述实体和公用事业服务(在ESB中实施)
  • 工作流程,它在ESB之上的BPM层中使用和重用所有这些服务。

我希望这能让你初步了解这些差异。如果您需要更多信息,请随时询问。

答案 1 :(得分:3)

普拉曼的答案已经非常好了。我不同意介绍

  使用ESB可以很好地实现BPM可以实现的任何功能   以及一些支持调用手动步骤的Web UI

他后来的解释说明了这一点。

与ESB相比,现代业务流程管理套件(BPMS)处理(更好)的一些方面从最重要的角度来看:

  • 适用于域专家的业务流程的图形建模
  • 无需技术细节,例如没有服务组合
  • 当任务执行者可以是特定自动化(系统)与手动(人,可能具有系统支持)时,达到了正确的粒度。将此粒度级别视为服务组合开始(ESB)
  • 基于假设或现实审计数据模拟工作流程(无论是否有服务连接)
  • 用于运营控制,战术分析和战略性持续流程改进的仪表板和报告功能(全部在业务级别/ KPI上)
  • 组织建模,授权管理
  • 基于业务流程模型(例如角色)的任务路由和分配,或基于条件,业务规则,决策表,用户技能的实时分析,工作负载和容量等的动态。
  • 管理业务流程的上下文,例如业务对象,文档,对外部系统中数据的引用,对属于同一业务实体的其他工作流的引用
  • 在业务级别(而非日志文件)上保留所有活动的审计跟踪
  • 综合工作清单管理和搜索功能
  • 运营管理的特点,如业务SLA的定义和监控,优先级,基准,关键性,自动或手动任务委派
  • 组织方面,如副管理,业务日历
  • 基于已定义的内部或外部技术或业务事件启动或更改现有工作流程

BPMS和ESB是互补系统。 BPMS是业务层,它编排在底层ESB层中定义的复合业务服务。 ESB层是一个技术缓解层,支持基础服务的定义,它们聚合到组合服务以及其他方面,如数据格式的转换和标准化。由于各层紧密,两个区域的产品都采用了来自另一层的越来越多的特征。随着供应商扩展其功能集,重叠程度也在增加。

根据系统环境的复杂性,涵盖许多ESB功能的全面BPMS可能会使ESB过时。扩展到业务层的ESB不太可能达到业务用户所需的功能集和易用性。如果ESB达到此业务级别,则可能会重新命名并作为BPMS提供。

如果您将ESB的网站(如Mule)和BPMS(如Eclipse Stardust)进行比较,那么不同的重点(技术集成平台与业务流程管理:建模,模拟,执行,报告,分析)应该变得明显。