UML交互图
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一个含有监护条件的子片断。如果监护条件为“真”则执行子 片断,而且不执行包含 子片断的图中其它交互 将不会执行;如果监护 条件为“假”,那么执行 将正常地继续进行
交互片断操作符critical
• 表示该子片断是“临界区域”,在临界区域中生命线上的事件序列不能够
和其它区域中的任何其他事件交错。通常用来表示一个原子性的连续操作, 例如事务性操作
二、序列图的组成 4、消息
消息的语法: [序 号 ][警 戒 条 件]*[重 复 次 数 ][ attribute: = ] name[(argumentlist)] 其中:
attribute是生命线的属性(对象名),用以存储返回值。 name是消息名(信号或操作名)。 argument-list是一个参数值的表,每个参数值可有下列形式之一: argument-value parameter-name=argument-value [警戒条件]:选择项,为一布尔条件表达式,满足条件时才能发送消息。
顺序图的主要元素
• 消息:用来描述对象之间所进行的通信的,该信息带有对将要发生的活动
的期望。当传送一个消息时,它所引起的动作是一个通过对计算过程的抽 象而得到的可执行语句。
• 消息分为五种:调用、返回、发送、创建和销毁 • 调用:表示调用某个对象一个操作
序号:表示消息在对象间交互的时间顺序号。 序号在合作图中必不可少,在的实例对象aOrder得到返回的PeddleryId后,根据该值判断是否
已经有相对应的DeliverOrder对象,如果没有就创建它(调用 create(PeddleryId)),然后再将对应的Product添加到这个 DeliverOrder对象中。否则就直接添加到相应的DeliverOrder对象中
具体的事物,又可以是原型化的事物。作为具体的事物,一个对象代 表现实世界中的某个东西。例如,aOrder 作为类Order的一个实例,可以代表一个 特定的订单;而如果作为一个原型化的事 件,则aOrder可以代表类Order的任何一 个实例。
• 生命线与控制焦点:每个对象都有自己的
生命线,对象生命线是一条垂直的虚线, 用来表示一个对象在一段时间内存在。
进行交换的一组消息所表示的行为
UML中的4种交互图
• 顺序图:顺序图是一种强调消息时间顺序的交互图,为读者提供了控制流
随着时间推移的清晰的可视化轨迹
• 通信图:UML 2.0中的通信图实际上就是UML 1中的协作图,它强调的是参
加交互的对象的组织,为读者提供了在协作对象结构组织的语境中观察控 制流的一个清晰的可视化轨迹
阅读通信图
通信图主要元素
• 链:连接器,是用来表示对象之间的语义连接,一般而言,链是关联的一
个实例(包括《association》、《self》、《global》、《local》等)。 不过在UML 2中已经开始弱化它们的使用,因此除非必要,无需过多地考 虑它们
交互片断操作符par
• 用来表示“并行”的,也就是用来表示两个或多个并发执行的子片断,并
行子片断中单个元素的执行次序可以以任何可能的顺序相互操作
par
交互片断操作符ref
• 在一个交互图中,我们可以引用其它的交互图,其表示的方法是用一个矩
形,加上ref操作符,并写明引用的交互图名称即可
ref login
图 类图 包图 顺序图 定时图 交互概观图 构件图
表示法 class
package sd
timing intover component
图 对象图 用例图 通信图 活动图 状态机图 部署图
表示法 object use case comm activity statemachine deployment
就会调用该订单(一个Order类的实例对象aOrder)的dispatch()方法
• dispatch()方法将逐个调用该Order对应的所有OrderItem对象的
getPeddleryId()方法还获取供应商ID(PeddleryId),而OrderItem对象 则是通过其所对应的Product对象来的getPeddleryId()方法来获取供应商 ID
交互图
《UML面向对象建模基础》
知识图谱
Agenda
• 交互与交互图 • 如何阅读交互图 • 如何绘制交互图 • 交互图应用说明 • 定时图 • 本章小结
Agenda
• 交互与交互图 • 如何阅读交互图 • 如何绘制交互图 • 交互图应用说明 • 定时图 • 本章小结
交互的概念
• 一次交互就是指在特定语境中,为了实现某一个目标,而在一组对象之间
交互片断操作符assert
• 交互片断操作符assert是用来表示内容所描述的行为是执行过程中那个时
刻唯一的有效行为。如果执行到这个片断的前面,则说明 该片断就一定会发生。 它通常和ignore或 consider一起使用,以 断言某种特定种类的 消息行为
交互片断操作符break
• 交互片断操作符break和循环语句的break有点类似,通常break用来定义
缺省时,表示无条件发送。 *[重复次数]:选择项,表示消息重复发送的次数。缺省,表示只发送一
次。
10
• 对象可以在交互过程中产生 • 对象可以在交互过程中销毁
NewCustomer(Data)
:CustomerWindow Customer(Data) :Customer
DeleteCustomer()
• 定时图:采用了一种带数字刻度的时间轴来精确地描述消息的顺序 • 交互概述图:是交互图和活动图的混合物
Agenda
• 交互与交互图 • 如何阅读交互图 • 如何绘制交互图 • 交互图应用说明 • 定时图 • 本章小结
阅读顺序图
顺序图的主要元素
• 对象与角色:最顶上一排矩形框。在交互图中,参与交互的对象既可以是
按消息产生的先后顺序,给消息编号 有两种编号方案,一种是顺序编号,另一种是嵌套编号.
1
1.1
1.2
2
2.1
2.1.1
2.1.2
2.2
嵌套编号
13
顺序编号
14
顺序图的主要元素—嵌套编号
顺序图的主要元素
• 循环与分支
顺序图的主要元素
• 循环与分支
UML1.0的循环和分支表示法
读图小结
• 在dispatchForm(分发窗体)中,对于某个已支付的Order进行分发时,
交互片断操作符critical
• 表示该子片断是“临界区域”,在临界区域中生命线上的事件序列不能够
和其它区域中的任何其他事件交错。通常用来表示一个原子性的连续操作, 例如事务性操作
二、序列图的组成 4、消息
消息的语法: [序 号 ][警 戒 条 件]*[重 复 次 数 ][ attribute: = ] name[(argumentlist)] 其中:
attribute是生命线的属性(对象名),用以存储返回值。 name是消息名(信号或操作名)。 argument-list是一个参数值的表,每个参数值可有下列形式之一: argument-value parameter-name=argument-value [警戒条件]:选择项,为一布尔条件表达式,满足条件时才能发送消息。
顺序图的主要元素
• 消息:用来描述对象之间所进行的通信的,该信息带有对将要发生的活动
的期望。当传送一个消息时,它所引起的动作是一个通过对计算过程的抽 象而得到的可执行语句。
• 消息分为五种:调用、返回、发送、创建和销毁 • 调用:表示调用某个对象一个操作
序号:表示消息在对象间交互的时间顺序号。 序号在合作图中必不可少,在的实例对象aOrder得到返回的PeddleryId后,根据该值判断是否
已经有相对应的DeliverOrder对象,如果没有就创建它(调用 create(PeddleryId)),然后再将对应的Product添加到这个 DeliverOrder对象中。否则就直接添加到相应的DeliverOrder对象中
具体的事物,又可以是原型化的事物。作为具体的事物,一个对象代 表现实世界中的某个东西。例如,aOrder 作为类Order的一个实例,可以代表一个 特定的订单;而如果作为一个原型化的事 件,则aOrder可以代表类Order的任何一 个实例。
• 生命线与控制焦点:每个对象都有自己的
生命线,对象生命线是一条垂直的虚线, 用来表示一个对象在一段时间内存在。
进行交换的一组消息所表示的行为
UML中的4种交互图
• 顺序图:顺序图是一种强调消息时间顺序的交互图,为读者提供了控制流
随着时间推移的清晰的可视化轨迹
• 通信图:UML 2.0中的通信图实际上就是UML 1中的协作图,它强调的是参
加交互的对象的组织,为读者提供了在协作对象结构组织的语境中观察控 制流的一个清晰的可视化轨迹
阅读通信图
通信图主要元素
• 链:连接器,是用来表示对象之间的语义连接,一般而言,链是关联的一
个实例(包括《association》、《self》、《global》、《local》等)。 不过在UML 2中已经开始弱化它们的使用,因此除非必要,无需过多地考 虑它们
交互片断操作符par
• 用来表示“并行”的,也就是用来表示两个或多个并发执行的子片断,并
行子片断中单个元素的执行次序可以以任何可能的顺序相互操作
par
交互片断操作符ref
• 在一个交互图中,我们可以引用其它的交互图,其表示的方法是用一个矩
形,加上ref操作符,并写明引用的交互图名称即可
ref login
图 类图 包图 顺序图 定时图 交互概观图 构件图
表示法 class
package sd
timing intover component
图 对象图 用例图 通信图 活动图 状态机图 部署图
表示法 object use case comm activity statemachine deployment
就会调用该订单(一个Order类的实例对象aOrder)的dispatch()方法
• dispatch()方法将逐个调用该Order对应的所有OrderItem对象的
getPeddleryId()方法还获取供应商ID(PeddleryId),而OrderItem对象 则是通过其所对应的Product对象来的getPeddleryId()方法来获取供应商 ID
交互图
《UML面向对象建模基础》
知识图谱
Agenda
• 交互与交互图 • 如何阅读交互图 • 如何绘制交互图 • 交互图应用说明 • 定时图 • 本章小结
Agenda
• 交互与交互图 • 如何阅读交互图 • 如何绘制交互图 • 交互图应用说明 • 定时图 • 本章小结
交互的概念
• 一次交互就是指在特定语境中,为了实现某一个目标,而在一组对象之间
交互片断操作符assert
• 交互片断操作符assert是用来表示内容所描述的行为是执行过程中那个时
刻唯一的有效行为。如果执行到这个片断的前面,则说明 该片断就一定会发生。 它通常和ignore或 consider一起使用,以 断言某种特定种类的 消息行为
交互片断操作符break
• 交互片断操作符break和循环语句的break有点类似,通常break用来定义
缺省时,表示无条件发送。 *[重复次数]:选择项,表示消息重复发送的次数。缺省,表示只发送一
次。
10
• 对象可以在交互过程中产生 • 对象可以在交互过程中销毁
NewCustomer(Data)
:CustomerWindow Customer(Data) :Customer
DeleteCustomer()
• 定时图:采用了一种带数字刻度的时间轴来精确地描述消息的顺序 • 交互概述图:是交互图和活动图的混合物
Agenda
• 交互与交互图 • 如何阅读交互图 • 如何绘制交互图 • 交互图应用说明 • 定时图 • 本章小结
阅读顺序图
顺序图的主要元素
• 对象与角色:最顶上一排矩形框。在交互图中,参与交互的对象既可以是
按消息产生的先后顺序,给消息编号 有两种编号方案,一种是顺序编号,另一种是嵌套编号.
1
1.1
1.2
2
2.1
2.1.1
2.1.2
2.2
嵌套编号
13
顺序编号
14
顺序图的主要元素—嵌套编号
顺序图的主要元素
• 循环与分支
顺序图的主要元素
• 循环与分支
UML1.0的循环和分支表示法
读图小结
• 在dispatchForm(分发窗体)中,对于某个已支付的Order进行分发时,