UML的九种图:用例图,类图,对象图,状态图,活动图,序列图,协作图,构件图,部署图。外加包图。

(一)、用例图

1、定义:由参与者(Actor)、用例(Use Case)以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图.

2、简要介绍:用例图主要用于为系统的功能需求建模,它主要描述系统功能,也就是从外部用户的角度观察,系统应该完成哪些功能,有利于开发人员以一种可视化的方式理解系统的功能需求。同时也是为了方便用户和系统分析人员的理解尽量一致,为用户和系统分析人员提供一个大众的,一致性的方法,准确地把握系统的需求,能够节省时间,提高效率!

用例方法是完全从外部来定义系统功能,它把需求和设计完全的分离开来。我们不用关心系统内部是如何完成各种功能的,系统对于我们来说就是一个黑箱子。

用例图清楚地描述了使用者及它们之间的泛化关系,用例及用例之间的泛化、扩展关系,用例和参与者之间的关联关系,可从用例图中得到对于被定义系统的一个总体印象。

3、导图概述

4、用例图(机房收费系统)

(二)、类图

1、定义:是由若干类关联在一起,反映系统或者子系统组成结构的静态图。

2、简要介绍:类图的建模贯穿工程的分析和设计阶段的始终。

类图是用来描述系统的静态部分。

3、导图概述

4、类图(机房收费系统)

(三)、对象图

1、定义:对象图描述一个系统在某个具体时刻的静态结构。

2、简要介绍:对象图实际上就是类图的实例。

对象图表示一组对象及他们之间的联系,它是系统的详细状态在某一时刻的快照,常用于表示复杂类图的一个实例。

UML中对象图与类图具有相同的表示形式。

在UML中,对象图的使用相当有限,主要用于表达数据结构的实例,以及了解系统在某个特定时刻的具体情况。

3、导图概述

4、对象图(机房收费系统-注册)

(四)、状态图

1、定义:用来描述一个特定对象的所有可能状态以及由于各种事件的发生而引起的状态之间的转移。

2、简要介绍:状态图(Statechart Diagram)是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的事件做出反应的。通常我们创建一个UML状态图是为了以下的研究目的:研究类、角色、子系统、或组件的复杂行为。

一般可以用状态机对一个对象的生命周期建模,状态图用于显示状态机(State Machine Diagram),重点在与描述状态图的控制流。

3、导图概述

4、状态图(机房收费系统-注册)

(五)、活动图

1、定义:阐明业务用例实现的工作流程。

2、简要介绍:活动图是UML用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流。活动图在本质上是一种流程图。活动图着重表现从一个活动到另一个活动的控制流,是内部处理驱动的流程。

活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。活动图能够表示并发活动的情形,活动图是面向对象的。

3、导图概述

4、活动图(机房收费系统-注册)

(六)、序列图(又称顺序图,时序图)

1、定义:是对对象之间传送消息的时间顺序的可视化表示。

2、简要介绍:序列图的目的在于描述系统中各个对象按照时间的顺序的交互过程。

序列图将交互关系表示为一个二维图。纵向是时间轴,时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。

消息用从一个对象的生命线到另一个对象生命线的箭头表示。箭头以时间顺序在图中从上到下排列。

3、导图概述

4、序列图(机房收费系统-注册)

(七)、协作图(又称合作图)

1、定义:描述相互合作对象间的交互关系。

2、简要介绍:UML协作图是一种交互图,强调的是发送和接收消息的对象之间的组织结构。

UML协作图用于显示对象之间如何进行交互以执行特定用例或用例中特定部分的行为。设计员使用UML协作图和序列图确定并阐明对象的角色,这些对象执行用例的特定事件流。它们是主要的信息来源,用于确定类的职责和接口。

与序列图不同,UML协作图显示了对象之间的关系。序列图和UML协作图表述的是相似的信息,但表述的方式却不同。UML协作图显示对象之间的关系,它更有利于理解对给定对象的所有影响,也更适合过程设计。

UML协作图的格式决定了它们更适合在分析活动中使用。它们特别适合用来描述少量对象之间的简单交互。随着对象和消息数量的增多,理解UML协作图将越来越困难。此外,UML协作图很难显示补充的说明性信息,例如时间、判定点或其他非结构化的信息,而在序列图中这些信息可以方便地添加到注释中。

序列图常用来表示方案,协作图用于过程的详细设计。

3、导图概述

4、协作图(机房收费系统-注册)

(八)、构件图

1、定义:主要用于描述各种软件构件之间的依赖关系。

2、简要介绍:构件图是从软件架构的角度来描述一个系统的主要功能,如子系统、类、包、构件等。

使用构件最重要的是复用。

构件是系统中遵从同一组接口且提供其实现的物理的、可替换的部分。

构件图提供系统物理视图,在一个非常高的层次上显示系统中的构件与构件之间的依赖关系。

3、导图概述

4、构件图(机房收费系统)

(九)、部署图

1、定义:描述了一个系统运行时的硬件节点,在这些节点上运行的软件构件将在何处物理运行以及它们将如何彼此通信的静态视图

2、简要介绍:系统开发人员和部署人员可以利用部署图去了解系统的物理运行情况。如果,开发的软件系统只需在一台计算机上运行,且使用的标准设备,则不需要为它画出系统部署图。部署图只需要给那些复杂的物理运行情况进行建模。

部署图显示了系统的硬件,安装在硬件上的软件,用于连接硬件的各种协议和中间件等。

部署模型的目的:描述一个具体应用的主要部署结构,通过对各种硬件,在硬件中的软件以及各种连接协议的显示,可以很好的描述系统是如何部署的;平衡系统运行时的计算资源分布;可以通过连接描述组织的硬件网络结构或者是嵌入式系统等具有多种硬件和软件相关的系统运行模型。

3、导图概述

4、部署图(机房收费系统)

(十)、包图(包图并非正式的UML图)

1、定义:包图是在 UML 中用类似于文件夹的符号表示的模型元素的组合

2、简要介绍:包图是一种维护和描述系统总体结构的模型的重要建模工具,通过对包中各个包以及包之间关系的描述,展现出系统的模块与模块之间的依赖关系。

包图的作用:包图可以描述需求,设计的高阶概况;包图通过合理规划自身功能反应系统的高层架构,在逻辑上将系统进行模块化分解;包图最终是组织源码的方式。

一个包图可以由任何一种UML图组成,通常是UML用例图或是UML类图。

包被描述成文件夹,可以用于UML任何一种的图上。

包图只是把某些类放在一个包中,因此可以看做是类图的一种。

3、导图概述

4、包图(机房收费系统)

UML九种图作用简介

UML(统一建模语言):是面向对象的可视化建模语言. UML中有3种构造块:事物.关系和图,事物是对模型中最具有代表性的成分的抽象,关系是把事物结合在一起,图聚集了相关的事物 UML中有九种图如下: ...

[UML]转:浅谈UML的概念和模型之UML九种图

转自:http://blog.csdn.net/jiuqiyuliang/article/details/8552956 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UM ...

UML 小结(6)- UML九种图的比较与学习

UML中的九种图: 用例图.类图.对象图.状态图.时序图.协作图.活动图.部署图.构件图. 1)用例图(Use Case Diagram) 它是UML中最简单也是最复杂的一种图.说它简单是因为它采用了 ...

解析UML9种图的作用

本文和大家重点讨论一下UML9种图的概念,UML中有五类图,共有9种图形,每种图形都有各自的特点,下面就让我们一起来看一下这些图形特点的详细介绍吧. UML9种图简介 1.用例图 说明的是谁要使用系统 ...

【UML九种图系列】之用例图

用例图: 由参与者(Actor).用例(UseCase)以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图.用例图描述了系统提供的一个功能单元.用例图的主要目的是帮助开发团队以一种图形化的方 ...

讨论UML概念和模型UML九种图。

文件夹: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图.在每一种视图中都包括一个或多种图. 本文我们重点解说UML每种图的细节问题: 1.用例图(use case d ...

UML九种图汇总

UML视频读,该文件开始起草.我不知道如何下手啊!我想先UML九图和总结的关系,然后开始用它的文件. 首先在地图上. UML的九种图各自是:用例图.类图.对象图.状态图.活动图.协作图.序列图.组件图 ...

(UML两个汇总)九种图。

最后总结UML关系,有明确的关系,现在让我们总结一下UML九图..图往往比文字要直观,因此,当我们开发软件.文件必须是不可或缺的人物,. 以下我将这九种图分了一下: 我们还能够将这九种图分为静态图和动 ...

UML九种图-包图、类图

UML九种图-包图.类图 一.包 (一)相关概念: 1.包: 一个包=一层=一个命名空间=一个文件夹 2.包的命名: 简单名:王老二 路径名:中国.河北省.廊坊市.廊坊师范学院.信息技术提高班.九期班 ...

随机推荐

Unity在Android和iOS中如何调用Native API

本文主要是对unity中如何在Android和iOS中调用Native API进行介绍. 首先unity支持在C#中调用C++ dll,这样可以在Android和iOS中提供C++接口在unity中调 ...

编译php时的一个脚本

./configure --prefix=/usr/local/php \ --with-curl \ --with-freetype-dir \ --with-gd \ --with-gettext ...

jdk线程的简单使用

一.线程的实现方式方式一:继承Thread类一个类只要继承了Thread类,并重写run()方法,则就可以实现多线程的操作. public class ThreadDemo01 { public st ...

简单的SocketExample

客户端//---------------VerySimpleClient.java package SocketExample; // Tue Nov 2 18:34:53 EST 2004 // / ...

c语言时间库函数#include<time.h>

日期与时间函数 头文件中说明了一些用于处理日期和时间的类型和函数.其中的一部分函数用于处理当地时间,因为时区等原因,当地时间与日历时间可能不相同 ...

IS---InstallShield第二天

在Setup.rul中,新增OnBegin函数 STRING str1,spath,szApplicationPath,szApplicationCmdLine,szCmdLine;function ...

基于vue2.0的一个分页组件

分页组件在项目中经常要用到之前一直都是在网上找些jq的控件来用(逃..),最近几个项目用上vue了项目又刚好需要一个分页的功能.于是百度发现几篇文章介绍的实在方式有点复杂, 没耐心看自己动手造轮子写了 ...

菜鸟学IT之python网页爬取初体验

作业来源:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2881 1. 简单说明爬虫原理 爬虫简单来说就是通过程序模拟浏览器放松请求站 ...

画流程图挺好的软件---visio

visio 2016 下载地址链接: https://pan.baidu.com/s/1oyfJL_QgOA7qUHOt7p8CIA 提取码: mv79 第一次做的样式图:

Java学到什么程度才能叫精通?

​ 把下面这些内容掌握以后,你就可以自诩精通Java后端了. 1 计算机基础 这部分内容是计算机相关专业同学的课程,但是非科班的小伙伴(譬如在下)就需要花时间恶补了. 特别 是计算机网络,操作系统 ...

如何用staruml画包图_StarUML的9种图相关推荐

  1. 如何用rose画出展示对象流的活动图

    用rose画活动图,需要把State:客户下订单和Object:订单 用ObjectFlow :虚线箭头连起来,却总是报这个错,有没有大神能出一篇UML建模中九种图用rose画的教程啊!! 最近找到了 ...

  2. 深入浅出python机器学习_如何用python画(绘制)二维函数(二维图)?

    参考文档 python 如何绘制二维函数? from matplotlib import pyplot as plt import numpy as np low=lambda x:10000 if ...

  3. 详解图的各种令人心慌的概念和四种图的存储结构(整理到吐)

    写在前面:博主是一位普普通通的19届双非软工在读生,平时最大的爱好就是听听歌,逛逛B站.博主很喜欢的一句话花开堪折直须折,莫待无花空折枝:博主的理解是头一次为人,就应该做自己想做的事,做自己不后悔的事 ...

  4. 如何用python画出自己喜欢的表情包

    ​​​​​​​ "表情包"是现在非常流行的交流方式,通过一张图片就能把文字不能表达或不便于表达的情感给表示出来,表情包一经诞生,就统治了中国人的社交圈,尤其是年轻人,他们的社交方式 ...

  5. python 画三维函数图-如何用Matplotlib 画三维图的示例代码

    最基本的三维图是由(x, y, z)三维坐标点构成的线图与散点图,可以用ax.plot3D和ax.scatter3D函数来创建,默认情况下,散点会自动改变透明度,以在平面上呈现出立体感 三维的线图和散 ...

  6. python画三维立体图-如何用Matplotlib 画三维图的示例代码

    用Matplotlib画三维图 最基本的三维图是由(x, y, z)三维坐标点构成的线图与散点图,可以用ax.plot3D和ax.scatter3D函数来创建,默认情况下,散点会自动改变透明度,以在平 ...

  7. python怎样画立体图-如何用Matplotlib 画三维图的示例代码

    用Matplotlib画三维图 最基本的三维图是由(x, y, z)三维坐标点构成的线图与散点图,可以用ax.plot3D和ax.scatter3D函数来创建,默认情况下,散点会自动改变透明度,以在平 ...

  8. 如何用Mindmanager画思维导图

    今天这篇博客中,我们将重点讲一下如何用Mindmanager绘制思维导图.说到思维导图,简单介绍一下.思维导图是将大脑中不可视化的影像通过发散.整理,从而形成可视化.方便记忆和理解图像,故称为&quo ...

  9. python画三维立体图完整代码_如何用Matplotlib 画三维图的示例代码

    最基本的三维图是由(x, y, z)三维坐标点构成的线图与散点图,可以用ax.plot3D和ax.scatter3D函数来创建,默认情况下,散点会自动改变透明度,以在平面上呈现出立体感 三维的线图和散 ...

最新文章

  1. 【WPF】一个简单的ColorPicker控件
  2. jQuery判断checkbox是否选中
  3. 【BZOJ】1630: [Usaco2007 Demo]Ant Counting(裸dp/dp/生成函数)
  4. python sort函数返回值_lambda函数与箭头函数在集合内置函数应用中的对照学习
  5. 【 FPGA 】关于FPGA中复位的设计问题(包含异步复位,同步释放方案)
  6. 层次聚类多维度matlab实现_第34集 python机器学习:凝聚聚类
  7. Diango REST framework 视图继承图
  8. 系统权限oracle,oracle系统权限
  9. 乐鑫代理-启明云端分享ESP32系列教程之一: 安装虚拟机及Ubuntu
  10. 将ABAP数据库表的定义导入到PostgreSQL
  11. 张朝阳:知识直播是长久的事情 商业模式将水到渠成
  12. IDEA中引入Bootstrap并展示第一个模板
  13. 网络第八和九章要点总结
  14. Python内置函数之-struct
  15. Visual Assist X 10.8.2001 破解版 支持VC2013及以下版本
  16. OSChina 周五乱弹 —— 是时候动手了
  17. 2018计算机考研时间表,2018年考研时间与考试各科目的日程安排
  18. windows画图工具,两张图片叠加
  19. Android之如何分析手机系统相册图片和视频删除后保存的位置
  20. 7个因素决定大数据的复杂性

热门文章

  1. squid服务器的代理
  2. 自适应滤波:最小二乘法
  3. Javascript对于不同浏览器的兼容性
  4. 【2014】【辛星】【php】【秋季】【2】第一个php程序
  5. 如何解决企业邮件对国外的通信问题
  6. 耗时很长的服务器端事件中让客户端得到中间过程信息的合理解决方案
  7. 动态链接库与静态链接库
  8. MySQL show processlist说明
  9. 解决Lync联盟用户之间只能IM聊天不能进行A/V呼叫问题
  10. 谢烟客---------Linux之文件安全上下文及特殊权限位