uml 时序图_UML学习-时序图(Sequence Diagram)

  • Post author:
  • Post category:其他


时序图

时序图(Sequence Diagram)描述了对象之间传递消息的时间顺序,它用来表示用例中的行为顺序,是强调消息时间顺序的交互图。时序图描述类系统中类和类之间的交互,它将这些交互建模成消息交换。也就是说,时序图描述了类以及类间相互交换以完成期望行为

时序图的基本元素

时序图包括了5个基本元素,分别是对象(Object)、生命线(Lifeline)、激活(Activation)、和消息(Message)。

对象(Object):表示参与交互的对象。每个对象都带有一条生命周期线,对象被激活(创建或者被引用)时,生命周期线上会出现一个长条(会话),表示对象的存在。将对象置于时序图的顶部意味着在交互开始的时候对象就已经存在了,如果对象的位置不在顶部,那么表示对象是在交互的过程中被创建的。对象一般包含以下三种命名方式:

  • 第一种方式包含对象名和类名。
  • 第二种方式只显示类名不显示对象名,即为一个匿名对象。
  • 第三种方式只显示对象名不显示类名。

生命线(Lifeline): 生命线是一条垂直的虚线,表示时序图中的对象在一段时间内的存在。每个对象的底部中心的位置都带有生命线。生命线是一个时间线,从时序图的顶部一直延伸到底部,所用的时间取决于交互持续的时间。对象与生命线结合在一起称为对象的生命线;对象的生命线包含对象图标以及图标下面的生命线

激活(Activation)和去激活(Deactivation):时序图通过激活条来描述对象的激活(Activation)和去激活(Deactivation)。激活代表时序图中的对象执行一项操作的时期。激活期可以被理解成C语言语义中一对花括号“{}”中的内容。激活表示该对象被占用以完成某个任务,去激活指的是对象处于空闲状态,在等待消息。在UML中,为了表示对象是激活的,可以将对象的生命线拓宽成为矩形,图中的矩形称为激活条,对象就是在激活条的顶部被激活的。对象在完成自己的工作后被去激活,这通常发生在一个消息箭头离开对象生命线的时候。

消息(Message):消息由一个对象的生命周期线指向另一个对象的生命周期线。如果消息指到空白的生命周期线,将创建一个新的会话;如果消息指到已有的会话,表示该对象延续已有会话。

  • 同步消息(Message):也可以简称消息。同步消息适用于大多数情况。一般情况下使用同步消息就足够了,除非在设计模型的类交互时需要强调消息类型时才使用其他消息类型。同步消息表示发出消息的对象将停止所有后续动作一直等到接收消息方响应。同步消息将阻塞源消息对象的所有行为。同步消息最为常用,通常程序之间的方法调用都是同步消息。
4badc7ffccf5eef253499bf0ed6986e0.png

333