Uml 仅在随机事件发生后或特定日期和时间才可能建模的用例

Uml 仅在随机事件发生后或特定日期和时间才可能建模的用例,uml,use-case,Uml,Use Case,我正在为android应用程序创建一个用例UML图 比方说,当用户摇晃手机时,它会触发警报。当警报触发时,用户有一些选项,例如关闭警报。Alaram也可以在用户指定的日期和时间触发。我如何将这样的东西添加到用例图中?我脑海中闪现的唯一一件事是添加报警用例,它所有其他用例,但它似乎不正确。你能给我们一个初稿吗?因为对于我来说,这种问题对于用例图来说太详细了。在这种图中,您必须关注应用程序的主要特性,并且您不应该有超过20个用例 问候, BR简单实用 那么第一个问题是:谁是主要演员 Android手

我正在为android应用程序创建一个用例UML图


比方说,当用户摇晃手机时,它会触发警报。当警报触发时,用户有一些选项,例如
关闭警报
。Alaram也可以在用户指定的日期和时间触发。我如何将这样的东西添加到用例图中?我脑海中闪现的唯一一件事是添加
报警
用例,它
所有其他用例,但它似乎不正确。

你能给我们一个初稿吗?因为对于我来说,这种问题对于用例图来说太详细了。在这种图中,您必须关注应用程序的主要特性,并且您不应该有超过20个用例

问候,


BR

简单实用

那么第一个问题是:谁是主要演员

Android手机用户显然是主要参与者。[用户]

然后问:主要参与者可以对我的应用程序做什么

忘记细节和如何实现系统。只要简单地问上面的问题

从给定的上下文来看,参与者[用户]

  • 震动手机时能触发报警
  • 还可以设置报警,当 时间到了
  • 触发时可以停止任何报警
因此可能的用例:触发报警、设置报警、停止报警

然后,不只是绘制图表,让我们编写触发报警用例场景的简单步骤:

用例名称:触发报警

主要参与者:Android手机用户

触发:演员摇动手机,或报警触发时间过长 通过到达

主要成功场景:

用户摇动手机

  • 我们的Android应用程序(OAA)检测到用户抖动
  • OAA触发报警X
  • 。。。。4
  • B.达到报警触发时间

  • 我们的Android应用程序(OAA)检查当前时间,并检测到达该时间的触发器
  • OAA触发到达报警的时间。 3
  • 现在的问题是

    停止报警是真实的用例吗?或者只是触发警报用例场景的一个步骤

    您可以在根据上下文编写用例时发现它。对我来说,停止报警似乎只是触发报警场景中的一个步骤。因此,我可以通过删除停止报警简化我的图表,并将其作为触发报警用例中的一个步骤,如在扩展或其他流程中,如

    备选流程[用于触发报警]

    用户可以停止任何触发的报警

    但可能是以后,我可能会认为,在我的图表上显示可选流“停止报警”将更完整地描述我的应用程序的总体功能,因此我可能会使用扩展关系来显示它:

    你可能会问,当用户摇晃手机时,很明显他是主要参与者,但当“达到报警触发时间”时,系统会自动触发它,而不是用户。所以可能存在一个人为的时间参与者,但时间不可能是主要的参与者,因为时间并没有一个让用户满意的目标

    但是如果你仔细想想,用户就是警报背后的人,甚至是自动警报,因为他/她设置了这些警报。因此,即使是自动触发的警报,主要参与者也是实际用户

    也许我们认为应该在我们的图表上更清楚地显示“时间”因素,假设对于“纯粹的UML”来说:-)

    我们可以把时间作为“次要角色”放在图表上,但我认为 只会让你的图表难看,并对你的问题提出开放的“哲学”问题 用例参与者::-)

    检查Rational Nice Paper:亲爱的Dr.用例:时钟是演员吗

    最后但并非最不重要的

    不要在UML用例图上浪费太多时间。重要的 事情是有用例场景的


    它是一种主要的功能。用户启动应用程序,将手机放在口袋中,当手机抖动过大时,就会触发警报。在那之后,还有一些选择。没有太多了。那么用户可以用你的应用程序做什么呢?我猜“启动应用程序”或“关闭警报”或“指定警报”,但不是“警报”,对吗?是的。但我如何在图表上显示报警?我想你们不会吧。您的用户没有“报警”用例,他有“启动应用程序”或“关闭”或“指定报警”,对吗?