UML之交互图(时序图、序状图)

第一部分

什么是时序图

描述了对象之间传递消息的时间顺序,用来表示用例中的行为顺序,是强调消息时间顺序的交互图。将这些交互建模成消息交换。

时序图包括的元素

在这里插入图片描述
元素一:
对象的三点注意:1)对象代表时序图中的对象在交互中所扮演的角色
2)其对象符号与对象图中对象所用的符号一样,都是矩形将对象名称包含起来,且对象名称下有下划线
3)将对象置于时序图的顶部,意味着在交互图开始的时候对象就已经存在了,如果对象的位置不再顶部, 那么表示对象是在交换过程中被创建。
示例如图:在这里插入图片描述
注:关于撤销一个对象,则只要在其对象线终止点放置一个“X” 符号即可,该点通常是对删除或取消消息的回应。
示例如下:在这里插入图片描述

元素二:
生命线:是一条垂直的虚线,表示时序图中的对象在一段时间内的存在。
元素三:
激活:分为激活和被激活。激活代表时序图中的对象执行一项操作的时期,用矩形表示;去激活指的是对象处于空闲状态,通常发生在一个消息箭头离开对象生命线的时候。
元素四:
消息:可以是信号,即明确、命名的、对象间的异步通信;也可以是调用,即具有返回控制机制的操作的同步调用。

消息可以用两种图来表示时序图强调消息的时间顺序,协作图强调交换消息的对象间的关系

几种消息符号:在这里插入图片描述

画时序图的步骤

1)设置交互的语境,可以是类、系统、子系统、操作、用例和协作的一个脚本
2)识别对象在交互中扮演的角色,据其重要性,从左向右的方向放在时序图中
3)设置每个对象的生命线
4)从引发某个交互的信息开始,在生命线之间按从上向下的顺序画出随后的消息
5)设置对象的激活期
6)如果需要设置时间或空间的约束,可以为每个消息附上合适的时间和空间约束
7)可以给某控制流附上前置条件和后置条件

以下是我画的时序图,请笑纳

在这里插入图片描述

第二部分

什么是协作图

协作图是一种类图。可被视为对象图的扩展,除了展示对象间得管理外,还展示对象间得消息传递。只对相互间有交互作用得对象和这些对象间得关系建模。

包含得元素

在这里插入图片描述

元素一:

对象:代表协作图交互中所扮演得角色,在协作图中得位置没有限制

元素二

链:跟对象图中得链所用得符号一致,示例如下:在这里插入图片描述
注:可以在链得末路上附上一个路径构造型,以此来说明一个对象如何与另一个对象连接。示例如下:
在这里插入图片描述

元素三

消息:代表协作图中对象间通过链接发送得信息。消息类型与时序图中相同,不过为了说明交互过程中消息的时间顺序,需给消息添加顺序号。每个消息对应一个顺序号

画协作图的步骤

1)设置交互的语境,与时序图一致
2)识别对象在交互中所扮演的角色
3)为每个对象设置初始值。
4)据对象间关系开始确定对象间链接,一般先确定关联的链接
5)从引起交互的消息开始,可以按时间顺序,把消息附到适当的链接上,顺序编号可用小数点来表示嵌套
6)如果需要说明时间或空间约束,可适当使用时间或空间约束来修饰每个消息
7)建模中,想更详细的描述这个控制流,可以为交互过程中的每个消息都附上前置条件和后置

我画的协作图

在这里插入图片描述

第三部分:相同与区别

两种图的相同点:
1)规定责任:都直观的规定了发送对象和接受对象的责任。
2)支持消息:两种图都支持所有类型的消息类型
3)衡量工具:都是耦合性的工具。耦合性被用来衡量模型之间的依赖性
两种图的不同点:
1)时序图可描述对象的创建和撤销情况,协作图则是对象要么不存在要么存在
2)时序图可以表现对象的激活和去激活,协作图则没有对时间的描述,除了有通过对消息进行解释。
3)时序图不能把链展现出来,虽然也可随意绘制消息,但有些逻辑交互根本不可能实际发生;协作图则可将对象的交互映射到他们之间的链上。

总结

概念清楚了,接下来就是不断反复的练习了

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 创建模型时序图(sequence diagram)的步骤包括: 1. 确定模型中的对象和活动:首先需要确定模型中需要出现的各个对象,以及这些对象在模型中扮演的角色,进而确定模型中需要描述的各个活动。 2. 确定对象之间的关系:在模型中,各个对象之间存在着各种不同的关系,例如,调用、引用、继承等,需要根据实际情况确定各个对象之间的关系,并用适当的箭头表示。 3. 绘制时序图:在确定了模型中的对象和它们之间的关系之后,可以开始绘制时序图时序图一般由多个水平方向排列的 lifeline(生命线)构成,每个 lifeline 代表一个对象,在它上面可以画出对象的各个操作,用垂直的带箭头的线表示。 4. 补充详细信息:最后,需要根据实际情况添加时序图的详细信息,例如各个操作的参数和返回值等,进一步完善模型的表达能力。 ### 回答2: 时序图也是UML建模中非常重要的一种形,它主要用来描述对象之间的交互关系和消息通信。它能够清晰地展示对象之间的动态关系,对于分析和设计系统非常有帮助。 时序图的主要元素包括对象、生命线、消息、激活条和控制流。在时序图中,每个对象都表示一个状态或实体,生命线表示对象在一定时间段内的存在。消息则表示对象间的交互,包括同步消息、异步消息、返回消息等。激活条则表示在消息发送或者接收时,接收方的响应时间。控制流则表示消息之间的流向和顺序。 时序图的绘制可以根据具体的需求进行制定,一般分为三个步骤。第一步是确定参与交互的对象,包括系统、人员、组件等。第二步是建立生命线和激活条,确定对象的存活期和响应时间。第三步是建立消息和控制流,清晰地展示对象之间的消息交互关系。 时序图的优点在于能够以非常直观的方式展示对象间的交互行为,可以帮助开发人员更好地理解系统的交互方式,从而更好地设计出系统的结构和功能。同时,它还能够帮助进行调试和测试,方便开发人员对交互流程进行分析和优化。 总之,时序图UML建模中非常重要的一种形,可以用来描述对象之间的交互关系和消息通信。在系统分析和设计中具有广泛的应用,是开发人员必须掌握的技能之一。 ### 回答3: 时序图UML建模中用于表示系统中对象之间交互行为的一种示方法。时序图通常是用来表示系统中对象之间的交互行为,也可用于描述系统中对象的一般行为。 时序图展示了一系列对象在一段时间内的相互关系、相互交互时序图就像一个类的活动,这里就是一个方法的调用过程。时序图由对象、生命线、消息和控制流组成。 在时序图中,对象被表示为矩形,矩形上方是对象的名称,下方是对象类型。生命线通常是垂直线,表示对象在某段时间内的存在。消息是表示对象之间的通信,有同步消息和异步消息。同步消息是表示调用一个方法并在返回之前等待结果,而异步消息表示调用一个方法并立即返回。 时序图还包括控制流和逆食流,在控制流中,消息从一个生命线流向另一个生命线。逆流控制是一条带箭头的曲线,表示消息的回传。 时序图的优点在于它是一种高度形式化的语言,理解时序图需要一定的技能和专业知识。但是它的优点是,它能够在开发过程的任何阶段使用,并且能够提供完整的交互细节,帮助开发人员精确定义系统的行为,并且帮助测试人员准确地测试和验证系统的行为。在实现新系统、更改或调整现有系统或维护现有系统的过程中,时序图都可以提供实用的帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值