UML复习——UML交互图(顺序图和通信图)
(1)前面交互图实例中的框图——生命线(lifeline)框图,表示的是交互的参与者(participant),注:生命线框图并不等同于类的实例。(1)交互具体值(interaction occurrence)/交互使用(interaction use):是在交互中引用另一交互。(1)创始消息found message:最开始的消息,在图中表示为实心圆作为起点。(1)主动对象即在其自己的执行线程中
一、UML交互图(interaction diagram)
1.定义:用于描述对象间通过消息的交互。可用于动态对象建模
2.UML交互图有两种类型:顺序图(sequence diagram)和通信图(communication diagram)。
【注】这里的顺序图和之前讲的系统顺序图(SSD)不同:
这里的顺序图是对类中具体方法的可视化表述;
而SSD是对用例中参与者与系统交互行为的可视化表述
二、顺序图(sequence diagram)
1.顺序图以一种栅栏格式描述交互,在右侧添加新创建的对象(如下图)
下图在代码中的表示:类A具有名为doOne的方法和类型为B的属性。同时类B具有名为doTwo和doThree的方法。
2.顺序图的基本表示法(见下图)
(1)创始消息found message:最开始的消息,在图中表示为实心圆作为起点。
(2)①实心箭头+消息表达式的方式=>同步消息。
②刺形箭头=>异步调用(不是虚线,而是实线+刺形箭头)
(3)生命线自上而下表示时间顺序。
(4)执行规格条execution specification bar/活动条/活动:表示控制期focus of control
(5)表示应答或返回的常用的两种方式:
①使用消息语法returnVar=message(parameter)
②在活动条末端使用应答(或返回)消息线
(6)【注】创建对象时必须用虚线
3.顺序图中的图框frame
图框是图的区域或片段,在图框中有操作符或标签(如loop)和保护信息
~~~常见的图框操作符:
①alt:选择性的片段,用于表示保护信息所表达的互斥条件逻辑
②loop:用于表示保护信息为真的循环片段。loop(n)表示循环的次数。也可以loop(i,1,10)
③opt:当保护信息为真时执行的可选片段
④par:并行执行的并行片段
⑤region:只能执行一个线程的临界片段
4.主动对象(active object)
(1)主动对象即在其自己的执行线程中运行或控制自己的执行线程的实例。
(2)表示:在生命线框图的两侧加竖线。
5.关联交互图
(1)交互具体值(interaction occurrence)/交互使用(interaction use):是在交互中引用另一交互。
(2)表示:
①在整个顺序图周围放置图框,并加上sd标记和注入AuthenticateUser这样的名称。
②标记为ref的图框称为引用,该引用指另一个已命名顺序图。
三、通信/讯图(communication diagram)
1.通信图以图或网格格式描述对象交互,其中对象可以置于图中的任何位置(如下图)
2.在通信图中,使用顺序编号,如“1:”表示调用流的顺序。
3.链(link)
(1)链是连接两个对象的路径,指明了对象间某种可能的导航和可见性。
(2)链是关联的实例。
(3)多个消息共用一条单链传输消息~每条链都允许双向消息传输。
4.消息
(1)表示:消息表达式+小箭头(用于指明消息的方向)
(2)可以增加顺序编号以表示当前控制线程中消息的次序。
①不要为起始消息编号(虽然合法)
②有条件消息:在顺序编号后加带方括号的条件子句,e.g.“1 [color=red]:”
③互斥的有条件路径:使用条件路径字母修改顺序编号,e.g.“1a[color=red]:”
④迭代
⑤集合的迭代,如下图:
其中“1*[i=1..n]:”表示遍历lineItem集合中的每个元素
顺序图 v.s. 通讯图:
(1)顺序图能够清晰地表示消息的顺序和时间排序,大量详细表示法选项;但是顺序图强制在右侧增加新对象->消耗水平空间
(2)通讯图的优势在于空间效用->能够在二维空间内灵活的增加对象;但是通信图不易查阅消息的顺序,而且表示法选项较少。
四、常用的UML交互图表示法
(1)前面交互图实例中的框图——生命线(lifeline)框图,表示的是交互的参与者(participant),注:生命线框图并不等同于类的实例。
———————五、单实例类对象(Singleton)—————
1.单实例类(Singleton)模式指对类进行实例化时,只能存在一个实例,而绝不能是两个。
2.在UML交互图中,单实例类对象的生命线框图右上角要表示“1”——含义:使用单实例类模式可以获得对象的可见性。
整理不易,亲亲点个赞呗~~
更多推荐
所有评论(0)