UML 交互图
从“交互”一词可以看出,该图用于描述模型中不同元素之间的某种交互。这种交互是系统的动态行为的一部分。
UML中用两个图表来表示这种交互行为,分别是 序列图 和 合作图 。这两个图表的基本目的是相似的。
序列图强调消息的时间顺序,而合作图则强调发送和接收消息的对象的结构组织。
交互图的目的
交互图的目的是可视化系统的交互行为。可视化交互是一项困难的任务。因此,解决方案是使用不同类型的模型来捕捉交互的不同方面。
序列图和合作图用于捕捉动态特性,但从不同的角度来看。
交互图的目的是:
捕捉系统的动态行为。
描述系统中的消息流动。
描述对象的结构组织。
描述对象之间的交互。
如何绘制交互图
如前所述,交互图的目的是捕捉系统的动态方面。因此,为了捕捉动态方面,我们需要了解什么是动态方面以及如何可视化它。动态方面可以定义为系统在特定时刻的运行状态的快照。
我们在UML中有两种类型的交互图。一种是序列图,另一种是合作图。序列图捕捉消息从一个对象到另一个对象的时间顺序流动,而合作图描述参与消息流动的系统中对象的组织。
在绘制交互图之前,需要明确以下几点:
参与交互的对象。
对象之间的消息流动。
消息流动的顺序。
对象的组织。
下面是两个建模订单管理系统的交互图。第一个图表是序列图,第二个图表是合作图。
序列图
序列图有四个对象(Customer、Order、SpecialOrder和NormalOrder)。
以下图表显示了SpecialOrder对象的消息顺序,NormalOrder对象也可以用同样的方式。了解消息流的时间顺序非常重要。消息流仅仅是对象方法的调用。
第一个调用是Order对象的sendOrder()方法。接下来是SpecialOrder对象的confirm()方法,最后是SpecialOrder对象的Dispatch()方法。以下图表主要描述了对象之间的方法调用,这也是系统运行时的实际场景。
协作图
第二个交互图是协作图。它显示了对象组织,如下图所示。在协作图中,使用某种编号技术来表示方法调用序列。编号表示方法按顺序调用的方式。我们选择了相同的订单管理系统来描述协作图。
方法调用与序列图类似。然而,不同之处在于序列图不描述对象组织,而协作图显示对象组织。
选择这两个图之间的差异是根据需求的类型来决定的。如果时间顺序很重要,则使用序列图。如果需要组织结构,则使用协作图。
在哪里使用交互图表
我们已经讨论过交互图表用于描述系统的动态性质。现在,我们将深入了解这些图表在实际场景中的应用。为了理解其实际应用,我们需要了解序列图和协作图的基本性质。
这两种图表的主要目的是相似的,都用于捕捉系统的动态行为。然而,特定目的更重要,需要明确和理解。
序列图用于捕捉消息从一个对象流向另一个对象的顺序。协作图用于描述参与交互的对象的结构组织。一张图表无法完全描述整个系统的动态方面,因此使用一组图表来捕捉整体。
当我们想要理解消息流动和结构组织时,可以使用交互图表。消息流动意味着从一个对象到另一个对象的控制流的顺序。结构组织意味着系统中元素的可视组织。
交互图表可用于以下情况:
模拟按时间顺序控制流动。
模拟按结构组织控制流动。
用于正向工程。
用于反向工程。
- 龙魂时刻哪个职业好 最强职业选择推荐联系我们 | 版权声明 | 信息发布 | 友情链接 | 游戏集 声明:本站所有资源均来自网络,版权归原公司及个人所有。如有版权问题,请及时与我们...
- 我的世界神殿怎么通关这个页面教你如何定位和征服神殿和神庙。 沙漠神殿 征服沙漠神殿 隐藏在沙漠神殿里的宝藏室。 藏在石质压力板下的九个TNT。 要寻找沙漠神...
- 如何在图片上做标记?6个方法教你快速做图片标记2. 使用屏幕截图工具:有些屏幕截图工具,如Snipping Tool(Windows)或Grab(Mac),不仅可以捕捉屏幕内容,还允许用户在截图上进行标注。这些工...
- 华为麦芒6 华为麦芒6一般能用几年?华为麦芒6一般能用几年?华为麦芒6能坚持多少年,取决于它的使用和保护。现在的智能手机一般用10年,寿命10年,但是需要保养。华为麦芒6搭...
- 【开源 Mac 工具推荐之 3】WeChatTweak-macOS:微信多开 & 撤回拦截利器简介 WeChatTweak 是由 GitHub 开发者 sunnyyoung 开发的一款适用于 macOS 系统的微信客户端插件。它具有多种实用功能,如阻止消息撤回,让用户依然可...
- 吞噬神明的艾爾德利奇吞噬神明的艾爾德利奇是ARPG遊戲《黑暗之魂3》中的遊戲人物,遊戲主線中的五位薪王之一,冷冽谷的伊魯席爾關底BOSS。在成功吞噬葛溫德林後...
- 什么天什么什么的成语首页 成语词典 成语填空 什么天什么什么 什么天什么什么的成语 快速搜索 高级搜索 查询 精确搜索: 查询 成语接龙: 开头 结尾 查询 多字成...
- 世界杯点球大战(世界杯打平了怎么办?)世界杯决赛点数平了怎么办?具体规则:1.继续平局,然后进行点球大战。2.规则:点球决胜前,双方将提交点球清单,按清单顺序进行。前五轮...
- 明日之后 服务器维护,明日之后更新维护公告斗玩网(d.chinaz.com)报道:明日之后12月27日更新了什么?更新了那些内容?更新几点结束?一起来看看明日之后12月27日更新维护公告吧。亲爱的幸存者...
- 麒麟659相当于骁龙多少 麒麟659和骁龙450哪个好麒麟659是华为公司推出的一款中端移动处理器,它采用16nm工艺制程,具备八核心设计(4*A53+4*A53),并集成了Mali-T830 MP2 GPU。那么麒麟659相当于...