【正文】
e p o s i t ( i n a P a y c h e c k : P a y c h e c k , i n i n t o B a n k : B a n k I n f o r m a t i o n ) s u b s y s t e m p r o x y B a n k S y s t e md e r e c td e p o s i t s c h e c k s v i a0 . . 10 . . 1圖 7 . 3 模 擬 協(xié) 作 2. 對數(shù)據(jù)庫模式建模 在對軟件系統(tǒng)進行建模時 , 不僅要定義系統(tǒng)的動態(tài)行為 , 還需要為動態(tài)行為所操作的數(shù)據(jù)指定相應(yīng)的格式 。 傳統(tǒng)的邏輯數(shù)據(jù)庫建模工具 “ 實體-關(guān)系 ( ER) ”圖只針對數(shù)據(jù) , 而 UML的類圖還允許對行為建模 。 在為數(shù)據(jù)庫建模時 , 要遵循的策略包括: ( 1) 在系統(tǒng)中確定的類 , 它的狀態(tài)必須超過其應(yīng)用系統(tǒng)生命周期 。 ( 2) 創(chuàng)建包含這些類的類圖 , 并把它們標記成永久的 (persistent) 。 ( 3) 展開這些類的結(jié)構(gòu)信息 , 即詳細的描述屬性的細節(jié), 并注重關(guān)聯(lián)和構(gòu)造這些類的基數(shù) 。 ( 4) 觀察系統(tǒng)中的公共模式 ( 如循環(huán)關(guān)聯(lián) 、 一對一關(guān)聯(lián)等 ) , 它們往往使物理數(shù)據(jù)庫設(shè)計復(fù)雜化 。 如果必要 ,系統(tǒng)分析師需要創(chuàng)建簡化邏輯結(jié)構(gòu)的中間抽象 。 ( 5) 考慮這些類的行為 , 擴充那些對于數(shù)據(jù)存儲和數(shù)據(jù)完整性很重要的操作 。 ( 6) 如果可能 , 用工具來把邏輯設(shè)計換成物理設(shè)計 。 實例分析 ?對象代表一個單獨的、可確認的物體、單元或?qū)嶓w,它可以是具體的也可以是抽象的,在問題領(lǐng)域里有確切定義的角色。換句話說,對象是邊界非常清楚的任何事物。 ? 狀態(tài)(屬性):對象的狀態(tài)包括對象的所有屬性(通常是靜態(tài)的)和這些屬性的當前值(通常是動態(tài)的) ? 行為(方法,事件):沒有一個對象是孤立存在的,對象可以被操作,也可以操作別的對象。而行為就是一個對象根據(jù)它的狀態(tài)改變和消息傳送所采取的行動和所做出的反應(yīng) ? 標識(名字):為了將一個對象與其它所有對象區(qū)分開來,我們通常會給它起一個“標識” 對象圖 ?在 UML中,對象圖( Object Diagram) 是表示在某一時刻一組對象以及它們之間的關(guān)系的圖。 ?對象圖可以被看作是類圖在系統(tǒng)某一時刻的實例。 ?在圖形上,對象圖由節(jié)點以及連接這些節(jié)點的連線組成,節(jié)點可以是對象也可以是類,連線表示對象間的關(guān)系。 對象圖的用途 ◆ 捕獲實例和連接 ◆ 在分析和設(shè)計階段創(chuàng)建 ◆ 捕獲交互的靜態(tài)部分 ◆ 舉例說明數(shù)據(jù) /對象結(jié)構(gòu) ◆ 詳細描述瞬態(tài)圖 ◆ 由分析人員、設(shè)計人員和代碼實現(xiàn)人員開發(fā) 實例 1 n a m e = “ C o m p u t e r S c i e n c e ”c s : D e p a r t m e n tn a m e = “ E l e c t r i c a l E n g i n e e r i n g ”e e : D e p a r t m e n tn a m e = “ C h e m i c a l E n g i n e e r i n g ”c e 2 : D e p a r t m e n tn a m e = “ C i v i l E n g i n e e r i n g ”c e 1 : D e p a r t m e n tn a m e = “ M e c h a n i c a l