UML用例建模解析(二)---------用例執行者之間關系


(1) 關聯關系

 

關聯關系是指執行者與用例之間的關系,又稱為通信關系,如果某個執行者可以對某個用例進行操作,它們之間就具有關聯關系,如下圖所示,“經理”有一個功能為“查看庫存報表”,因此可以在執行者“經理”和用例“查看庫存報表”之間建立一個關聯關系,關聯關系用實線表示。

 

 

 

 

(2) 泛化關系

 

執行者之間的關系只有一種,即泛化關系,用一個帶有空心三角形的實線表示,如下圖所示,在該圖中,倉庫管理員、系統管理員、經理都是員工的一種,因此員工擁有的功能這三者都擁有,如登錄、修改個人信息等,為了減少用例的個數並且使系統更加符合面向對象設計規范,可以對執行者進行泛化,將各類執行者都具有相同的功能移至父執行者,而將每類執行者特有的功能保留在子執行者中。

 

 

 

 

常見的用例之間的關系有兩種,分別是包含關系和擴展關系,下面介紹這兩種關系的含義以及在用例圖中如何表示。

 

 

 

(3) 包含關系

 

如果多個用例都具有一部分相同的行為,可以將這部分相同的行為作為一個單獨的用例抽取出來,與原來的用例形成一個包含關系。如倉庫管理員在進行入庫、出庫等操作之前需要先登錄,登錄是入庫、出庫流程的基本組成部分,因此用例“入庫”和“出庫”包含用例“登錄”。為了更加清晰地描述多個用例的相同行為,在用例圖中提供了用例與用例之間的包含關系。

在UML中,包含關系用依賴線(虛線)加一個<<include>>表示,由原始用例指向包含用例,如下圖所示:

 

 

 

 

 

 

(4) 擴展關系

 

擴展關系又稱為延伸關系,如果一個用例在執行時可能會使用到另一個用例,或者使用一個新的用例對原有用例的行為進行擴展時可以使用擴展關系,如倉庫管理員在入庫時發現某種商品在系統中暫不存在,則可以增加新的商品信息;如果入庫商品均已存在,則無需增加商品信息,此時用例“增加商品信息”可以作為用例“入庫”的擴展用例。在需要擴展的用例(原始用例)中需指定一個擴展點(即需擴展的位置),在下一節編寫用例文檔中將學習如何設置擴展點。

 

在UML中,包含關系用依賴線(虛線)加一個<<extend>>表示,由擴展用例指向原始用例,如下圖所示:

 

 

 

 

 

 

 

 

關於包含關系和擴展關系箭頭的指向,可以記住兩句口訣:包含進來,箭頭向外;擴展出去,箭頭向里。

 

除了上述的包含關系和擴展關系外,用例之間還存在一種與執行者泛化類似的泛化關系,但不太常見,在這里不予以詳細介紹。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM