前言
前两篇博客总结了UML图中的静态图部分,那么接下来就要分享UML图中的交互图部分。
一.交互图
定义
是描述对象之间的关系以及对象之间信息传递的图,时序图、协作图、通信图和交互概览图统称为交互图。
个人理解:
该图是用于描述模型中不同元素之间的某种类型的交互,是系统动态行为的一部分。
目的
1.捕获系统的动态行为
2.描述系统中的消息流
3.描述对象的组织结构
4.描述对象之间的交互
交互方法
1.序列图捕获的是从一个对象到另一个对象的消息流的时间顺序
2.协作图描述了参与消息流中的系统对象组织。
如何使用交互图
1.按照时间顺序模拟控制流程
2.模拟结构组织的控制流程
二.时序图
定义
顺序图用来表示用例中的行为顺序,当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或状态机中引起转换的事件。
个人理解:
时序图展示了对象之间的交互,这些交互是在场景和用例的事件流中发生,时序图属于动态建模。时序图的重点在于消息序列上,也就是说时序图描述了时序图如何在对象间发送和接受的,它表示了对象之间传送信息的时间顺序。
顺序图中的交互对象
参与者
与系统,子系统或类发生交互作用的外部用户
对象
顺序图横轴上是与序列有关的对象。对象的表示方法是:矩形框中写有对象和类名,且字下面有下划线。
生命线
坐标轴纵向的虚线表示对象在序列中的执行情况(即发送和接收的信息,对象的活动)这条虚线称为对象的"生命线"
消息符号
消息从一个对象的生命线到另一个对象的生命线的箭头表示,箭头以时间顺序从上到下排列
三.协作图
定义
协作图是一种交互图,强调的是发送和接受信息的对象之间的组织结构,使用协作图来说明系统的动态情况。
个人理解
协作图主要描述了协作对象的交互和链接,显示了对象间链接以及对象间如何发送信息。对象图可以表示类操作的实现。
交互图中的交互对象
参与者
发出主动操作的对象,负责发送初始信息,但是它们的侧重点不同。
对象
对象是类的实例,负责发送和接收信息,与顺序图中的符号相同,冒号前为对象名,冒号后为类名。
消息流
箭头指示消息的流向,从消息的发出者指向消息的接受者。标签对消息做说明,其中,顺序号指出消息的发生顺序,并且指明了消息的嵌套关系,冒号后面是消息的名字。
四.协作图与顺序图
相互转化
顺序图和协作图可以相互转化
1.双击顺序图名称,打开顺序图;
2.选择屏幕上方的菜单Browser——Create Collaboration Diagram
3.调整图中的对象和信息,使其美观。
侧重点
1.顺序图清楚地表示了交互作用中的时间顺序(强调时间),但没有明确表示对象间的关系
2.协作图清楚地表示了对象间的关系(强调空间),但时间顺序必须从序列号获得
四.机房协作图与顺序图
顺序图
协作图