- UML 建模、設計與分析:從新手到高手
- 夏麗華
- 770字
- 2019-12-09 14:44:31
5.3 對象圖和包圖建模
雖然用戶已經了解了對象圖和包圖的基礎知識,但在建模時還需要遵循一定的策略,才可以設計出完美的建模模型。
5.3.1 使用對象圖建模
對系統的靜態結構建??梢岳L制類圖,以描述抽象的語義以及它們之間的具體關系。但是,一個類可能包含多個實例,對于若干個相互聯系的類來說,它們各自的對象之間進行交互的具體情況可能多種多樣。類圖并不能完整地描述系統的對象結構,為了考查在某一時刻正在發生作用的對象以及這組對象之間的關系,需要使用對象圖描述系統的對象結構。
在構造對象圖或使用對象圖建模時,可以遵循如下策略。
□ 識別準備使用的建模機制。建模機制描述了為其建模的系統的部分功能和行為,它們是由類、接口和其他元素之間的交互產生的。
□ 針對所使用的建模機制,識別參與協作的類、接口和其他元素以及它們之間的關系。
□ 考慮貫穿所用機制的腳本。凍結某一時刻的腳本,并且匯報參與所用機制的對象。
□ 根據需要顯示每個對象的狀態和屬性值。
□ 顯示對象之間的鏈。
5.3.2 使用包圖建模
到目前為止,用戶已經了解了包和包圖相關的知識,而當系統非常復雜時,采用包圖建模技術非常有效。包圖建模的一般步驟如下。
(1)分析系統模型元素,把概念或語義上相近的模型元素歸納到一個包中。
(2)對于每一個包,標識模型元素的可見性。
(3)確定包與包之間的泛化關系,確定包元素的多態性與重載。
(4)繪制包圖。
(5)進一步完善包圖。
本節以圖書管理系統為例,使用包圖創建一個簡單的模型。
圖書管理系統的類圖構建完成后,可以根據該系統類圖中類與類之間的邏輯關系將圖書管理系統中的類劃分為3個包:UserInterface包、Library包和DataBase包。其中,UserInterface包用于描述用戶界面的相關類;Library包描述業務邏輯處理相關的Book類、Title類、Loan類和Borrower類等;DataBase包包含了與數據庫有關的類,如Persistent類。該系統的包圖如下圖所示。

從上圖中可以看出,UserInterface包依賴于Library包和DataBase包,而Library包則依賴于DataBase包。