UML概述

  UML是对OMT(对象建模技术)、Booth(Booch方法)以及OOSE(面向对象的软件工程)等记号系统实施统一工作后得到的一种记号系统。

  UML(Unified Modeling Language,统一建模语言)是一种定义良好、易于表达、功能强大的用于对软件密集型系统建模的图形语言。

  UML的设计目标是提供一种适用于所有面向对象方法学的标准记号系统,UML选择并集成了以前出现的相关记号系统中最好的元素类容。

UML有如下的九种图

  1. 用例图:用于业务建模、需求捕获、作为测试的依据。
  2. 类图:描述类以及类之间的相互关系。
  3. 对象图:描述对象以及对象间的相互关系。
  4. 构件图:描述构件及其相互依赖关系。
  5. 部署图:描述构件在各个结点上的部署情况。
  6. 顺序图:强调时间顺序的交互图。
  7. 协作图:强调对象协作的交互图。
  8. 状态图:描述类所经历的各种状态以及状态之间的转换关系。
  9. 活动图:用于对工作流程建模。

UML图的分类

  1. 静态图:类图、对象图、包图。
  2. 行为图:状态图、活动图。
  3. 用例图:用例图。
  4. 交互图:顺序图、协作图。
  5. 实现图:组件图、部署图。

UML关系

  1. 依赖关系
  2. 关联关系
  3. 泛化关系
  4. 实现

系统开发的主要关注应用系统的三个不同模型

  功能模型,从用户观点出发,使用UML中的用例图描述系统功能。

  对象模型,使用UML中的类图表示对象模型,该模型使用对象、属性、关联和操作等描述了系统的结构。

  动态模型,在UML中使用交互图、状态机和活动图表示动态模型,该模型描述了系统的动态行为。

最新文章

  1. Linux C编程学习之C语言简介---预处理、宏、文件包含……
  2. 条款19:设计class犹如设计type
  3. SOAP 格式设置选项
  4. 安全删除mysql binlog日志
  5. Redis 命令 - Hashs
  6. VM上成功安装mac os x
  7. .net连接oracle(无客户端)
  8. iOS面试题03-UI控件
  9. Leetcode 175. Combine Two Tables
  10. ArcGIS API for JavaScript 4.2学习笔记[21] 对3D场景上的3D要素进行点击查询【Query类学习】
  11. 【BZOJ1036】【ZJOI2008】数的统计
  12. android利用ContentResolver访问者获取手机联系人信息
  13. [总结]WEB前端开发常用的CSS/CSS3知识点
  14. MyBatis updateByExample和updateByExampleSelective的区别
  15. Pytorch1.0入门实战一:LeNet神经网络实现 MNIST手写数字识别
  16. js中defer实现等文档加载完在执行脚本
  17. jQuery入门基础(动画效果)
  18. C++11--右值引用(移动语义)
  19. Maven是一个项目管理工具
  20. ide fix pack for delph 10.2.3发布了

热门文章

  1. HDU 3342
  2. selenium-ide学习
  3. nmon for linux
  4. Codeforces 439 A. Devu, the Singer and Churu, the Joker
  5. Java笔记(三十)……正则表达式
  6. Codevs 1222 信与信封问题 二分图匹配,匈牙利算法
  7. 输入n,计算并输出n1+n2+n3+……+n10
  8. IntelliJ 直接编辑国际化文件(properties)方法
  9. 一分钟快速入门openstack
  10. Java通过JDBC连接Oracle之后查询结果和在sqlplus查询结果不一样