如何编写有效的用例?

软件开发中最困难的问题之一是精确捕获您想要构建的内容。不准确的要求最终会导致项目的重大延迟,返工或甚至放弃。有效的应用用例技术可帮助您的团队捕获用户观点中的需求,最终用户和您的团队都可以轻松理解这些需求。用例驱动的开发支持后续开发活动,如分析,设计和测试。

用例图示例

什么是用例?

目的

用例是演员想要获得可观察的业务目标的事情。它们以短动词或动词+名词短语命名。你应该使用具体和特定的动词和名词来避免歧义。应尽可能避免使用“do”和“perform”等动词以及“数据”和“信息”等名词。

从理论上讲,最终用户将执行系统支持的操作,以实现其最终目标,如用例分析中所述。以在线酒店预订系统为例。“预订”无疑是一个商业目标,因而是一个用例。在在线地图上查找酒店的功能也可以是用户需要的功能。但是,它不是一个用例,因为该操作本身不会产生任何可观察的目标。

将与实现问题相关的需求建模为用例是不合适的,例如:支持多个外观,部署安排,构建数据库。所有这些都是错误的,可能会导致系统坏或甚至错误。

用户故事现在是主流

任何拥有软件开发经验的人都可能会遇到最终用户和开发团队之间的沟通问题。当成员在不同的偏远地区工作时,这可能会更加严重。用户故事是与客户开展讨论的好方法,可确保我们真正了解客户的实际需求。由产品所有者创建的用户故事以简单和简洁的方式捕获需求的“谁”,“什么”和“为什么”,通常以非技术格式用自然语言编写。敏捷开发已经与用户故事一起进入开发方法的主流,用于需求发现。

实际考虑因素

通常情况下,平均有10名成员的敏捷团队可能会在工作流中结束数百个用户故事,其中一些是相互关联的,导致从史诗或之前Sprint的用户故事的详细版本中分离出来。用户故事是仅存在于Sprint中的瞬态工件,在开发迭代结束时将被丢弃。敏捷团队和Scrum成员经常发现他们很容易变得难以管理,很难以整齐有序的方式组织他们,特别是团队成员希望从之前的冲刺中引用相关的用户故事。

虽然用例对于整个软件开发生命周期来说意味著更加永久,并且可以用作占位符,以容纳在史诗范围内拆分的相关用户故事。此外,用例意味著开发团队将继续参考后续开发活动。

用户故事创建概述

用例图

用例图是一种为对像管理组定义的需求获取而创建的统一建模语言(UML)图(我的天啊)。用例图提供了用户(由演员表示)希望通过使用系统实现的目标(由用例建模)的图形概览(可选地由系统边界表示)。用例图中的用例可以根据其相关性,抽象级别和对用户的影响进行组织和安排。可以连接它们以显示它们的依赖关系,包含关系和扩展关系。使用用例图建模用例的主要目的是通过识别用户想要的内容来建立系统的坚实基础。根据分析结果,您可以继续研究如何满足这些用户需求。

用例图示例

用例图主要由actor,用例和关联(连接器)组成。

参与者是在实现用户目标时与系统交互的任何人或外部系统。有两种演员 - 小学和中学。主要参与者是与系统交互以获得直接利益的任何人或事物。次要参与者是涉及实现用例的任何人或事物,他们没有从系统中获得直接利益。次要角色通常是帮助主要角色实现用例的人。

在Visual Paradigm中绘制用例图

在本教程中,我们将以在线酒店预订系统为例,演示如何使用Visual Paradigm编写有效的用例。让我们从绘制用例图开始。我们将继续使用最终设计编写有效的用例。

  1. 通过从应用程序工具栏中选择UeXceler> UeXceler,在Visual Paradigm中打开UeXceler 。
  2. 打开Use Case Diagram页面。
    打开用例图
  3. 在图表工具栏中选择Actor。单击图表以创建actor并将其命名为Customer
    演员
  4. 客户可以预订酒店,这是系统的用例。让我们从Customer actor 创建一个用例。将鼠标指针移到Customer actor上。按右上角的资源目录图标并将其拖出。
    创建用例
  5. 在资源目录中选择关联 - >用例
    选择资源目录中的用例
  6. 释放鼠标按钮以创建用例。将其命名为Make Reservation。actor和用例之间的关联表明actor将与系统交互以实现相关的用例。
  7. 完成设计使其看起来像这样:
    用例图示例

写用户故事

虽然用例是要开发的IT系统的业务目标,但用户故事表示在详细讨论用例期间由分析师和前线利益相关者捕获的用户问题或疑虑。毫无疑问,所有捕获的用户故事都旨在实现IT系统的业务目标。

  1. 右键单击Make Reservation并从弹出菜单中选择Open Use Case Details ....
    打开用例详细信息
  2. 打开“ 用户故事”页面。
    打开用户故事选项卡
  3. 双击选项卡内的空白区域来创建用户素材。创建三个故事:搜索酒店预订酒店处理紧急预订
    用户故事已创建

捕获用户故事场景

用户故事通过首先确定问题来告诉您最终用户想要实现的目标。一旦找到问题,就可以开始寻找解决方案了。用户故事场景工具使您能够概述演员和系统之间的交互,以解决用户故事中描述的问题。您可以使用此工具找出用户所需的系统行为。

用户故事场景构成高级用户和系统对话,旨在找出演员的意图或行为以及系统如何对这些演员输入作出反应。在决定在事件流程中包含哪些内容时,您应该简明扼要。不要在内部包括系统处理用户输入的方式,甚至不包括插入数据库记录等实现细节。这是错误的,因为用户故事,实际上是用例分析,旨在从最终用户的角度确定需求。但是,实现细节可以用用户故事子的形式用UML序列图建模。

让我们写一个用户故事的场景。

  1. 双击用户故事搜索酒店将其打开。
    打开用户故事
  2. 打开“ 方案”选项卡。场景编辑器由行组成,称为步骤。每个步骤代表一个演员输入或系统响应。
    打开用户故事场景选项卡
  3. 单击第一步并输入第一个用户输入:输入城市,到达,出发,房间类型,然后单击“搜索”
    进入第一步
  4. 使用UeXceler工具栏下提供的格式工具将“ 搜索 ”一词设置为蓝色和粗体,以强调。
    格式化方案步骤文本
  5. Enter键完成此步骤。将为您创建第2步。
  6. 第2步是关于系统如何对用户的输入做出反应。您可以从编写“System ...”开始,但有更好的方法来表示系统响应。从工具栏中选择UeXceler>添加控件>系统响应以添加系统响应步骤。
    添加系统响应方案
  7. 您现在可以输入步骤2的内容:显示酒店列表
    输入系统响应文本
  8. 添加以下步骤:
    用户输入 系统响应
    点击酒店的徽标以阅读其详细信息  
      显示酒店详情
    已输入方案步骤

更多东西 - 创建基于场景的线框

线框是用户界面的草图。它可以帮助您在需求收集的早期代表要开发的系统的屏幕和屏幕流程。您可以将线框关联到方案中的步骤。本节将向您展示如何使用线框工具将线框添加到步骤。

  1. 单击第一步。
    选择第一步
  2. 将鼠标指针移动到右侧的绿色三角形。然后单击Define Wireframe
    定义线框
  3. 您看到灰色窗格出现在右侧?单击它以选择要创建的线框类型。
    创建线框
  4. 在弹出窗口中,选择“ 网站”
    选择线框类型
  5. 单击“ 新建网站线框”。将出现一个新的线框,其中包含一个空的浏览器窗口。您可以在这里为网站准备模型。
  6. 在我们开始在浏览器窗口中添加不同的组件之前,让我们调整它以使其更小。单击“浏览器”窗口的标题。
  7. 单击后,调整大小处理程序将显示在“浏览器”窗口周围,以便您手动调整窗口大小。让我们尝试一种更直接的方法。右键单击浏览器的标题,然后从弹出菜单中选择浏览器大小(1024 x 768)> 800 x 600
    调整线框大小
  8. 利用图表工具栏中列出的线框工具创建如下的线框:
    线框已创建
  9. 单击步骤标题旁边的三角形按钮返回场景编辑器。 
    回到场景编辑器
    完成后,您可以看到线框的缩略图显示在方案编辑器中。 
    线框添加
相关链接
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章