首页 > 其他分享 >uml学习

uml学习

时间:2023-12-07 18:58:31浏览次数:34  
标签:对象 建模 时序 学习 用例 协作 类图 uml

1 用例图

用例图包含参与者、用例和关系这三种核心元素,不同的视角可以得到不同的用例视图,它展现了系统的功能性需求。

所谓不同的视角,可以对应面向对象分析设计的三阶段。

2 类图

类图用于展示系统中的类及其相互之间的关系。

类图建模常用的方式是从概念层,到说明层,最后到实现层这么一个抽象层次逐步降低和细化的过程。

概念层类图位于业务建模阶段,这个阶段采用业务实体这个核心元素来表示。

3 对象图

对象图是类图的实例,标识和类图基本相同。由于对象存在生命周期,对象图只能在系统某一时间段存在,因此对象图可以被想象成正在运行的系统在某一时刻的快照。

4 包图

在实际的项目中,建模过程获得的元素可能是非常多的,如果将这些元素的关系都绘制出来,看上去就会特别乱,特别复杂,也难以识别。

那为了更好的理解和管理这些建模元素,我们就需要有规律的对元素进行组织。包图就起到了这么一个作用,通过包这个容器,可以从大到小、从粗到细地将建模元素组织起来,便于我们的分析,交流和细化。

5 组件图

当有些包能够被多个场景重复使用,那这个包就可以认为有着特定的功能,能够完成特定的目标。

这种情况下,包就可以定义为组件,组件是一种特殊的包,既起到了普通包组织和容纳的作用,又能完成特定的功能。

比如模块(登录模块),类库(Java Guava 包)。

组件可以按功能分为以下几类:模块、子系统、库、可执行文件和程序包等等。

6 部署图

部署图描述了物理上系统运行时的结构,包括系统中硬件的分布以及软件部署到硬件上的具体方式。

部署图用于设计建模阶段,采用节点和关系两种核心元素来绘制。常用于分布式应用环境和多设备应用环境。

7 状态图

状态图也称状态机,它描述了一个对象的生命周期,你可以把它理解成一台运行中的机器,这台机器负责这个对象在固定几个状态间的流转。

这个对象可以是业务实体对象,也可以是分析类对象,还可以是设计类对象。也就是说,在面向对象分析设计的三个阶段(业务建模,概念建模,设计建模),都可以用状态图来表达。

8 活动图

活动图描述了为了完成某一个目标需要做的活动以及这些活动的执行顺序。

UML 中有两个层面的活动图,一种是用例活动图,它用于描述用例场景,常用于业务建模阶段,另一种是对象活动图,用于描述对象交互,常用于设计建模阶段。

9 时序图

时序图用于描述按时间顺序排列的对象之间的交互模式。

前面类图那一节有提过类有三个层次的观点:概念层、说明层和实现层,分别对应于面向对象分析设计的业务建模阶段、概念建模阶段和设计建模阶段,相应的,也可以在这三个层次上分别对业务实体对象、分析类对象和设计类对象绘制业务模型时序图、概念模型时序图和设计模型时序图。

设计模型时序图使用设计类作为对象绘制,也是我们日常开发设计中最为常用的动态视图。以下是商品查询的设计模型时序图。

时序图除了在建模的三个阶段使用外,当你需要表达对象的交互,或者想分析对象的职责和接口时,都可以使用时序图。

10 协作图

协作图和时序图一样,也是描述对象之间的交互模式,不同的是,时序图在意的是对象交互的执行顺序,而协作图在意的是对象间的结构关系。

因此,时序图适用于获得对调用过程的理解,而协作图适用于获得对对象结构的理解。

协作图可以和时序图互相转换,对应时序图的三种表达方式,协作图也分为业务模型协作图,概念模型协作图和设计模型时序图。本文只介绍业务模型协作图,另外两种协作图可以由相应的时序图推导,这里就不赘述了。

业务模型协作图同样采用业务实体来绘制,目标也是实现用例场景。下图是网上购买商品的业务模型协作图。

可以看到,协作图和时序图相比,对象间的结构一目了然,很容易知道哪些消息会影响哪些对象或者哪些对象需要提供哪些接口。但在执行顺序的表达上就很弱,必须依赖消息文本里的数字。

 

类图中各个箭头的含义

泛化(继承) B ——▷A B 类作为 A 类的子类存在
实现 B ------▷A B 类实现 A 接口
依赖 A ------->B B 类作为 A 类某个方法的参数,表示A想做某些事情需要依赖 B,不然做不成。虚线参数强依赖
关联 A ——>B B 类作为 A 类的属性存在,语义上 A 类和 B 类的地位或水平相等。实线属性若关联
聚合 A♢——>B B 类作为 A 类的属性存在,语义上 B 类可作为 A 类的一部分,这个关系可有可无,是A has--a B 的关系,如房子(A),桌子(B)
组合 A♦——>B B 类作为 A 类的属性存在,语义上 B 类是 A 类的一部分,这部分必须有,是 A contain--a B 的关系,如(人),大脑(B)。

 

标签:对象,建模,时序,学习,用例,协作,类图,uml
From: https://www.cnblogs.com/yetang307/p/17883701.html

相关文章

  • UML九图介绍
    介绍一下UML九图UML九图是指统一建模语言的九种图表,分别是:用例图(UseCaseDiagram)、类图(ClassDiagram)、对象图(ObjectDiagram)、活动图(ActivityDiagram)、状态图(StateDiagram)、协作图(CollaborationDiagram)、时序图(SequenceDiagram)、构造图(ComponentDiagram)和部署图(Deploymen......
  • UML总结博客
    1.用例图用例图是UML中最常见的图之一,它主要用于描述系统的功能需求。用例图中包含了参与者(Actor)和用例(UseCase)两个主要元素。参与者是与系统交互的外部实体,而用例则表示系统的功能。画法: 用例图的画法相对简单,通过椭圆形表示用例,人形图标表示参与者。通过实线箭头表示参与者......
  • UML各类型含义
    箭头含义:导语在平时的开发中,难免会遇到画UML图的时候,也就是我们所说的类图,但是UML图中的箭头多种多样,所代表的含义也是各不相同,今天我们就来说说这几种箭头所代表的含义。1泛化概念:泛化表示一个更泛化的元素和一个更具体的元素之间的关系。泛化是用于对继承进行建模的UML元素......
  • UML各类基础知识总结
    1、UML关系泛化(也就是我们传统意义上的继承关系)子类继承父类,关系用extend关键字标识;关联可以说是一种属于关系,图中即说的是PhoneNumber类属于Master类,同时,除了一对一的关系之外,还可以用一对多、多对一、多对多的关联关系,除了单向关联之外,双向关联也是存在的;需要注意的是,在......
  • uml知识总结
    UML图的作用:UML的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。其中最常用的是建立软件系统的模型,但它同样可以用于描述非软件领域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、具有实时要求的工业系统或工业过程等。总之,UML是一个通......
  • UML知识点
    UnifiedModelingLanguage(UML)包含不同类型的类图,用于描述系统中的类、对象和它们之间的关系。以下是几种常见的类图类型及其介绍:类图(ClassDiagrams):类图是描述系统中类及其之间关系的静态结构图。它展示了类的属性、方法、关联、继承、接口等信息。主要元素包括类、接口......
  • UML图
    UML是一种常用的软件建模语言,其中类图是最常用的一类图。类图描述了系统中的类、接口、对象和它们之间的关系。除了类图,UML还包括其他八种类型的图,包括用例图、活动图、时序图、状态图、组件图、部署图、对象图和通信图。以下是UML中九种不同的类图的简单介绍:类图(ClassDi......
  • UML学习详解
    一、用例图:描述角色以及角色与用例之间的连接关系。说明的是谁要使用系统,以及他们使用该系统可以做些什么。1.用例图的含义由参与者(Actor)、用例(UseCase)以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图。要在用例图上显示某个用例,可绘制一个椭圆,然后将用例的......
  • uml
    九种常见UML图1.类图概述类图(ClassDiagram)是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。类图不仅用于可视化描述和记录系统的不同方面,也为构建可执行代码的软件应用程......
  • 12.7UML图总结
    今天老师布置了UML的类图,用例图,活动图,时序图等,总结了以下内容。类图(ClassDiagram)是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型,是唯一的可以直接映射到面向对象语言的图。类图的绘制......