UML基本使用--時序圖

綜述

時序圖是一種強調(diào)時間順序的對象交互圖(1.是描述對象間交互的圖 2.這種圖是強調(diào)時間順序的),換句話說就是描述誰和誰先做什么,然后再做什么的圖
在時序圖中,首先把參與交互的對象放在圖的上方,沿X軸方向排列,通常把發(fā)起交互的對象放在左邊,較下級的對象依次放在右邊,然后把這些對象發(fā)送和接受的消息沿Y軸方向按時間順序從上到下放置。這樣就提供了控制流隨著時間推移的清晰的可視化軌跡。

推薦工具:依然是StarUML

時序圖的基本元素

  • 1.對象(Object)

【定義】:表示的是時序圖中的參與者
【描述方式】:在外面畫一個矩形,矩形內(nèi)部的描述文字有三種格式:1.對象名: 類名 2. 類名 3.對象名。
【備注】大多數(shù)情況下,在描述上并沒有將對象單獨拿出來作為一種基本元素,都是將對象放在生命線(后面會介紹)中一起提到

UMLSequenceObject
  • 2.生命線(Lifelines)

【定義】:每個對象的底部中心的位置都帶有生命線。生命線是一個時間線,從時序圖的頂部一直延伸到底部,長度當(dāng)然由你的業(yè)務(wù)來決定啦,生命線表示了對象存在的時間
【描述方式】:表示為從對象圖標向下延伸的一條虛線

UMLSequenceLifeLine
  • 3.控制焦點(Focus Of Control)

【定義】:用來表示時序圖中對象執(zhí)行某個操作的一段時間,在很多文章里面將其形象的理解為程序函數(shù) { } 中的內(nèi)容。
【描述方式】:用一個細長的矩形狂表示,頂端與收到的消息產(chǎn)生時間對齊

UMLSequenceFocusOfControl
  • 4.消息(Messages)

【定義】:A 向 B 發(fā)送消息message1,其實就是叫 B 去調(diào)用 message1這個方法。消息一般分為同步消息,異步消息和返回消息,自關(guān)聯(lián)消息(也就是自己調(diào)用自己的方法)
【描述方式】:同步消息用帶實心箭頭的直線表示,異步消息用帶普通箭頭的直線表示,返回消息用虛線普通箭頭表示,返回消息也可以區(qū)分同步和異步,在StarUML中可以自行修改。
【備注】:同步和異步的區(qū)分一方面是按照函數(shù)本身的執(zhí)行方式來區(qū)別,另一方面是按照實際做的業(yè)務(wù)本身來區(qū)別。舉個栗子比如說下載素材,下載這件事情本來是異步去執(zhí)行,但是有可能這個具體的函數(shù)看起來是同步執(zhí)行的,這個時候就看你怎么選擇了。

UMLSequenceMessage
  • 5.創(chuàng)建對象

【定義】:創(chuàng)建對象也算是消息的一種,通過發(fā)送消息的方式創(chuàng)建對象。
【描述方式】:在時序圖的圖形表示中,和其他對象不一樣的是,其他對象通常位于整個時序圖的頂部,而被創(chuàng)建的對象則位于圖的中間部位。
【備注】:創(chuàng)建在使用中比較少看到,基本都是最開始就把所有對象創(chuàng)建好,然后畫時序圖,為了以后能看懂別的時序圖,這里特地提出。

UMLSequenceCreateObject
  • 6.銷毀對象

【定義】:創(chuàng)建對象也算是消息的一種,通過發(fā)送消息的方式銷毀對象。
【描述方式】:描述方式?jīng)]有什么變化,就是發(fā)送消息給對象,只是在對象的生命線中會添加一個”X“,來進行標示。
【備注】:刪除對象一般在時序圖中也不是很常見,如果沒有要特別注意的刪除事件,一般都是不寫的。

UMLSequenceDeallocObject
  • 7.結(jié)束點

【定義】:標記整個業(yè)務(wù)結(jié)束的位置
【描述方式】:實心黑圓圈

UMLSequenceEndPoint

來個示例吧

以AR素材下載為例,簡單講述進入VC之后自動下載到最后刷新界面的時序圖

UMLSequenceDemo

參考文章

https://www.ibm.com/developerworks/rational/library/3101.html
http://www.codemag.com/Article/0203081
http://www.sparxsystems.cn/resources/uml2_tutorial/uml2_sequencediagram.html
http://www.cleey.com/blog/single/id/873.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容