2011年10月24日

1.4.8-聚合關係

寫給SA的UML/MDA實務手冊
----------
第1章-Why系統分析師需要學習UML
1.4-重要的OO及UML概念

1.4.8-聚合關係

聚合關係(Aggregation)是一種特殊的結合關係,所以它繼承了結合關係的特質,而且還獨有「整體-部分」(Whole-Part)的特質。簡言之,聚合關係兩端的物件,需具有Whole-Part的關係。系統分析師可以透過檢核下列三項要件,判斷是否採用聚合關係:

1.在企業領域的專業概念裡,兩種物件之間有一種固定不變且需要保存的靜態關係。(繼承自結合關係的要件)

2.在資訊化時,系統會用到這些靜態關係,而且必須將它們存到資料庫。(繼承自結合關係的要件)

3.在企業領域的專業概念裡,兩種物件之間有Whole-Part的靜態關係。(聚合關係獨有的要件)

在我們的基金模擬個案中,有「基金看台」的概念。每一個基金看台可以設定多檔自選基金,如此一來,客戶就可以同時觀看並比較多檔基金的報酬率。請看圖1-9,假設我在彰化銀行、新光銀行、永豐銀行都有申購基金,所以我設定了三個基金看台,這樣就可以同時間觀看這三個基金帳戶裡頭的基金資料。由於,三個基金帳戶裡頭都有申購過安本亞太基金,所以這檔基金會同時出現在三個基金看台中。


圖1-9: 一個Part物件可以連結多個Whole物件

請看圖1-10,針對基金看台與自選基金之間的聚合關係,系統分析師做了如下的思考:

1.基金看台與自選基金之間的關係,固定不變,且在該基金看台被整個刪除,或者某自選基金從該基金看台除名之前,兩者之間的關係需要被永久保存下來。(符合上述要件1)

2.由於,基金看台與自選基金之間的關係需要被保存下來,所以會被存到資料庫裡。(符合上述要件2)

3.基金看台聚集了多檔自選基金。自選基金是基金看台裡很重要的一項元素,而且可以說,如果沒有自選基金,基金看台幾乎也就失去了存在價值。所以,兩者之間有著Whole-Part的特質,基金看台是Whole,自選基金是Part。(符合上述要件3)

4.每一個基金看台底下,可以有零到多檔的自選基金。所以,在自選基金端標示(*),代表一個基金看台物件可以連結零到多個自選基金物件。

5.每一檔自選基金,可以設定在多個基金看台底下。所以,在基金看台端標示(*),代表一個自選基金物件可以連結零到多個基金看台物件。


圖1-10: 聚合關係

沒有留言: