(转)UML用例图

article/2025/9/30 2:04:25

  用例图是指由参与者(Actor)、用例(Use Case),边界以及它们之间的关系构成的用于描述系统功能的视图。用例图(User Case)是外部用户(被称为参与者)所能观察到的系统功能的模型图。用例图是系统的蓝图。用例图呈现了一些参与者,一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。

 

一、用例图所包含的的元素

1. 参与者(Actor)——与应用程序或系统进行交互的用户、组织或外部系统。用一个小人表示

 

                

 

2. 用例(Use Case)——用例就是外部可见的系统功能,对系统提供的服务进行描述。用椭圆表示

 

             

 

3. 子系统(Subsystem)——用来展示系统的一部分功能,这部分功能联系紧密。

 

    

 

 

二、用例图所包含的的关系

  用例图中涉及的关系有:关联泛化包含扩展

  如下表所示:

 

 

  a. 关联(Association)

 

  表示参与者与用例之间的通信,任何一方都可发送或接受消息。

 

  【箭头指向】:无箭头,将参与者与用例相连接,指向消息接收方

 

  

 

  b. 泛化(Inheritance)

 

  就是通常理解的继承关系,子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。子用例可以使用父用例的一段行为,也可以重载它。父用例通常是抽象的。在实际应用中很少使用泛化关系,子用例中的特殊行为都可以作为父用例中的备选流存在。

 

  【箭头指向】:指向父用例

 

 

  c. 包含(Include)

 

  包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤。包含关系对典型的应用就是复用,也就是定义中说的情景。但是有时当某用例的事件流过于复杂时,为了简化用例的描述,我们也可以把某一段事件流抽象成为一个被包含的用例;相反,用例划分太细时,也可以抽象出一个基用例,来包含这些细颗粒的用例。这种情况类似于在过程设计语言中,将程序的某一段算法封装成一个子过程,然后再从主程序中调用这一子过程。

  例如:业务中,总是存在着维护某某信息的功能,如果将它作为一个用例,那添加、修改以及删除都要在用例详述中描述,过于复杂;如果分成添加用例、修改用例和删除用例,则划分太细。这时包含关系可以用来理清关系。

 

  【箭头指向】:指向分解出来的功能用例

 

 

  d. 扩展(Extend)

 

  扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。将基用例中一段相对独立并且可选的动作,用扩展(Extension)用例加以封装,再让它从基用例中声明的扩展点(Extension Point)上进行扩展,从而使基用例行为更简练和目标更集中。扩展用例为基用例添加新的行为。扩展用例可以访问基用例的属性,因此它能根据基用例中扩展点的当前状态来判断是否执行自己。但是扩展用例对基用例不可见。

对于一个扩展用例,可以在基用例上有几个扩展点。

 

  【箭头指向】:指向基础用例

 

 

  e. 依赖(Dependency)

 

  以上4种关系,是UML定义的标准关系。但VS2010的用例模型图中,添加了依赖关系,用带箭头的虚线表示,表示源用例依赖于目标用例。

 

  【箭头指向】:指向被依赖项

 

 

  5. 项目(Artifact)

 

  用例图虽然是用来帮助人们形象地理解功能需求,但却没多少人能够通看懂它。很多时候跟用户交流甚至用Excel都比用例图强,VS2010中引入了“项目”这样一个元素,以便让开发人员能够在用例图中链接一个普通文档。

 

  用依赖关系把某个用例依赖到项目上:

 

 

  然后把项目->属性的Hyperlink设置到你的文档上;

 

  这样当你在用例图上双击项目时,就会打开相关联的文档。

 

  6. 注释(Comment)

 

 

  包含(include)、扩展(extend)、泛化(Inheritance) 的区别:

 

  条件性:泛化中的子用例和include中的被包含的用例会无条件发生,而extend中的延伸用例的发生是有条件的;

 

  直接性:泛化中的子用例和extend中的延伸用例为参与者提供直接服务,而include中被包含的用例为参与者提供间接服务。

 

  对extend而言,延伸用例并不包含基础用例的内容,基础用例也不包含延伸用例的内容。

 

  对Inheritance而言,子用例包含基础用例的所有内容及其和其他用例或参与者之间的关系;

  ●泛化侧重表示子用例间的互斥性;

  ●包含侧重表示被包含用例对Actor提供服务的间接性;

  ●扩展侧重表示扩展用例的触发不定性;

  另外一点需要提及的是:泛化中的子用例和扩展中的扩展用例均可以作为基本用例事件的备选择流而存在。

 

 

三、几个用例图示例

 

****************************************************************************

  以下为某在线购物系统的用例图,对系统做出做了整体的描绘。

  (1)系统整体用例图


    


   
    
(商品用例图)

   
   
    
   
   
   
(购买信息用例)
  
   

   

    (用户资料用例)


   


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

相关文章

UML的用例图

用例图的构成 1 角色:人员角色——人、事; 角色不一定局限于人,还可以是事物、事儿 2用例:功能的描述; 每一个用例描述了一个完整的系统服务 3 系统边界 4 关系:执行者与用例之间的关系。 泛化 依赖 关联…

UML用例图关系与画法

用例图主要用来描述“用户、需求、系统功能单元”之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。 【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求。 用例图所包含的元素如下: 1. 参与者(Actor) 表示与您的应用程序或系统进…

设计模式之UML用例图

用例图主要用来描述“用户、需求、系统功能单元”之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。 【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求。 用例图所包含的元素如下:   1. 参与者(Actor) 表示与您的应用程序或…

UML用例图和类图

UML常见关系: 用例图 构成:参与者、用例、关系。 概念: 参与者:外部用户、进程或其他系统的理想化概念。 用例:外部可见的一个系统功能单元,用例名字是一个动词短语字符串,比如,…

【软件工程】2.UML用例图

什么是UML? UML(Unified modeling language) 出现于70年代中期,建模语言数量从不到十种增加到了五十多种,OO(面向对象)方法的用户并不了解不同建模语言的优缺点及相互之间的差异; 90年代中期形成了UML统一建模语言,它是…

UML用例图与类图

1、用例图 用例图是被称为参与者的外部用户所能观察到的系统功能的模型图。 (《UML参考手册》) 用例图列出系统中的用例和系统外的参与者,并显示哪个参与者参与了哪个用例的执行(或称为发起了哪个用例)。 用例图多用于静态建模阶段(主要是业务建模和需求建模)。 …

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 方案📝想让其他人了解它,但是无论怎么表达他们都无法理解,那么我们可以使用用例图去表示它,这样能让其他人更…