UML之九种图
UML说是九种图吧!其实是众说纷纭,不管有几种图,我们只要能够很好的运用这几张图就好,主要有用例图、类图、对象图、状态图、活动图、序列图、协作图、构件图和部署图,至于包图是否属于这九种图,我也理不清楚,不过包图在大型项目中,却是必不可少的一项。下面一个一个来介绍这几种图:
【静态图】
类图:显示了模型的静态结构,我们能够根据类图来设计整个系统的结构。类有自己的名称、属性和方法。类图的构成有类、接口、各种关系,通过关系使类和接口之间联系起来。
对象图:对象是类的实例化,对象图描述是一组对象和他们之间的关系。由于对象存在有生命周期,因此对象图描述在系统中某个时刻的静态结构。
组件图:用来显示一组组件之间的组织和依赖关系,其组成为组件、接口和关系。构件与接口之间为实现关系,构件之间为依赖关系。
部署图:用来描述系统的硬件和软件的物理结构。包含有节点和关系。
【动态图】
用例图:用来描述用户的需求,通过这和图与用户进行交互。用例图由用例、角色和关系组成。用例是一个功能的描述,比如人可以工作,工作就是一个用例;角色(不一定局限于人)是指在这个关系中所担当的职务;关系表示执行者和用例之间的关系,主要有依赖、泛化、关联等关系。(图中只是用例图的一部分)
状态图:重点强调在经过操作之后所处的状态,比如我进教室灯是黑着的,我去把灯打开,灯现在的状态就是亮了。强调灯由黑这种状态到亮这种状态,不关注你是怎么去操作的。学生刷卡上机也是如此。
序列图:描述事件按照先后顺序执行的过程,主要强调执行顺序。其构成有对象、消息和生命线。
协作图:强调对象之间的交互关系,序列图和协作图可以相互转化。
不能把包图给忘了,包图用来描述包及其之间的关系的图,包图常用来描述系统、子系统的宏观组成和结构,相当于我们学习时泛读宏观把控的阶段,看来包图应该是在具体画类图之前建立(我自己这么认为的)。
当然对于这几种图的学习还需要后期自己再多加熟悉、总结,只有实践的多了,才能有更好的进步。(以上这些图仅是我自己的个人观点,欢迎大家提出自己意见或建议)。
UML之九种图的更多相关文章
- UML九种图作用简介
UML(统一建模语言):是面向对象的可视化建模语言. UML中有3种构造块:事物.关系和图,事物是对模型中最具有代表性的成分的抽象,关系是把事物结合在一起,图聚集了相关的事物 UML中有九种图如下: ...
- [UML]转:浅谈UML的概念和模型之UML九种图
转自:http://blog.csdn.net/jiuqiyuliang/article/details/8552956 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UM ...
- 讨论UML概念和模型UML九种图。
文件夹: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图.在每一种视图中都包括一个或多种图. 本文我们重点解说UML每种图的细节问题: 1.用例图(use case d ...
- UML九种图汇总
UML视频读,该文件开始起草.我不知道如何下手啊!我想先UML九图和总结的关系,然后开始用它的文件. 首先在地图上. UML的九种图各自是:用例图.类图.对象图.状态图.活动图.协作图.序列图.组件图 ...
- 【转】浅谈UML的概念和模型之UML九种图
原文地址:浅谈UML的概念和模型之UML九种图 目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的 ...
- [转]浅谈UML的概念和模型之UML九种图
目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的细节问题: 1.用例图(use case dia ...
- 解析UML九种图
UML作为设计工具,重在实践上,而这就离不开九种图了.绘图是在看完视频以后进行的,刚開始绘图的时候脑袋懵懵的,不知道该从哪下手,于是就在绘图之前再次的学习了一下这九种图和四种关系.理了 ...
- UML 小结(6)- UML九种图的比较与学习
UML中的九种图: 用例图.类图.对象图.状态图.时序图.协作图.活动图.部署图.构件图. 1)用例图(Use Case Diagram) 它是UML中最简单也是最复杂的一种图.说它简单是因为它采用了 ...
- (UML两个汇总)九种图。
最后总结UML关系,有明确的关系,现在让我们总结一下UML九图..图往往比文字要直观,因此,当我们开发软件.文件必须是不可或缺的人物,. 以下我将这九种图分了一下: 我们还能够将这九种图分为静态图和动 ...
随机推荐
- Qt qml的软件架构设计
google: qt qml application architecture 有很多资源. 1 https://www.ics.com/blog/multilayered-architecture- ...
- qt qml Treeview使用记录--设置每个Item的图片logo,高度
这篇帮助很大: https://blog.csdn.net/qq_32116695/article/details/81298585, 代码如下: TreeView { id: viewTree an ...
- 【剑指offer】面试题 42. 连续子数组的最大和
面试题 42. 连续子数组的最大和 NowCoder 题目描述 输入一个整型数组,数组里有正数也有负数.数组中一个或连续的多个整数组成一个子数组.求所有子数组的和的最大值. 示例: 输入: [-2,1 ...
- [转帖]各种命令,以及FAQ..持续更新.....
各种命令,以及FAQ..持续更新..... https://www.cnblogs.com/jicki/p/5548668.html Linux 篇: CentOs 7 修改主机名 hostnamec ...
- [转帖]Linux内核系统体系概述
Linux内核系统体系概述 https://www.cnblogs.com/alantu2018/p/8447369.html Linux 内核主要由 5 个模块构成,它们分别是: 进程调度模块 用来 ...
- Git操作入门
生成ssh key: ssh-keygen -t rsa -C "lkt@temp.com" 按三次回车,最后在.ssh文件夹下得到id_rsa和id_rsa.pub两个文 ...
- Python进阶:metaclass谈
metaclass 的超越变形特性有什么用? 来看yaml的实例: import yaml class Monster(yaml.YAMLObject): yaml_tag = u'!Monster' ...
- PAT(B) 1043 输出PATest(Java)统计
题目链接:1043 输出PATest (20 point(s)) 题目描述 给定一个长度不超过 104 的.仅由英文字母构成的字符串.请将字符重新调整顺序,按 PATestPATest- 这样的 ...
- [The 2019 Asia Yinchuan First Round Online Programming] D Take Your Seat
也许更好的阅读体验 \(\mathcal{Description}\) 原题链接 题目大意 该题目有两个问题 \(Task\ 1\),有\(n\)个人\(n\)个座位,每个人都有一个对应的座位,每个人 ...
- shell 学习笔记5-shell-if语句
一.if条件语句 1.语法 1)单分支结构 第一种 if <条件表达式> then 指令 fi 第二种 if <条件表达式>:then 指令 fi 上文的"<条 ...