系统开发基础:UML中图的相关知识笔记(上)

           

1、图的概念

图(Diagram) 是一组元素的图形表示,大多数情况下,把图画成顶点(代表事物)和弧(表示关系)的连通图。

2、UML中图的分类

UML2.0中的图主要有:类图、对象图、用例图、序列图、通信图、状态图、活动图、构件图、部署图、组合结构图、包图、交互概览图、时序图。

2.1 类图

类图主要展现了一组对象、接口、协作和它们之间的关系。面向对象系统最常见的就是类图。类图给出系统的静态设计图。包含主动类的类图给出了系统的静态进程视图。

类图中包含的内容:类、接口、协作、依赖、泛化、关系、注解、约束、包、子系统。

作用:对系统的静态设计视图建模。主要包括对系统的词汇建模、对简单的协作建模、对逻辑数据库模式建模。

             

 

2.2 对象图

对象图展现了一组对象以及它们之间的联系。对象图描述了在类图中所建立的事物的实例的静态快照。

             

 

对象图组成:对象和链。

作用:从真实的或原型案例建立系统的静态视图或静态进程视图,主要用来支持系统的功能需求。

2.3 用例图 

用来描述系统需求的方法,展现了一组用例、参与者以及它们之间的关系。

组成:用例、参与者、用例之间的关系。

             

 

 

参与者:指存在系统外部并于系统进行交互的任何事物,可以是系统的用户,也可以是其他外部系统和设备等外部实体。

用例之间的关系:包含、扩展、泛化。

  • 包含:当可以从两个及以上的用例中提取公共行为时,应该用包含关系来表示它们。

  • 扩展:如果一个用例明显地混合了两种及以上的场景,也就是根据情况可能发生多种分支,则可以将这个用例分为一个基本用例和多个扩展用例。

  • 泛化:当多个用例共同拥有一种类似的结构和行为时,可以将它们的共性抽象成为父用例,其他的用例作为泛化关系中的子用例。

作用:对系统的静态用例图进行建模。主要有对系统的语境建模、对系统的需求建模。

2.4 交互图

序列图、通信图、交互概览图和时序图都被成为交互图,它们主要用于对系统的动态方面进行建模。一张交互图显示的是一个交互,由一组对象和它们之间的关系组成。包含它们之间可能传递的消息。

顺序图强调时间顺序;通信图强调接收和发送消息的对象的组织。

作用:交互图用于对一个系统的动态方面的建模、对用例的特定的控制流进行建模。

组成:对象、链、消息。

(1)、序列图

序列图是场景的图形化表示,描述了以时间顺序组织的对象之间的交互活动。

特点:序列图由对象的生命线、序列图由控制焦点。

             

 

(2)、通信图 

通信图强调收发消息的对象的结构组成,早期也被称为协作图。

特点:通信图有路径、通信图有顺序号。序列图和通信图是可以相互转换的。

(3)、交互概览图

交互概览图是UML2.0 新增的交互图之一,它主要描述交互(特别是关注控制流),但是抽线掉了消息和生命线。它使用活动图的表示法。

(4) 时序图 

它主要描述对象状态随着时间改变的情况,很像示波器,比较适合分析周期和非周期性任务。

 

IT技术分享社区

个人博客网站:https://programmerblog.xyz

文章推荐程序员效率:画流程图常用的工具程序员效率:整理常用的在线笔记软件远程办公:常用的远程协助软件,你都知道吗?51单片机程序下载、ISP及串口基础知识硬件:断路器、接触器、继电器基础知识

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/271156.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

系统开发基础:UML中图的相关知识笔记(下)

1、状态图状态图展现了一个状态机,它由状态、转换、事件、活动组成。状态图关注系统的动态视图,它对于接口、类、协作的行为建模尤为重要,它强调对象行为的事件顺序。组成:简单状态、组合状态、转换(事件和动作&#x…

系统设计基础:系统设计基本任务相关知识

1、系统设计的目的提前为系统指定蓝图,在各种技术和实施方法中进行权衡,精心设计,合理利用各种资源、最终确定新系统的详细设计方案。2、系统设计的内容系统设计的内容主要包括系统总体结构设计、代码设计、输出设计、输入设计、处理过程设计…

java7 3dm下载_3DM游戏运行库合集安装包v2.8

游戏运行库大全 游戏运行环境 所有游戏组件 32位 64位系统常用运行库合集 3DM游戏常用运行库安装包 下载 幸姨作品本安装包集成32位和64位运行库,是目前互联网上最新最全的常用运行库合集,能自动识别系统版本以提供适合您的组件,无人值守自动…

uci数据集_干货收藏!三大领域常用十大开源数据集

全文共1144字,预计学习时长2分钟机器学习的研究与实现离不开大数据。知晓通用的开源数据集,一方面可以验证自己算法,另一方面也可以与其他算法进行比较。本文介绍了计算机视觉、自然语言处理和语音识别三大领域的十个开源数据集以供你参考&am…

系统设计知识:系统设计的基本原理介绍

1、抽象抽象主要用来将复杂的现象简化到可以分析、实验或者可以理解的程度。抽象的最低层就是实现该软件的源程序代码。在进行模块化设计也可以有多个抽象层次,最高抽象层次的模块用概括的方式描述问题的解决方案。较低层次的模块是对更高抽象层次模块对问题描述的细…

java内存溢出怎样查找代码_JVM - 内存溢出,问题查找

当内存溢出会抛出 java.lang.OutOfMemoryError: Java heap space 的异常,那这个时候怎样去分析到底哪里导致内存溢出呢?我们可以通过在vm的参数, -XX:HeapDumpOnOutOfMemoryError 记住这个理是大写XX。当内存溢出后,显示java.lang…

系统设计知识:系统模块结构设计知识笔记

1、什么是模块?模块可以认为是组成系统的基本单位,它具有可组合、分解、更换的特点。系统中任何一个处理功能都能看成是一个模块。模块根据具体化的程度可划分为逻辑模块和物理模块。模块的要素:输入输出:模块的输入来源和去向都是…

安卓扫一扫自动跳转软件_ipad软件使用技巧

适用于三款ipadipad pro 1ipad pro2ipad 2018三个ipad软件分别是notability、goodnotes、和MarginNote,这三个软件各有特点。其中notability、goodnotes是笔记软件,同样都可以自己创立笔记本配合苹果笔像手写一样做笔记,也可以导入pdf作为阅读…

第12章 使用Samba或NFS实现文件共享

章节简述: 本章节为读者讲述文件共享系统的作用,了解Samba与NFS服务程序的开发背景以及用法。 详细逐条讲解Samba服务配置参数,演示安全共享文件的配置策方法,并使用autofs服务程序自动挂载设备, 学会后即可实现Linux…

ExtClassLoader和AppClassLoader是Launcher类的两个内部类

sun.misc.Launcher他是一个java虚拟机的入口应用 看下Launcher类 ExtClassLoader和AppClassLoader是Launcher类的两个内部类

系统输入输入出设计相关知识介绍

1、输出设计输出设计主要包括:确定输出内容、选择输出设备与介质、确定输出格式三个方面的内容。确定输出内容:输出内容的设计首先要确定用户在使用信息方面的需求,然后设计输出信息的内容,包信息形式(括文字、图形、表…

计算机知识:电脑系统盘文件夹详解

今天给大家介绍一下电脑系统盘(C盘)的相关知识。C盘变红,是存储空间告急。C盘里通常都是安装的系统文件,一般情况下不放其他文件,如果放了可以转移到其他盘里去。还有一个就是电脑桌面,通常也是属于C盘空间…

【代码笔记】iOS-字体抖动动画

一,效果图。 二,代码。 ViewController.m #import "ViewController.h"interface ViewController ()endimplementation ViewController- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view, typicall…

ElementUI+VUE 日期控件禁用用法

今天给大家整理一下ElementUIVUE 日期控件禁用用法&#xff0c;希望对大家有所帮助&#xff01;HTML文件<el-date-pickerv-model"value"type"date":editable"false"placeholder"开始日期"value-format"yyyy-MM-dd":picke…

利用rfcomm实现树莓派与手机通信_工业物联网 | 怎么用NodeRed实现树莓派与阿里云物联网平台通信?虹科告诉你!...

想获取更多IIOT干货请点击蓝字&#xff0c;关注我们虹科工业树莓派高性能多接口宽温--适应恶劣环境★★★★★Node-RED是构建物联网(IoT)应用程序的强大工具&#xff0c;它使用可视化的编程方法&#xff0c;允许开发人员将预定义的代码块(称为“节点”)连接在一起以执行任务。当…

mysql的mtr是指什么_MySQL中MTR的概念

MTR全称是Mini-Transaction&#xff0c;顾名思义&#xff0c;可以理解为"最小的事务"&#xff0c;MySQL中把对底层页面的一次原子访问的过程称之为一个Mini-Transaction&#xff0c;这里的原子操作&#xff0c;指的是要么全部成功&#xff0c;要么全部失败&#xff0…