UML用例图

2024-05-13

1. UML用例图

UML(Unified Modeling Language),统一建模语言,又称标准建模语言,是为软件系统建立可视化模型。主要包括用例图、时序图、协作图、活动图、部署图、构件图、类图、状态图等等。
  
 之前有写过UML时序图: 产品经理必备之UML时序图 
  
 用例图(Use Case Diagrame)是UML的一种,主要用来描述用户、需求、系统功能之间的关系,能够充分展示一个外部用户能够观察的系统功能模型图,以一种可视化的直观方式理解系统的功能需求,以便使系统用户更容易理解这些元素的用途,也便于开发人员最终实现这些元素。
  
 用例图是跳出当前系统,站在用户的角度去看系统,思考系统功能,这样我们能更加理解业务,表达清楚需求。从用户的视角,我们不会使用专业术语去进行业务的沟通,可以做到真正以用户为中心去获取需求,转化为产品服务。
  
 用例图可以帮助我们更全面的考虑系统内事物之间的互相影响,关注整体的运行规律,而不是只考虑个别事物的情况。
                                                                                  
  1、参与者 :是系统外部的一个实体,它以某种方式参与了用例的执行过程。参与者不一定是人,也可以是部门,也可以是外部系统,也可以是其他事物。通常用人形图标表示。
  
  2、用例 :是对系统的用户需求(主要是功能需求)的描述,用例表达了系统的功能和所提供的服务,说明了系统是如何与最终用户或其它系统互动,也就是谁可以用系统做什么,从而获得一个明确的业务目标。通常用椭圆表示。
  
 用例注意事项:
  
       用例粒度的确定,没有标准,只能根据实际情况分析。一个大型系统,可能会有上百个用例,一个小产品,也许只有几个用例。
  
       一个用例是一个完整的使用场景,不是零散的动作步骤。比如,拿起手机打电话是个完整的场景,拿起手机只是一个步骤。
  
       一个用例有一个明确、独立的目标,如果一个用例包括多个目标,则可再逐层细化出子用例。
  
  3、系统边界 :将系统内外分开,参与者在外面,用例在里面。边界内的用例,就是系统要实现的事情。通常用矩形框表示。
  
  4、关系: 
  
 (1)关联关系:用一条实线表示,这条实线一般有三种形式:无箭头、有指向用例的箭头、有指向执行者的箭头。箭头的方向代表了数据流向或谁启动谁。
  
 (2)归纳(泛化)关系:表示参与者与参与者之间、用例与用例之间的关系。一个用例可以被特别列举为一个或多个子用例,这被称为用例泛化。
  
         用带空心箭头的实线表示,箭头指向被泛化的用例,即子用例指向父用例,泛化是从下到上的过程。(子用例继承父用例所有的结构、行为和关系,是父用例的一种特殊形式。)
  
 (3)包含关系:表示用例与用例之间的关系,其中一个用例(父用例)的行为包含了另一个用例(子用例)的行为。
  
      用虚线箭头+表示,箭头指向被包含的用例。一般是父用例包含很大的范围,专门抽出子用例来着重表达,又或者是复用用例。
  
 (4)扩展关系:表示用例与用例之间的关系,是在特定条件下,由扩展用例指向被扩展用例。
  
       用虚线箭头+>字样,箭头指向被扩展的用例。拓展用例是在特定条件出现时,才会被执行的用例。
  
 1、不是每个需求都要画用例图,要视情况而定,简单的需求完全可以不用画。
  
 2、画图是为了表达、传递信息,当我们画用例图时,不管画的多么酷炫,本质都是在分析业务场景、系统功能性需求,并描述出来。
  
  阅读原文 
  
 对产品经理感兴趣的朋友,可以移步“ 需求管理 ”,期待共同交流。

UML用例图

2. 画UML用例图

下面是我的答案:

3. UML用例图、类图

 首先需要先了解一下对象之间的关系,以及它们对应的符号
    通常对象之间的关系可以分为以下几类: 
                                           1、泛化/继承(Generalization):实线+三角形空心   相当于类继承,父参与者可以是抽象的,即不能创建一个父参与者的直接实例,这就要求属于抽象父参与者的外部对象一定能够属于其子参与者之一。
                                           2、关联关系(association) :实线箭头   关联关系:指的是类与类之间的联接,它使一个类知道另一个类的属性和方法(实例变量体现)。A类依赖于B对象,并且把B作为A的一个成员变量, 则A和B存在关联关系.   关联可以是双向的,也可以是单向的。两个类之前是一个层次的,不存在部分跟整体之间的关系。   单向:只能从A通过属性导航到B,B不能导航到A。   双向:A可以通过属性导航到B,B也可以通过属性导航到(双向即为嵌套)
                                           3、聚合关系(aggregtion)棱形空心+实线   聚合(aggregation)关系是关联关系的一种,是强关联关系,是整合和部分的关系,是has-a的关系.   聚合关系也是通过成员对象来实现,其中成员对象是整体对象的一部分,但是成员对象可以脱离整体对象单独存在.(可替换)
                                           4、依赖(Dependency) 虚线+箭头   依赖关系:指的是类与类之间的联接。依赖关系表示一个类依赖于另一个类的定义。   动物依赖氧气和水。调用新陈代谢方法需要氧气类与水类的实例作为参数
                                           5、实现关系(realization)虚线三角形空心   实现关系:指的是一个class类实现 interface接口(可以实现多个接口)的功能;实现是类与接口之间最常见的关系;   在Java中此关系通过关键字implements明确标识。
                                           6,组合关系(composition)   组合是一种强的‘拥有’关系,是一种contains-a的关系,体现了严格的部分和整体关系,部分和整体的生命周期一样。   示例:   鸟和翅膀就是组合关系,因为它们是部分和整体的关系,并且翅膀和鸟的生命周期是相同的。
                                           
                                                                                   
                                           
                                           
                                            一张完整的类图:    
                                           
   参考: UML用例图 , UML类图 , UML中的类图及常见类图关系 

UML用例图、类图

4. uml用例图怎么创建

方法/步骤


首先就是安装rose这个工具,这里我用的是“IBM Rational Rose Enterprise Edition”。

打开软件之后,界面有这个默认选项,点击“OK”就可以了。

在界面左边有一个“use case view”,可以在这里新建一个用例图。

鼠标放在“use case view ”上面,单击右键,选择“new”下的“use case diagram”。

如图所示,用例图建好了,可以命名,这里我选择的是默认的名字。

双击之前建好的用例图,右边就会弹出这样的窗口,有工具栏,有白色画布。

接着鼠标点一下人形图标,再在右边的空白处点一下就会得到一个参与者了。

鼠标点击左边的椭圆形图标,然后再在右边点击一下就可以得到一个参与者的活动了。

5. 用例建模如何进行?uml用例图的要素有哪些

UML用例图最简单了,一般表达使用者和系统功能之间的关系。也就是角色和用例之间的关系。如下图。基本元素就是角色,用例,扩展关系,包含关系,用例主题,扩展点等几项。

更多用例图案例可以参考trufun plato uml2建模工具的帮助系统。

用例建模如何进行?uml用例图的要素有哪些

6. UML之我做分析与设计时常用到的2种图

 【跟老婆吵架千金劝我:“爸爸,别跟妈妈一般见识,女人都是惯出来的,打一顿就好了!”   “我不敢啊!”,我说。   千金横眉冷对地对我说:“可以让妈妈打你,这不是经常的事吗?这都是惯的。”   唉!不说了,疗伤中】
                                           工作中常用的UML图有哪些???
   需要准备工具:SmartUML软件
   A & D
   A是Analyse的缩写,即我们所说的“分析”;   D是Design的缩写,即“设计”。
   一个系统在编码前,都要经过分析与设计两个步骤。分析师绘制的类图叫做“领域类图”,而设计师绘制的类图叫做“实现类图”。
    领域类图 :产生于分析阶段,由系统分析师绘制,主要作用是描述业务实体的静态结构,包括业务实体、各个业务实体所具有的业务属性及业务操作、业务实体之间具有的关系。
   例如:
                                           这是一个选课系统的简单领域分析类图。可以看到,主要实体有教师、学生、课程和开课安排。每个实体标注了其在业务上具有的属性和方法。而且图中还标明了实体间的关系。
   分析仅与业务有关,而与技术无关。
    实现类图: 产生于设计阶段,由系统设计师绘制,其作用是描述系统的架构结构、指导程序员编码。它包括系统中所有有必要指明的实体类、控制类、界面类及与具体平台有关的所有技术性信息。例如:
                                           上面图形就是根据领域模型所画出的实现类图。
   来自达夫妮·杜穆里埃《蝴蝶梦》
   【猴画狐狸】   猴子发现狐狸在鸡窝前鬼鬼祟祟,立刻提笔画了一幅速写,贴在鸡窝前的大树上。   貉、狼和老虎看了,不约而同地把猴子围了起来。   貉怒视着猴子说:"你这是别有用心!看你给狐狸画的那嘴,简直与我的嘴一模一样!"   狼逼视着猴说:"你这是指桑骂槐!"为什么偏偏画我老朋友的速写?"   老虎怒气最大,它一边将速写扯碎,一边对猴子吼道:"你这是影射!狐和虎读音相近。你的矛头是对着我的!"   猴无法申辩,它糊涂了:我明明画的是狐狸,可貉、狼和虎为何要发火呢?   据说,猴之所以常常抓耳挠腮,就是因为没有弄明白这个问题。
   【如何点菜-来自知乎】
   【1】 UML类图与类的关系详解    【2】 领域模型和设计类图的区别    【3】 UML常用图的几种关系的总结    【4】 基于UML的需求分析和系统设计个人体会    【5】 UML的面向对象分析设计过程浅析    【6】 例解基于UML的面向对象分析与设计    【7】 UML系统分析与设计 
   如果有带给你一丝丝小快乐,就让快乐继续传递下去,欢迎点赞、顶、欢迎留下宝贵的意见、多谢支持!

7. UML图总结-需求分析阶段用例图的使用

 最近过年因为新冠病毒的肆虐各公司都开始放长假了,初步估计都是要出了元宵才能回成都上班,虽然返岗之前要在家办公(上班),但是还是得做点欠着的事情舍,其中比较重要的一个就是我的毕业设计嘞,一两个月就要交初稿了,但是我还没开始嘞
   由于毕业设计需要用到各种UML图,所以就趁这个机会好好复习和总结一下软件工程课程有关UML图的相关内容吧,毕竟这个在软件设计和分析的流程中还是占据比较重要的地位,也是软件分析的利器,能帮助我们快速分析我们要做的事情,也能使我们要做的东西一目了然,接下来就直接开始总结和复习吧,就以我的毕业设计——一个简单的在线考试系统为例开始我们的学习之旅
   用例图(User Case)是外部用户(被称为参与者)所能观察到的系统功能的模型图。用例图是系统的蓝图。用例图呈现了一些参与者,一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。   例如我们在线考试系统的业务用例图:
                                           简单来说就是:用例图是由参与者(Actor)、用例( Use Case )、 系统边界 、箭头组成,用画图的方法来完成的一个表达系统功能的图示。   接下来分别介绍其成分。
   参与者(Actor)是指存在于系统外部并直接与系统进行交互的人、系统、子系统或类的外部实体的抽象。
    简单来说就是: 一个系统的使用者,可能涉及的角色就是一个参与者
   每个参与者可以参与一个或多个用例,每个用例也可以有一个或多个参与者。   在用例图中使用一个人形图标来表示参与者,参与者的名字写在人形图标下面。
                                           简单来说就是: 用例 是对包括变量在内的一组动作序列的描述,系统执行这些动作,并产生传递特定参与者的价值的可观察结果。
    系统边界 是用来表示正在 建模 系统的边界。边界内表示系统的组成部分,边界外表示系统外部。系统边界在画图中用方框来表示,同时附上系统的名称,参与者画在边界的外面, 用例 画在边界里面。因为系统边界的作用有时候不是很明显,所以我个人理解,在画图时可省略。
   要创建用例,我们需要分析哪些可以作为用例,如何识别,可以从以下几点来确定用例:
   简单来说就是:如果用例的粒度很小,得到的用例数就会太多。反之,如果用例的粒度很大,那么得到的用例数就会很少。
   比如在我们的考试系统中:我们的老师可以对试卷进行管理,那么展示出来的粒度较大的用例可以是这样:
                                           如果我们按照具体的操作把它抽象成多个用例(粒度变小),它也可以是这样的:
                                           它展示的系统需求和单个用例是完全一样的。
   用例之间的关系包括以下几种:

UML图总结-需求分析阶段用例图的使用

8. 专家答疑 UML包括哪些图

本文和大家重点讨论一下UML图和关系的概念,
UML包括九种图:使用案例图、类图、对象图、构件图、部署图、活动图、协作图、状态图、序列图。而UML关系共有四种,请看本文详细介绍。
UML图包括九种:使用案例图、类图、对象图、构件图、部署图、活动图、协作图、状态图、序列图。在这些图中使用案例图、类图、序列图是最有用的。
根据其用意,可以将UML图划分为结构型图和行为型图两种。
结构型图:描述系统的静态结构。在显示系统中类及类之间的关系时最有用。
结构型图显然,要描述一个设计模式的静态结构,使用UML图中的类图和对象图是很合适的。
行为型图显然,要描述一个设计模式的行为特征,使用UML图中的状态图和时序图是很合适的。
应当指出的是源码天空
,一个使用UML的系统设计,往往是从使用案例图开始的,而且是一个设计应当是使用案例驱动的。