统一建模语言UML是用一组视图反应系统的各个方面,以完整地描述系统,每个视图代表系统描述中的一个抽象,显示系统中一个特定的方面。

UML中有四种关系:依赖、关联、泛化和实现:

  • 依赖(dependency):依赖是两个事物间的语义关系,其中一个事物(独立事务)发生变化会影响另一个事务(依赖事务)的语义。在图形上,把一个依赖画成一条可能有方向的虚线。
  • 关联(association):关联是一种结构关系,它描述了一组链,链是对象之间的连接。聚集(aggregation)是一种页数类型的关联,它描述了整体和部分之间的结构关系。在关联上可以标准重复度(multiplicity)和角色(role)。
  • 泛化(generalization):泛化是一种特殊/一般关系,特殊元素(子元素)的对象可代替一般元素(父元素)的对象。用这种方法,子元素共享了父元素的结构和行为。
  • 实现(realization):实现是类元之间的语义关系,其中一个类元指定了由另一个类元保证执行的契约。

UML设计视图包含了类、接口和协作,其中设计视图的静态方面由类图和对象图表现;动态图方面由交互图、状态图和互动图表现。

UML提供了九种不同的图:

(1) 用例图(Use Case Diagram),描述系统功能;

(2) 类图(Class Diagram),描述系统的静态结构;

(3) 对象图(Object Diagram),描述系统在某个时刻的静态结构;

(4) 组件图(Component Diagram),描述了实现系统的元素的组织;

(5) 配置图(Deployment Diagram),描述了环境元素的配置,并把实现系统的元素映射到配置上;

(6) 状态图(State Diagram),描述了系统元素的状态条件和响应;

(7) 时序图(Sequence Diagram),按时间顺序描述系统元素间的交互;

(8) 协作图(Collaboration Diagram),按照时间和空间顺序描述系统元素间的交互和它们之间的关系;

(9) 活动图(Activity Diagram),描述了系统元素的活动;

在软件资格考试中,通常下午考试第三道答题都是涉及用例图和类图,因此,这里我们重点分析类图和用例图。、

UML用例图
用例图是指由参与者(Actor)、用例(Use Case)以及它们之间的关系构成的用于描述系统功能的静态视图。用例图(UserCase)是被称为参与者的外部用户所能观察到的系统功能的模型图,呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。
用例图由参与者(Actor)、用例(Use Case)、系统边界、箭头组成,用画图的方法来完成。参与者不是特指人,是指系统以外的,在使用系统或与系统交互中所扮演的角色。因此参与者可以是人,可以是事物,也可以是时间或其他系统等等。

软件设计师考试笔记:UML统一建模语言相关推荐

  1. 软件设计师考试笔记-(7)

    2.软件设计师考试笔记-(7) 2.1.面向对象基本概念 面向对象(Object Oriented)是软件开发方法,一种编程范式.面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统.交 ...

  2. 软件设计师考试笔记-(10)

    软件设计师考试笔记-(10) 1.操作系统基本原理 1.1.进程管理 1.1.1.进程状态 1.1.2.前趋图 为了描述一个程序的各部分间的依赖关系,或者是一个大的计算的各个子任务间的因果关系的图示. ...

  3. 软件设计师考试笔记-(6)

    1.软件设计师考试笔记-(6) 1.6 Pert图:工程网络图 1.6.1 概述 工程网络图主要用于工程项目计划管理,它首先将施工项目整个建造过程分解成若干项工作,以规定的网络符号表达各项工作之间的相 ...

  4. 设计模式学习总结(一)——设计原则与UML统一建模语言

    目录 一.概要 1.1.设计模式定义 1.2.设计模式分类 1.3.设计模式书籍 二.UML统一建模语言 2.1.UML分类 2.2.类图 2.2.1.关联 2.2.2.聚合/组合 2.2.3.依赖 ...

  5. 软件设计师学习笔记-UML建模

    UML建模 用例图 类图与对象图 顺序图 活动图 带泳道的活动图 状态图 通信图 协作图(顺序图的另外一种表达方式)

  6. 一文带你学会 UML 统一建模语言

    文章目录 一.简介 二.分类 1. 用例图(UseCase Diagrams) 2. 类图(Class Diagrams) 3. 对象图(Object Diagram) 4. 状态图 (Statech ...

  7. UML 统一建模语言Unified Modeling Language (UML)

    统一建模语言_百度百科 http://baike.baidu.com/view/174909.htm?fr=wordsearch 转载于:https://www.cnblogs.com/a124361 ...

  8. 【软考中级】软件设计师学习笔记

    软件设计师学习笔记 计算机系统知识 程序语言设计 数据结构 操作系统 软件工程基础知识 结构化开发方法 创建型设计模式 行为型设计模式 结构型设计模式: 算法设计与分析 数据库技术基础 网络与信息安全 ...

  9. 软件设计师考试整理-0-前言

    1. 整理初衷 2022年下半年的软考成绩出来了,查了一下,上午58分,下午61分,虽然不高,但是也过了,还是值得开心的,毕竟在最初报考的时候,会的知识点寥寥无几. 先解释下为什么我会报考软件设计师这 ...

最新文章

  1. Windows 7 IIS (HTTP Error 500.21 - Internal Server Error)解决
  2. 06. 为知笔记 -- 我的修改
  3. 复习webpack4之实现简易的webpack
  4. 块级元素和行内元素的区别
  5. Linux命令之sftp - 安全文件传输命令行工具
  6. Exchange Server 2016管理系列课件39.新建本地移动请求
  7. 为什么C语言还是被很多人说成过时了?
  8. Redmi K50标准版工信部入网:搭载骁龙870 没有12GB内存
  9. Teamcity+SVN+VisualStudio在持续集成简明教程
  10. git add 撤销_Git系列——Git添加提交(add)和查看状态(status)
  11. 必须掌握的Java基础知识(二)
  12. 局域网服务器传输大文件方案,局域网快速传输大文件【操作方案】
  13. Selenium自动化测试——计算器加法测试
  14. wps文档乱码怎么修复呢?
  15. Android布局详解之一:FrameLayout
  16. STRING网站分析蛋白质相互作用
  17. 上位机与PLC基于Fins/UDP通信
  18. signature=29c90d1a8d382ff261d00a931708390a,发烧音响功放(顶级Hi-End音响发烧器材介绍)...
  19. 英特尔核显驱动hd630_英特尔首款独显 Xe Max 评测出炉:低于移动端 GTX 1050 Ti - 英特尔...
  20. 机器学习算法——马尔可夫链蒙特卡罗(MCMC)

热门文章

  1. java reduce 分组_使用JAVA8 stream中三个参数的reduce方法对List进行分组统计
  2. php+mysql开发实战 pdf_《PHP + MySQL 开发实战》怎么样_目录_pdf在线阅读 - 课课家教育...
  3. python的简单GUI(登录窗口)
  4. 20200217:下一个排列(leetcode31)
  5. 找不出破绽!斯坦福等新研究:随意输入文本,改变视频人物对白,逼真到让作者害怕...
  6. 如何让强化学习走进现实世界?DeepMind要用“控制套件”推动
  7. Cookie、Session和自定义分页
  8. Java基础(1):Java简介和开发环境配置
  9. 用例子看Swift4的GCD
  10. 在前端团队的那些日子(初见)