第七章面向?qū)ο笤O(shè)計(jì)_第1頁(yè)
第七章面向?qū)ο笤O(shè)計(jì)_第2頁(yè)
第七章面向?qū)ο笤O(shè)計(jì)_第3頁(yè)
第七章面向?qū)ο笤O(shè)計(jì)_第4頁(yè)
第七章面向?qū)ο笤O(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩95頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、軟軟件工程件工程中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院OOD方法及示例方法及示例七、面向?qū)ο笤O(shè)計(jì)七、面向?qū)ο笤O(shè)計(jì)Logo第第7 7章章 面向?qū)ο笤O(shè)計(jì)面向?qū)ο笤O(shè)計(jì)n軟件設(shè)計(jì)概述軟件設(shè)計(jì)概述n面向?qū)ο笤O(shè)計(jì)建模面向?qū)ο笤O(shè)計(jì)建模n系統(tǒng)架構(gòu)設(shè)計(jì)系統(tǒng)架構(gòu)設(shè)計(jì)n系統(tǒng)元素設(shè)計(jì)系統(tǒng)元素設(shè)計(jì)n面向?qū)ο笤O(shè)計(jì)示例面向?qū)ο笤O(shè)計(jì)示例中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.1 7.1 軟件設(shè)計(jì)概述軟件設(shè)計(jì)概述n“怎么做怎么做”的問(wèn)題,最富活力和創(chuàng)造力的階段的問(wèn)題,最富活力和創(chuàng)造力的階段n兩種主流設(shè)計(jì)方法兩種主流設(shè)計(jì)方法n結(jié)構(gòu)化程序設(shè)計(jì)SDn面向?qū)ο蟪绦蛟O(shè)計(jì)OOD中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo

2、典型的軟件生存周期典型的軟件生存周期典型的軟件生存周期需求分析軟件分析軟件設(shè)計(jì)編碼(測(cè)試)軟件測(cè)試運(yùn)行維護(hù)計(jì)劃開(kāi)發(fā)運(yùn)行(可行性研究和)計(jì)劃詳細(xì)設(shè)計(jì)(模塊設(shè)計(jì))系統(tǒng)分析總體設(shè)計(jì)(概要設(shè)計(jì))中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo回憶:結(jié)構(gòu)化設(shè)計(jì)回憶:結(jié)構(gòu)化設(shè)計(jì)從從SASA模型導(dǎo)出模型導(dǎo)出SDSD模型模型PSPEC數(shù)據(jù)對(duì)象描述CFDDFDE-RDDCSPEC過(guò)程設(shè)計(jì) 接口設(shè)計(jì)體系結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)設(shè)計(jì)中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logon什么是模塊?什么是模塊?模塊是一個(gè)有明確定義的輸入、輸出和特性的模塊是一個(gè)有明確定義的輸入、輸出和特性的程序?qū)嶓w程序?qū)嶓w。C語(yǔ)言中的語(yǔ)言中的函數(shù)函數(shù)

3、、Java中的中的類(lèi)類(lèi)都是模塊都是模塊n什么是模塊化?什么是模塊化?把大型軟件把大型軟件劃分為劃分為一個(gè)個(gè)一個(gè)個(gè)較小的較小的、相對(duì)獨(dú)立但又互相關(guān)聯(lián)相對(duì)獨(dú)立但又互相關(guān)聯(lián)的的模塊。模塊。分解分解和和模塊的獨(dú)立性模塊的獨(dú)立性,是重點(diǎn),是重點(diǎn)n什么是模塊的什么是模塊的獨(dú)立性獨(dú)立性?軟件系統(tǒng)中每個(gè)模塊軟件系統(tǒng)中每個(gè)模塊只涉及軟件要求的具體的子功能只涉及軟件要求的具體的子功能, 而和而和軟件系統(tǒng)中其它的模塊的軟件系統(tǒng)中其它的模塊的接口是簡(jiǎn)單的接口是簡(jiǎn)單的。n如何度量模塊的獨(dú)立性?如何度量模塊的獨(dú)立性?模塊的模塊的內(nèi)聚內(nèi)聚和和耦合耦合掌握掌握內(nèi)聚和耦合的應(yīng)用原則內(nèi)聚和耦合的應(yīng)用原則7.1 7.1 軟件設(shè)計(jì)概

4、述軟件設(shè)計(jì)概述中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo什么是模塊什么是模塊(Module)“模塊模塊”,又稱(chēng),又稱(chēng)“組件組件”。它一般具有如下三個(gè)基本屬性。它一般具有如下三個(gè)基本屬性:n功能功能:描述該模塊實(shí)現(xiàn)什么功能:描述該模塊實(shí)現(xiàn)什么功能n邏輯邏輯:描述模塊內(nèi)部怎么做:描述模塊內(nèi)部怎么做n狀態(tài)狀態(tài):該模塊使用時(shí)的環(huán)境和條件:該模塊使用時(shí)的環(huán)境和條件7.1 7.1 軟件設(shè)計(jì)概述軟件設(shè)計(jì)概述中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo怎樣描述一個(gè)模塊(結(jié)構(gòu)化為例)怎樣描述一個(gè)模塊(結(jié)構(gòu)化為例)n在在描述一個(gè)模塊時(shí),還必須按模塊的描述一個(gè)模塊時(shí),還必須按模塊的外部特性外部特性與與內(nèi)部

5、特內(nèi)部特性性分別描述分別描述n模塊的模塊的外部特性外部特性n 模塊的模塊的模塊名模塊名、參數(shù)表參數(shù)表、其中的輸入?yún)?shù)和輸出參數(shù)、其中的輸入?yún)?shù)和輸出參數(shù),以及給程序以至整個(gè)系統(tǒng)造成的影響,以及給程序以至整個(gè)系統(tǒng)造成的影響n模塊的模塊的內(nèi)部特性內(nèi)部特性n 完成其功能的完成其功能的程序代碼程序代碼和僅供該模塊內(nèi)部使用的和僅供該模塊內(nèi)部使用的數(shù)據(jù)數(shù)據(jù)7.1 7.1 軟件設(shè)計(jì)概述軟件設(shè)計(jì)概述中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo什么是模塊獨(dú)立性?怎樣度量?什么是模塊獨(dú)立性?怎樣度量?n 模塊獨(dú)立性模塊獨(dú)立性,是是指軟件系統(tǒng)中每個(gè)模塊只涉及軟件要求指軟件系統(tǒng)中每個(gè)模塊只涉及軟件要求的的具體的子

6、功能具體的子功能, 而和軟件系統(tǒng)中其它的模塊的而和軟件系統(tǒng)中其它的模塊的接口是接口是簡(jiǎn)單簡(jiǎn)單的的。n 例如例如, 若一個(gè)模塊只具有單一的功能且與其它模塊沒(méi)有若一個(gè)模塊只具有單一的功能且與其它模塊沒(méi)有太多的聯(lián)系太多的聯(lián)系, 則稱(chēng)此模塊具有則稱(chēng)此模塊具有模塊獨(dú)立性模塊獨(dú)立性n 一般采用兩個(gè)準(zhǔn)則度量模塊獨(dú)立性。即模塊間一般采用兩個(gè)準(zhǔn)則度量模塊獨(dú)立性。即模塊間耦合耦合和模和模塊塊內(nèi)聚內(nèi)聚7.1 7.1 軟件設(shè)計(jì)概述軟件設(shè)計(jì)概述中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logon衡量標(biāo)準(zhǔn)衡量標(biāo)準(zhǔn)n模塊模塊本身本身的內(nèi)聚的內(nèi)聚o模塊內(nèi)部?jī)?nèi)部各個(gè)成分之間的聯(lián)系o又稱(chēng)塊內(nèi)聯(lián)系或模塊強(qiáng)度n模塊模塊間間的耦合的耦合

7、o一個(gè)模塊與其他模塊之間之間的聯(lián)系o又稱(chēng)塊間聯(lián)系n模塊獨(dú)立性越高,塊內(nèi)聯(lián)系越強(qiáng),塊間聯(lián)系越弱模塊獨(dú)立性越高,塊內(nèi)聯(lián)系越強(qiáng),塊間聯(lián)系越弱。n模塊模塊獨(dú)立性比較強(qiáng)的模塊應(yīng)是獨(dú)立性比較強(qiáng)的模塊應(yīng)是高內(nèi)聚低耦合高內(nèi)聚低耦合的模塊。的模塊。7.1 7.1 軟件設(shè)計(jì)概述軟件設(shè)計(jì)概述中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo c n.偶然性內(nèi)聚偶然性內(nèi)聚 功能無(wú)關(guān)功能無(wú)關(guān)n.邏輯性內(nèi)聚邏輯性內(nèi)聚 邏輯功能相似邏輯功能相似n.時(shí)間性內(nèi)聚時(shí)間性內(nèi)聚 同一時(shí)間執(zhí)行同一時(shí)間執(zhí)行n.過(guò)程性內(nèi)聚過(guò)程性內(nèi)聚 一組任務(wù)特定次序執(zhí)行一組任務(wù)特定次序執(zhí)行n.通訊性內(nèi)聚通訊性內(nèi)聚 同一輸入或同一輸出同一輸入或同一輸出n.順

8、序性內(nèi)聚順序性內(nèi)聚 順序執(zhí)行順序執(zhí)行n.功能性內(nèi)聚功能性內(nèi)聚 單一功能單一功能模塊獨(dú)立性模塊獨(dú)立性- -內(nèi)聚內(nèi)聚中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo低內(nèi)聚低內(nèi)聚n偶然性偶然性內(nèi)聚內(nèi)聚n塊內(nèi)各組成部分在功能上是互不相關(guān)的。塊內(nèi)各組成部分在功能上是互不相關(guān)的。n模塊內(nèi)部成分的組合模塊內(nèi)部成分的組合純屬偶然純屬偶然。n時(shí)間性內(nèi)聚時(shí)間性內(nèi)聚n模塊所包含的成分,是由模塊所包含的成分,是由相同的執(zhí)行時(shí)間相同的執(zhí)行時(shí)間將他們將他們連接到一起。連接到一起。n要求在同一時(shí)間內(nèi)執(zhí)行。要求在同一時(shí)間內(nèi)執(zhí)行。模塊獨(dú)立性模塊獨(dú)立性- -內(nèi)聚內(nèi)聚中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logon邏輯性內(nèi)聚邏輯

9、性內(nèi)聚n由若干個(gè)邏輯功能相似的成分組成。n執(zhí)行時(shí)須從模塊外引入判斷量,增大塊間耦合。讀入分?jǐn)?shù)讀入分?jǐn)?shù)平均平均/最高最高?計(jì)算平均分計(jì)算平均分計(jì)算最高分計(jì)算最高分輸出結(jié)果輸出結(jié)果模塊獨(dú)立性模塊獨(dú)立性- -內(nèi)聚內(nèi)聚中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo中內(nèi)聚中內(nèi)聚n過(guò)程過(guò)程性內(nèi)性內(nèi)聚聚模塊模塊中包含的一組任務(wù)必須按照某一個(gè)中包含的一組任務(wù)必須按照某一個(gè)特定的次序特定的次序執(zhí)行。執(zhí)行。建立方程組系數(shù)矩陣建立方程組系數(shù)矩陣高斯消去法高斯消去法回回 代代模塊獨(dú)立性模塊獨(dú)立性- -內(nèi)聚內(nèi)聚中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logon通信性內(nèi)聚通信性內(nèi)聚n模塊內(nèi)部的各成分使用模塊內(nèi)部的各成分

10、使用同一種數(shù)據(jù)輸入同一種數(shù)據(jù)輸入,或產(chǎn)生,或產(chǎn)生同一同一個(gè)數(shù)據(jù)輸出個(gè)數(shù)據(jù)輸出。n他們靠他們靠公用數(shù)據(jù)公用數(shù)據(jù)連接在一起。連接在一起。開(kāi)領(lǐng)書(shū)單登記售書(shū)發(fā)票領(lǐng)書(shū)單售書(shū)登記表刪除修改文 件模塊獨(dú)立性模塊獨(dú)立性- -內(nèi)聚內(nèi)聚中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo高內(nèi)聚高內(nèi)聚n順序順序性內(nèi)聚性內(nèi)聚/信息內(nèi)聚信息內(nèi)聚n各個(gè)功能都在各個(gè)功能都在同一數(shù)據(jù)結(jié)構(gòu)同一數(shù)據(jù)結(jié)構(gòu)上操作,每項(xiàng)功能有唯一的上操作,每項(xiàng)功能有唯一的入口點(diǎn)。如對(duì)符號(hào)表有入口點(diǎn)。如對(duì)符號(hào)表有查找、登錄、刪除、修改查找、登錄、刪除、修改等操作等操作,把查找、登錄、刪除、修改等功能設(shè)計(jì)在一個(gè)模塊中,把查找、登錄、刪除、修改等功能設(shè)計(jì)在一個(gè)

11、模塊中,以實(shí)現(xiàn)信息的隱蔽。,以實(shí)現(xiàn)信息的隱蔽。n功能性內(nèi)聚功能性內(nèi)聚n模塊中的所有的成分結(jié)合在一起,用于完成一個(gè)單一的模塊中的所有的成分結(jié)合在一起,用于完成一個(gè)單一的功能。功能。n塊內(nèi)聯(lián)系塊內(nèi)聯(lián)系最強(qiáng)的最強(qiáng)的一類(lèi)模塊。一類(lèi)模塊。模塊獨(dú)立性模塊獨(dú)立性- -內(nèi)聚內(nèi)聚中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo使用內(nèi)聚的使用內(nèi)聚的原則原則n功能性內(nèi)聚最強(qiáng)功能性內(nèi)聚最強(qiáng),與其他模塊聯(lián)系少,最優(yōu),與其他模塊聯(lián)系少,最優(yōu)n其他的其他的高內(nèi)聚和中內(nèi)聚模塊高內(nèi)聚和中內(nèi)聚模塊也可以使用也可以使用n低內(nèi)聚模塊盡量避免低內(nèi)聚模塊盡量避免使用使用模塊獨(dú)立性模塊獨(dú)立性- -內(nèi)聚內(nèi)聚中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)

12、學(xué)院院Logo模塊獨(dú)立性模塊獨(dú)立性- -耦合耦合1.非直接耦合無(wú)信息傳遞非直接耦合無(wú)信息傳遞2.數(shù)據(jù)耦合簡(jiǎn)單變量數(shù)據(jù)耦合簡(jiǎn)單變量3.特征耦合數(shù)據(jù)結(jié)構(gòu)特征耦合數(shù)據(jù)結(jié)構(gòu)4.控制耦合控制耦合 開(kāi)關(guān)值或標(biāo)志量開(kāi)關(guān)值或標(biāo)志量5.外部耦合外部耦合 訪問(wèn)相同全局變量訪問(wèn)相同全局變量6.公共耦合公共耦合 訪問(wèn)相同數(shù)據(jù)結(jié)構(gòu)訪問(wèn)相同數(shù)據(jù)結(jié)構(gòu)7.內(nèi)容耦合內(nèi)容耦合 調(diào)用其它模塊數(shù)據(jù)或轉(zhuǎn)調(diào)用其它模塊數(shù)據(jù)或轉(zhuǎn)到到 其它其它模塊模塊中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo非直接耦合非直接耦合(Nondirect Coupling) 兩個(gè)模塊之間沒(méi)有直接關(guān)系,它們兩個(gè)模塊之間沒(méi)有直接關(guān)系,它們之間之間的聯(lián)系完全是通過(guò)

13、主模塊的聯(lián)系完全是通過(guò)主模塊的控制的控制和和調(diào)用調(diào)用來(lái)實(shí)現(xiàn)的來(lái)實(shí)現(xiàn)的。非。非直接耦合直接耦合的的模塊模塊獨(dú)立性獨(dú)立性最強(qiáng)最強(qiáng)。數(shù)據(jù)耦合數(shù)據(jù)耦合 (Data Coupling)一個(gè)模塊訪問(wèn)另一個(gè)模塊時(shí),彼此之間是通過(guò)一個(gè)模塊訪問(wèn)另一個(gè)模塊時(shí),彼此之間是通過(guò)簡(jiǎn)單數(shù)據(jù)參數(shù)簡(jiǎn)單數(shù)據(jù)參數(shù) (不不是控制參數(shù)、公共數(shù)據(jù)結(jié)構(gòu)或外部變量是控制參數(shù)、公共數(shù)據(jù)結(jié)構(gòu)或外部變量) 來(lái)交換輸入、輸出信來(lái)交換輸入、輸出信息的。息的。特征特征耦合耦合 (Stamp Coupling)一組模塊通過(guò)一組模塊通過(guò)參數(shù)表傳遞記錄信息參數(shù)表傳遞記錄信息,就是特征(標(biāo)記)耦合。,就是特征(標(biāo)記)耦合。這個(gè)記錄是某一數(shù)據(jù)結(jié)構(gòu)的子結(jié)構(gòu),而不

14、是簡(jiǎn)單變量。這個(gè)記錄是某一數(shù)據(jù)結(jié)構(gòu)的子結(jié)構(gòu),而不是簡(jiǎn)單變量。模塊模塊獨(dú)立性獨(dú)立性- -耦合耦合中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo模塊模塊獨(dú)立性獨(dú)立性- -耦合耦合中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院數(shù)據(jù)耦合數(shù)據(jù)耦合非非直接耦合直接耦合模塊模塊2模塊模塊1模塊模塊4模塊模塊3特征耦合特征耦合(參數(shù)參數(shù)表傳遞數(shù)據(jù)結(jié)表傳遞數(shù)據(jù)結(jié)構(gòu)構(gòu))模塊之間沒(méi)模塊之間沒(méi)有信息傳遞有信息傳遞調(diào)用時(shí)通過(guò)調(diào)用時(shí)通過(guò)參數(shù)表交換參數(shù)表交換簡(jiǎn)單變量簡(jiǎn)單變量調(diào)用時(shí)通過(guò)調(diào)用時(shí)通過(guò)參數(shù)表交換參數(shù)表交換數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)Logo控制耦合控制耦合 (Control Coupling) 如果一個(gè)如果一個(gè)模塊模塊通過(guò)通過(guò)傳送

15、傳送開(kāi)關(guān)開(kāi)關(guān)、標(biāo)志、標(biāo)志、名字名字等控制信息,等控制信息,明顯地控制明顯地控制選擇選擇另一模塊另一模塊的功能的功能,就是,就是控制控制耦合。耦合。讀入分?jǐn)?shù)讀入分?jǐn)?shù)平均平均/最高?最高?計(jì)算平均分計(jì)算平均分計(jì)算最高分計(jì)算最高分輸出結(jié)果輸出結(jié)果控制控制信號(hào)信號(hào)模塊模塊獨(dú)立性獨(dú)立性- -耦合耦合中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo外部耦合(外部耦合(External Coupling)一組模塊都一組模塊都訪問(wèn)同一全局簡(jiǎn)單變量訪問(wèn)同一全局簡(jiǎn)單變量而不是同一全局?jǐn)?shù)據(jù)結(jié)而不是同一全局?jǐn)?shù)據(jù)結(jié)構(gòu),而且不是通過(guò)參數(shù)表傳遞該全局變量的信息,則稱(chēng)之構(gòu),而且不是通過(guò)參數(shù)表傳遞該全局變量的信息,則稱(chēng)之為外部

16、耦合。為外部耦合。公共耦合(公共耦合(Common Coupling)若一組模塊都訪問(wèn)若一組模塊都訪問(wèn)同一個(gè)公共數(shù)據(jù)環(huán)境同一個(gè)公共數(shù)據(jù)環(huán)境,則它們之間的耦,則它們之間的耦合就稱(chēng)為公共耦合。公共的數(shù)據(jù)環(huán)境可以是全局?jǐn)?shù)據(jù)結(jié)構(gòu)合就稱(chēng)為公共耦合。公共的數(shù)據(jù)環(huán)境可以是全局?jǐn)?shù)據(jù)結(jié)構(gòu)、共享的通信區(qū)、內(nèi)存的公共覆蓋區(qū)等。、共享的通信區(qū)、內(nèi)存的公共覆蓋區(qū)等。模塊模塊獨(dú)立性獨(dú)立性- -耦合耦合中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院公共耦合圖示公共耦合圖示模塊模塊獨(dú)立性獨(dú)立性- -耦合耦合Logo內(nèi)容耦合內(nèi)容耦合 (Content Coupling(Content

17、Coupling) )如果如果發(fā)生下列情形,兩個(gè)模塊之間就發(fā)生了內(nèi)容耦合發(fā)生下列情形,兩個(gè)模塊之間就發(fā)生了內(nèi)容耦合 ( (1) 1) 一個(gè)模塊直接訪問(wèn)另一個(gè)模塊的一個(gè)模塊直接訪問(wèn)另一個(gè)模塊的內(nèi)部數(shù)據(jù)內(nèi)部數(shù)據(jù); ; ( (2) 2) 一個(gè)模塊不通過(guò)正常入口一個(gè)模塊不通過(guò)正常入口轉(zhuǎn)到另一模塊內(nèi)部轉(zhuǎn)到另一模塊內(nèi)部; ; ( (3) 3) 兩個(gè)模塊兩個(gè)模塊有一部分程序代碼重迭有一部分程序代碼重迭( (只可能出現(xiàn)在匯編只可能出現(xiàn)在匯編語(yǔ)言中語(yǔ)言中);); ( (4) 4) 一個(gè)模塊有多個(gè)入口一個(gè)模塊有多個(gè)入口。模塊模塊獨(dú)立性獨(dú)立性- -耦合耦合中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo使用耦合的原

18、則使用耦合的原則 對(duì)對(duì)“耦合耦合”的應(yīng)用原則:的應(yīng)用原則:不在于禁止耦合,而不在于禁止耦合,而是充分了解各種耦合的特點(diǎn)與不足,并在需要時(shí)是充分了解各種耦合的特點(diǎn)與不足,并在需要時(shí)使用它們并能預(yù)見(jiàn)到可能產(chǎn)生的問(wèn)題使用它們并能預(yù)見(jiàn)到可能產(chǎn)生的問(wèn)題。 耦合是影響軟件復(fù)雜程度的一個(gè)重要因素。應(yīng)耦合是影響軟件復(fù)雜程度的一個(gè)重要因素。應(yīng)該采取下述設(shè)計(jì)原則:該采取下述設(shè)計(jì)原則: 盡量使用數(shù)據(jù)耦合,少用控制耦合,限制公共盡量使用數(shù)據(jù)耦合,少用控制耦合,限制公共環(huán)境耦合的范圍,完全不用內(nèi)容耦合環(huán)境耦合的范圍,完全不用內(nèi)容耦合。中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院模塊模塊獨(dú)立性獨(dú)立性- -耦合耦合Logo7.

19、2 7.2 面向?qū)ο笤O(shè)計(jì)建模面向?qū)ο笤O(shè)計(jì)建模n面向?qū)ο笤O(shè)計(jì)面向?qū)ο笤O(shè)計(jì)模型組成?(總結(jié))模型組成?(總結(jié))n系統(tǒng)架構(gòu)層:總體結(jié)構(gòu)系統(tǒng)架構(gòu)層:總體結(jié)構(gòu)n類(lèi)和對(duì)象層:類(lèi)層次關(guān)系類(lèi)和對(duì)象層:類(lèi)層次關(guān)系及對(duì)象設(shè)計(jì)及對(duì)象設(shè)計(jì)表示表示n消息層:消息模型,內(nèi)外部接口消息層:消息模型,內(nèi)外部接口n責(zé)任層責(zé)任層 :屬性:屬性/數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)/算法算法回憶結(jié)構(gòu)化設(shè)計(jì)回憶結(jié)構(gòu)化設(shè)計(jì)的內(nèi)容的內(nèi)容n面向?qū)ο笤O(shè)計(jì)的任務(wù)面向?qū)ο笤O(shè)計(jì)的任務(wù)n系統(tǒng)架構(gòu)設(shè)計(jì)系統(tǒng)架構(gòu)設(shè)計(jì)n系統(tǒng)元素設(shè)計(jì):子系統(tǒng)系統(tǒng)元素設(shè)計(jì):子系統(tǒng)/包包/類(lèi)和類(lèi)和對(duì)象對(duì)象回憶結(jié)構(gòu)化設(shè)計(jì)的任務(wù):回憶結(jié)構(gòu)化設(shè)計(jì)的任務(wù): 概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)中中國(guó)國(guó)石油

20、大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院LogoOOAOOA模型轉(zhuǎn)換到模型轉(zhuǎn)換到OODOOD模型模型屬性、操作、協(xié)作者對(duì)象-行為模型對(duì)象-關(guān)系模型類(lèi)/對(duì)象模型用例模型系統(tǒng)架構(gòu)設(shè)計(jì)類(lèi)及對(duì)象設(shè)計(jì)消息設(shè)計(jì)責(zé)任設(shè)計(jì)中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院面向?qū)ο笤O(shè)計(jì)模型組成?(總結(jié))面向?qū)ο笤O(shè)計(jì)模型組成?(總結(jié))Logo7.3 7.3 系統(tǒng)架構(gòu)設(shè)計(jì)系統(tǒng)架構(gòu)設(shè)計(jì)n系統(tǒng)高層結(jié)構(gòu)設(shè)計(jì)系統(tǒng)高層結(jié)構(gòu)設(shè)計(jì)n確定設(shè)計(jì)元素確定設(shè)計(jì)元素n任務(wù)管理策略任務(wù)管理策略n分布式實(shí)現(xiàn)機(jī)制分布式實(shí)現(xiàn)機(jī)制n數(shù)據(jù)存儲(chǔ)設(shè)計(jì)數(shù)據(jù)存儲(chǔ)設(shè)計(jì)n人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)系統(tǒng)架構(gòu)設(shè)計(jì)包括哪些內(nèi)容?系統(tǒng)架構(gòu)設(shè)計(jì)包括哪些內(nèi)容?中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院

21、院Logo.1系統(tǒng)系統(tǒng)高層結(jié)構(gòu)設(shè)計(jì)高層結(jié)構(gòu)設(shè)計(jì) 系統(tǒng)高層結(jié)構(gòu)設(shè)計(jì),為后續(xù)設(shè)計(jì)提供一個(gè)公共的基礎(chǔ)框架,系統(tǒng)高層結(jié)構(gòu)設(shè)計(jì),為后續(xù)設(shè)計(jì)提供一個(gè)公共的基礎(chǔ)框架,用以承載逐步演進(jìn)和累加的設(shè)計(jì)內(nèi)容。用以承載逐步演進(jìn)和累加的設(shè)計(jì)內(nèi)容。n應(yīng)用應(yīng)用架構(gòu)模式架構(gòu)模式 n層次架構(gòu)(Layers)n模型-視圖-控制架構(gòu)(Model-View-Control)n管道與過(guò)濾器架構(gòu)(Pipes and Filters)n黑板架構(gòu)(Blackboard)n層次架構(gòu)層次架構(gòu): n應(yīng)用子系統(tǒng)應(yīng)用子系統(tǒng):面向用戶,應(yīng)用程序特有的服務(wù)n業(yè)務(wù)專(zhuān)用層業(yè)務(wù)專(zhuān)用層:業(yè)務(wù)專(zhuān)用構(gòu)件n中間件層中間件層:各種復(fù)用構(gòu)件,GUI圖形界面

22、構(gòu)建器,與數(shù)據(jù)庫(kù)管理系統(tǒng)的接口,OLE構(gòu)件n系統(tǒng)軟件層系統(tǒng)軟件層:操作系統(tǒng)、數(shù)據(jù)庫(kù)、與硬件的接口 越向下越接近于底層中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo.1系統(tǒng)系統(tǒng)高層結(jié)構(gòu)設(shè)計(jì)高層結(jié)構(gòu)設(shè)計(jì) n層次層次架構(gòu)架構(gòu): 層層 次次功功 能能特殊特殊一般一般應(yīng)用子系統(tǒng)層應(yīng)用子系統(tǒng)層組成所開(kāi)發(fā)應(yīng)用的獨(dú)特應(yīng)用子系統(tǒng)業(yè)務(wù)專(zhuān)用層業(yè)務(wù)專(zhuān)用層該應(yīng)用所屬業(yè)務(wù)類(lèi)型專(zhuān)用的一些可復(fù)用子系統(tǒng)中間件層中間件層提供實(shí)用程序的子系統(tǒng),和為異構(gòu)環(huán)境中分布式對(duì)象計(jì)算提供獨(dú)立于平臺(tái)的服務(wù)等,GUI/OLE/ADO系統(tǒng)軟件層系統(tǒng)軟件層構(gòu)成實(shí)際基礎(chǔ)設(shè)施的軟件,如操作系統(tǒng)、特定硬件的接口、設(shè)備驅(qū)動(dòng)程序等中中國(guó)國(guó)石油

23、大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.2 7.3.2 確定確定設(shè)計(jì)元素設(shè)計(jì)元素 由分析模型,分析現(xiàn)有分析類(lèi),確定設(shè)計(jì)模型元素由分析模型,分析現(xiàn)有分析類(lèi),確定設(shè)計(jì)模型元素n映射映射分析類(lèi)到設(shè)計(jì)元素分析類(lèi)到設(shè)計(jì)元素 n一個(gè)分析類(lèi)可以映射為一個(gè)設(shè)計(jì)類(lèi)或多個(gè)設(shè)計(jì)類(lèi)的組合,也可以將其映射為子系統(tǒng)接口 n三種分析類(lèi)直接映射為設(shè)計(jì)類(lèi)n分析類(lèi)復(fù)雜,映射為子系統(tǒng)的接口,子系統(tǒng)的功能代替某個(gè)分析類(lèi)的功能中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.2 7.3.2 確定確定設(shè)計(jì)元素設(shè)計(jì)元素 由分析模型,分析現(xiàn)有分析類(lèi),確定設(shè)計(jì)模型元素由分析模型,分析現(xiàn)有分析類(lèi),確定設(shè)計(jì)模型元素n確定確定子系統(tǒng)子系統(tǒng)

24、 n劃分成幾個(gè)子系統(tǒng)需根據(jù)實(shí)際情況來(lái)確定n子系統(tǒng)實(shí)際上是一種特殊的包,具有統(tǒng)一的接口n確定子系統(tǒng)的一些指導(dǎo)性參考原則 n定義子系統(tǒng)接口定義子系統(tǒng)接口 n為子系統(tǒng)確定一個(gè)備選接口集 n尋找接口之間的相似點(diǎn) n定義接口依賴(lài)關(guān)系 n將接口映射到子系統(tǒng) n定義接口所指定的行為中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.3 7.3.3 任務(wù)管理任務(wù)管理策略策略 實(shí)現(xiàn)對(duì)實(shí)現(xiàn)對(duì)多用戶、多任務(wù)的并行處理多用戶、多任務(wù)的并行處理支持支持n三種解決方案三種解決方案n多處理器多處理器方案-將并發(fā)子系統(tǒng)分配到不同的處理器n操作系統(tǒng)操作系統(tǒng)方案-將并發(fā)子系統(tǒng)分配到相同的處理器并由操作系統(tǒng)提供同步控制n應(yīng)用程

25、序應(yīng)用程序方案-應(yīng)用軟件負(fù)責(zé)在適當(dāng)?shù)臅r(shí)間從一個(gè)代碼分支切換到另一個(gè)代碼分支n引進(jìn)任務(wù)管理部件引進(jìn)任務(wù)管理部件 微型的任務(wù)管理器,考慮的是任務(wù)怎么被激活的。 有些任務(wù)是由事件激活的,有些是由時(shí)間驅(qū)動(dòng)的 舉例:計(jì)數(shù)器中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.3 7.3.3 任務(wù)管理任務(wù)管理策略策略 實(shí)現(xiàn)對(duì)實(shí)現(xiàn)對(duì)多用戶、多任務(wù)的并行處理多用戶、多任務(wù)的并行處理支持支持n基于基于進(jìn)程和線程的控制進(jìn)程和線程的控制 n進(jìn)程和線程建模n確定進(jìn)程的生命周期n在進(jìn)程間分布模型元素通過(guò)創(chuàng)建進(jìn)程和線程,為多任務(wù)提供可獨(dú)占使用的內(nèi)存空間以及其他資源。為每一個(gè)線程分配需要執(zhí)行的動(dòng)作流程。中中國(guó)國(guó)石油大石油

26、大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.4 7.3.4 分布式分布式實(shí)現(xiàn)機(jī)制實(shí)現(xiàn)機(jī)制應(yīng)用程序的不同部件被安裝在多個(gè)通過(guò)網(wǎng)絡(luò)連接的計(jì)算機(jī)上應(yīng)用程序的不同部件被安裝在多個(gè)通過(guò)網(wǎng)絡(luò)連接的計(jì)算機(jī)上,系統(tǒng)運(yùn)行時(shí)不同計(jì)算機(jī)相互協(xié)作,提供應(yīng)用服務(wù)。,系統(tǒng)運(yùn)行時(shí)不同計(jì)算機(jī)相互協(xié)作,提供應(yīng)用服務(wù)。n確定確定網(wǎng)絡(luò)拓?fù)渑渲镁W(wǎng)絡(luò)拓?fù)渑渲胣將設(shè)計(jì)元素分配到網(wǎng)絡(luò)節(jié)點(diǎn)將設(shè)計(jì)元素分配到網(wǎng)絡(luò)節(jié)點(diǎn)n節(jié)點(diǎn)容量(指內(nèi)存量和處理能力) n通信介質(zhì)帶寬(總線、LAN、WAN) n硬件與通信鏈路的可用性、重選路由 n對(duì)冗余與容錯(cuò)能力的要求n響應(yīng)時(shí)間要求n吞吐量要求 n設(shè)計(jì)分布處理機(jī)制設(shè)計(jì)分布處理機(jī)制 n采用RMI實(shí)現(xiàn)分布處理機(jī)制o引入可直接

27、利用的類(lèi)庫(kù) o建立一些有role標(biāo)識(shí)的類(lèi),代表實(shí)際設(shè)計(jì)元素 o描述分布機(jī)制的靜態(tài)結(jié)構(gòu) 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.5 7.3.5 數(shù)據(jù)數(shù)據(jù)存儲(chǔ)設(shè)計(jì)存儲(chǔ)設(shè)計(jì) 實(shí)現(xiàn)數(shù)據(jù)的持久性存儲(chǔ)實(shí)現(xiàn)數(shù)據(jù)的持久性存儲(chǔ)n基于基于JDBC的數(shù)據(jù)存儲(chǔ)機(jī)制的數(shù)據(jù)存儲(chǔ)機(jī)制n引入JDBC相關(guān)類(lèi)庫(kù) (java.sql包中的類(lèi) )n構(gòu)造一些具有role標(biāo)識(shí)的類(lèi),代表設(shè)計(jì)元素 n描述持久存儲(chǔ)機(jī)制的靜態(tài)結(jié)構(gòu) n描述機(jī)制的典型應(yīng)用場(chǎng)景 利用利用JDBC,如何實(shí)現(xiàn)數(shù)據(jù)的持久性存儲(chǔ)?,如何實(shí)現(xiàn)數(shù)據(jù)的持久性存儲(chǔ)?中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì) 用例

28、模型給出用戶和系統(tǒng)交互情況,系統(tǒng)設(shè)計(jì)階段用例模型給出用戶和系統(tǒng)交互情況,系統(tǒng)設(shè)計(jì)階段給出人機(jī)交互所有系統(tǒng)成分,給出人機(jī)交互所有系統(tǒng)成分,包括:包括:n用戶如何用戶如何操作操作系統(tǒng)系統(tǒng)n系統(tǒng)如何系統(tǒng)如何響應(yīng)響應(yīng)命令命令n系統(tǒng)系統(tǒng)顯示顯示信息與報(bào)表的信息與報(bào)表的格式格式具體步驟:具體步驟:n分類(lèi)分類(lèi)分析用戶特點(diǎn),設(shè)計(jì)不同界面分析用戶特點(diǎn),設(shè)計(jì)不同界面 n增加用戶界面專(zhuān)用的類(lèi)與對(duì)象增加用戶界面專(zhuān)用的類(lèi)與對(duì)象 n利用快速原型演示,改進(jìn)界面設(shè)計(jì)利用快速原型演示,改進(jìn)界面設(shè)計(jì) 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n界面一

29、致性界面一致性n同一系統(tǒng)內(nèi)界面用語(yǔ)保持一致,每種概念和用語(yǔ)只有一種表達(dá)中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院文本 含義和行為 是否出現(xiàn)在按鈕上 是否出現(xiàn)在菜單上 熱鍵 快捷鍵OK 接受輸入的數(shù)據(jù)或顯示的響應(yīng)信息,關(guān)掉窗口 Yes No None or Cancel 不接受輸入的信息,關(guān)掉窗口 Yes No None Esc Close 結(jié)束當(dāng)前的任務(wù),讓程序繼續(xù)進(jìn)行;關(guān)掉數(shù)據(jù)窗口 Yes Yes Alt+C None Exit 推出程序 No Yes Alt+X Alt+F4 Help 調(diào)出程序的幫助信息 Yes Yes Alt+H Fl Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)

30、設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n界面一致性界面一致性n同一系統(tǒng)內(nèi)界面風(fēng)格保持一致。每種控件的只有一種樣式:窗口、 按鈕、菜單、對(duì)話框等;同一系統(tǒng)內(nèi)字體、顏色、布局、位置、尺寸、間距等盡可能保持一種格式。中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n界面一致性界面一致性n界面風(fēng)格(例:菜單組織、快捷鍵設(shè)計(jì)等)與常用軟件、用戶使用習(xí)慣保持一致中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n界面一致性界面一致性n導(dǎo)航一般會(huì)在頁(yè)面的左側(cè)和上方,界面風(fēng)

31、格與常用軟導(dǎo)航一般會(huì)在頁(yè)面的左側(cè)和上方,界面風(fēng)格與常用軟件、用戶使用習(xí)慣保持一致件、用戶使用習(xí)慣保持一致中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n快捷方式快捷方式n提供快捷方式,更快的操作入口,以減少查找時(shí)間。提供快捷方式,更快的操作入口,以減少查找時(shí)間。中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n快捷方式快捷方式n最近頻繁使用列表,更快的操作入口,以減少查找時(shí)間最近頻繁使用列表,更快的操作入口,以減少查找時(shí)間中中國(guó)國(guó)石油大石油大學(xué)勝

32、學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n快捷方式快捷方式n操作過(guò)程和步驟優(yōu)化,去除不必要的按鈕,以減少交互操作過(guò)程和步驟優(yōu)化,去除不必要的按鈕,以減少交互次數(shù)次數(shù)中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n快捷方式快捷方式n提供默認(rèn)值(例:當(dāng)天日期、用戶常用選項(xiàng)等),以減提供默認(rèn)值(例:當(dāng)天日期、用戶常用選項(xiàng)等),以減少不必要的用戶輸入少不必要的用戶輸入中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例

33、體會(huì)通過(guò)案例體會(huì) n錯(cuò)誤處理錯(cuò)誤處理n錯(cuò)誤預(yù)防、操作限制:不適當(dāng)?shù)牟藛芜x項(xiàng)灰色顯示、限錯(cuò)誤預(yù)防、操作限制:不適當(dāng)?shù)牟藛芜x項(xiàng)灰色顯示、限制錯(cuò)誤輸入(例:數(shù)字域限制字母輸入)、可能引起損制錯(cuò)誤輸入(例:數(shù)字域限制字母輸入)、可能引起損害的操作前的用戶確認(rèn)害的操作前的用戶確認(rèn)中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n錯(cuò)誤處理錯(cuò)誤處理n錯(cuò)誤檢測(cè):檢測(cè)到錯(cuò)誤、明確提示用戶錯(cuò)誤原因及可能錯(cuò)誤檢測(cè):檢測(cè)到錯(cuò)誤、明確提示用戶錯(cuò)誤原因及可能的操作指導(dǎo),讓用戶知道怎么做的操作指導(dǎo),讓用戶知道怎么做中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)

34、院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n錯(cuò)誤處理錯(cuò)誤處理n發(fā)現(xiàn)因手誤刪除郵件,可以在已刪除中找回。發(fā)現(xiàn)因手誤刪除郵件,可以在已刪除中找回。中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n信息反饋信息反饋n根據(jù)用戶輸入提供相關(guān)的信息反饋,以減少方便用戶輸根據(jù)用戶輸入提供相關(guān)的信息反饋,以減少方便用戶輸入或減少記憶負(fù)荷入或減少記憶負(fù)荷中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n信息反饋信息反饋n記

35、住用戶的輸入和選擇記住用戶的輸入和選擇中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n信息反饋信息反饋n根據(jù)用戶輸入來(lái)猜測(cè)用戶意圖根據(jù)用戶輸入來(lái)猜測(cè)用戶意圖中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n信息反饋信息反饋n界面上提供的反饋和確認(rèn)信息不要打擾用戶的操作流程界面上提供的反饋和確認(rèn)信息不要打擾用戶的操作流程。例:新浪微博“發(fā)布成功”提示信息幾秒后自動(dòng)消失中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.3.6 7.3.6 人機(jī)交互人

36、機(jī)交互設(shè)計(jì)設(shè)計(jì)通過(guò)案例體會(huì)通過(guò)案例體會(huì) n有表現(xiàn)力的界面有表現(xiàn)力的界面n經(jīng)典美感。界面外觀清晰、整潔、給人予以愉悅感經(jīng)典美感。界面外觀清晰、整潔、給人予以愉悅感n表達(dá)美感。界面外觀表達(dá)獨(dú)創(chuàng)、新穎,有吸引力。表達(dá)美感。界面外觀表達(dá)獨(dú)創(chuàng)、新穎,有吸引力。n表達(dá)情感。界面通過(guò)表情等界面元素來(lái)表達(dá)情感狀態(tài)表達(dá)情感。界面通過(guò)表情等界面元素來(lái)表達(dá)情感狀態(tài)n情感共鳴。界面激起用戶深層次的內(nèi)在情感共鳴。情感共鳴。界面激起用戶深層次的內(nèi)在情感共鳴。中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo54補(bǔ)充了解:軟件架構(gòu)師補(bǔ)充了解:軟件架構(gòu)師角色:軟件角色:軟件架構(gòu)師架構(gòu)師Software Architect定義:

37、定義:主導(dǎo)主導(dǎo)系統(tǒng)全局系統(tǒng)全局分析設(shè)計(jì)和實(shí)施、負(fù)責(zé)軟件構(gòu)分析設(shè)計(jì)和實(shí)施、負(fù)責(zé)軟件構(gòu)架和關(guān)鍵技術(shù)決策的架和關(guān)鍵技術(shù)決策的角色。角色。Logo55職責(zé)職責(zé)n領(lǐng)導(dǎo)與協(xié)調(diào)領(lǐng)導(dǎo)與協(xié)調(diào)整個(gè)項(xiàng)目中的技術(shù)活動(dòng)(分析、設(shè)計(jì)和實(shí)整個(gè)項(xiàng)目中的技術(shù)活動(dòng)(分析、設(shè)計(jì)和實(shí)施等)施等)n推動(dòng)主要的推動(dòng)主要的技術(shù)決策技術(shù)決策,并最終表達(dá)為軟件構(gòu)架,并最終表達(dá)為軟件構(gòu)架n確定和文檔化系統(tǒng)的相對(duì)構(gòu)架而言確定和文檔化系統(tǒng)的相對(duì)構(gòu)架而言意義重大意義重大的方面,的方面,包括系統(tǒng)的需求、設(shè)計(jì)、實(shí)施和部署等包括系統(tǒng)的需求、設(shè)計(jì)、實(shí)施和部署等“視圖視圖”n確定確定設(shè)計(jì)元素設(shè)計(jì)元素的分組以及這些主要分組之間的的分組以及這些主要分組之間的接口接

38、口n為技術(shù)決策提供為技術(shù)決策提供規(guī)則規(guī)則,平衡各類(lèi)涉眾的不同關(guān)注點(diǎn),平衡各類(lèi)涉眾的不同關(guān)注點(diǎn),化解技術(shù)風(fēng)險(xiǎn),并保證相關(guān)決定被有效的傳達(dá)和貫徹化解技術(shù)風(fēng)險(xiǎn),并保證相關(guān)決定被有效的傳達(dá)和貫徹n理解、評(píng)價(jià)并接收系統(tǒng)理解、評(píng)價(jià)并接收系統(tǒng)需求需求n評(píng)價(jià)和確認(rèn)軟件架構(gòu)的評(píng)價(jià)和確認(rèn)軟件架構(gòu)的實(shí)現(xiàn)實(shí)現(xiàn)補(bǔ)充了解:軟件架構(gòu)師補(bǔ)充了解:軟件架構(gòu)師Logo56專(zhuān)業(yè)技能專(zhuān)業(yè)技能n技術(shù)全面、成熟練達(dá)、洞察力強(qiáng)、經(jīng)驗(yàn)豐富,具備在缺乏技術(shù)全面、成熟練達(dá)、洞察力強(qiáng)、經(jīng)驗(yàn)豐富,具備在缺乏完整信息、眾多問(wèn)題交織一團(tuán)、模糊和矛盾的情況下,迅完整信息、眾多問(wèn)題交織一團(tuán)、模糊和矛盾的情況下,迅速抓住問(wèn)題要害,并做出合理的關(guān)鍵決定的能力。

39、速抓住問(wèn)題要害,并做出合理的關(guān)鍵決定的能力。n具備戰(zhàn)略性和前瞻性思維能力,善于把握全局,能夠在更具備戰(zhàn)略性和前瞻性思維能力,善于把握全局,能夠在更高抽象級(jí)別上進(jìn)行思考。高抽象級(jí)別上進(jìn)行思考。n對(duì)項(xiàng)目開(kāi)發(fā)涉及的所有問(wèn)題領(lǐng)域都有經(jīng)驗(yàn),包括徹底地理對(duì)項(xiàng)目開(kāi)發(fā)涉及的所有問(wèn)題領(lǐng)域都有經(jīng)驗(yàn),包括徹底地理解項(xiàng)目需求,開(kāi)展分析設(shè)計(jì)之類(lèi)軟件工程活動(dòng)等。解項(xiàng)目需求,開(kāi)展分析設(shè)計(jì)之類(lèi)軟件工程活動(dòng)等。n具備領(lǐng)導(dǎo)素質(zhì),以在各小組之間推進(jìn)技術(shù)工作,并在項(xiàng)目具備領(lǐng)導(dǎo)素質(zhì),以在各小組之間推進(jìn)技術(shù)工作,并在項(xiàng)目壓力下做出牢靠的關(guān)鍵決策。壓力下做出牢靠的關(guān)鍵決策。n擁有優(yōu)秀的溝通能力,用以進(jìn)行說(shuō)服、鼓勵(lì)和指導(dǎo)等活動(dòng)擁有優(yōu)秀的溝通

40、能力,用以進(jìn)行說(shuō)服、鼓勵(lì)和指導(dǎo)等活動(dòng),并贏得項(xiàng)目成員的信任。,并贏得項(xiàng)目成員的信任。補(bǔ)充了解:軟件架構(gòu)師補(bǔ)充了解:軟件架構(gòu)師Logo57n以目標(biāo)導(dǎo)向和主動(dòng)的方式來(lái)不帶任何感情色彩地關(guān)注項(xiàng)目以目標(biāo)導(dǎo)向和主動(dòng)的方式來(lái)不帶任何感情色彩地關(guān)注項(xiàng)目結(jié)果,構(gòu)架師應(yīng)當(dāng)是項(xiàng)目背后的技術(shù)推動(dòng)力,而非構(gòu)想者結(jié)果,構(gòu)架師應(yīng)當(dāng)是項(xiàng)目背后的技術(shù)推動(dòng)力,而非構(gòu)想者或夢(mèng)想家(追求完美)或夢(mèng)想家(追求完美)n精通構(gòu)架設(shè)計(jì)的理論、實(shí)踐和工具,并掌握多種參考構(gòu)架精通構(gòu)架設(shè)計(jì)的理論、實(shí)踐和工具,并掌握多種參考構(gòu)架、主要的可重用構(gòu)架機(jī)制和模式。、主要的可重用構(gòu)架機(jī)制和模式。n具備系統(tǒng)設(shè)計(jì)員的所有技能,但涉及面更廣、抽象級(jí)別更具備系統(tǒng)

41、設(shè)計(jì)員的所有技能,但涉及面更廣、抽象級(jí)別更高。高。補(bǔ)充了解:軟件架構(gòu)師補(bǔ)充了解:軟件架構(gòu)師Logo58軟件架構(gòu)師的知識(shí)體系軟件架構(gòu)師的知識(shí)體系n軟件架構(gòu)師作為整個(gè)軟件系統(tǒng)結(jié)構(gòu)的總設(shè)計(jì)師,其軟件架構(gòu)師作為整個(gè)軟件系統(tǒng)結(jié)構(gòu)的總設(shè)計(jì)師,其知識(shí)體知識(shí)體系、技能和經(jīng)驗(yàn)決定了軟件系統(tǒng)的可靠性、安全性、可維系、技能和經(jīng)驗(yàn)決定了軟件系統(tǒng)的可靠性、安全性、可維護(hù)性、可擴(kuò)展性和可移植性等方面的性能。護(hù)性、可擴(kuò)展性和可移植性等方面的性能。因此一個(gè)優(yōu)秀因此一個(gè)優(yōu)秀的軟件架構(gòu)師必須具備相當(dāng)?shù)能浖軜?gòu)師必須具備相當(dāng)豐富的知識(shí)、技能和經(jīng)驗(yàn)豐富的知識(shí)、技能和經(jīng)驗(yàn)。n對(duì)比對(duì)比軟件架構(gòu)師和系統(tǒng)分析師在軟件開(kāi)發(fā)中的職責(zé)和軟件架構(gòu)師

42、和系統(tǒng)分析師在軟件開(kāi)發(fā)中的職責(zé)和角色角色系統(tǒng)分析系統(tǒng)分析師的主要職責(zé)是在師的主要職責(zé)是在需求分析、開(kāi)發(fā)管理、運(yùn)行維需求分析、開(kāi)發(fā)管理、運(yùn)行維護(hù)護(hù)等等方面;而方面;而軟件架構(gòu)師的重點(diǎn)工作是在軟件架構(gòu)師的重點(diǎn)工作是在架構(gòu)與設(shè)計(jì)架構(gòu)與設(shè)計(jì)這兩這兩個(gè)關(guān)鍵環(huán)節(jié)上個(gè)關(guān)鍵環(huán)節(jié)上。n因此因此在系統(tǒng)分析師必須具備的知識(shí)體系中對(duì)系統(tǒng)的構(gòu)架與在系統(tǒng)分析師必須具備的知識(shí)體系中對(duì)系統(tǒng)的構(gòu)架與設(shè)計(jì)等方面知識(shí)體系的要求就相對(duì)低些;而軟件架構(gòu)師在設(shè)計(jì)等方面知識(shí)體系的要求就相對(duì)低些;而軟件架構(gòu)師在需求分析、項(xiàng)目管理、運(yùn)行維護(hù)等方面知識(shí)的要求也就相需求分析、項(xiàng)目管理、運(yùn)行維護(hù)等方面知識(shí)的要求也就相對(duì)低些。對(duì)低些。Logo59n成

43、為一名合格的軟件架構(gòu)師必須具備的知識(shí)成為一名合格的軟件架構(gòu)師必須具備的知識(shí)n信息系統(tǒng)綜合知識(shí)體系n軟件架構(gòu)知識(shí)體系軟件架構(gòu)師的知識(shí)體系軟件架構(gòu)師的知識(shí)體系Logo60?nMFC,MSF,MOF,RUP,J2EE,Spring,SOA,JUnit,ORM,.NetnMVC,UML,XML,Corba,MDA,MDD,Web-ServicenRSS,Web2.0,AJAX,Serverlet,HibernatenIOC, AOPnRuby On RailsnRupnBPELnWorkflow EnginenLBSnOraclenCMMInMQnLogo軟件架構(gòu)師在干什么?軟件架構(gòu)師在干什么?n思考

44、、思考、再思考思考、思考、再思考n深入理解、準(zhǔn)確把握建設(shè)的業(yè)務(wù)需求n分析所有可見(jiàn)的問(wèn)題、障礙、風(fēng)險(xiǎn)n充分參考已有的成功方案,降低風(fēng)險(xiǎn)n交流、討論、博弈、質(zhì)疑交流、討論、博弈、質(zhì)疑n對(duì)構(gòu)思中的方案不斷提出質(zhì)疑,避免漏洞n廣泛聽(tīng)取各層面的意見(jiàn),開(kāi)拓思路n反復(fù)質(zhì)疑、逐步完善已有的設(shè)計(jì)構(gòu)思n在動(dòng)手實(shí)現(xiàn)之前驗(yàn)證設(shè)計(jì)方案的正確性在動(dòng)手實(shí)現(xiàn)之前驗(yàn)證設(shè)計(jì)方案的正確性Logo62軟件架構(gòu)師的知識(shí)結(jié)構(gòu)軟件架構(gòu)師的知識(shí)結(jié)構(gòu)n軟件知識(shí)軟件知識(shí)n最好要有系統(tǒng)開(kāi)發(fā)全過(guò)程經(jīng)驗(yàn)。最好要有系統(tǒng)開(kāi)發(fā)全過(guò)程經(jīng)驗(yàn)。n對(duì)對(duì) IT 建設(shè)生命周期各個(gè)環(huán)節(jié)有深入了解,包括:系統(tǒng)建設(shè)生命周期各個(gè)環(huán)節(jié)有深入了解,包括:系統(tǒng)/模塊邏輯設(shè)計(jì)、物理設(shè)

45、計(jì)、代碼開(kāi)發(fā)、項(xiàng)目管理、測(cè)試模塊邏輯設(shè)計(jì)、物理設(shè)計(jì)、代碼開(kāi)發(fā)、項(xiàng)目管理、測(cè)試、發(fā)布、運(yùn)行維護(hù)等。、發(fā)布、運(yùn)行維護(hù)等。n深入掌握深入掌握1-2種主流技術(shù)平臺(tái)上開(kāi)發(fā)系統(tǒng)的方法。種主流技術(shù)平臺(tái)上開(kāi)發(fā)系統(tǒng)的方法。n了解多種應(yīng)用系統(tǒng)的結(jié)構(gòu)。了解多種應(yīng)用系統(tǒng)的結(jié)構(gòu)。n了解架構(gòu)設(shè)計(jì)領(lǐng)域的主要理論、流派、框架。了解架構(gòu)設(shè)計(jì)領(lǐng)域的主要理論、流派、框架。Logo63軟件架構(gòu)師的知識(shí)結(jié)構(gòu)軟件架構(gòu)師的知識(shí)結(jié)構(gòu)n業(yè)務(wù)知識(shí)業(yè)務(wù)知識(shí)n深入了解系統(tǒng)建設(shè)的業(yè)務(wù)需求。n了解系統(tǒng)的非功能需求和運(yùn)行維護(hù)需求。n了解企業(yè) IT 公共設(shè)施、網(wǎng)絡(luò)環(huán)境、外部系統(tǒng)。Logo64軟件架構(gòu)師的思維方式軟件架構(gòu)師的思維方式n基于框架的思維基于框架的

46、思維n架構(gòu)設(shè)計(jì)的層次(Enterprise, Application, etc)nIT 的生命周期(What, Why, Where, How, When, etc)n成功經(jīng)驗(yàn)以及方法論的指導(dǎo)n合理把握技術(shù)細(xì)節(jié)合理把握技術(shù)細(xì)節(jié)n把握各個(gè)層次應(yīng)有的內(nèi)容n合理忽略不應(yīng)有的技術(shù)細(xì)節(jié)Logo65軟件架構(gòu)師的思維方式軟件架構(gòu)師的思維方式n風(fēng)險(xiǎn)管理意識(shí)風(fēng)險(xiǎn)管理意識(shí)n采用成功經(jīng)驗(yàn)、避免不應(yīng)有的風(fēng)險(xiǎn)n多方位的開(kāi)放思維多方位的開(kāi)放思維n多維度、多方向、包容性、避免排他性n分析、質(zhì)疑、抽象、歸納n沒(méi)有絕對(duì)好的架構(gòu)設(shè)計(jì),只有相對(duì)優(yōu)秀的方案Logo66軟件架構(gòu)師的任職條件軟件架構(gòu)師的任職條件根據(jù)軟件架構(gòu)師的職責(zé)和角色

47、定位,以及知識(shí)體系,從實(shí)踐根據(jù)軟件架構(gòu)師的職責(zé)和角色定位,以及知識(shí)體系,從實(shí)踐的角度考慮,合格的軟件架構(gòu)師應(yīng)該具有以下能力和經(jīng)驗(yàn):的角度考慮,合格的軟件架構(gòu)師應(yīng)該具有以下能力和經(jīng)驗(yàn):(1)具有具有8年以上的軟件項(xiàng)目開(kāi)發(fā)實(shí)際工作經(jīng)驗(yàn),其中至少有年以上的軟件項(xiàng)目開(kāi)發(fā)實(shí)際工作經(jīng)驗(yàn),其中至少有3年以上的代碼編寫(xiě)工作經(jīng)驗(yàn),年以上的代碼編寫(xiě)工作經(jīng)驗(yàn),4年以上的基于面向?qū)ο蠛蜆?gòu)年以上的基于面向?qū)ο蠛蜆?gòu)件開(kāi)發(fā)方法的軟件產(chǎn)品設(shè)計(jì)經(jīng)驗(yàn)。件開(kāi)發(fā)方法的軟件產(chǎn)品設(shè)計(jì)經(jīng)驗(yàn)。 (2)具有具有5個(gè)以上大中型開(kāi)發(fā)項(xiàng)目的總體規(guī)劃、方案設(shè)計(jì)經(jīng)驗(yàn)個(gè)以上大中型開(kāi)發(fā)項(xiàng)目的總體規(guī)劃、方案設(shè)計(jì)經(jīng)驗(yàn),有大中型應(yīng)用系統(tǒng)開(kāi)發(fā)和實(shí)施的成功案例。,有

48、大中型應(yīng)用系統(tǒng)開(kāi)發(fā)和實(shí)施的成功案例。(3)對(duì)相關(guān)的技術(shù)標(biāo)準(zhǔn)有深刻的認(rèn)識(shí),對(duì)軟件工程標(biāo)準(zhǔn)和規(guī)范對(duì)相關(guān)的技術(shù)標(biāo)準(zhǔn)有深刻的認(rèn)識(shí),對(duì)軟件工程標(biāo)準(zhǔn)和規(guī)范有良好的把握。有良好的把握。 (4)對(duì)對(duì).Net或或Java技術(shù)及整個(gè)解決方案有深刻的理解及熟練技術(shù)及整個(gè)解決方案有深刻的理解及熟練的應(yīng)用,精通的應(yīng)用,精通Web Service,熟練掌握流行的架構(gòu)。,熟練掌握流行的架構(gòu)。 Logo67(5)對(duì)設(shè)計(jì)模式有深刻的理解,并能在此基礎(chǔ)上設(shè)計(jì)出適合產(chǎn)品對(duì)設(shè)計(jì)模式有深刻的理解,并能在此基礎(chǔ)上設(shè)計(jì)出適合產(chǎn)品特性和質(zhì)量屬性的框架。特性和質(zhì)量屬性的框架。(6)具有面向?qū)ο蟮姆治?、設(shè)計(jì)和開(kāi)發(fā)能力,精通具有面向?qū)ο蟮姆治觥⒃O(shè)

49、計(jì)和開(kāi)發(fā)能力,精通UML和和XML,能熟練使用能熟練使用Rational Rose、PowerDesigner等工具進(jìn)行設(shè)計(jì)等工具進(jìn)行設(shè)計(jì)。 (7)具有良好的團(tuán)隊(duì)意識(shí)和協(xié)作精神,有較強(qiáng)的溝通能力和書(shū)面具有良好的團(tuán)隊(duì)意識(shí)和協(xié)作精神,有較強(qiáng)的溝通能力和書(shū)面表達(dá)能力。表達(dá)能力。(8)具有旺盛的精力和學(xué)習(xí)能力,能快速掌握新技術(shù)和新方法。具有旺盛的精力和學(xué)習(xí)能力,能快速掌握新技術(shù)和新方法。 軟件架構(gòu)師的任職條件軟件架構(gòu)師的任職條件Logo7.4 7.4 系統(tǒng)元素設(shè)計(jì)系統(tǒng)元素設(shè)計(jì) n子系統(tǒng)設(shè)計(jì)子系統(tǒng)設(shè)計(jì) n將子系統(tǒng)行為分配給子系統(tǒng)元素將子系統(tǒng)行為分配給子系統(tǒng)元素 n描述子系統(tǒng)元素描述子系統(tǒng)元素 n說(shuō)明子系

50、統(tǒng)的依賴(lài)關(guān)系說(shuō)明子系統(tǒng)的依賴(lài)關(guān)系 n分包設(shè)計(jì)分包設(shè)計(jì) n分包的原則分包的原則 n描述包之間的依賴(lài)關(guān)系描述包之間的依賴(lài)關(guān)系 n包之間的耦合關(guān)系包之間的耦合關(guān)系 n類(lèi)類(lèi)/對(duì)象設(shè)計(jì)對(duì)象設(shè)計(jì)中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.4 7.4 系統(tǒng)元素設(shè)計(jì)系統(tǒng)元素設(shè)計(jì) n子系統(tǒng)子系統(tǒng)設(shè)計(jì)設(shè)計(jì)子系統(tǒng)內(nèi)部的元素和之間的交互子系統(tǒng)內(nèi)部的元素和之間的交互 n將子系統(tǒng)行為分配給子系統(tǒng)將子系統(tǒng)行為分配給子系統(tǒng)元素元素通過(guò)子系統(tǒng)的外部行為(實(shí)現(xiàn)的接口)得到實(shí)現(xiàn)子系統(tǒng)通過(guò)子系統(tǒng)的外部行為(實(shí)現(xiàn)的接口)得到實(shí)現(xiàn)子系統(tǒng)的操作所執(zhí)行的行為的操作所執(zhí)行的行為 用用時(shí)序時(shí)序圖圖表示表示例例7.4“選課系統(tǒng)選課系統(tǒng)”課

51、程目錄子系統(tǒng)課程目錄子系統(tǒng)中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo選課系統(tǒng)選課系統(tǒng)- -課程課程目錄子系統(tǒng)時(shí)序圖目錄子系統(tǒng)時(shí)序圖 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.4 7.4 系統(tǒng)元素設(shè)計(jì)系統(tǒng)元素設(shè)計(jì) n子系統(tǒng)設(shè)計(jì)子系統(tǒng)設(shè)計(jì) n將子系統(tǒng)行為分配給子系統(tǒng)元素將子系統(tǒng)行為分配給子系統(tǒng)元素 n描述子系統(tǒng)描述子系統(tǒng)元素元素創(chuàng)建一個(gè)或多個(gè)創(chuàng)建一個(gè)或多個(gè)類(lèi)圖類(lèi)圖表示子系統(tǒng)包含的元素以及他們之表示子系統(tǒng)包含的元素以及他們之間的關(guān)系間的關(guān)系 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo課程目錄子系統(tǒng)內(nèi)部類(lèi)圖課程目錄子系統(tǒng)內(nèi)部類(lèi)圖 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7

52、.4 7.4 系統(tǒng)元素設(shè)計(jì)系統(tǒng)元素設(shè)計(jì) n子系統(tǒng)設(shè)計(jì)子系統(tǒng)設(shè)計(jì) n將子系統(tǒng)行為分配給子系統(tǒng)元素將子系統(tǒng)行為分配給子系統(tǒng)元素 n描述子系統(tǒng)元素描述子系統(tǒng)元素 n說(shuō)明子系統(tǒng)的依賴(lài)說(shuō)明子系統(tǒng)的依賴(lài)關(guān)系關(guān)系當(dāng)當(dāng)子系統(tǒng)包含的某個(gè)元素使用了另一個(gè)子系統(tǒng)中的某個(gè)子系統(tǒng)包含的某個(gè)元素使用了另一個(gè)子系統(tǒng)中的某個(gè)元素行為時(shí),就在兩個(gè)子系統(tǒng)間創(chuàng)建了元素行為時(shí),就在兩個(gè)子系統(tǒng)間創(chuàng)建了依賴(lài)關(guān)系依賴(lài)關(guān)系。 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo子系統(tǒng)間依賴(lài)關(guān)系子系統(tǒng)間依賴(lài)關(guān)系 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.4 7.4 系統(tǒng)元素設(shè)計(jì)系統(tǒng)元素設(shè)計(jì) n子系統(tǒng)設(shè)計(jì)子系統(tǒng)設(shè)計(jì) n將子系統(tǒng)行為分配給子

53、系統(tǒng)元素將子系統(tǒng)行為分配給子系統(tǒng)元素 n描述子系統(tǒng)元素描述子系統(tǒng)元素 n說(shuō)明子系統(tǒng)的依賴(lài)關(guān)系說(shuō)明子系統(tǒng)的依賴(lài)關(guān)系 n分包設(shè)計(jì)分包設(shè)計(jì) n分包設(shè)計(jì)是在層次結(jié)構(gòu)的基礎(chǔ)上,劃分更細(xì)的組分包設(shè)計(jì)是在層次結(jié)構(gòu)的基礎(chǔ)上,劃分更細(xì)的組織單元,把設(shè)計(jì)元素分別放入特定的包中。體現(xiàn)織單元,把設(shè)計(jì)元素分別放入特定的包中。體現(xiàn)高內(nèi)聚低耦合。高內(nèi)聚低耦合。n分包的原則分包的原則 n描述包之間的依賴(lài)關(guān)系描述包之間的依賴(lài)關(guān)系 n包之間的耦合關(guān)系包之間的耦合關(guān)系 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.4 7.4 系統(tǒng)元素設(shè)計(jì)系統(tǒng)元素設(shè)計(jì) n子系統(tǒng)設(shè)計(jì)子系統(tǒng)設(shè)計(jì) n將子系統(tǒng)行為分配給子系統(tǒng)元素將子系統(tǒng)行為分配給子

54、系統(tǒng)元素 n描述子系統(tǒng)元素描述子系統(tǒng)元素 n說(shuō)明子系統(tǒng)的依賴(lài)關(guān)系說(shuō)明子系統(tǒng)的依賴(lài)關(guān)系 n分包設(shè)計(jì)分包設(shè)計(jì) n分包的分包的原則原則將邊界將邊界類(lèi)打包類(lèi)打包將將功能相關(guān)的類(lèi)打包功能相關(guān)的類(lèi)打包 【例7.5】應(yīng)用子系統(tǒng)層,Registration包 業(yè)務(wù)專(zhuān)用層,University Artifacts包中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo包的依賴(lài)關(guān)系包的依賴(lài)關(guān)系 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院LogoUniversity ArtifactsUniversity Artifacts包內(nèi)元素的類(lèi)圖包內(nèi)元素的類(lèi)圖 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo7.4 7.4 系統(tǒng)元

55、素設(shè)計(jì)系統(tǒng)元素設(shè)計(jì) n子系統(tǒng)設(shè)計(jì)子系統(tǒng)設(shè)計(jì) n將子系統(tǒng)行為分配給子系統(tǒng)元素將子系統(tǒng)行為分配給子系統(tǒng)元素 n描述子系統(tǒng)元素描述子系統(tǒng)元素 n說(shuō)明子系統(tǒng)的依賴(lài)關(guān)系說(shuō)明子系統(tǒng)的依賴(lài)關(guān)系 n分包設(shè)計(jì)分包設(shè)計(jì) n分包的原則分包的原則 n描述包之間的依賴(lài)關(guān)系描述包之間的依賴(lài)關(guān)系 n包之間的耦合關(guān)系包之間的耦合關(guān)系 n類(lèi)類(lèi)/對(duì)象設(shè)計(jì)對(duì)象設(shè)計(jì) 設(shè)計(jì)工作的核心,具體最接近實(shí)現(xiàn)設(shè)計(jì)工作的核心,具體最接近實(shí)現(xiàn)中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo類(lèi)類(lèi)/ /對(duì)象設(shè)計(jì)對(duì)象設(shè)計(jì)n設(shè)計(jì)設(shè)計(jì)初始設(shè)計(jì)類(lèi)初始設(shè)計(jì)類(lèi)n設(shè)計(jì)邊界類(lèi)、實(shí)體類(lèi)、控制類(lèi)n定義操作定義操作n研究每個(gè)類(lèi)的職責(zé),為職責(zé)確定操作(參數(shù)、可見(jiàn)性、作用域)n

56、增加一些典型的操作n定義方法定義方法n方法是對(duì)操作的實(shí)現(xiàn)(白盒)n定義狀態(tài)定義狀態(tài)n可以創(chuàng)建狀態(tài)圖n定義定義屬性(屬性名、類(lèi)型、初始值、可見(jiàn)性)屬性(屬性名、類(lèi)型、初始值、可見(jiàn)性)n定義依賴(lài)關(guān)系定義依賴(lài)關(guān)系n定義關(guān)聯(lián)關(guān)系定義關(guān)聯(lián)關(guān)系n定義泛化關(guān)系定義泛化關(guān)系n處理非功能需求處理非功能需求中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo類(lèi)類(lèi)/ /對(duì)象設(shè)計(jì)對(duì)象設(shè)計(jì)n設(shè)計(jì)初始類(lèi)設(shè)計(jì)初始類(lèi)n設(shè)計(jì)邊界類(lèi)、實(shí)體類(lèi)、控制類(lèi)中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo類(lèi)的重新設(shè)計(jì)類(lèi)的重新設(shè)計(jì) 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo類(lèi)類(lèi)/ /對(duì)象設(shè)計(jì)對(duì)象設(shè)計(jì)n設(shè)計(jì)初始類(lèi)設(shè)計(jì)初始類(lèi)n設(shè)計(jì)邊界類(lèi)、實(shí)體類(lèi)、控制類(lèi)n定義操作定義操作n研究每個(gè)類(lèi)的職責(zé),為職責(zé)確定操作n增加一些典型的操作n定義方法定義方法n方法是對(duì)操作的實(shí)現(xiàn)n定義狀態(tài)定義狀態(tài)n可以創(chuàng)建狀態(tài)圖中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)院院Logo定義操作的類(lèi)圖定義操作的類(lèi)圖 中中國(guó)國(guó)石油大石油大學(xué)勝學(xué)勝利利學(xué)學(xué)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論