Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Use case 如何在用例图中表示子模块_Use Case - Fatal编程技术网

Use case 如何在用例图中表示子模块

Use case 如何在用例图中表示子模块,use-case,Use Case,我需要知道,如何表示一个模块的子模块 例如,我有一个名为X的模块。这个模块X实际上由三个子模块组成,分别称为x1、x2和x3。用户可以从可用选项中选择此子模块中的任何一个子模块。这意味着此模块不会在没有这3个子模块的情况下退出。我的疑问是,在绘制用例图时,如何表示这些子模块?我必须使用“包含”或“扩展”作为主模块的子模块 另一个疑问是,当我绘制x1的用例图时。如何表示名为“查看位置”的主要工作和名为“更改地图视图”的可选工作 请先解释一下答案。 用例简单地描述了“用户可以对您的系统做什么” 这个

我需要知道,如何表示一个模块的子模块

例如,我有一个名为X的模块。这个模块X实际上由三个子模块组成,分别称为x1、x2和x3。用户可以从可用选项中选择此子模块中的任何一个子模块。这意味着此模块不会在没有这3个子模块的情况下退出。我的疑问是,在绘制用例图时,如何表示这些子模块?我必须使用“包含”或“扩展”作为主模块的子模块

另一个疑问是,当我绘制x1的用例图时。如何表示名为“查看位置”的主要工作和名为“更改地图视图”的可选工作

请先解释一下答案。

用例简单地描述了“用户可以对您的系统做什么”

这个简单的定义有时会让很多人感到困惑:

当我们询问用户可以对您的系统做什么时,他们会告诉 早期protype GUI上的选项菜单

在你的问题中,我想你也谈到了“GUI”。据我所知,您有一个GUI原型, 在其中,用户选择“X模块”选项,然后向用户显示“X1、X1、X3”子选项操作

用例对GUI细节“不感兴趣”。它试图捕捉真正的“动机”

说清楚一点:假设你正在为一家银行设计那台经典的自动取款机

用户想用ATM做什么?假设他想用自动取款机付账

这方面的简单用例Digram:

但他/她将如何支付账单?这是由用例描述[不是图表,用例文本]捕获的。。。 假设我们的客户说用户可以支付这些账单:他/她的手机账单,他/她的电费账单,可能是他/她的税。你会发现每一笔付款都有不同的特点

然后开始在[System do this,Actor do this]表单中编写用例描述

用例:支付账单

主要场景:

  • 系统显示ATM操作
  • 用户选择付款单选项
  • 系统显示这些付账单操作

    A) 支付手机账单

    B) 付电费

    C)

  • 用户选择一个选项

  • 如果用户选择“支付手机账单”,则

    5.a)系统询问手机号码

    。。。。。。。。

    5.n)系统询问用户是否需要回复

    5.n+1)用户想要收据

    5.n+2)系统发出收据

  • 如果用户选择支付电费,则 .....

  • 如果用户选择X选项,则 ....
  • 一般来说,不要用大量的代码弄脏用例图 “扩展”或“包括”、“概括”

    因此:我们无法知道“更改地图视图”或“视图位置”是一个真实的用例[我们应该在图中显示]还是用例senario中的一个步骤。这取决于你的背景

    作为一个实用的建议,您可以应用Craig Larman 3测试,以确定这些测试是否是真正的用例:

    • 老板测试:像“老板”一样思考。并告诉参与者[将参与者视为您的员工]“更改视图”。作为“老板”,你满意吗。或者它毫无意义。例如,ATM机的“账单”通过了boss测试,但“选择支付选项”却没有通过
    • 大小测试:一个真实的用例,有一些大小[场景]而不是一个步骤
    • 用例是完整的:作为用例的结果,用户应该得到真正的好处
    最后,

    用例主要是文本:[场景]而不是图表。图表只是 概述功能需求。但不是这样 细节

    首先

    用例简单地描述了“用户可以对您的系统做什么”

    这个简单的定义有时会让很多人感到困惑:

    当我们询问用户可以对您的系统做什么时,他们会告诉 早期protype GUI上的选项菜单

    在你的问题中,我想你也谈到了“GUI”。据我所知,您有一个GUI原型, 在其中,用户选择“X模块”选项,然后向用户显示“X1、X1、X3”子选项操作

    用例对GUI细节“不感兴趣”。它试图捕捉真正的“动机”

    说清楚一点:假设你正在为一家银行设计那台经典的自动取款机

    用户想用ATM做什么?假设他想用自动取款机付账

    这方面的简单用例Digram:

    但他/她将如何支付账单?这是由用例描述[不是图表,用例文本]捕获的。。。 假设我们的客户说用户可以支付这些账单:他/她的手机账单,他/她的电费账单,可能是他/她的税。你会发现每一笔付款都有不同的特点

    然后开始在[System do this,Actor do this]表单中编写用例描述

    用例:支付账单

    主要场景:

  • 系统显示ATM操作
  • 用户选择付款单选项
  • 系统显示这些付账单操作

    A) 支付手机账单

    B) 付电费

    C)

  • 用户选择一个选项

  • 如果用户选择“支付手机账单”,则

    5.a)系统询问手机号码

    。。。。。。。。

    5.n)系统询问用户是否需要回复

    5.n+1)用户想要收据

    5.n+2)系统发出收据

  • 如果用户选择支付电费,则 .....

  • 如果用户选择X选项,则 ....
  • 一般来说,不要用大量的代码弄脏用例图 “扩展”或“包括”、“概括”

    因此:我们无法知道“更改地图视图”或“视图位置”是一个真实的用例[我们应该在图中显示]还是用例senario中的一个步骤。这取决于你的背景

    作为一个实用的建议,你可以应用克雷格·拉曼3