UML用例图与类图

article/2025/9/30 2:07:55

1、用例图

用例图是被称为参与者的外部用户所能观察到的系统功能的模型图。 (《UML参考手册》)

用例图列出系统中的用例和系统外的参与者,并显示哪个参与者参与了哪个用例的执行(或称为发起了哪个用例)。

用例图多用于静态建模阶段(主要是业务建模和需求建模)。

1.1用例图中的事物

1.1参与者(Actor)

在系统外部与系统直接交互的人或事物(如另一个计算机系统或一些可运行的进程)。
1.参与者是角色(role)而不是具体的人,它代表了参与者在与系统打交道的过程中所扮演的角色。所以在系统的实际运作中,一个实际用户可能对应系统的多个参与者。不同的用户也可以只对应于一个参与者,从而代表同一参与者的不同实例。

2.参与者作为外部用户(而不是内部)与系统发生交互作用,是它的主要特征。

3.在后面的顺序图等中出现的“参与者”,与此概念相同,但具体指代的含义,视具体情况而定。

UML表示:
这里写图片描述

1.2用例(Use Case)

系统外部可见的一个系统功能单元。系统的功能由系统单元所提供,并通过一系列系统单元与一个或多个参与者之间交换的消息所表达 。

UML表示:
这里写图片描述

1.2用例图中的关系

1.2.1关联关系(参与者与用例之间)

表示参与者与用例之间的交互,通信途径。
(关联有时候也用带箭头的实线来表示,这样的表示能够显示地表明发起用例的是参与者。)

UML表示:
这里写图片描述

1.2.2包含关系(用例与用例之间)

箭头指向的用例被包含的用例,称为包含用例箭头出发的用例基用例。包含用例是必选的,如果缺少包含用例,基用例就不完整;包含用例必须被执行,不需要满足某种条件;其执行并不会改变基用例的行为。

UML表示:
这里写图片描述

1.2.3扩展关系(用例与用例之间)

箭头出发的用例被扩展的用例,称为扩展用例箭头指向的用例基用例。扩展用例是可选的,如果缺少扩展用例,不会影响到基用例的完整性;扩展用例在一定条件下才会执行,并且其执行会改变基用例的行为。

UML表示:
这里写图片描述

1.2.4泛化关系(参与者与参与者之间)

发出箭头的事物“is a”箭头指向的事物。泛化关系是一般和特殊关系,发出箭头的一方代表特殊的一方,箭头指向的一方代表一般一方。特殊一方继承了一般方的特性并增加了新的特性。

UML表示:
这里写图片描述

这里来做个用例图的小例子。

例1 参与者之间的泛化关系
参与者:经理,安全主管,保安
用例:管理人事,批准预算,批准安全证书,监视周边

在参与者之间不存在泛化关系的情况下,各个参与者参与 用例的情况分别是:经理参与用例管理人事和批准预算;安全主管参与用例批准安全证书;保安参与用例监视周边。由于安全主管与经理,安全主管与保安之间泛化关系的存在,意味着安全主管可以担任经理和保安的角色,就能够参与经理和保安参与的用例。这样,安全主管就可以参与全部4个用例。但经理或者保安却不能担任安全主管的角色,也就不能参与用例批准安全证书。

首先,打开StarUML。

这里写图片描述

同时右键删掉Main

右键Model。

这里写图片描述

同样可以修改用例图的文件名。

这时候仍然右键Model,添加参与者用例

这里写图片描述

修改参与者与用例的名称,并拖动到用例图中。

这里写图片描述

最后添加参与者与参与者,用例与参与者之间的关系。

这里写图片描述

以此类推,找到参与者与用例相对应的关系,最后完成效果如下。

这里写图片描述

2、类图

类图以反映类的结构(属性、操作)以及类之间的关系为主要目的,描述了软件系统的结构,是一种静态建模方法
类图中的“类”与面向对象语言中的“类”的概念是对应的,是对现实世界中的事物的抽象。

2.1类图中的事物

2.1.1类

  1. 从上到下分为三部分,分别是类名属性操作。类名是必须有的。

  2. 类如果有属性,则每一个属性都必须有一个名字,另外还可以有其它的描述信息,如可见性、数据类型、缺省值等。

  3. 类如果有操作,则每一个操作也都有一个名字,其它可选的信息包括可见性、参数的名字、参数类型、参数缺省值和操作的返回值的类型等。

这里写图片描述

2.1.2接口

一组操作的集合,只有操作的声明而没有实现。

这里写图片描述

2.1.3 抽象类

不能被实例化的类,一般至少包含一个抽象操作。

这里写图片描述

2.1.4 模版类

一种参数化的类,在编译时把模版参数绑定到不同的数据类型,从而产生不同的类。

这里写图片描述

2.2类图中的关系

2.2.1关联关系

描述了类的结构之间的关系。具有方向、名字、角色和多重性等信息。一般的关 联关系语义较弱。也有两种语义较强,分别是聚合关系与组合关系。

其中包括单向关联(Derected Association)双向关联(Association)

UML表示法:

单向关联(Derected Association)

这里写图片描述

关联关系本质就是依赖关系

但是这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的,而且双方的关系一般是平等的。

故箭头指向被依赖的一方。

这里写图片描述

2.2.2聚合关系(Aggregration)

特殊关联关系,指明一个聚集(整体)和组成部分之间的关系

这里写图片描述

箭头指向整体

2.2.3组合关系(Composition)

语义更强的聚合,部分和整体具有相同的生命周期

这里写图片描述

箭头指向整体

2.2.4依赖关系(Dependency)

定义两个类,一个A类,一个B类,然后A类引用了B类,这种关系称之为偶然性或者临时性。同时当我们的B类发生变化的时候,那么影响到A类,这个关系称之为依赖关系

这里写图片描述

箭头指向被依赖者

2.2.5实现关系(Realization)

对应于类和接口之间的关系。

这里写图片描述

箭头指向接口

2.2.6泛化关系(Generalization)

在面向对象中一般称为继承关系,存在于父类与子类、父接口与子接口之间。

这里写图片描述

箭头指向父类


http://chatgpt.dhexx.cn/article/VrE0tor2.shtml

相关文章

UML用例图介绍

1.什么是用例图 1.用例图用来描述系统的需求,从用户的角度来描述系统的功能,强调谁在使用系统,系统实现了哪些功能,总的来说,用例图就是描述用户的需求和系统的功能,从外部用户的角度来描述系统的功能。 2…

UML-----用例图

文章目录 什么是用例图?用例图的作用用例图的组成部分扩展关系与包含关系的不同点如下 实例绘制用例图 什么是用例图? 用例图就是用来描述用户需求的图。 用例图的作用 帮助开发团队以一种可视化的方式理解系统的功能需求。借助于用例图,系…

Visio画UML用例图

Visio画UML图基本操作及技巧解析 本文和大家重点讨论一下用Visio画UML图基本操作,画UML图有好多种工具,VISIO只是其中一种,VISIO的动作非常轻快.很多人都在用。下面就让我们一起来看一下具体介绍吧。 用Visio画UML图基本操作 目的 画UML图有好…

软件需求分析——UML用例图

前言:UML是 Unified Modeling language 的缩写,是一种统一建模语言,主要在软件需求分析与设计阶段使用。UML一共包括9个图,分别是用例图、类图、对象图、序列图、协作图、状态图、活动图、构件图、部署图。本篇仅讨论用例图,后续再慢慢补充。 用例图: 1、定义:由参与者…

UML用例图_练习

练习题 “远程网络教学系统”的功能需求包括: (1)学生登录网站后,可以浏览课件、查找课件、下载课件、观看教学视频。 (2)教师登录网站后,可以上传课件、上传教学视频、发布教学心得、查看教学心得、修改教学心得。 (3)系统管理员负责对网站页面的维护…

UML用例图讲解及画法

1.用例图 ●用例图(Use Case Diagram)用于描述若干参与者(actor) 以及这些参与者与系统提供的用例之间的交互关系 ●用例图从人-机交互的角度,分析和考察系统的行为,描述系统对用户提供的功能特性 ●用例图由参与者、用例及它们之间的关系组成:用例图参与者用例关系 ●参与者:…

UML用例图实例解析

本文和大家重点讨论一下UML用例图实例的应用,UML用例图包含了用例和参与者,用例之间用关联来连接以求把系统的整个结构和功能反映给非技术人员(通常是软件的用户),对应的是软件的结构和功能分解。 UML用例图 本文和大家…

UML用例图怎么画 有手就会

UML用例图是用于描述系统内用户和与之相关的用例之间的关系, 比如系统、参与者、用例和显示这些元素关系的模型。它展示了一个外部用户能够观察到的系统功能模型图,帮助开发团队以一种可视化的方式理解系统的功能需求。 这里将使用BoardMix绘制UML用例图…

UML用例图总结

转载请注明出处:http://blog.csdn.net/tianhai110 用例图主要用来描述 用户、需求、系统功能单元 之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。 【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求。 用例图所包含的元素如下…

UML-用例图

用例图:主要用于描述系统的行为及各种功能之间的关系,是描述参与者(Actor)与用例以及用例与用例之间关系的图。 用例图 参与者 用例 关系 1.组成 1.1 用例(use case) 用例 概念: 1&#xf…

UML用例图的画法详细介绍【软件工程】

文章目录 I.总述和预备知识II.关联(Association)关系III.泛化(Generalization)关系IV.包含(Include)关系V.扩展(Extend)关系VI.总结 I.总述和预备知识 首先,用例图是用来描述系统功能的技术,表示一个系统中用例与参与者及其关系的图,主要用于需求分析阶段&#xff…

UML用例图

文章目录 一、定义二、构成1、参与者2、用例3、边界4、参与者与用例的关系1、关联(association)2、泛化(inheritance)3、包含(include)4、扩展(extend) 三、案例附录 一、定义 用例图…

UML 用例图

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

UML之用例图

用例图(use case diagram) 用例图可以让其他人更直观的了解一个系统。假如我们现在有一个 APP 方案📝想让其他人了解它,但是无论怎么表达他们都无法理解,那么我们可以使用用例图去表示它,这样能让其他人更…

UML——用例图

用例图 用例图:用来描述用户的需求,从用户的角度来描述系统的功能,并指出各种功能的执行者,强调谁在使用系统,系统为执行者完成了哪些功能。 用例图基本元素: (1)用例&#xff1a…

UML简单介绍(五)——用例图的使用案例与分析

1、泛化关系 参与者:经理,安全主管,保安 在参与者之间不存在泛化关系的情况下,各个参与者参与 用例的情况分别是: 经理参与用例管理人事和批准预算; 安全主管参与用例批准安全证书; 保安参与…

[软件工程] UML 用例图详解

参考博客: https://blog.csdn.net/sinat_25207295/article/details/116073819 https://blog.csdn.net/cold___play/article/details/100824261 参考教材: 软件工程(第四版)高等教育出版社 统一建模语言(Unified Modeling Langu…

UML建模--用例图

用例图主要用来描述角色以及角色与用例之间的连接关系。说明的是谁要使用系统,以及他们使用这个系统干什么。一个用例图包含了多个模型元素,如系统、参与者和用例,并且显示这些元素之间的各种关系,如泛化、关联和依赖。它展示了一…

python3爬取网易云音乐《我们》全部评论

伴随着《后来的我们》的上映,这首歌的评论也是一路暴涨。如今让我们趁着这波秋风(虽然已经有点晚了),把这首歌的评论爬下来。虽然之前还打算做出词云可视化出来然而,还是太懒了 之前爬过豆瓣《霸王别姬》的影评做过这…

行业分析常用到的21个网站

行业分析常用到的21个网站 前言 今天写《就业乱世,如何正面应战!【所长】》笔记的时候在里面找到了作者分析行业常用到的21个网站。于是我也看一看。还是有不少启发的。让我一目了然知道对哪些公司看哪些数据。我之前接触得迷迷糊糊的,知道…