《写给C程式设计师的UML实务手册.ppt》由会员分享,可在线阅读,更多相关《写给C程式设计师的UML实务手册.ppt(28页珍藏版)》请在三一文库上搜索。
1、寫給C+程式設計師的UML實務手冊,邱郁惠() UML Blog(http:/),第4章 重要的OO及UML概念,物件 屬性與操作 封裝 類別 一般化關係 結合關係 聚合關係 組合關係 使用案例與參與者,4.1 物件(1/4),候選物件最好同時符合下列兩項條件: 在企業運作過程中,企業人員會使用到的專業事物或概念。 而且,在資訊化時,系統也會用到,或者需要保管。 探問: 在執行這項工作時,你們會用到哪些專業概念? 你們在執行這項工作時,會需要用到哪些資料?,4.1 物件(2/4),五種常見的物件種類,供您參考: 實體物件(physical object) 角色物件(role object) 事
2、件物件(incident object) 互動物件(interaction object) 規格物件(specification object),4.1 物件(3/4),交易樣式,4.1 物件(4/4),類別圖,4.2 屬性與操作(1/5),對於任何一種物件本身,只需要針對下列兩項問題去探尋: 物件需要記錄哪些屬性(attributes)? 物件可以提供哪些操作(operations)?,4.2 屬性與操作(2/5),如下的提問或思考: 某物會記錄什麼資料呢?(探問屬性) 某物可以提供我們哪些資料呢?(探問屬性) 透過某物,可以讓我們查到哪些資料嗎?(探問屬性) 某物可以做什麼用呢?(探問操作
3、) 有了某物之後,我們可以拿它來做什麼事呢?(探問操作),4.2 屬性與操作(3/5),屬性細節的提問或思考: 可以請您(企業人員)用簡單的一、兩句話,解釋某屬性是什麼嗎?(探問屬性定義) 可以請您舉個例子嗎?(判斷屬性的資料型態) 請問某屬性有範圍值嗎?(判斷屬性的資料型態以及欄位大小) 可被接受的數字,最大最小為何?(數字型態) 可被接受的字串,最長最短為何?(字串型態) 預設的項目,有哪幾個?項目異動的頻率?(列舉型態),4.2 屬性與操作(3/5),請問某屬性有初始值嗎?(探問屬性的初始值) 怎樣做才能夠得到某屬性值(attribute value)?(探問屬性值的獲得方法) 請問誰會
4、提供這項屬性值?(鍵入值) 請問可以向哪裡查詢這項屬性值?(查詢值) 請問計算公式為何?(計算值) 請問可有獨特的編碼方式?(流水碼或特定編碼),4.2 屬性與操作(2/5),獲知方法的執行步驟(procedure)、所需或者產出的資料、計算公式,以及企業的特殊限制的提問: 您(企業人員)通常是怎麼執行某操作的呢?可以告訴我,主要的執行步驟嗎? 請告訴我這些執行步驟會需要使用到什麼資料?以其會產出什麼樣的資料? 請告訴我這些執行步驟會需要使用到計算公式嗎? 在執行某操作時,有沒有什麼重要的限制需要注意或遵守的?,4.3 封裝(1/2),對於物件的封裝性,必須掌握下列要點: 已知操作。物件通常僅
5、對其他物件透露自身的操作,彼此之間透過呼叫(call)已知的操作來互動。 封裝屬性。每個物件封裝著屬性值,不透露給其他物件。 封裝方法。每個物件封裝著方法,僅對其他物件透露操作,但不透露其方法。,4.3 封裝(2/2),切記要嚴守下列三項要件: 不得直接提及物件的屬性。 也不得假設物件的執行方法。 僅能夠使用到物件的操作。,4.4 類別(1/2),類別與其物件之間細微的關聯,條列如下: (類別)定義屬性與操作,且所屬(物件)共有這些屬性與操作。 雖然同類(物件)共有屬性,可是每一個(物件)卻獨有屬性值。 因為同類(物件)共有操作和方法,所以它們可以做相同的事情,而且有相同的作法。 (類別)也定
6、義關係(relationship),且所屬(物件)共有這些關係。不過,如同屬性與屬性值的情況,雖然同類(物件)共有關係,可是每一個(物件)卻獨有關係值。,4.4 類別(2/2),基金帳戶類別與物件,4.5 一般化關係(1/4),三個申購類別,4.5 一般化關係(2/4),可以透過檢核下列兩項要件,判斷是否採用一般化關係: 在企業領域的專業概念裡,特殊物件必須是一種(a kind of)一般物件。 多種特殊物件裡,有部分通用的屬性與操作,也有部分獨有的屬性與操作。,4.5 一般化關係(3/4),類別之間的一般化關係,4.5 一般化關係(4/4),從申購交易類別繼承而來的屬性與操作,4.6 結合關
7、係(1/2),檢核下列兩項要件,判斷是否採用結合關係: 在企業領域的專業概念裡,兩種物件之間有一種固定不變且需要保存的靜態關係。 在資訊化時,系統會用到這些靜態關係,而且必須將它們存到資料庫。,4.6 結合關係(2/2),4.7 聚合關係(1/3),檢核下列三項要件,判斷是否採用聚合關係: 在企業領域的專業概念裡,兩種物件之間有一種固定不變且需要保存的靜態關係。(繼承自結合關係的要件) 在資訊化時,系統會用到這些靜態關係,而且必須將它們存到資料庫。(繼承自結合關係的要件) 在企業領域的專業概念裡,兩種物件之間有whole-part的靜態關係。(聚合關係獨有的要件),4.7 聚合關係(2/3),
8、一個Part物件可以連結多個Whole物件,4.7 聚合關係(3/3),聚合關係,4.8 組合關係(1/2),檢核下列四項要件,判斷是否採用組合關係: 在企業領域的專業概念裡,兩種物件之間有一種固定不變且需要保存的靜態關係。(繼承自結合關係的要件) 在資訊化時,系統會用到這些靜態關係,而且必須將它們存到資料庫。(繼承自結合關係的要件) 在企業領域的專業概念裡,兩種物件之間有whole-part的靜態關係。(繼承自聚合關係的要件) part物件只能連結一個whole物件,且whole物件被註銷(destroy)時,part物件必須一塊被註銷。(組合關係獨有的要件),4.8 組合關係(1/2),組合關係,4.9 使用案例與參與者,使用案例圖,Q&A,