首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于SOA参考体系结构的问题

关于SOA参考体系结构的问题
EN

Stack Overflow用户
提问于 2014-11-16 15:52:46
回答 1查看 129关注 0票数 2

对于Open提供的可作为企业示例的参考体系结构,我有些困惑。

问题1:在这个参考架构中,有一个服务层,它向外部世界公开一个服务。标准文档指出,您可以在此服务层中拥有流程服务,该服务层实现了一些可作为服务访问的功能流程。还可以在服务层中使用其他服务的组合服务。但是,也有一个业务流程层,据我所知,它主要是通过编排与服务层不同的服务来实现业务流程。业务流程层中的业务流程与服务层中的流程服务有何不同?

问题2:是否有任何争议来决定是否应该提供一个使用多个不同服务的组合服务: 1.在服务层中,通过在服务层中使用其他服务而赋予组合服务自己的接口? 2.作为业务流程层中的一个业务流程。3.在使用者层中处理它。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-25 12:32:48

回答1):

一般来说,业务流程层中的流程与组织中的业务流程密切对应,而流程服务实现更多的任务“技术”组合。

  • 从理论上讲,在理想世界中,业务流程应该由业务用户自己通过GUI在业务分析师的帮助下创建和修改,而服务层流程则由技术人员实现。
  • 另一个不同之处是,这些业务流程通常包含手动步骤--在这些步骤中,人们必须手动完成某件事情,做出主观决定或确认/批准流程的继续。
  • 业务流程组合业务服务,而服务级流程组合服务,这些服务往往连接到多个后端系统以完成其任务。例如:以订单实现业务流程为例:您可能有一个业务流程,它要求客户支持代理在订单发送执行之前通知客户确认--这是一个手动步骤,将是该流程的一部分。然后,在实践开始后,可能会启动一个称为“评估客户忠诚度”的服务层级流程。因此,业务流程将执行“履行客户订单”这样的流程,而更技术性的服务流程将执行“将此客户的信用评级与我们的商业智能商店中当前的中值进行比较”的过程--因此需要对多个后端系统进行多次调用。

回答2):

这是一个区别,需要背景,往往需要经验,以作出正确的选择,但这是我的两分钱。

  • 如果您有业务流程管理解决方案,并且组织使用它,那么无论如何,在这个层中实现任何业务流程。对于最终用户--你的企业来说,这是更加灵活和易懂的。
  • 如果您需要实现一个必须从多个系统收集/修改数据的技术流程,那么在服务层上实现它。当然,您可以尝试在服务层实现业务流程(我有时在实践中看到了这一点)。但是请记住,与实际的业务流程管理解决方案相比,您的工具集将是有限的。您还将在服务层中有一些业务流程,在业务流程层中也会有一些业务流程,如果在某个时候有一个真正的BPM,这可能不太方便。因此,它确实取决于面向服务的体系结构的成熟状态。
  • 通常,我会尽量避免在使用者中实现流程。它使您的设计耦合到消费系统,因此您将无法在将来的某个时间点轻松地替换它。此外,业务流程管理层(和服务层)都有更好的监控、日志记录等手段。尽管如此,在长期维护和问题调查中,不会像在消费者应用程序中那样痛苦。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26958839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档