UML在嵌入式系統設計中的應用
1.2 UML 框圖
作為一種可視化建模語(yǔ)言,UML 中的所有語(yǔ)素是一個(gè)個(gè)框圖。設計人員就是用這一個(gè)個(gè)框圖描述整個(gè)系統的設計。UML 模型的框圖主要有以下幾種:
Business Use Case框圖和Use Case框圖,前者主要描述整個(gè)機構的功能,后者主要從用戶(hù)的角度描述系統的功能。所以后者通常用于與系統客戶(hù)交流,提取用戶(hù)的需求。
Class 框圖,這一種是靜態(tài)圖,描述系統中的類(lèi)。在此框圖中可以體現類(lèi)的主要內容和功能、類(lèi)之間的結構和相互關(guān)系。
State Chart 框圖提供了建模對象的各種狀態(tài)及它們之間的轉換關(guān)系。它提供建模系統的動(dòng)態(tài)功能。這些框圖廣泛用于建立實(shí)際的系統,將會(huì )生成系統的全部代碼。
Activity 框圖與 State Chart 框圖同樣描述系統的動(dòng)態(tài)功能,但它著(zhù)重于顯示系統的功能流,顯示 Use Case 框圖中某個(gè)案例(Case)的事件流。它定義了工作流從何時(shí)開(kāi)始、哪里開(kāi)始、按什么順序發(fā)生、最終在哪結束。
Sequence 框圖顯示了 Use Case 框圖中各對象的具體功能流程。Sequence 框圖演示了業(yè)務(wù)過(guò)程的細節。值得注意的是,這個(gè)框圖只顯示對象,不顯示類(lèi)。即 Sequence 框圖是針對某個(gè)特定情況、特定對象進(jìn)行的描述。
Collaboration 框圖與 Sequence 框圖同樣描述對象間的相互關(guān)系。但它并不像 Sequence 框圖那樣以時(shí)間順序描述,而是著(zhù)重顯示對象與角色之間的交互。其目的是讓質(zhì)量保證工程師和系統建筑師分析對象之間處理過(guò)程的分布情況。如果分布不合理,系統建筑師可能考慮重新分配處理工作。
Component 框圖顯示模型的物理視圖,也顯示系統中軟、硬件組件及其相互關(guān)系。
Deployment 框圖則顯示了系統的物理布局和各組件的位置及配置方法。
這些框圖為系統的分析、設計、建模提供了多種圖形表達形式,可應用于開(kāi)發(fā)的不同階段。它們的有機結合可以構建一個(gè)完整而一致的系統。下面針對于車(chē)載 GPS 終端這個(gè)具體項目說(shuō)明 UML 在嵌入式系統設計中的具體應用。
2、UML 在車(chē)載 GPS 終端設計中的應用
2.1 車(chē)載GPS終端系統簡(jiǎn)介
車(chē)載 GPS 終端是置于機動(dòng)車(chē)內的實(shí)時(shí)定位裝置,如圖1所示。它的應用對象是需要定位、調度的車(chē)隊,例如:運輸車(chē)隊和出租車(chē)等。車(chē)輛可以通過(guò)終端和 GPS衛星進(jìn)行實(shí)時(shí)、準確的定位,并通過(guò)無(wú)線(xiàn)通訊網(wǎng)絡(luò )上報遠程的中心系統。中心可以通過(guò)終端遠程監視車(chē)行軌跡,甚至在特殊情況下通過(guò)終端控制車(chē)輛。同時(shí),終端還可以起到車(chē)載電話(huà)的作用,并可在車(chē)輛遇險時(shí)進(jìn)行報警。另外,通過(guò)終端車(chē)輛還可以接收少量的調度信息。
2.2 需求分析
在對系統進(jìn)行需求分析時(shí),可以使用 Use Case 圖進(jìn)行功能上的需求分析。Use Case 圖分角色(Actor)和案例(Case)兩部分。角色是與系統交互的人或物,而案例是系統提供的功能塊。使用 Use Case 觀(guān)察系統能夠將系統實(shí)現與系統目標分開(kāi),有助于開(kāi)發(fā)人員了解最重要的部分,滿(mǎn)足用戶(hù)需求,而不會(huì )沉浸于實(shí)現細節。
對于車(chē)載 GPS 終端,主要的角色有兩種:車(chē)載終端用戶(hù)和監控中心用戶(hù)。終端用戶(hù)可以報警,打車(chē)載電話(huà)等;而監控中心可以查詢(xún)車(chē)輛位置,發(fā)送調度信息。其 Use Case 框圖如圖2所示。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論