Interface 如何使用UML来绘制系统接口图?

Interface 如何使用UML来绘制系统接口图?,interface,uml,esb,use-case,Interface,Uml,Esb,Use Case,我正在学习UML,并且一直在阅读有关用例的书籍。我看到的所有示例都涉及单个系统,我想知道如何对端到端流程进行建模。所以,我制定了一个相当典型的企业场景,并尝试对其进行建模。我有些问题一直无法回答 场景:我的业务用例是一个购物者创建一个购物车,由供应商作为订单接收 端到端流程为: 购物者创建一个购物车 经理审核购物车并批准/拒绝,然后在采购系统中创建采购订单。 采购系统将所有新创建的采购订单发送到各自供应商的系统。 供应商收到订单作为订单。 然而,魔鬼在于细节,因此我决定通过添加以下细节使其更加复

我正在学习UML,并且一直在阅读有关用例的书籍。我看到的所有示例都涉及单个系统,我想知道如何对端到端流程进行建模。所以,我制定了一个相当典型的企业场景,并尝试对其进行建模。我有些问题一直无法回答

场景:我的业务用例是一个购物者创建一个购物车,由供应商作为订单接收

端到端流程为:

购物者创建一个购物车 经理审核购物车并批准/拒绝,然后在采购系统中创建采购订单。 采购系统将所有新创建的采购订单发送到各自供应商的系统。 供应商收到订单作为订单。 然而,魔鬼在于细节,因此我决定通过添加以下细节使其更加复杂:

购物系统的通信是点对点和实时的。 采购订单可通过传真或互联网发送给供应商。所有采购订单在发送给供应商之前都会进入一个队列。队列每X分钟处理一次。我选择10分钟作为休息时间 采购供应商连接使用中间件ESB。 问题:

我相信我有3个系统用例:购物者创建购物车,经理审核购物车,时间将PO发送给供应商。即使我在采购系统和供应商系统之间有一个ESB系统,这个参数是否正确? 由于中间件不是上述任何一种用例中的参与者,我应该在哪里对ESB参与流程Purchasing->ESB,ESB->Vendor建模? 我要画两个系统边界还是一个系统边界?我认为我应该把供应商系统作为第二个参与者,所以我只有购物系统和采购系统。还是将它们合并到E2E系统(如采购系统)中?
用例旨在描述系统参与者的用户如何与系统交互。它们应该足够简单,让您的客户能够理解。所以,在你开始用用例问题打断你的头脑之前,问问你自己谁是你的客户,你是如何通过创建用例为他创建一个更好的系统的

很抱歉给你一个哲学上的答案

我会为审查、批准和拒绝购物车创建单独的用例,但我认为您的用例应该足够准确。因为ESB系统不是由您的参与者直接使用的,所以我认为它与用例图无关。 您可以创建一个模型来更详细地建模独立系统及其子系统之间的关系,这在用例图中是可能的或合理的。如果您愿意,您可能可以在ESB自己的系统边界中隔离ESB,并使用标记为与连接相关的用例依赖关系的用例交付PO给供应商。 我建议使用两个或三个系统边界,这取决于您是否为ESB创建了自己的边界。如果供应商的系统不在您的范围内,您可能不需要对其进行太详细的建模-收到采购订单就足够了。
2.它能够使这一点与序列图一起工作,能够帮助我建模侦听/发布,并为PO用例上的错误处理创建活动图。对于购物车->采购订单用例,组件图似乎可以工作。