解析UML活動圖和狀態(tài)圖的作用和區(qū)別
本文和大家重點討論一下UML活動圖和狀態(tài)圖的概念,這兩種圖都有各自的特點和作用,那么他們之間有什么區(qū)別和聯(lián)系呢,請看本文詳細介紹。
UML活動圖和狀態(tài)圖
一、UML活動圖:
◆流程圖常被用來建立算法模型
◆UML活動圖與流程圖類似,不同在于它支持并行活動.
◆缺點:不能清楚的表示
二、作用:
1、描述一個操作的執(zhí)行過程中所完成的工作或者動作
2、描述對象內(nèi)部的工作
3、描述用例的執(zhí)行
4、處理多線程
5、顯示如何執(zhí)行一組相關的動作,以及這些動作如何影響周圍對象
三、以下情況不用UML活動圖
1、顯示對象之間的合作
2、顯示對象在其生命周期內(nèi)的運轉情況。
這兩點是通過序列圖和協(xié)作圖完成的。
四、UML活動圖的基本要素:
◆活動狀態(tài)
◆活動狀態(tài)之間的轉移(箭頭)
◆判斷(決策點)
◆保證條件
◆同步條:活動之間的同步
◆起點和終點
--起點有且只有一個,終點可以有n個。
五、泳道:
用于對UML活動圖中的活動進行分組,用于描述對象之間的合作關系。
----所謂泳道技術,就是將活動用線分成一些縱向區(qū)域,這些縱向區(qū)域稱為泳道。
UML狀態(tài)圖
一、狀態(tài)圖:
◆描述一個特定對象的所有可能狀態(tài)以及由于各種事件的發(fā)生而引起的狀態(tài)之間的轉換。例如呼叫中心系統(tǒng)。
◆狀態(tài)圖符
--狀態(tài):矩形(四角圓弧)
--轉移
--起點
--終點
1、狀態(tài)機:
◆一種行為:描述了一個對象或一個交互在生命周期內(nèi)響應事件所經(jīng)歷的狀態(tài)序列。
◆單個類或者一組類之間協(xié)作的行為可以用狀態(tài)機來描述
◆一個狀態(tài)機涉及到一些其他元素,包括狀態(tài)、轉換、事件
2、狀態(tài):
在對象的生命周期中滿足某些條件、執(zhí)行某些活動或等待某些事件的一個條件活狀況。
1)名稱
2)進入?yún)f(xié)作和退出動作
3)內(nèi)部轉換
4)子狀態(tài)
5)延遲事件
3、轉換:兩個狀態(tài)之間的一種關系,表示對象將在***個狀態(tài)中執(zhí)行一定的動作并在某個特定事件發(fā)生而某個特定條件滿足時進入第二個狀態(tài)。
1)源狀態(tài)
2)事件觸發(fā)
3)監(jiān)護條件
4)動作
5)目標狀態(tài)
例子:電話機狀態(tài)圖
二、UML活動圖與狀態(tài)圖的區(qū)別:
狀態(tài):行為的結果
活動:行為的動作
在uml中圖符不一樣。
注意:實際項目中,UML活動圖不是必須的。
用到UML活動圖的情況:
--描述并行的過程或這行為
--描述一個算法
--描述一個跨越多個用例的活動
狀態(tài)圖描述了一個具體對象的可能狀態(tài)以及他們之間的轉換。
單獨的說UML活動圖很抽象,但是當把UML活動圖與流程圖進行簡單的比較之后就不難理解了。再通過看例子就明白了。泳道挺形象的,確實像泳道一樣,把活動進行分組,目的是用來描述對象間的合作關系。例子好懂,但是具體實現(xiàn)起來,怎樣分組是個問題。
狀態(tài)圖不懂。老師說學過匯編的就懂了。
【編輯推薦】