(五)第四章 动态建模.docVIP

  • 0
  • 0
  • 约7.67千字
  • 约 27页
  • 2020-07-21 发布于湖北
  • 举报
第四章 动态建模 系统的动态行为是指对象是如何通过通信来进行协作的,以及系统中的对象是如何在系统的生命周期内改变状态的。 交互(Interaction):为产生某种功能而在一组对象之间进行的通信过程。 描述交互的动态图: · 状态图(State Diagram):可以描述一个对象在其生命周期中拥有哪些状态,该对象在这些状态下的行为,以及什么样的事件会导致状态发生改变。 · 交互图(Interaction Diagram):可以描述对象之间是如何进行交互和通信的。包括顺序图(Sequence Diagram)、通信(协作)图(Communication Diagram)、交互概观图(Interaction Overview Diagram)以及时序图(Timing Diagram)。其中,顺序图和通信图都可以显示交互。但是顺序图的焦点在时间上, 而通信图的焦点在空间上。交互概观图显示了一些作为一个较大交互流的部分內容的交互图。时序图显示沿着一个精确时间轴的交互。 · 活动图(Activity Diagram):是另外一种显示交互的方法,但是活动图的主要焦点是工作。 4.1 对象之间的交互 两个对象之间的交互是通过一个对象向另一个对象发送消息来实现的。 消息的类型: · 简单消息:一个平直的控制流。简单消息显示了控制是如何从一个对象传递到另一个对象的,这个过程中并没有描述任何有关对象之间通信的细节信息。 · 同步消息:一个嵌套的控制流,一般是作为操作调用来实现的。只有在处理该消息的操作结束之后,调用者才能恢复继续执行。 · 异步消息:异步的控制流。对象之间的异步消息表明了不等待语义;发送者不必等待该消息处理完就可以继续执行。 同步消息 同步消息 异步消息 简单消息 立即返回的同步消息 图4.1 消息类型注解 4.2 状态图 4.2.1 ⒈ 状态和状态转换的概念 一个对象的状态是该对象在此之前所执行的所有活动的结果,通常是由对象的属性值所决定的,并且会链接到其他对象。 有关对象状态的例子: · 货物(对象)已经付款(状态); · 小轿车(对象)静止不动(状态); · 机器的引擎(对象)在运转(状态); · Jim(对象)担任销售员的角色(状态); · Kate(对象)结婚了(状态)。 当一个事件发生时,对象就可能会改变状态。 对象的动态行为可以表现在两个方面:交互和内部状态的变化。 ⒉ 状态图的组成部分 · 起始点(初态)(Initial State) · 结束点(终态)(Final State) · 状态(State) · 状态转换(State Transition) · 导致状态发生转换的事件 状态转换激发(Fire)或状态转换被触发(Triggered) Unpaid Unpaid Paid 删除货物对象 付款 创建货物对象 图4.2 货物对象的状态图 On On first floor Moving up Moving down Moving to first floor Idle arrived arrived arrived go up go up go down time-out 图4.3 电梯对象的状态图 ⒊ 状态的组成部分 状态名 状态名 状态变量 活动 图4.4 状态的三个部分:状态名、状态变量和活动 ⒋ 活动组成 在活动组成中可能会使用的三个标准事件:entry, exit和do。 活动组成的形式语法(Formal Syntax)是: event-name argument-list ‘/’action-expression Login Login Login time = Current time entry/type“login” exit/login(user name, password) do/get user name do/get password help/display help 图4.5 一个名为login的状态 ⒋ 状态转换 Starting Starting applications do/load applications Starting OS do/load OS Boot do/run bios program 图4.6 不带显式事件的状态转换 用于确定一个状态转换的形式语法是: event-signature ‘[’guard-condition‘]’‘/’ action-expression ‘^’send-clause 其中,event-signature的语法定义为: event-name‘(’parameter‘,’, ...‘)’ 并且send-clause的语法是: destination-expression‘.’destinatio

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档