用例關係 和 UML類關係
- 2019 年 12 月 5 日
- 筆記

用例關係(包含、擴展、泛化) UML類關係(依賴、關聯、聚合、組合、泛化)
用例關係
用例圖使用戶 與開發人員交流的一種重要的方式,是對用戶需求的一種描述。開發人員從用戶的角度整體上理解系統的功能。
用例
「註冊學生資訊」和「充值」與用例「用戶登錄」之間的關係就是包含關係。b和a本質不一樣,就是做b之前一定要做a,那a和b就是包含。
如圖

擴展用例
只有在基本用例滿足某種條件的時候才會執行。包含關係中基本用例的基本流執行時,包含用例一定會執行。b和a本質是一樣東西,但是b比a大。
銷戶:因為銷戶必需先進行賬戶結算,所以這裡用include
停機提醒:有兩個可選項,簡訊提醒和郵件提醒,所以用extend.

泛化
會員註冊時可以採用電話和郵件兩種方式。用例「會員註冊」和「電話註冊」、「郵件註冊」之間是泛化關係。本質都是一樣的,都是註冊,而且一樣大。
UML類關係
類
在UML中,我們用分成三欄的長方形表示。第一欄是名稱,第二欄是屬性,第三欄是方法。
繼承
唐老鴨屬於鴨的一種,或者說是鴨的細化劃分,而鴨屬於鳥類,鳥類屬於動物,這裡無論表達成「是」還是屬於,就是這樣一個直觀的關係。用實線一端帶空心三角箭頭表示。箭頭指向父類。
依賴
凡是動物,生存都需要水和空氣,這種必須的需求,我們稱之為依賴關係。用虛線一端帶箭頭表示,箭頭指向依賴物。
聚合、組合
這兩個關係我們放在一起,因為她們看似十分的相似,但是卻有著本質的區別。
很多大雁聚合在一起變成雁群,也可以說雁群里有雁,所以是整體和個體之間的關係,即has-a的關係,此時整體與部分之間是可分離的,他們可以具有各自的生命周期。即雁群可以不存在了,但是孤雁仍然存在。university與student.
一隻鳥由兩個翅膀組合而成,即一隻鳥有兩個翅膀。雖然組合和聚合我們都說「有」什麼,但是這個「有」是不同的,他體現的是一種contains-a的關係,這種關係比聚合更強,也稱為強聚合;他同樣體現整體與部分間的關係,但此時整體與部分是不可分的,整體的生命周期結束也就意味著部分的生命周期結束,比如這隻鳥死了,自然這兩個翅膀也就不存在了。university與department
關聯
企鵝和氣候有關聯. student與course。
實現
介面與類的關係。