目录:

  1. UML的视图
  2. UML的九种图
  3. UML中类间的关系

上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图。本文我们重点讲解UML每种图的细节问题:

1、用例图(use case diagrams)

【概念】描述用户需求,从用户的角度描述系统的功能

【描述方式】椭圆表示某个用例;人形符号表示角色

【目的】帮组开发团队以一种可视化的方式理解系统的功能需求

【用例图】

2、静态图

类图(class  diagrams)

【概念】显示系统的静态结构,表示不同的实体是如何相关联的

【描述方式】三个矩形  

【目的】表示一个逻辑类或实现类,逻辑类通常是用户的业务所涉及的事物;实现类是程序员处理的实体

【类图】

  对象图(object      diagrams)

【概念】类图的一个实例,描述系统在具体时间点上所包含的对象以及各个对象的关系

【对象图】

3、交互图

用来描述对象之间的交互关系

  1. 序列图(顺序图)

【概念】描述对象之间的交互顺序,着重体现对象间消息传递的时间顺序

【描述方式】横跨图的顶部,每个框表示每个类的实例或对象;类实例名称和类名称使用冒号分开

【目的】显示流程中不同对象之间的调用关系,还可以显示不同对象的不同调用。

【序列图】

   协作图(Collaboration     diagrams)

【概念】描述对象之间的合作关系,侧重对象之间的消息传递

4、行为图:描述系统的动态模型和对象之间的交互关系

1.状态图(Statechart       diagrams)

【概念】描述对象的所有状态以及事件发生而引起的状态之间的转移

【描述方式】

  1. 起始点:实心圆
  2. 状态之间的转换:使用开箭头的线段
  3. 状态:圆角矩形
  4. 判断点:空心圆
  5. 一个或多个终止点:内部包含实心圆的圆

【目的】表示某个类所处的不同状态以及该类在这些状态中的转换过程

2.活动图(Activity      diagrams)

【概念】描述满足用例要求所要进行的活动以及活动时间的约束关系

【描述方式】

  1. 起始点:实心圆
  2. 活动:圆角矩形
  3. 终止点:内部包含实心圆的圆
  4. 泳道:实际执行活动的对象

【目的】表示两个或多个对象之间在处理某个活动时的过程控制流程

【活动图】

活动图和状态图区别:

5、实现图

  1. 构件图(Component       diagrams)

【概念】描述代码构件的物理结构以及各构件之间的依赖关系

【描述方式】构件

【目的】提供系统的物理视图,根据系统的代码构件显示系统代码的整个物理结构

【构架图】

  1. 部署图(Deployment      diagrams)

【概念】系统中硬件的物理体系结构

【描述方式】

  1. 三维立方体表示部件
  2. 节点名称位于立方体上部

【目的】显示系统的硬件和软件的物理结构

【部署图】

九种UML图详解到此为止,下篇文章专门给大家讲解UML中类间的关系,感谢您的访问。

转载地址:http://blog.csdn.net/jiuqiyuliang/article/details/8552956

最新文章

  1. Delphi容器类之---TList、TObjectList、TComponentList、TClassList
  2. 使用"关键词"来整理自己的知识库
  3. python——赋值与深浅拷贝
  4. Java团队项目总结
  5. soap实例入门(转)
  6. bash if 表达式
  7. USB 管道 && 端点
  8. MapReduce详解
  9. SharePoint开发
  10. jQuery切换网页皮肤并保存到Cookie示例代码
  11. 重磅消息:微信小程序支持长按二维码进入
  12. nodejs环境的搭建(linux环境centos6.5)
  13. datagrid 列鼠标悬浮显示全部信息
  14. centos7 升级openssh到openssh-8.0p1版本
  15. JS数据类型之Number类型
  16. 学习Nodejs:《Node.js开发指南》微博项目express2迁移至express4过程中填的坑
  17. 解决微信小程序ios端滚动卡顿的问题
  18. 理解JVM2 栈内存,方法区,堆内存
  19. 狗日的系统之家下载的Windows 10 1803/1809系统不干净,捆绑自动安装腾讯关键等软件
  20. 使用CoreData [2]

热门文章

  1. nodejs --- querystring模块.
  2. Nodejs安装express提示不是内部或外部命令
  3. python day03作业
  4. Python基础5--字符串
  5. Python实现简单的udp打洞(P2P)
  6. Centos7安装vsftpd
  7. CHAP认证(双向)
  8. 训练 の Bessie的体重问题
  9. 【编程基础】编译器 cc、gcc、g++、CC 的区别
  10. Mariadb使用xtrabackup工具备份数据脚本