1、 结构模型元素

结构模型元素是UML模型里的名词(noun),是模型的静态组成部分,代表软件系统的概念的, 或物理的存在。

(1)类(class)

类是描述具有相同属性、方法、关系和语义的对象的集合。

一个类实现一个或多个接口。

在UML中类被画为一个矩型,通常包括它的名字、属性和方法。

(2)接口(interface)

接口是指类或组件提供特定服务的一组操作的集合。 因此,一个接口描述了类或组件的对外的可见的动作。

一个接口可以实现类或组件的全部动作,也可以只实现一部分。

接口在UML中被画成一个圆和它的名字。

(3)协作(collaboration)

协作定义了交互的操作,是一些角色和其它元素一起工作,提供一些合作的动作,这些动作比元素的总和要大。 因此,协作具有结构化、动作化、维的特性。

一个给定的类可能是几个协作的组成部分。这些协作代表构成系统的模式的实现。

协作在UML中用一个虚线画的椭圆和它的名字来表示

(4)用例(use case)

use case是描述一系列的动作,这些动作是系统对一个特定角色执行,产生值得注意的结果的值。

在模型中use case通常用来组织动作事物。

Use case是通过协作来实现的。

在UML中,use case画为一个实线椭圆,通常还有它的名字

(5)活动类(active class)

活动类是这种类,它的对象有一个或多个进程或线程。

活动类和类很相象,只是它的对象代表的元素的行为和其他的元素是同时存在的。

在UML中活动类的画法和类相同,只是边框用粗线条。

(6)组件(component)

组件是物理上或可替换的系统部分,它实现了一个接口集合。

在一个系统中,你可能会遇到不同种类的组件,例如COM+或JAVA BEANS。

组件在UML中用如下的图表示:

(7)结点(node)

结点是一个物理元素,它在运行时存在,代表一个可计算的资源,通常占用一些内存和具有处理能力。

一个组件集合一般来说位于一个结点,但有可能从一个结点转到另一个结点。

结点通常用如下的图形表示:

2、行为模型元素

行为模型元素(behavioral things) 是UML模型的动态组成部分,它是模型的动词,代表软件系统在空间和时间上的行为

\(行为模型元素 = 交互+ 状态机\)

行为模型元素包括两类:

  • 交互(interaction)
  • 状态机(state machine)

3、 分组模型元素

分组事物是UML模型中组织的部分,可以把它们看成是个盒子,模型可以在其中被分解。

总共只有一种分组事物,称为包(package)。

包是一种将有组织的元素分组的机制。结构事物、动作事物甚至其他的分组事物都有可能放在一个包中。与组件(存在于运行时)不同的是,包纯粹是一种概念上的东西,只存在于开发阶段。

在UML中用如下图表示包:

4、注解模型元素

注释事物是UML模型的解释部分。

UML中用如上图表示:在长方形中写标注的内容。标注的内容可以是形式的文本, 或非形式的文本也可以是图形。

UML 基本模型元素的更多相关文章

  1. 全面认识UML类图元素

    本节和大家一起学习一下UML类图元素,类图能出色地表示继承与合成关系.为了将UML类图作为一种高效的沟通工具使用,开发者必须理解如何将类图上出现的元素转换到Java中.请看本节详细介绍. 全面认识UM ...

  2. UML动态模型图简单介绍

    UML动态模型图描述了系统动态行为的各个方面,包括用例图.序列图.协作图.活动图和状态图.下面就每种图做一个简单介绍: 用例图 用例图描述系统外部的执行者与系统提供的用例之间的某种联系.所谓用例是指对 ...

  3. 深入css布局篇(1) — 盒模型 & 元素分类

    深入css布局(1)-- 盒模型 & 元素分类     " 在css知识体系中,除了css选择器,样式属性等基础知识外,css布局相关的知识才是css比较核心和重要的点.今天我们来深 ...

  4. CSS盒子模型元素实际宽度的计算

    一旦为页面设置了恰当的 DTD,大多数浏览器都会按照上面的图示来呈现内容.然而 IE 5 和 6 的呈现却是不正确的.根据 W3C 的规范,元素内容占据的空间是由 width 属性设置的,而内容周围的 ...

  5. jquery盒模型元素尺寸设置

    jQuery有多个处理元素尺寸的方法 width():设置或返回元素的宽度(不包括padding.border.和margin) height():设置或返回元素的高度(不包括padding.bord ...

  6. 认识UML类图元素

    在Visio里,包和类的关系是包含关系,将类拖入包的文件夹之后,关系就建立了,二元关联符号可以设置为:聚合.合成.接口:空心圆+直线(唐老鸭类实现了‘讲人话’):依赖:虚线+箭头(动物和空气的关系): ...

  7. UML动态模型(顺序图、协作图、状态图)

    顺序图:用来表示用例中的行为顺序,当执行一个用例行为时,顺序图中的每条信息 对应了一个类操作或状态机中引起转换的事件.顺序图展示对象之间的交互,这些交互是指在场景或用例的时间六中发生的,顺序图属于动态 ...

  8. UML的定义和组成详细介绍

    目录 1.UML 1.1概述 1.2 UML是一种建模语言 1.3 UML语言包含三方面 2.UML支持软件体系结构建模 2.1 逻辑视图 2.2 实现(开发)视图 2.3 部署视图 2.4 过程视图 ...

  9. 【UML】统一建模语言

    如果是准备学习设计模式的同学,可以只了解类图相关的知识 而如果是在准备软件设计师考试的同学,或许会对你有点帮助 正在施工...... 参考博客:https://blog.csdn.net/unique ...

随机推荐

  1. [学习总结]7、Android AsyncTask完全解析,带你从源码的角度彻底理解

    我们都知道,Android UI是线程不安全的,如果想要在子线程里进行UI操作,就需要借助Android的异步消息处理机制.之前我也写过了一篇文章从源码层面分析了Android的异步消息处理机制,感兴 ...

  2. ubantu安装maven

    下载地址 http://maven.apache.org/download.cgi 或直接命令行下载 wget https://downloads.apache.org/maven/maven-3/3 ...

  3. 解决PLSQL查不到带中文条件的记录

    原因: PLSQL乱码问题皆是ORACLE服务端字符集编码与PLSQL端字符集编码不一致引起.类似乱码问题都可以从编码是否一致上面去考虑. 解决: 1. 查询Oracle服务端字符集编码,获取NLS_ ...

  4. XML解析器

    1.非验证解析器 检查文档格式是否良好,如用浏览器打开XML文档时,浏览器会进行检查,即格式是否符合XML(可拓展标记语言)基本概念. 2.验证解析器 使用DTD(Document Type Defi ...

  5. Docker从入门到精通(一)——初识

    1.Docker 是什么? Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容 ...

  6. Quartz在.NET中的使用

    一.背景 例如需要在某年某月去将数据库的某个数据更新或者同步,又或者是每隔一段时间来执行一部分代码去调用接口,但是又不想人为的手动去执行 针对此类业务可以使用"定时调用任务",市面 ...

  7. socket通道

    一.socket 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. 就是两个进程,跨计算机,他俩需要通讯的话,需要通过网络对接起来.这就是 socket 的作 ...

  8. 车载以太网第二弹 | 测试之实锤-物理层PMA测试实践

    前言 本期先从物理层"PMA测试"开始,下图1为"PMA测试"的测试结果汇总图.其中,为了验证以太网通信对线缆的敏感度,特选取两组不同特性线缆进行测试对比,果然 ...

  9. Docker从入门到精通(六)——容器通信

    想要变成 Docker 的高阶玩家,搞懂 Docker 的容器通信是必不可少的. 1.需求 通常一个 Web 项目上线,我们会把开发完成的服务部署在Tomcat 服务器里面,然后需要的持久化数据会存放 ...

  10. LuoguB2133 我家的门牌号 题解

    Update \(\texttt{2021.11.27}\) 修复了代码中的 \(10000\) 写成 \(n\) 的错误. Content 一个家庭住在一个胡同里面,门牌号从 \(1\) 开始编号. ...