首页 > 其他分享 >UML教程1简介2UML图实例

UML教程1简介2UML图实例

时间:2023-10-04 09:03:34浏览次数:36  
标签:表示 关系 教程 2UML 事物 系统 UML 交互

1 简介

主要:UML图表简介、UML符号、关系、类图、对象图、用例图、状态机图、组件图、部署图和UML工具。

1.2 什么是UML?

UML是统一建模语言(Unified Modeling Language)的缩写。它是一种标准,主要用于为现实世界中的任何软件系统创建面向对象、有意义的文档模型。它为我们提供了一种开发丰富模型的方法,可以描述任何软件/硬件系统的工作。

UML图是统一建模语言的输出。它是类、对象和它们之间关系的图形表示。UML图是描述系统一部分的模型。它用于定义系统的功能或设计。图表必须简洁明了,以便浏览者容易理解。

1.3 UML图表的类型

下面是 UML 图表的主要类型:

  • 结构图:
  • 类图
  • 对象图
  • 包图
  • 组件图
  • 部署图
  • 行为图:
  • 活动图
  • 用例图
  • 状态机图
  • 交互图:
  • 时序图
  • 顺序图
  • 协作图

2 UML图实例

2.1 什么是模型?

模型是对某一事物的抽象,它  省略了不重要的细节,因此比原始实体更容易操作。

模型是对现实的简化。

模型可以提供

  • 系统蓝图
  • 系统的组织
  • 系统的动态
    内容表:

2.2 UML构件(Block)

UML 是统一建模语言(Unified Modeling Language)的缩写。构件是开发完整的UML模型图所需的东西。它是每个UML图表的重要组成部分。以下是 UML 的基本构件:

  • 事物(Thing)
  • 关系

2.3 事物

事物可以描述为现实世界中的任何实体或对象。在UML中,事物分为以下几类、

  • 结构性事物(Structural things)
  • 行为事物(Behavioral things)
  • 分组事物(Grouping things)
  • 注释性事物(Annotational things)

2.3.1 结构事物

结构事物用于描述模型的静态部分。它用来表示人眼可见的事物。UML中的结构事物都是关于系统的物理部分。它是UML模型的名词,如类、对象、接口、协作、用例、组件和节点。

让我们来解释一下 UML 中的结构体:

  • 类:

类用于表示各种对象。它用来定义对象的属性和操作。在UML中,我们还可以表示抽象类。功能未定义的类称为抽象类。任何UML类图符号一般用下面的 UML 类图示例来表示、

对象是用来描述系统行为和功能的实体。类和对象有相同的符号。唯一不同的是,对象名称在UML中总是以下划线表示。

  • 接口(Collaboration)

接口类似于没有实现细节的模板,用圆圈符号表示它。当类实现了接口,它的功能也就实现了。

  • 协作(Collaboration)

用虚线椭圆表示,椭圆内写有名称。

  • Use-case

Use-case是面向对象建模的核心概念之一。它们用于表示高级功能和用户如何处理系统。

  • 角色(Actor)

用在用例图中。Actor 符号用来表示与系统交互的实体。用户就是角色的最好例子。UML 中的角色符号如下。

  • 组件(Component)

组件符号用来表示系统的一部分。UML 中的表示方法如下、

  • 节点(Node):

节点用于描述系统的物理部分。节点可用来表示网络、服务器、路由器等。其符号如下。

  • 部署图(Deployment diagram)

它表示安装系统的物理硬件。部署图表示系统的物理视图。它表示系统各部分之间的通信和交互。

部署图由以下符号组成:节点、组件、artifact、接口

2.3.2 行为事物

  • 状态机(State machine:)

用于描述单个组件在整个软件开发生命周期中的各种状态。它用于捕捉系统组件的不同状态。

  • 活动图(Activity diagram)

活动图用于表示系统不同组件开展的各种活动。其表示方法与状态机图相同。

活动图主要包含初始状态、最终状态、决策框和动作符号。

  • 交互图

交互图用于直观显示系统各组件之间的信息流。

序列图显示一条或多条生命线之间的实时交互。

参考资料

2.3.3 分组事务

包用于将语义相关的建模元素组合成一个有凝聚力的单元。包是 UML 中唯一可用的分组方式。

2.3.4 注释

它就像一张便条,可以写在模型上以捕捉一些重要信息。它类似于黄色便条。

2.4关系

两个或多个事物之间的关系。UML中的关系能让你捕捉事物之间有意义的联系。它显示每个元素如何相互关联,以及这种关联如何描述应用程序的功能。

UML 中的关系分类如下、

  • 关联关系
  • 依赖关系
  • 泛化关系(Generalization relationship)
  • 实现关系

2.4.1 关联关系

这是一组连接UML模型元素的链接。它还定义了有多少对象参与该关系。它说明了有多少元素参与了特定的交互。

它表示为一条虚线,两边都有箭头。两边都包含一个描述关系的元素。我们引入了新术语 "多重性"(multiplicity),它告诉我们有多少个特定元素的对象被关联起来。

2.4.2 依赖关系

在这种关系中,源元素依赖于目标元素,并可能受到目标元素变化的影响。它是UML最重要的符号之一。它定义了从一个对象到另一个对象的依赖方向。

它用一条虚线表示,虚线一侧有一个箭头。

2.4.3 泛化关系

也称为父子关系。它是一般事物和更具体的事物之间的关系。这种关系用来表示继承概念。

它用一条一侧带有空心箭头的直线来表示。

2.4.4 实现关系

在这种关系中,一个元素描述了一些没有实现的责任,其他元素实现了第一个元素提到的功能。实现关系在表示接口时被广泛使用。

它以虚线表示,一端带有空心箭头。

2.5 图

UML 图分为三个不同的类别,如

  • 结构图
  • 行为图
  • 交互图

2.5.1 结构图

结构图用于表示系统的静态视图。它表示构成系统结构的系统部分。结构图显示了系统中的各种对象。

以下是 UML 中的各种结构图:

  • 类图
  • 对象图
  • 包图
  • 组件图
  • 部署图

2.5.2 行为图

现实世界中的任何系统都可以用静态或动态两种方式表示。如果一个系统既可以用静态方式表示,也可以用动态方式表示,那么这个系统就是完整的。行为图表示系统的功能。

涉及系统静态部分的 UML 图称为结构图。涉及系统运动或动态部分的 UML 图称为行为图。

以下是 UML 中的各种行为图:

  • 活动图
  • 用例图(Use case diagram)
  • 状态机图

2.5.3 交互图

交互图只是行为图的一个子集。它用于可视化系统中各种用例元素之间的流程。交互图用于显示两个实体之间的交互以及数据如何在其中流动。

以下是 UML 中的各种交互图:

  • 时序图(Timing diagram)
  • 顺序图(Sequence diagram)
  • 协作图

2.6 小结

  • 模型是一个系统的抽象,它隐藏了实现的细节。
  • 模型提供了系统的蓝图和结构。
  • UML符号帮助我们定义系统的结构和行为方面。
  • 事物、关系和图是 UML 语法的三个组成部分。
  • 事物是现实世界中的任何实体。
  • 关系用于描述一个或多个事物之间的联系。
  • 各种UML符号图用于表示单个系统的不同方面。

标签:表示,关系,教程,2UML,事物,系统,UML,交互
From: https://www.cnblogs.com/testing-/p/17741664.html

相关文章

  • 每日总结2023/10/03(c#安装教程)
     C#,入门教程(01)——VisualStudio2022免费安装的详细图文与动画教程_visualstudio2022安装c#教程-CSDN博客......
  • Spring Boot 入门教程
    大家好,我是深码青年,作为一名迄今为止已经有四年码龄的人来说,springboot已经深入了自己的脑子里面,所以借此机会,我们来仔细说一说关于springboot2.0的那些事儿一、SpringBoot是什么以下截图自[SpringBoot官方文档](https://spring.io/projects/spring-boot"SpringBoot官方......
  • 无涯教程-OC - SQLite
    SQLite可以在iOS中用于处理数据。它使用sqlite查询,这对于那些了解SQL的人来说更加容易。涉及步骤步骤1-创建一个简单的基于视图的应用程序。步骤2-选择您的项目文件,然后选择目标,然后在选择框架中添加libsqlite3.dylib库。步骤3-选择"File"→"New"→"File...",然后选择......
  • 无涯教程-OC - 位置操作
    只要用户允许应用程序在核心位置框架的帮助下访问信息,无涯教程就可以在iOS中轻松找到用户的当前位置。位置处理步骤步骤1-创建一个基于View的简单应用程序。步骤2-选择您的项目文件,然后选择目标,然后添加CoreLocation.framework,如下所示-步骤3-在ViewController.xib中......
  • 【保姆级安装使用教程#1】Xshell与Xftp的下载、安装和使用
    1.下载官网下载地址:==Xshell与Xftp下载地址==当然也可以用鄙人的百度网盘连接下载这是链接:链接百度网盘下载Xshell与Xftp分别下载Xshell与Xftp2.安装Xshell打开Xshell安装包点击下一步点击接受许可,并进行下一步点击浏览更换安装地址,选择安装地址时要多建一个Xshell文件夹!!!,并进行......
  • 第8期ThreadX视频教程:应用实战,将裸机工程移植到RTOS的任务划分,驱动和应用层交互,中断DM
    视频教程汇总帖:https://www.armbbs.cn/forum.php?mod=viewthread&tid=110519 这个是我们初学RTOS面临的最直接问题,很多时候,简单的RTOS机制明白了,API也会调用了,就是添加到RTOS后,总感觉那里不对劲,怎么使用才是正确姿势。针对这些问题,本期视频教程,我们ThreadX内核教程穿插一期实......
  • Tomcat安装及配置教程
    网上的tomcat安装及配置教程一大堆,但是好多都过时了,根本不适用现在的版本,今天凯歌整理一篇Tomcat安装步骤及详细配置教程,2022年最新版~Tomcat安装及配置教程主要分为四步:步骤一:首先确认自己是否已经安装JDK步骤二:下载安装Tomcat步骤三:Tomcat配置环境变量步骤四:验证Tomcat......
  • IDEA安装教程
    首先先下载一个压缩包,里面安装包破译插件都有。通过百度网盘分享的文件:JetBrain…zip链接:https://pan.baidu.com/s/1mBQUacDIf39AJtR-wGZ-bw提取码:P95C复制这段内容打开「百度网盘APP即可获取」鼠标右击【IntelliJIDEA2022】压缩包(win11及以上系统需先点击“显示更......
  • 无涯教程-OC - 相机管理
    相机是移动设备中的常见功能之一。无涯教程可以用相机拍照并在无涯教程的应用程序中使用它,这也非常简单。相机管理步骤步骤1-创建一个简单的基于视图的应用程序。步骤2-在ViewController.xib中添加按钮并为该按钮创建IBAction。步骤3-添加图像视图并创建IBOutlet,将其......
  • 无涯教程-OC - 加速传感器
    Accelerometer计用于检测设备在三个方向x,y和z上的位置变化,无涯教程可以知道设备相对于地面的当前位置,为了测试该示例,您需要在设备上运行它,并且不能在模拟器上运行。示例的步骤第1步 - 创建一个简单的基于视图的应用程序。第2步 -在ViewController.xib中添加三个标签,......