UML中最重要的就是那九种图了,下面我们来总结一下每种图的基本知识。
一、用例图
要素:角色(Actor)、用例(Use Case)、关系
用例图的关联关系又分为四种,如下图
关系:关联关系(Association)、包含关系(Include)、扩展关系(Extend)、泛化关系 (Generalization)
用例图示例:
二、类图和对象图对比
类图:是描述类、接口、协作以及他们之间关系的图,用来显示系统中各个类的静态结构。
要素:元素:类(Class)、接口(Interface)、协作(Collaboration)、关系
类图的关系又分为四种,如下图:
关系:依赖关系(Dependency)、泛化关系(Generalization)、关联关系(Association)、实现关系 (Realization)
对象图:描述的是参与交互的各个对象在交互过程中某一时刻的状态。
类图与对象图的相同点:
1、类图和对象图都用来反应系统的静态过程。
2、对象图可看作类图在某一时刻的实例。
3、对象图的符合和关系与类图相同。
类图与对象图的不同点:
三、 活动图与状态图的对比
活动图:描述活动的顺序,展现从一个活动到另一个活动的控制流。
元素有动作状态、活动状态、动作流、分支与合并、分叉与汇合、泳道和对象流。
状态图:是一种由状态、变迁、事件和活动组成的状态机,用来描述类的对象所有可能的状态以及事件发生时 状态的转移条件。
元素:状态、转换、事件和活动。
状态图与活动图的联系:
状态图与活动图的区别:
四、序列图与协作图对比
序列图:描述了对象之间传送消息的时间顺序,它用来表示用例中的行为顺序。
元素:对象(Objce)、生命线(Lifeline)、消息(Message)和激活(Activation)。
协作图:描述了和对象结构相关的信息。协作图的一个用途是表示类操作的实现。
元素:对象(Object)、链(Link)和消息(Message)。
序列图和协作图的联系:
a、两种图都规定责任
b、两种图都支持消息
c、两种图都是衡量工具
图和协作图的区别:
五、部署图与构件图对比
部署图:描述了运行软件的系统中硬件和软件的物理结构。
元素:节点(Node)和关联关系(Association)
部署图中每个配置必须存在于某些节点上。部署图也可以包含包或子系统。
构件图: 描述了软件的各种组件和它们之间的依赖关系。
元素:组件(Component)、接口(Interface)和依赖(Dependency)。
每个组件实现一些接口,并使用另一些接口。
部署图和构件图的联系:
部署图和构件图合称为实现图,都从一个非常高的层次上描述系统。
部署图和构件图的区别:
包图(不属于UML九种图的范围)
什么是包?
包可直接理解为命名空间,文件夹,是用来组织图形的封装,包图可以用来表述功能组命名空间的组织层次。
包的作用?
1)对语义上相关的元素进行分组;
2)定义模型中的“语义边界”;
3)提供配置管理单元;
4)在设计时,提供并行工作的单元;
5)提供封装的命名空间,其中所有名称必须惟一
包与包之间的关系:
包图:由包和包之间的关系组成。
元素:可以拥有其他元素,比如类、接口、组件、节点、协作、用例和图,甚至可以是其他包。
包图示例:
通过对UML的学习,我认识到了UML的强大,希望在以后的学习过程中能对UML有更深层次的理解。