UML 用例图_uml建模用例图和细化用例

UML 用例图_uml建模用例图和细化用例UML用例图参考【UML】—用例图用例图初学UML——用例图需求中如何画用例图为什么使用用例图从业务事件、发起事件以及系统如何响应这些事件来建模系统功能的过程。用例建模起源于面向对象建模。概念图形化地描述了谁将使用该系统以及用户希望与系统交互的方式。业务事件的文本描述以及用户如何与系统交互以完成任务。参与者参与者是与系统…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

UML 用例图

参考

【UML】— 用例图
用例图
初学UML——用例图
需求中如何画用例图

为什么使用用例图

  • 从业务事件、发起事件以及系统如何响应这些事件来建模系统功能的过程。
  • 用例建模起源于面向对象建模。

概念

  • 图形化地描述了谁将使用该系统以及用户希望与系统交互的方式。
  • 业务事件的文本描述以及用户如何与系统交互以完成任务。

参与者

  • 参与者是与系统主体交互的外部实体的类元,描述了一个或一组与系统产生交互的外部用户或外部事物。
  • 参与者位于系统边界之外,而不是系统的一部分。
  • 可以是:人,组织,另一个信息系统,外部设备,甚至时间。

确定参与者

从以下角度确定参与者

  • 为系统提供输入的人或事物
  • 接收系统输出的人或事物
  • 需要接入的第三方系统或设备
  • 时间是否会触发某些事件
  • 负责支持或维护系统中信息的人

参与者分类

  • 主要业务参与者:主要从用例的执行中获得好处的关联人员。
  • 主要系统参与者:直接同系统交互以触发业务或系统事件的关联人员。
  • 外部服务参与者:响应来自用例的请求的关联人员。
  • 外部接收参与者:从用例中接收某些价值或输出的非主要的关联人员。

参与者的泛化关系

  • 当系统中的几个参与者既扮演自身的角色,同时也有更一般化的角色时,可以通过建立泛化关系来进行描述。
  • 与类相似,父参与者可以是抽象的,即不能创建一个父参与者的直接实例,这就要求属于抽象父参与者的外部对象一定能够属于其子参与者之一。

这里写图片描述

用例

  • 用例是类元提供的一个内聚的的功能单元,表明系统与一个或多个参与者之间信息交换的顺序,也表明了系统执行的动作。
  • 简单来说,用例就是某一个参与者在系统中做某件事从开始到结束的一系列活动的集合,以及结束时应该返回的可观测、有意义的结果,其中也包含可能的各种分支情况。
  • 用例与用例图被广泛使用于系统的需求建模阶段,并在系统的整个生命周期中被不断细化。

这里写图片描述

确定用例

用例的特征保证用例能够正确地捕捉功能性需求,同时也是判断用例是否准确的依据。

  • 用例是动宾短语
  • 用例是相对独立的
  • 用例是由参与者启动的
  • 用例要有可观测的执行结果
  • 一个用例是一个单元

用例与参与者

  • 一个用例可以隶属一个或多个参与者,一个参与者也可以参与一个或多个用例。
  • 用例与参与者之间存在关联关系。
  • 主参与者与次参与者:通常来说主参与者是用例的重要服务对象,而次参与者处于一种协作地位。

这里写图片描述

用例的粒度

  • 业务建模阶段,用例的粒度以每个用例能够说明一件完整的事情为宜。即一个用例可以描述一项完整的业务流程。例如取钱、报装电话、借书等表达完整业务的用例,而不要细节到验证密码、填写申请单、查找数目等业务中的一个步骤。
  • 用例分析阶段,即概念建模阶段,用例的粒度以每个用例能描述一个完整事件流为宜。可以理解为一个用例描述一项完整业务中的一个步骤
  • 系统建模阶段,用例视角是针对计算机的,因此用例的粒度以一个用例能够描述操作者与计算机的一次完成交互为宜。例如,填写申请单、审核申请单、派发任务单等。可以理解为一个操作界面或一个页面流。

泛化关系

  • 与参与者的泛化关系相似,用例的泛化关系将特化的用例与一般化的用例联系起来。子用例继承了父用例的属性、操作和行为序列,并且可以增加属于自己的附加属性和操作。
  • 父用例同样可以定义为抽象用例。

这里写图片描述

依赖关系——包含

  • 包含指的是一个用例(基用例)可以包含其他用例(包含用例)具有的行为,其中包含用例中定义的行为将被插入基用例定义的行为中。
  • 包含的两个基本约束:
    • 基用例可以看到包含用例,并需要依赖于包含用例的执行结果,但是它对包含用例的内部结构没有了解;
    • 基用例一定会要求包含用例执行

这里写图片描述

扩展

  • 扩展指的是一个用例(扩展用例)对另一个用例(基用例)行为的增强。
  • 在这一关系中,扩展用例包含了一个或多个片段,每个片段都可以插入到基用例中的一个单独的位置上,而基用例对于扩展的存在是毫不知情的。使用扩展用例我们就可以在不改变基用例的同时,根据需要自由地向用例中添加行为。

这里写图片描述

用例图示例

这里写图片描述

依赖关系对比

这里写图片描述

用例描述

  • 一个完整的用例模型应该不仅仅包括用例图部分,还要有完整的用例描述部分。
  • 一般的用例描述主要包括以下几部分内容:
    • 用例名称:描述用例的意图或实现的目标,一般为动词或动宾短语。
    • 用例编号:用例的唯一标识符,在其他位置可以使用该标识符来引用用例。
    • 参与者:描述用例的参与者,包括主要参与者和其他参与者。
    • 用例描述:对用例的一段简单的概括描述。
    • 触发器:触发用例执行的一个事件。
    • 前置条件:用例执行前系统状态的约束条件。
    • 基本事件流(典型过程):用例的常规活动序列,包括参与者发起的动作与系统执行的响应活动。
    • 扩展事件流(替代过程):记录如果典型过程出现异常或变化时的用例行为,即典型过程以外的其他活动步骤。
    • 结论:描述用例何时结束。
    • 后置条件:用例执行后系统状态的约束条件。
    • 补充约束:用例实现时需要考虑的业务规则、实现约束等信息。

用例描述示例

这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/196606.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • pycharm 编辑器_运行编辑器怎么运行

    pycharm 编辑器_运行编辑器怎么运行作为PyCharm编辑器的起步,我们理所当然的先写一个Helloword,并运行它。(此文献给对IDE不熟悉的初学者)1,新建一个项目File–>NewProject… 2,新建一个文件右键单击刚建好的helloWord项目,选择New–>PythonFile3,输入文件名输入文件名,

  • 按钮式超链接代码

    按钮式超链接代码简单的制作按钮式超链接效果代码,视觉上产生按钮图样

  • 二叉树计算叶子节点的计算问题

    二叉树计算叶子节点的计算问题题目如下:计算方法需要使用两个结论:1:总结点数=树中的边数+1。见下图可以清晰明白。2:叶子节点数=总结点数-度数非零的节点数(戒子节点度为0)所以本题目解法:总结点数=20*4+10

  • JAVA 分布式 – 分布式介绍[通俗易懂]

    JAVA 分布式 – 分布式介绍[通俗易懂]什么是分布式系统?要理解分布式系统,主要需要明白一下2个方面:1.分布式系统一定是由多个节点组成的系统。其中,节点指的是计算机服务器,而且这些节点一般不是孤立的,而是互通的。2.这些连通的节点上部署了我们的节点,并且相互的操作会有协同。分布式系统对于用户而言,他们面对的就是一个服务器,提供用户需要的服务而已,而实际上这些服务是通过背后的众多服务器组成的一个分布式系统,因此分布式系统看…

  • 原来一直以为i686是64位的

    原来一直以为i686是64位的在yum上找32位的i386找不到,看到i686以为是64位呢,原来它也是32位啊i686只是i386的一个子集,支持的cpu从Pentium2(686)开始,之前的型号不支持.备注:1.i386适用于intel和AMD所有32位的cpu.以及via采用X86架构的32的cpu.intel平台包括8086,80286,80386,80486,奔腾系列(1.2.3.4…

  • javah详解[通俗易懂]

    javah详解[通俗易懂]java开发中如果使用到JNI,则难免需要使用javah来生成C++或C的头文件信息,下面就讲解javah的命令:第一种:直接cd到当前程序的target/class目录下(一定不能是子目录)(maven项目,如果是普通项目则到bin目录下)。然后使用:javahcom.yongcheng.liuyang.utils.TestJni,其中javah后面的是需要生成头文件类的全路径(包名+类名),当然生成的.h文件位于当前class的目录下。第二种:直接在运行中cmd到dos窗口,使用如下命令:j

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号