新聞中心
本文和大家重點討論UML序列圖中的組合碎片的概念,在本文前面“基礎(chǔ)”的段落中呈現(xiàn)的,我介紹了“變體”,“選擇項”,和“循環(huán)”的組合碎片。這些三個組合碎片是大多數(shù)人將會使用最多的。

組合碎片(跳轉(zhuǎn)和并行)
在本文前面“基礎(chǔ)”的段落中呈現(xiàn)的,我介紹了“變體”,“選擇項”,和“循環(huán)”的組合碎片。這些三個組合碎片是大多數(shù)人將會使用最多的。然而,有二個其他的組合碎片,大量共享的人將會發(fā)現(xiàn)有用——跳轉(zhuǎn)和并行。
UML序列圖中跳轉(zhuǎn)
跳轉(zhuǎn)組合碎片幾乎在每個方面都和選擇項組合碎片一致,除了兩個例外。首先,跳轉(zhuǎn)的框架namebox的文本“break”代替了“option”。其次,當(dāng)一個跳轉(zhuǎn)組合碎片的消息運行時,封閉的交互作用的其他消息將不會執(zhí)行,因為序列打破了封閉的交互。這樣,跳轉(zhuǎn)組合碎片非常象C++或Java的編程語言中的break關(guān)鍵字。
圖16:來自圖8的UML序列圖片段的重構(gòu),片段使用跳轉(zhuǎn)代替變體
跳轉(zhuǎn)最常用來做模型異常處理。圖16是圖8的重構(gòu),但是這次圖16使用跳轉(zhuǎn)組合碎片,因為它把balance
UML序列圖中并行
今天的現(xiàn)代計算機系統(tǒng)在復(fù)雜性和有時執(zhí)行并發(fā)任務(wù)方面不斷進步。當(dāng)完成一個復(fù)雜任務(wù)需要的處理時間比希望的長的時候,一些系統(tǒng)采用并行處理進程的各部分。當(dāng)創(chuàng)造一個UML序列圖,顯示并行處理活動的時候,需要使用并行組合碎片元件。
并行組合碎片使用一個框架來畫,你把文本“par”放在框架的namebox中。然后你把框架的內(nèi)容段用虛線分為水平操作元??蚣艿拿總€操作元表示一個在并行運行的線程。
圖17:oven是并行做兩個任務(wù)的對象實例
圖17可能沒有舉例說明做并行活動的對象的***的計算機系統(tǒng)實例,不過提供了一個容易理解的并行活動序列的例子。序列如這樣進行:hungryPerson傳遞cookFood消息給oven對象。當(dāng)oven對象接收那個消息時,它同時發(fā)送兩個消息(nukeFood和rotateFood)給它本身。這些消息都處理后,hungryPerson對象從oven對象返回yummyFood。
總結(jié)
UML序列圖是一個用來記錄系統(tǒng)需求,和整理系統(tǒng)設(shè)計的好圖。UML序列圖是如此好用的理由是,因為它按照交互發(fā)生的時間順序,顯示了系統(tǒng)中對象間的交互邏輯。
【編輯推薦】
- 圖例解析UML序列圖中變體和選擇項作用
- 繪制UML序列圖時必須注意的幾個問題
- 技術(shù)分享 Eclipse和UML工具EA的連接方法
- 實例解析UML序列圖使用
- 學(xué)習(xí)筆記 解析UML序列圖中符號和生命線
分享標題:深度剖析UML序列圖中的組合碎片
轉(zhuǎn)載來于:http://m.fisionsoft.com.cn/article/dpppjpj.html


咨詢
建站咨詢
