中職UML與Rose建模應(yīng)用子情境3.3課件_第1頁(yè)
中職UML與Rose建模應(yīng)用子情境3.3課件_第2頁(yè)
中職UML與Rose建模應(yīng)用子情境3.3課件_第3頁(yè)
中職UML與Rose建模應(yīng)用子情境3.3課件_第4頁(yè)
中職UML與Rose建模應(yīng)用子情境3.3課件_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、(中職)UML與Rose建模應(yīng)用子情境3.3ppt課件學(xué)習(xí)情境3:嵌入式軟件建模MP3播放器UML及Rose建模應(yīng)用子情境3.3 靜態(tài)結(jié)構(gòu)建模情景描述 子情景3.1系統(tǒng)需求和3.2用例分析分別得到了需求分析和用例圖?,F(xiàn)在對(duì)該系統(tǒng)的結(jié)構(gòu)特征進(jìn)行分析,并進(jìn)行系統(tǒng)靜態(tài)結(jié)構(gòu)建模,包括:確定系統(tǒng)類創(chuàng)建系統(tǒng)類圖,如播放器類圖、存儲(chǔ)器子系統(tǒng)類圖、用戶接口子系統(tǒng)類圖等模型。 任務(wù)1:確定類任務(wù)描述 用戶是通過顯示器及按鍵與系統(tǒng)進(jìn)行交互式操作;顯示器、按鍵是于系統(tǒng)之間橋梁(接口);而MP3播放器不僅是播放器,同時(shí)也是一個(gè)存儲(chǔ)器。根據(jù)以上描述的三種關(guān)系,分別繪制出相應(yīng)的類圖。 依賴關(guān)系和實(shí)現(xiàn)關(guān)系 在UML模型中,

2、模型元素之間的依賴關(guān)系表示某一元素以某種形式依賴于其他元素。從某種意義上說,關(guān)聯(lián)關(guān)系、泛化關(guān)系和實(shí)現(xiàn)關(guān)系都屬于依賴關(guān)系,但是他們都有其特殊的語(yǔ)義,因而被作為獨(dú)立的關(guān)系在建模時(shí)使用。依賴關(guān)系用一個(gè)一端帶有箭頭的虛線表示,在圖3-23中,類ClassC依賴于類ClassA。 圖3-23 帶有構(gòu)造型的依賴關(guān)系 相關(guān)知識(shí) 在UML規(guī)范中定義類4種基本的依賴類型,分別是使用(Usage)依賴、抽象(Abstraction)依賴、綁定依賴(Binding)和授權(quán)依賴(Permission),下面將對(duì)它們分別進(jìn)行介紹。 使用依賴用于表示一種元素使用其他元素提供的服務(wù)以實(shí)現(xiàn)它的行為。表3-3列出了5種依賴關(guān)系

3、。 相關(guān)知識(shí)依賴關(guān)系說明關(guān)鍵字使用 用于聲明使用某個(gè)模型元素需要泳道已存在的另一個(gè)模型元素,這樣才能實(shí)現(xiàn)使用者的功能,包括調(diào)用、參數(shù)、實(shí)例化和發(fā)送use調(diào)用 用于聲明一個(gè)類調(diào)用其他類的的操作的方法call參數(shù) 用于聲明一個(gè)操作與其參數(shù)之間的關(guān)系parameter實(shí)例化 用于聲明使用一個(gè)類的方法創(chuàng)建了另一個(gè)類的實(shí)例instantiate發(fā)送 用于聲明信號(hào)發(fā)送者和信號(hào)接受者之間的關(guān)系send表3-3 使用依賴相關(guān)知識(shí)依賴關(guān)系說明關(guān)鍵字跟蹤用于聲明不同模型中的元素之間存在一些連接,但沒有映射精確trace精化用于聲明位于兩個(gè)不同語(yǔ)義層次上的元素之間的映射refine派生用于聲明一個(gè)實(shí)例可以有另一個(gè)實(shí)

4、例導(dǎo)出derive表3-4 抽象依賴關(guān)系相關(guān)知識(shí)依賴關(guān)系說明關(guān)鍵字訪問用于說明允許一個(gè)包訪問另一個(gè)包access導(dǎo)入用于說明允許一個(gè)包訪問另一個(gè)包,并為被訪問包的組成部分增加別名import友元用于說明允許一個(gè)元素訪問另一個(gè)元素,無論被訪問的元素是否具有可見性friend表3-5 授權(quán)依賴相關(guān)知識(shí) 任務(wù)2:建立類圖任務(wù)描述 任務(wù)1識(shí)別出了胸類、存儲(chǔ)子系統(tǒng)類和接口子系統(tǒng)類后,接下來還要識(shí)別類間的關(guān)系,然后繪制相應(yīng)的類圖。識(shí)別系統(tǒng)中的類 對(duì)于MP3播放器系統(tǒng),很顯然,用戶通過顯示器及按鍵與系統(tǒng)進(jìn)行交互。由于顯示器和按鍵是被動(dòng)對(duì)象,因此需要添加一個(gè)用戶接口對(duì)象來管理用戶和系統(tǒng)之間的交互。用戶接口對(duì)象

5、依靠音頻控制器來實(shí)現(xiàn)用戶期望的操作。實(shí)際上,音頻控制器是MP3播放器的核心,它完成用戶接口所指定的各種操作。音頻控制器通過揚(yáng)聲器來播放音樂。步驟1子任務(wù)1創(chuàng)建系統(tǒng)類圖 對(duì)于媒體文件,MP3播放器提供了一個(gè)可讀寫存儲(chǔ)器,以存儲(chǔ)媒體文件。存儲(chǔ)器可由計(jì)算機(jī)通過USB接口連接,這樣就可以實(shí)現(xiàn)對(duì)存儲(chǔ)的媒體文件進(jìn)行管理。因此,需要一個(gè)類來表示存儲(chǔ)器。而媒體文件將作為一個(gè)單獨(dú)的類出現(xiàn)。 為了顯示電池的剩余電量,系統(tǒng)需要周期性地測(cè)試電池的剩余電量。因此,也可以為電池建立一個(gè)對(duì)象。 任務(wù)實(shí)施子任務(wù)1創(chuàng)建系統(tǒng)類圖 通過上述分析,可以從系統(tǒng)中抽象出以下一些主要類:Battery、AudioController、Sp

6、eaker、KeyBoard、Display、Memory、MediaFile和UserInterface。 【提示】在瀏覽窗口中右鍵單擊“Logical View”(邏輯視圖),在彈出的菜單上選擇菜單項(xiàng)“New”(新建)下的“Class Diagram”(類圖)命令,從鍵盤輸入文本“系統(tǒng)類”命名該類圖,雙擊“系統(tǒng)類”打開類圖窗口。 任務(wù)實(shí)施子任務(wù)1創(chuàng)建系統(tǒng)類圖 創(chuàng)建類 (1)移動(dòng)光標(biāo)指向工具箱中的“Class”圖標(biāo),單擊選定該圖標(biāo),然后移動(dòng)光標(biāo)到類圖窗口,在適當(dāng)位置單擊鼠標(biāo)左鍵,出現(xiàn)名為“NewClass”的類,輸入文本“KeyBoard”重命名。 (2)采用類似的方法,依次創(chuàng)建其它類,如圖

7、3-24所示。步驟2圖3-24 創(chuàng)建類 任務(wù)實(shí)施子任務(wù)1創(chuàng)建系統(tǒng)類圖 創(chuàng)建類與類之間的關(guān)系 (1)確定類與類之間的關(guān)系 類“KeyBoard”與類“UserInterface”之間存在一對(duì)多的關(guān)聯(lián),即多個(gè)“KeyBoard”類對(duì)應(yīng)一個(gè)“UserInterface”類,而“UserInterface”類管理多個(gè)“KeyBoard”類;由于播放器可以使用多個(gè)電池,因此,多個(gè)“Battery”類對(duì)應(yīng)一個(gè)“UserInterface”類:類“Display”與類“UserInterface”之間的關(guān)系為一對(duì)一的關(guān)系:類“Speaker”與“AudioController”類之間的關(guān)系為一對(duì)一的關(guān)聯(lián)關(guān)系

8、;類“AudioController”與類“UserInterface”之間的關(guān)系為一對(duì)一的關(guān)聯(lián)關(guān)系;播放器只有一個(gè)存儲(chǔ)器,因此,“Memory”類與“AudioController”類之間的關(guān)系為一對(duì)一的關(guān)聯(lián)關(guān)系;在存儲(chǔ)器中可以存放0到多個(gè)媒體文件,即一個(gè)“Memory”類對(duì)應(yīng)多個(gè)“MediaFile”類。步驟3 任務(wù)實(shí)施子任務(wù)1創(chuàng)建系統(tǒng)類圖 (2)在工具箱中選擇“Association”按鈕,然后用鼠標(biāo)在各個(gè)類之間創(chuàng)建關(guān)聯(lián)“線段”,如圖3-25所示。圖3-25 類間的關(guān)聯(lián) 任務(wù)實(shí)施 (3)設(shè)置各類之間的關(guān)聯(lián)關(guān)系,最終完成系統(tǒng)類圖 下面以“KeyBoard”類與“UserInterface”

9、類為例,雙擊“KeyBoard”類與“UserInterface”類之間的關(guān)聯(lián)“線段”,在彈出的對(duì)話框中Role B Detail頁(yè)框中的標(biāo)簽“Multiplic”對(duì)應(yīng)的文本框中輸入“1.*”,如圖3-26(a)所示;然后在Role A Detail頁(yè)框中的標(biāo)簽“Multiplic”對(duì)應(yīng)的文本框中輸入“1”,如圖3-26(b)所示,最后單擊“OK”按鈕,這樣就設(shè)置了“UserInterface”與“KeyBoard”的關(guān)系為一對(duì)多,如圖3-27所示。 依次類推,設(shè)置其它類之間的關(guān)聯(lián)關(guān)系。最終得到效果如圖3-28所示。子任務(wù)1創(chuàng)建系統(tǒng)類圖 任務(wù)實(shí)施子任務(wù)1創(chuàng)建系統(tǒng)類圖 (a) (b)圖3-26

10、設(shè)置類間一對(duì)多的關(guān)聯(lián)關(guān)系 任務(wù)實(shí)施子任務(wù)1創(chuàng)建系統(tǒng)類圖 圖3-27 類間一對(duì)多的關(guān)聯(lián)關(guān)系示例圖3-28 MP3播放器的類圖 任務(wù)實(shí)施子任務(wù)2創(chuàng)建系統(tǒng)創(chuàng)建存儲(chǔ)子系統(tǒng)類圖 【提示】在瀏覽窗口中右鍵單擊“Logical View”(邏輯視圖),在彈出的菜單上選擇菜單項(xiàng)“New”(新建)下的“Class Diagram”(類圖)命令,從鍵盤輸入文本“存儲(chǔ)類”命名該類圖,雙擊“存儲(chǔ)類”打開類圖窗口。確定存儲(chǔ)子系統(tǒng)包含的類及它們之間的關(guān)系 存儲(chǔ)器類用來管理MP3播放器的存儲(chǔ)空間,它維護(hù)已經(jīng)存儲(chǔ)的媒體文件,并為新的媒體文件分配存儲(chǔ)空間,通過分析發(fā)現(xiàn)存儲(chǔ)子系統(tǒng)包含音頻控制器AudioController、存儲(chǔ)

11、器Memory、音頻幀AudioFrame和媒體文件MediaFile這四個(gè)類組成。音頻控制器由存儲(chǔ)器組成,是聚合關(guān)系,它們之間一對(duì)一的關(guān)系。存儲(chǔ)器由媒體文件和音頻幀組成,是聚合關(guān)系,存儲(chǔ)器中可以包含0個(gè)或多個(gè)媒體文件,因而也就可以包含0個(gè)或多個(gè)音頻幀。媒體文件和音頻幀的關(guān)系是一對(duì)多的關(guān)系。步驟1 任務(wù)實(shí)施子任務(wù)2創(chuàng)建系統(tǒng)創(chuàng)建存儲(chǔ)子系統(tǒng)類圖 確定存儲(chǔ)子系統(tǒng)包含的類及它們之間的關(guān)系 (1)創(chuàng)建類“MediaFile”:移動(dòng)光標(biāo)指向工具箱中的“Class”圖標(biāo),單擊選定該圖標(biāo),然后移動(dòng)光標(biāo)到類圖窗口,在適當(dāng)位置單擊鼠標(biāo)左鍵,出現(xiàn)名為“NewClass”的類,從鍵盤輸入“MediaFile”取代“N

12、ewClass”實(shí)現(xiàn)重命名。 (2)創(chuàng)建類“MediaFile”的屬性:鼠標(biāo)右鍵單擊“MediaFile”類,對(duì)彈出的菜單上選擇“New Attribute”(新屬性)命令,如圖3-29所示,單擊鼠標(biāo)左鍵。步驟2 【注意】以類“MediaFile”創(chuàng)建為例,說明類、類屬性及類操作的創(chuàng)建過程。 任務(wù)實(shí)施子任務(wù)2創(chuàng)建系統(tǒng)創(chuàng)建存儲(chǔ)子系統(tǒng)類圖 圖3-29 選擇“New Attribute”命令 如圖3-30(a)所示,出現(xiàn)名為“name”的屬性,從鍵盤輸入“name:String”(【注意】輸入冒號(hào)時(shí)請(qǐng)切換至英文方式),按回車確認(rèn),實(shí)現(xiàn)對(duì)類“MediaFile”的屬性創(chuàng)建,類似方法,創(chuàng)建“l(fā)ength

13、:Time”屬性,如圖3-30(b)所示。(a) (b)圖3-30創(chuàng)建類“MediaFile”的屬性 任務(wù)實(shí)施子任務(wù)2創(chuàng)建系統(tǒng)創(chuàng)建存儲(chǔ)子系統(tǒng)類圖 (3)設(shè)置類“MediaFile”的屬性訪問權(quán)限:鼠標(biāo)左鍵單擊“MediaFile”屬性左邊的圖標(biāo),出現(xiàn)如圖3-31(a)所示的權(quán)限圖標(biāo)列表,在其中選擇“帶鑰匙”的圖標(biāo),設(shè)置類“MediaFile”的屬性的訪問權(quán)限為私有的訪問權(quán)限,如圖3-31(b)所示。(a) (b)圖3-31設(shè)置類“MediaFile”的屬性訪問權(quán)限(4)設(shè)置“MediaFile”類的Operation(操作):鼠標(biāo)右鍵單擊“MediaFile”類,對(duì)彈出的菜單上選擇“New O

14、peration”(新操作)命令,如圖3-32所示,單擊鼠標(biāo)左鍵。圖3-32 選擇“New Operation”命令 任務(wù)實(shí)施子任務(wù)2創(chuàng)建系統(tǒng)創(chuàng)建存儲(chǔ)子系統(tǒng)類圖 如圖3-33(a)所示,出現(xiàn)名為“opname()”的操作,從鍵盤輸入“getAudioFrame()”(【注意】輸入圓括號(hào)時(shí)請(qǐng)切換至英文方式),按回車確認(rèn),實(shí)現(xiàn)對(duì)“MediaFile”類的操作創(chuàng)建,類似方法,創(chuàng)建“addAudioFrame()”、“delete()”、“save()”操作,如圖3-33(b)所示。(a) (b)圖3-33 創(chuàng)建類的操作(a) (b)圖3-34 設(shè)置類“MediaFile”的操作的調(diào)用權(quán)限 (5)設(shè)置

15、類“MediaFile”的操作的調(diào)用權(quán)限:鼠標(biāo)左鍵單擊“getAudioFrame()”操作左邊的圖標(biāo),出現(xiàn)如圖3-34(a)所示的調(diào)用權(quán)限圖標(biāo)列表,在其中選擇第一個(gè)圖標(biāo),設(shè)置“getAudioFrame()”操作為公有的調(diào)用權(quán)限,如圖3-34(b)所示。 任務(wù)實(shí)施子任務(wù)2創(chuàng)建系統(tǒng)創(chuàng)建存儲(chǔ)子系統(tǒng)類圖 (6)類“AudioController”有play()、stop()操作;類“Memory”有g(shù)etFile()、delFile()、saveFile()操作;所有類的操作的調(diào)用權(quán)限皆為公有,如圖3-35所示,請(qǐng)自行創(chuàng)建與設(shè)置。圖3-35 創(chuàng)建類、類屬性及類操作示例(1)創(chuàng)建類“MediaFil

16、e”與“AudioFrame”間的關(guān)系 鼠標(biāo)左鍵單擊選定工具箱中的“Aggregation”(聚合)工具圖標(biāo),移動(dòng)光標(biāo)指向類“AudioFrame”,按住鼠標(biāo)左鍵,拖動(dòng)至類“MediaFile”,松開鼠標(biāo),出現(xiàn)如圖3-36(a)所示的聚合關(guān)系,在圖3-36(a)所示的光標(biāo)位置,單擊鼠標(biāo)右鍵,在彈出的菜單上找到“Aggregate”命令,單擊取消對(duì)其的“勾選”狀態(tài),如圖3-36(b)所示。 步驟3創(chuàng)建類與類之間的關(guān)系 任務(wù)實(shí)施子任務(wù)2創(chuàng)建系統(tǒng)創(chuàng)建存儲(chǔ)子系統(tǒng)類圖 (a) (b)圖3-36 創(chuàng)建類之間的關(guān)系示例 任務(wù)實(shí)施子任務(wù)2創(chuàng)建系統(tǒng)創(chuàng)建存儲(chǔ)子系統(tǒng)類圖 (2)創(chuàng)建類“MediaFile”與“Aud

17、ioFrame”間的一對(duì)多的關(guān)系 在如圖3-36(b)所示的位置,單擊右鍵,在彈出的菜單上選擇“Multiplicity”項(xiàng)下的“Zero or More”;移動(dòng)光標(biāo)至關(guān)系“線段”的另一端,即靠近類“MediaFile”,單擊右鍵,在彈出的菜單上選擇“Multiplicity”項(xiàng)下的“1”,至此兩者間一對(duì)多的關(guān)系創(chuàng)建完成,如圖3-37所示。圖3-37 類間的一對(duì)多關(guān)系示例 任務(wù)實(shí)施 【注意】參照步驟3的方法,請(qǐng)自行完成其它類之間的關(guān)系創(chuàng)建,實(shí)現(xiàn)如圖3-38所示的類圖。任務(wù)實(shí)施子任務(wù)2創(chuàng)建系統(tǒng)創(chuàng)建存儲(chǔ)子系統(tǒng)類圖 圖3-38 Memory子系統(tǒng)的類圖 任務(wù)實(shí)施子任務(wù)3創(chuàng)建接口子系統(tǒng)類圖 確定接口子

18、系統(tǒng)包含的類及它們之間的關(guān)系 用戶接口子系統(tǒng)的功能是管理用戶和系統(tǒng)之間的交互。它通過按鍵接收用戶的輸入,并通過顯示屏給用戶反饋信息。顯示器是操作硬件顯示器的接口,通過該接口可以關(guān)閉顯示屏以節(jié)省電能。不僅如此,顯示器還可以在顯示屏上創(chuàng)建圓點(diǎn)、畫線、輸入字符串等繪圖操作及顯示媒體文件相關(guān)信息。 除通過鍵盤接收來自用戶的消息外,用戶接口類還獲取來自電池和USB接口的消息。由上述分析可以得出該子系統(tǒng)包含用戶接口類UserInterface、USB接口類USBInterface、鍵盤類KeyBoard、電池類Battery、視圖類Vew、電源視圖類PowerView、音量類Volume、任務(wù)視圖類Tas

19、kView、圖形設(shè)備上下文類GraphicContext、顯示屏類Display。步驟1 任務(wù)實(shí)施子任務(wù)3創(chuàng)建接口子系統(tǒng)類圖 類View調(diào)用GraphicContext的方法,以便在顯示屏上顯示當(dāng)前播放的曲目信息、音量等信息,類View與類GraphicContext是一對(duì)一的聚合關(guān)系。類View有三個(gè)子類:PowerView類、VolumeView類和TaskView類,這三個(gè)子類分別負(fù)責(zé)在顯示屏上顯示剩余電量信息、音量和當(dāng)前曲目,View和這三個(gè)子類之間是泛化關(guān)系。UserInterface與KeyBoard、UserInterface與Battery、UserInterface與USBInterface、GraphicContext與Display之間的關(guān)系是一對(duì)一的關(guān)聯(lián)關(guān)系。UserInterface調(diào)用View的方法,以便更新顯示屏顯示,類UserInter

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論