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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

溫馨提示

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

評論

0/150

提交評論