首页 > 其他分享 >UML 九种图 学习

UML 九种图 学习

时间:2023-12-07 17:14:24浏览次数:47  
标签:关系 系统 建模 类图 学习 用例 九种 UML

UML(Unified Modeling Language)统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。UML的定义包括UML语义和UML表示法两个元素。

UML是在开发阶段,说明、可视化、构建和书写一个面向对象软件密集系统的制品的开放方法。最佳的应用是工程实践,对大规模,复杂系统进行建模方面,特别是在软件架构层次,已经被验证有效。统一建模语言(UML)是一种模型化语言。模型大多以图表的方式表现出来。一份典型的建模图表通常包含几个块或框,连接线和作为模型附加信息之用的文本。这些虽简单却非常重要,在UML规则中相互联系和扩展。

UML图的作用:

UML的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。其中最常用的是建立软件系统的模型,但它同样可以用于描述非软件领域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、具有实时要求的工业系统或工业过程等。总之,UML是一个通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模,而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试和维护。

特点:

(1)UML统一了各种方法对不同类型的系统、不同开发阶段以及不同内部概念的不同观点,从而有效的消除了各种建模语言之间不必要的差异。它实际上是一种通用的建模语言,可以为许多面向对象建模方法的用户广泛使用。

(2)UML建模能力比其它面向对象建模方法更强。它不仅适合于一般系统的开发,而且对并行、分布式系统的建模尤为适宜。

(3)UML是一种建模语言,而不是一个开发过程。

——以上引用自百度百科

下面是九种常用的UML图:

1.用例图(UseCase Diagrams)
用例图是从用户(角色)的角度出发,描述角色和用例之间的关系。即:谁要使用系统,一级他们使用系统可以做什么。简单来说就是:谁,可以用此系统做什么。
用例图的目的是捕捉到一个系统的动态方面。
用例图是用来收集系统的要求,包括内部和外部的影响。这些要求大多是设计要求。所以,分析一个系统时要收集其功能用例和确定参与者。
简单来说,用例图的目的如下:
用例图用来收集系统的要求。
用例图用于获取系统的外观图。
用例图识别外部和内部因素影响系统。
用例图显示要求之间的相互作用是参与者

 

 

 


2.类图(Class Diagram)
类图是描述系统中的类,以及各个类之间的关系的静态视图。是面向对象系统建模中最常用和最重要的图,是定义其他图的基础。

在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)。

各种关系的强弱顺序: 泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖

 类图(Class Diagram)是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。
类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。
类图不仅用于可视化描述和记录系统的不同方面,也为构建可执行代码的软件应用程序。
类图描述一类的属性和操作,也对系统的约束。被广泛应用于类图的建模的面向对象的系统中,因为它们是唯一的,可以直接映射到面向对象语言的 UML 图。
类图显示集合的类,接口,关联,协作和约束,它也被称为作为结构图。

2.1.泛化(Generalization)

泛化是一种继承关系,表示一般与特殊的关系,它指定了子类如何继承父类的所有特征和行为。

 2.2.实现(Realization)

实现是一种类与接口的关系,表示类是接口所有特征和行为的实现。

2.3.关联(Association)

关联是一种拥有的关系,它使一个类知道另一个类的属性和方法;关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。
    
2.4.聚合(Aggregation)

聚合是整体与部分的关系,且部分可以离开整体而单独存在。如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在。

聚合关系是关联关系的一种,是强的关联关系;关联和聚合在语法上无法区分,必须考察具体的逻辑关系。

2.5.组合(Composition)

组合是整体与部分的关系,但部分不能离开整体而单独存在。如公司和部门是整体和部分的关系,没有公司就不存在部门。

组合关系是关联关系的一种,是比聚合关系还要强的关系,它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期。

2.6.依赖(Dependency)

依赖是一种使用的关系,即一个类的实现需要另一个类的协助,所以要尽量不使用双向的互相依赖.

3.对象图(Object Diagrams)
对象图和类图一样反映系统的静态过程,但它是从实际的或原型化的情景来表达的。对象图显示某时刻对象和对象之间的关系。一个UML对象图可看成一个类图的特殊用例,实例和类可在其中显示。

 

 

 

4.状态图(Statechart Diagrams)
状态图描述类的对象所有可能的状态,以及事件发生时状态的转移条件。他们可以告知一个对象可以拥有的状态,并且事件会怎么随着时间的推移来影响这些状态。

状态图是对类图的补充。

 

 


5.活动图(Activity Diagrams)
活动图描述用例要求所要进行的活动,以及活动间的约束关系,有利于识别并行活动。能够演示出系统中哪些地方存在功能,以及这些功能和系统中其他组件的功能如何共同满足前面使用用例图的业务需求。

活动图是状态图的一种特殊情况,这些状态大都处于活动状态。本质是一种流程图,它描述了活动到活动的控制流。

 

 


6.序列图-时序图(Sequence Diagrams)
序列图是用来显示你的参与者如何以一系列顺序的步骤与系统的对象交互的模型。顺序图可以用来展示对象之间是如何进行交互的。序列图将显示的重点放在消息序列上,即强调消息是如何在对象之间被发送和接收的。

序列图展示的是多个系统或者对象之间的交互的顺序,强调时间顺序。

 

 



7.协作图(Collaboration Diagrams)
协作图和序列图相似,显示对象间的动态合作关系。可以看成是类图和顺序图的交集,协作图建模对象或者角色,以及它们彼此之间是如何通信的。

 

 


8.构件图(Component Diagrams)
构件图是用来表示系统中构件与构件之间,类或接口与构件之间的关系图。其中,构建图之间的关系表现为依赖关系,定义的类或接口与类之间的关系表现为依赖关系或实现关系。

构件图也叫组件图,由组件、接口和组件之间联系构成,描述的是在软件系统中遵从并实现一组接口的物理的、可替换的软件模块。

组件图 = 构件(Component)+接口(Interface)+关系(Relationship)+端口(Port)+连接器(Connector)

 

 


9.部署图(Deployment Diagrams)
部署图又叫配置图,是用来建模系统的物理部署。

部署图由节点以及节点之间的关系组成。

部署图描述的是系统运行时的结构,展示了硬件的配置及其软件如何部署到网络结构中。

部署图通常用来帮助理解分布式系统,一个系统模型只有一个部署图。

部署图用于可视化的软件组件部署的系统中的物理组件的拓扑结构。

 

部署图由节点以及节点之间的关系组成。
部署图描述的是系统运行时的结构,展示了硬件的配置及其软件如何部署到网络结构中。
部署图通常用来帮助理解分布式系统,一个系统模型只有一个部署图。
部署图用于可视化的软件组件部署的系统中的物理组件的拓扑结构。
部署图是用来描述一个系统的静态部署视图。

标签:关系,系统,建模,类图,学习,用例,九种,UML
From: https://www.cnblogs.com/yankeqi/p/17883405.html

相关文章

  • 12.7每日总结(1500字uml)
    类图(ClassDiagram)类图是UML中最常用的一种图形,它描述了系统的静态结构,包括类、接口、属性和方法之间的关系。类图可以用来表示系统的类层次、继承关系、接口和实现、依赖关系、聚合关系、组合关系等。在类图中,类被表示为矩形框,类之间的关系通过箭头表示。如何画:可以使用UML建......
  • 学习笔记—缓存穿透、缓存雪崩、缓存击穿
    缓存穿透定义:缓存穿透指的查询缓存和数据库(缓存找不到就会在数据库找)中都不存在的数据,这样每次请求直接打到数据库,就好像缓存不存在一样。例:“当查询数据库时如果没有查询到数据,则直接返回Null给前端用户,流程结束”,如果前端频繁发起访问请求时,恶意提供数据库中不存在的Key,......
  • UML基础知识
    什么是UML?UML(UnifiedModelingLanguage),即统一建模语言,是一种为面向对象系统的产品进行说明、可视化和编制文档的一种标准语言,是非专利的第三代建模和规约语言。UML是面向对象设计的建模工具,独立于任何具体程序设计语言。在结构化开发方法中,系统分析的建模语言是数据流图,系统设......
  • Springcloud学习笔记58--SpringBoot拦截全局异常统一处理(RestControllerAdvice注解)
    1. 应用场景如果和前端约定好使用固定的自定义格式返回参数,如下:{"code":200,"msg":"操作成功","data":{"equipment":55,"code":99,"point":2}}但在运行时发现了异常,默认的异常返回格式如下:......
  • UML图总结
    UML(统一建模语言)是一种用于软件系统设计和开发的标准化建模语言。它通过图形化的方式描述了软件系统的各种方面,包括结构、行为、功能和交互关系,以便于工程师、设计师和开发人员之间的沟通和理解。UML图可以分为结构图和行为图两大类。结构图主要描述系统的静态结构,包括类图、对象......
  • 《Java编程思想第四版》学习笔记45--关于图标
    //:Faces.java//IconbehaviorinJButtonspackagec13.swing;importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassFacesextendsJPanel{staticIcon[]faces={newImageIcon("face0.gif"),......
  • UML各类基础知识总结
    1、UML关系泛化(也就是我们传统意义上的继承关系)子类继承父类,关系用extend关键字标识;关联可以说是一种属于关系,图中即说的是PhoneNumber类属于Master类,同时,除了一对一的关系之外,还可以用一对多、多对一、多对多的关联关系,除了单向关联之外,双向关联也是存在的;需要注意的是,在......
  • 学习笔记----------------------SendMessage 详解【转】
    SendMessage函数的常用消息及其应用函数原型:DeclareFunctionSendMessageLib"user32"Alias"SendMessageA"(ByValhwndAsLong,_ByValwMsgAsLong,ByValwParamAsLong,lParamAsAny)AsLong 其中四个参数的含义和说明如下:1.hWnd:对象的句柄。希......
  • 2023/12/7 uml总结博客
    今天上课讲回顾了uml面向对象建模中的各种知识,发现自己存在很多欠缺,对uml系统知识做了一下梳理,一共有以下九种图1.用例图用例图是UML中最常见的图之一,它主要用于描述系统的功能需求。用例图中包含了参与者(Actor)和用例(UseCase)两个主要元素。参与者是与系统交互的外部实体,而......
  • UML中九种图以及图中元素所代表的含义详解
    UML是一种建模语言,它用于描述系统的结构和行为。在UML1.4中提供了九种常用的图,如用例图、类图、对象图、状态图、活动图、时序图、协作图、组件图以及配置图。一、用例图:描述角色以及角色与用例之间的连接关系。说明的是谁要使用系统,以及他们使用该系统可以做些什么。1.用例图......