实验五设计时序图模型

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五设计时序图模型

产生时序图的方法与产生用例图的方法类似。设计时序图时,可以在角色和对象之间、对象和对象之间定义消息。但两个角色之间一般不定义消息,如果做了定义,在检查模型时,系统会自动删除,并提出警告。如果消息的发送者和接收者是同一个对象,称为递归消息。

为建立时序图,可按以下步骤进行:

步骤1:在OOM设计窗口New对话框右侧的First diagram栏中选择Sequence Diagram (时序图) 图形类别。

步骤2:单击“确定”按钮,进入时序图设计工作区。这时,Palette面板上的时序图消息类型工具及其他基本构件工具如图5.1所示。

(1) 产生不同类型的消息

在时序图中可以定义不同类型的消息,具体方法是:

步骤1:在时序图的Palette工具面板中选择6种类型消息工具之一。

例如,在时序图设计工作区中加入一个Actor和一个Object,然后单击Message 工具,再单击消息发送者的生命线,拖动鼠标至消息接收者的生命线后释放鼠标。然后,单击右键释放Message工具。在消息的发送者和接收者的生命线间产生一条消息线(图5.2) 。

步骤2:双击消息图形符号,打开消息属性窗口,见图5.3。在Name和Code栏中输入消息的名称和代码,并在Control flow下拉列表中选择控制的类型。定义完毕后,单击“确定”按钮,返回到时序图工作区。

2 软件工程基础

Object 对象

Activation 激活

Self Massage 递归消息Self Call Message 带有激活期的递归消息Self Return Message 递归返回消息Actor 执行者

Message 消息

Call Message 带有激活期的消息Return Message 返回消息

图5.1 时序图消息类型工具图5.2 建立一条消息线

图5.3 “消息属性”窗口

其中General页的各个选项的含义是:

Sender:消息的发送者。

Receiver:消息的接收者。

Stereotype:使用的版型。该选项的默认值为空,可以通过在Model菜单中单击Extended Model Definitions…命令来定义当前PDM模型的版型。

实验10 PowerDesigner面向对象模型 3 步骤3:选择Detail属性页,如图5.4所示,可以为消息定义更详细的属性。

图5.4 Detail属性页图5.5 Destroy消息在时序图中的表现

Detail页中各个选项的含义是:

Action:完成的动作。包含4个选项,其含义如表5.1所示。

表5.1 Action选项的含义

Control flow:消息控制流的类型。包含4个选项,其含义如表5.2所示。

表5.2 Control flow选项的含义

Action选项与Control flow选项的配合情况如表5.3所示。

4 软件工程基础

表5.3 Action选项与control flow选项的配合情况

Operation:连接到消息的操作。如果消息的接收者是一个类,则此消息可以调用一个类的操作。操作可以从下拉列表框中选择,也可以通过Operation右边的Create 按钮建立一个新操作,然后从下拉列表框中选择即可。如果消息的控制流是Return,则不能连接一个操作。

Condition:通过一个布尔表达式来激活消息。例如,输入密码次数<=3次。

Begin time:消息开始的时间,用于定义约束。

End time:消息结束的时间,用于定义约束。例如,约束= (t1-t2<30秒) ,其中t1表示开始时间,t2表示结束时间。

Support delay:定义消息的传输延迟。如果支持延迟,则End time可以与Begin time不相同。

步骤4:在Palette面板单击Note工具,可以为消息增加一个注释,然后再利用Link/Extended Dependency工具,在注释和生命线上的消息矩形框之间增加一条带箭头的连线。

步骤5:如果将一个消息的Action属性设置为Create,则利用这个消息可以产生一个UML对象,除递归消息或消息的接收者是角色之外。Create消息在时序图中的表现如图5.2所示。

步骤6:如果将一个消息的Action属性设置为Destroy,则利用这个消息可以终止一个UML对象的生命线,但不是销毁对象,除消息的接收者是角色之外。Destroy消息在时序图中的表现如图5.5所示。

当使用Return Message工具,其Control flow选项设置为Return时,消息的Action 选项可以设置为Self-destroy,表示通过返回消息销毁对象自己,除消息的接收者是角色或递归消息之外。Self-Destroy消息在时序图中的表现如图5.6所示。

当消息的发送者和接收者是同一个对象时,则称该消息为递归消息。递归消息不支持Action选项为Create或Self-Destroy,也不支持Support delay选项。递归消息分为两种,一种不带激活期的;另一种是带激活期的,但要求Control flow选项的值设置为Procedure Call。

实验10 PowerDesigner面向对象模型 5

图5.6 Self-destroy消息在时序图中的表现图5.7 带有激活期的消息在时序图中的表现

步骤7:其他属性页。例如Rules用来定义规则;Dependencies用来定义依赖关系;Version Info用来显示版本信息等等。

(2) 消息的激活期

消息的激活期表示消息持续的时间,即消息所指定的动作执行所需要的时间。有些消息自带了激活期,该方法适用于Control flow的值为Procedure Call类型的消息,这是因为Procedure Call开始了这个激活期。如利用“带有激活期的递归消息”工具和“带有激活期的消息”工具创建的消息。带有激活期的消息在时序图中的表现,如图5.7所示。

步骤3:单击Object View下的Message节点,可以定义消息的显示参数,如Show name (显示名称) 、Show stereotype (显示版型) 、Show time (显示时间) 、Show condition (显示激活消息的表达式) 和Show activation attachment (显示激活期附件) 。如图5.8所示。

相关文档
最新文档