【问题标题】:Sequence diagram for sending requests to JSON API and for using an SMTP Server?向 JSON API 发送请求和使用 SMTP 服务器的序列图?
【发布时间】:2016-05-18 01:15:54
【问题描述】:

我开发了一个 Web 应用程序,它将 HTTP 请求发送到 JSON API 并从中获取响应。它还通过 SMTP 服务器向用户发送电子邮件。我被困在如何在我的序列图中对这些场景进行建模。

编辑:

登录顺序如下:

1-用户在视图中输入他的登录名和密码

2-视图将输入的数据发送给控制器

3-控制器调用位于WebService类中的函数

4- 函数创建登录请求模型的实例(登录请求模型是一个与将要发送的 JSON 数据格式相同的类)

5- 该函数将创建的实例序列化为 JSON 并通过 HTTP 将其发送到远程 Web 服务

6- 函数读取响应流并将其反序列化为响应类的新实例

7-然后创建的实例被发送回控制器

8-控制器在收到的实例上运行测试以查看用户是否提供了正确的凭据

9-根据测试结果,控制器将用户重定向到登录页面(如果他输入了正确的凭据)或在索引页面中发送一条消息,指示凭据错误

在这种情况下,我的序列图中的参与者是什么,我应该在其中添加什么以及我应该保留哪些未描述的内容?

【问题讨论】:

  • 为什么是法语,你到底想要什么?
  • @jim 这是法语,因为这是我正在使用的语言。我想做的是我的项目的序列图。
  • 嗯,你有它。更好的是,它是法语的!
  • 我认为你在法语中很重要!如果您知道如何为向 JSON API 发送请求的 Web 应用程序制作序列图,请提供您的经验。
  • 可能 :) 无论如何,让我引导您完成您的问题:“这是一个图表。我不会告诉你上面有什么。我不会告诉你它有什么问题。请帮助我修理它。”我不认为任何人都可以帮助您完成所提供的一切。

标签: json uml sequence-diagram communication-protocol


【解决方案1】:

您的初始图表是一个好的开始。

我在这里用黑色的英文文本注释了它(这样每个人都可以从中受益),你的编号序列列表的引用,以及洋红色的一些变化。我还添加了 3 个圆圈来突出一些一般性评论:

备注 1:我不清楚这第一条消息是否是同步的(纯箭头)。您的用户类真的在等待返回吗?我认为这可能是异步的,然后返回的最终消息不一定是return message(虚线)。

备注2:请求模板/模型上的传入消息4是异步的。所以我希望答案也是异步消息(不加点)。

备注 3:在这里(以及其他几个场合),您有一个传入的 "create" message。如果你创建一个新对象,你最好从那里开始生命线,到show the instantiation

备注:您可以通过使用alt 区域来减少show alternative 交互(在序列末尾)。

最后一句话:您担心不同类型的传输(即 JSON 与 SMTP)。 UML 图不显示消息的格式。因此,如果流程相同但只有协议更改,您可以保留它(并最终制作注释以显示其 JSON 或 SMTP)。如果您在序列中有不同类型的交互,您可以使用alt

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-03
    • 1970-01-01
    • 2012-12-20
    • 1970-01-01
    相关资源
    最近更新 更多