【问题标题】:What is a use-case? How to identify a use-case? [closed]什么是用例?如何识别用例? [关闭]
【发布时间】:2009-09-02 06:08:25
【问题描述】:

这个问题很笼统。识别有效用例时应牢记哪些要点?如何处理用例?

【问题讨论】:

标签: project-management use-case


【解决方案1】:

用例明确地确定用户可以使用程序完成的任务或目标。应该用用户可以理解的方式来写。

Wikipedia's description 过于正式。我很快就会浏览我的其他文本。 相比之下,the original wiki's article 更容易访问。

Alastair Cockburn 的 early articleThe Pragmatic Programmer 肯定引用,包含一个很好的模板。

This question,就在几天前,关系非常密切,但稍微具体一些。

【讨论】:

    【解决方案2】:

    用例的定义很简单:

    参与者与系统的交互以创造商业价值。

    更正式地说:

    执行的一系列事务 通过产生可测量的系统 特定参与者的一组值。

    它们旨在非常简单:演员、交互、价值。您可以添加一些细节,但不能太多。

    使用用例很容易。阅读:http://www.gatherspace.com/static/use_case_example.html

    最大的错误是忽略了actor和系统之间的交互。用例不是写下冗长、详细的技术算法设计的地方。用例是演员某事的地方。

    人们与系统交互,以便他们可以采取行动(下订单、批准计费、拒绝保险索赔等)。要采取行动,他们首先要做出决定。为了做出决定,他们需要信息

    • 信息
    • 决定
    • 动作

    这些是用例“交互”部分的成分。

    【讨论】:

    • 这对我很有帮助。交互的“信息”和“动作”方面似乎分别与用户界面的呈现和控制完全一致。
    【解决方案3】:

    一个有效的用例可以描述:

    • 目标受众/用户
    • 先决条件(即必须已登录等)
    • 预期结果
    • 可能的故障点
    • 用户工作流程

    【讨论】:

      【解决方案4】:

      来自Guideline: Identify and Outline Actors and Use Cases Eclipse 人:

      识别参与者

      找到与之相关的外部实体 正在开发的系统必须 相互影响。候选人包括以下团体 需要帮助的用户 系统来执行他们的任务并运行 系统的主要或次要 功能,以及外部 硬件、软件和其他系统。

      通过命名来定义每个候选演员 它并写一个简短的描述。 包括演员的区域 责任和目标 演员将尝试完成 使用系统。消除演员 没有任何目标的候选人。

      这些问题在 识别参与者:

      • 谁将提供、使用或移除 来自系统的信息?
      • 谁会 使用系统?
      • 谁对 提供的某些功能或服务 系统?
      • 谁将支持和 维护系统?
      • 什么是 系统的外部资源?
      • 什么 其他系统将需要交互 系统正在开发中?

      查看利益相关者列表 您在愿景声明中捕捉到。 并非所有利益相关者都会成为参与者 (意思是,它们不会全部交互 直接用系统下 发展),但这个列表 利益相关者有助于识别 演员候选人。

      识别用例

      查找用例的最佳方法是 考虑每个参与者需要什么 系统。对于每个演员,人类或 不是,问:

      • 演员的目标是什么 尝试用系统完成?
      • 主要任务是什么? 演员想要系统表演吗?
      • 演员是否会创造、储存、改变、 删除或读取系统中的数据?
      • 演员是否需要通知 外部突然变化的系统?
      • 是否需要通知参与者 关于某些事件,例如 网络资源不可用, 在系统中?
      • 演员会表演吗 系统启动或关闭?

      了解目标如何 组织的运作方式以及它是如何运作的 信息系统可能是 纳入现有业务 给出了系统的想法 周围环境。该信息可以 揭示其他候选用例。

      给一个独特的名字和简介 清楚地描述 每个用例的目标。如果 候选用例没有 目标,问问自己它为什么存在,以及 然后要么确定一个目标,要么 消除用例。

      概述用例

      不赘述,写一个 事件流程的初稿 被识别为的用例 高优先级。一开始,写一个 简单的分步说明 用例的基本流程。这 一步一步的描述很简单 之间交互的有序列表 演员和系统。例如, 基本流程的描述 提款现金用例 自动柜员机 (ATM) 将 是这样的:

      1. 客户插入银行卡。
      2. 系统验证卡并提示 输入个人信息的人 识别码 (PIN)。
      3. 客户输入 PIN。
      4. 系统 验证 PIN 并提示 客户选择操作。
      5. 客户选择取款。
      6. 系统提示客户选择 哪个帐户。
      7. 客户选择 支票账户。
      8. 系统 提示输入金额。
      9. 客户 输入要提取的金额。
      10. 该 系统验证金额(假设 足够的资金),然后发行 现金和收据。
      11. 客户取现金和收据,然后 取回银行卡。
      12. 用例结束。

      在您逐步​​创建此内容时 基本流程说明 事件,您可以发现替代方案 和异常流量。例如, 如果客户输入 无效的密码?记录姓名和 每个备选方案的简要说明 您确定的流程。

      表示之间的关系 参与者和用例

      演员之间的关系 可以捕获用例,或者 记录在案。有几种方法可以 做这个。如果您使用的是用例 项目上的模型,您可以创建 用例图显示参与者如何 和用例相互关联。 请参阅指南:Use-Case Model 了解更多信息。

      如果您不使用用例模型 对于项目,确保每个 用例标识相关的 主要和次要参与者。

      【讨论】:

      • 三个字和一个链接,不作答。您的答案本身应该是可读的,并包含用于备份和详细说明的链接。它不应该只是说“看看这个!”。当您关联的那个东西消失时会发生什么?
      • 感谢您告诉我。我是堆栈菜鸟。我的错。从现在开始我会尽力而为。 :) 是的,我已经对我的答案进行了更改:)
      • 我建议将其缩减为仅相关部分,并明确表明这是从某个地方复制的。不过,至少现在这里有信息。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-24
      • 1970-01-01
      • 1970-01-01
      • 2019-01-16
      • 2014-07-13
      相关资源
      最近更新 更多