影音先锋男人资源在线观看,精品国产日韩亚洲一区91,中文字幕日韩国产,2018av男人天堂,青青伊人精品,久久久久久久综合日本亚洲,国产日韩欧美一区二区三区在线

軟件工程PPT教學(xué)課件第五章 總體設(shè)計(jì)

上傳人:痛*** 文檔編號(hào):48345276 上傳時(shí)間:2022-01-04 格式:PPT 頁(yè)數(shù):47 大?。?21.50KB
收藏 版權(quán)申訴 舉報(bào) 下載
軟件工程PPT教學(xué)課件第五章 總體設(shè)計(jì)_第1頁(yè)
第1頁(yè) / 共47頁(yè)
軟件工程PPT教學(xué)課件第五章 總體設(shè)計(jì)_第2頁(yè)
第2頁(yè) / 共47頁(yè)
軟件工程PPT教學(xué)課件第五章 總體設(shè)計(jì)_第3頁(yè)
第3頁(yè) / 共47頁(yè)

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《軟件工程PPT教學(xué)課件第五章 總體設(shè)計(jì)》由會(huì)員分享,可在線閱讀,更多相關(guān)《軟件工程PPT教學(xué)課件第五章 總體設(shè)計(jì)(47頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、第五章第五章 總體設(shè)計(jì)總體設(shè)計(jì)(System Design)開(kāi)始考慮開(kāi)始考慮“How”,但仍屬高層設(shè)計(jì)(確定黑盒關(guān)系),但仍屬高層設(shè)計(jì)(確定黑盒關(guān)系)1. 過(guò)程過(guò)程1、確定最佳方案:、確定最佳方案: 從從DFD出發(fā)進(jìn)行任務(wù)分解,不同的劃分方法即對(duì)應(yīng)出發(fā)進(jìn)行任務(wù)分解,不同的劃分方法即對(duì)應(yīng) 不同的方案。每個(gè)合理的方案應(yīng)配備下列不同的方案。每個(gè)合理的方案應(yīng)配備下列4份資料:份資料: 系統(tǒng)流程圖系統(tǒng)流程圖 組成系統(tǒng)的物理元素清單組成系統(tǒng)的物理元素清單 成本成本/效益分析效益分析 進(jìn)度計(jì)劃進(jìn)度計(jì)劃 選擇最佳方案并制定詳細(xì)的實(shí)現(xiàn)計(jì)劃(主要技術(shù)詳選擇最佳方案并制定詳細(xì)的實(shí)現(xiàn)計(jì)劃(主要技術(shù)詳見(jiàn)第十三章)見(jiàn)第十

2、三章)1. 過(guò)程過(guò)程2、結(jié)構(gòu)設(shè)計(jì)、結(jié)構(gòu)設(shè)計(jì) 模塊化思想:模塊化思想: 將將DFD細(xì)化,至每個(gè)子功能都明白易懂;每細(xì)化,至每個(gè)子功能都明白易懂;每個(gè)模塊完成一個(gè)子功能;每層模塊合成一個(gè)高一個(gè)模塊完成一個(gè)子功能;每層模塊合成一個(gè)高一級(jí)的功能。級(jí)的功能。 主要工具有主要工具有 System Design Hierarchy及及HIPO圖等。圖等。3、數(shù)據(jù)庫(kù)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì) 模式設(shè)計(jì):確定物理數(shù)據(jù)庫(kù)結(jié)構(gòu)模式設(shè)計(jì):確定物理數(shù)據(jù)庫(kù)結(jié)構(gòu) 子模式設(shè)計(jì):用戶使用的數(shù)據(jù)視圖子模式設(shè)計(jì):用戶使用的數(shù)據(jù)視圖 完整性、安全性設(shè)計(jì)完整性、安全性設(shè)計(jì) 優(yōu)化優(yōu)化5、書(shū)寫(xiě)文檔、書(shū)寫(xiě)文檔系統(tǒng)說(shuō)明系統(tǒng)說(shuō)明用戶手冊(cè)用戶手冊(cè)測(cè)試計(jì)劃測(cè)

3、試計(jì)劃詳細(xì)實(shí)現(xiàn)計(jì)劃詳細(xì)實(shí)現(xiàn)計(jì)劃數(shù)據(jù)庫(kù)設(shè)計(jì)結(jié)果數(shù)據(jù)庫(kù)設(shè)計(jì)結(jié)果 6、審查、復(fù)審、審查、復(fù)審4、測(cè)試計(jì)劃、測(cè)試計(jì)劃 (詳見(jiàn)第七章)(詳見(jiàn)第七章)1. 過(guò)程過(guò)程2.模塊化原理模塊化原理(Modularization) 模塊化就是把程序劃分成獨(dú)立命名而且可獨(dú)立模塊化就是把程序劃分成獨(dú)立命名而且可獨(dú)立訪問(wèn)的模塊,每個(gè)模塊完成一個(gè)子功能。訪問(wèn)的模塊,每個(gè)模塊完成一個(gè)子功能。 把這些模塊集成起來(lái)構(gòu)成一個(gè)整體,可以完成把這些模塊集成起來(lái)構(gòu)成一個(gè)整體,可以完成指定的功能,滿足用戶的需求。指定的功能,滿足用戶的需求。 模塊化是解決一個(gè)復(fù)雜問(wèn)題時(shí)自頂向下逐層把模塊化是解決一個(gè)復(fù)雜問(wèn)題時(shí)自頂向下逐層把軟件系統(tǒng)劃分成若干

4、模塊的過(guò)程。它是軟件解決軟件系統(tǒng)劃分成若干模塊的過(guò)程。它是軟件解決復(fù)雜問(wèn)題所具備的手段,不但可以降低問(wèn)題復(fù)雜復(fù)雜問(wèn)題所具備的手段,不但可以降低問(wèn)題復(fù)雜性,還可以減少開(kāi)發(fā)工作量,從而降低開(kāi)發(fā)成本,性,還可以減少開(kāi)發(fā)工作量,從而降低開(kāi)發(fā)成本,提高軟件生產(chǎn)率。提高軟件生產(chǎn)率。2.模塊化原理模塊化原理模塊的概念:模塊的概念:在軟件的體系結(jié)構(gòu)中,模塊是可組合、分解和更換在軟件的體系結(jié)構(gòu)中,模塊是可組合、分解和更換的單元,具有以下幾種基本屬性:的單元,具有以下幾種基本屬性:接口:指模塊的輸入輸出。接口:指模塊的輸入輸出。功能:模塊實(shí)現(xiàn)的功能。功能:模塊實(shí)現(xiàn)的功能。邏輯:內(nèi)部如何實(shí)現(xiàn)及所需數(shù)據(jù)。邏輯:內(nèi)部如

5、何實(shí)現(xiàn)及所需數(shù)據(jù)。狀態(tài):模塊的運(yùn)行環(huán)境,調(diào)用與被調(diào)用關(guān)系。狀態(tài):模塊的運(yùn)行環(huán)境,調(diào)用與被調(diào)用關(guān)系。邏輯屬性反映內(nèi)部特性,其它屬性反映模塊的外部邏輯屬性反映內(nèi)部特性,其它屬性反映模塊的外部特性。特性。1、模塊化原理根據(jù):、模塊化原理根據(jù): 問(wèn)題問(wèn)題P的復(fù)雜度的復(fù)雜度C(P),工作量,工作量E(P) 如果如果C(P1)C(P2),則,則E(P1)E(P2)經(jīng)驗(yàn)經(jīng)驗(yàn)1:C(P1+P2)C(P1)+C(P2) E(P1+P2)E(P1)+E(P2)2.模塊化原理模塊化原理經(jīng)驗(yàn)經(jīng)驗(yàn)2:成本成本成本成本 / / 模塊模塊最小成本區(qū)最小成本區(qū)接口成本接口成本軟件總成本軟件總成本模塊數(shù)目模塊數(shù)目2.模塊化原理

6、模塊化原理2.模塊化原理模塊化原理2、抽象、抽象(Abstraction): 忽略細(xì)節(jié),分層理解問(wèn)題,自頂向下層忽略細(xì)節(jié),分層理解問(wèn)題,自頂向下層層加細(xì)。層加細(xì)。 抽象與逐步求精、模塊化密切相關(guān),可抽象與逐步求精、模塊化密切相關(guān),可提高軟件的可理解性。提高軟件的可理解性。例:例:開(kāi)發(fā)一個(gè)開(kāi)發(fā)一個(gè)CAD軟件,實(shí)現(xiàn)一個(gè)二維繪圖系統(tǒng)軟件,實(shí)現(xiàn)一個(gè)二維繪圖系統(tǒng)的全部功能,供低級(jí)計(jì)算機(jī)輔助設(shè)計(jì)使用。的全部功能,供低級(jí)計(jì)算機(jī)輔助設(shè)計(jì)使用。2.模塊化原理模塊化原理抽象層次抽象層次I I:用問(wèn)題所處環(huán)境的術(shù)語(yǔ)來(lái)描述這個(gè):用問(wèn)題所處環(huán)境的術(shù)語(yǔ)來(lái)描述這個(gè)軟件。軟件。 該軟件包括一個(gè)計(jì)算機(jī)繪圖界面,向繪圖員顯該軟件

7、包括一個(gè)計(jì)算機(jī)繪圖界面,向繪圖員顯示圖形,以及一個(gè)數(shù)字化儀界面,用以代替繪圖示圖形,以及一個(gè)數(shù)字化儀界面,用以代替繪圖板和丁字尺。所有直線、折線、矩形、圓及曲線板和丁字尺。所有直線、折線、矩形、圓及曲線的描畫(huà)、所有的幾何計(jì)算、所有的剖面圖和輔助的描畫(huà)、所有的幾何計(jì)算、所有的剖面圖和輔助視圖都可以用這個(gè)視圖都可以用這個(gè)CADCAD軟件實(shí)現(xiàn)軟件實(shí)現(xiàn)。2.模塊化原理模塊化原理 抽象層次抽象層次IIII:任務(wù)需求的描述。列出:任務(wù)需求的描述。列出“What”而而不是不是“How”。 CAD SOFTWARE TASKS: user interaction task; 2-D drawing creat

8、ion task; graphics display task; drawing file management task; END2.模塊化原理模塊化原理 抽象層次抽象層次IIIIII:程序過(guò)程表示。以:程序過(guò)程表示。以2-D2-D繪圖生成任務(wù)繪圖生成任務(wù)為例為例: PROCEDURE 2-D drawing creation REPEAT UNTILE (drawing creation task terminates) DO WHILE (digitizer interaction occurs) Digitizer interface task; DETERMINE drawing r

9、equest CASE Line: line drawing task; Rectangle: rectangle drawing task; Circle: circle drawing task; END; DO WHILE (keyboard interaction occurs) keyboard interaction task; PROCESS analysis/computation CASE View: auxiliary view task; Section: cross sectioning task; END; END REPETITION; END PROCEDURE.

10、 2.模塊化原理模塊化原理3、信息隱蔽、信息隱蔽(Information hiding) 局部化(一個(gè)模塊內(nèi)的信息對(duì)于不局部化(一個(gè)模塊內(nèi)的信息對(duì)于不需要這些信息的模塊,不能訪問(wèn)),需要這些信息的模塊,不能訪問(wèn)), 它為軟件系統(tǒng)的修改、測(cè)試及以它為軟件系統(tǒng)的修改、測(cè)試及以后的維護(hù)都帶來(lái)好處。后的維護(hù)都帶來(lái)好處。在這個(gè)抽象層次上,給出了初步的過(guò)程表示,在這個(gè)抽象層次上,給出了初步的過(guò)程表示,所用的術(shù)語(yǔ)都已面向軟件,而且模塊化的工作所用的術(shù)語(yǔ)都已面向軟件,而且模塊化的工作已經(jīng)開(kāi)始顯露。已經(jīng)開(kāi)始顯露。2.模塊化原理模塊化原理4、模塊獨(dú)立性、模塊獨(dú)立性(Module independence) 模塊獨(dú)

11、立模塊獨(dú)立模塊化、抽象、信息隱蔽模塊化、抽象、信息隱蔽、局部化局部化 好設(shè)計(jì)的關(guān)鍵:每個(gè)模塊完成一個(gè)相對(duì)好設(shè)計(jì)的關(guān)鍵:每個(gè)模塊完成一個(gè)相對(duì)獨(dú)立的子功能,并且與其它模塊間的接口簡(jiǎn)獨(dú)立的子功能,并且與其它模塊間的接口簡(jiǎn)單。單。 容易開(kāi)發(fā)、測(cè)試、維護(hù)。容易開(kāi)發(fā)、測(cè)試、維護(hù)。 2.模塊化原理模塊化原理 耦合耦合(Coupling) 不同模塊間的互聯(lián)程度的度量。不同模塊間的互聯(lián)程度的度量。 模塊間耦合高低取決于接口的復(fù)雜性、調(diào)用的方式及模塊間耦合高低取決于接口的復(fù)雜性、調(diào)用的方式及傳遞的信息。傳遞的信息。Great deal of dependenceIndependent Highly coupled

12、Loosely coupledUncoupled 獨(dú)立性的度量:獨(dú)立性的度量:耦合耦合(Coupling)&內(nèi)聚內(nèi)聚(Cohesion) (Yourdon & Constantine,1978)2.模塊化原理模塊化原理例例1:A訪問(wèn)訪問(wèn)C的內(nèi)部的內(nèi)部數(shù)據(jù)或不通過(guò)正數(shù)據(jù)或不通過(guò)正常入口而轉(zhuǎn)入常入口而轉(zhuǎn)入C的內(nèi)部。的內(nèi)部。ABCDA:goto C1C:C1: 獨(dú)立性由弱到強(qiáng)排列為:獨(dú)立性由弱到強(qiáng)排列為: 內(nèi)容耦合內(nèi)容耦合(Content Coupling): One module modifies another.2.模塊化原理模塊化原理例例2:部分代碼重疊:部分代碼重疊(常出現(xiàn)在匯編程(常出現(xiàn)在

13、匯編程序中)序中)B A例例3:一個(gè)模塊有:一個(gè)模塊有多個(gè)入口(多個(gè)功多個(gè)入口(多個(gè)功能)能)A:entry 1:entry 2:2.模塊化原理模塊化原理 公共耦合公共耦合 (Common coupling):公共數(shù)據(jù)環(huán)境公共數(shù)據(jù)環(huán)境Data are accessible from a common data store. Global : V1 V2A:A1=V1+V2B:V1=B1Global : V1 V2A:V1+B:V2=B1+V1問(wèn)題:?jiǎn)栴}: 公共部分的改動(dòng)將影響所有調(diào)用它的模塊;公共部分的改動(dòng)將影響所有調(diào)用它的模塊; 公共部分的數(shù)據(jù)存取無(wú)法控制;公共部分的數(shù)據(jù)存取無(wú)法控制; 復(fù)雜

14、程度隨耦合模塊的個(gè)數(shù)增加而增加。復(fù)雜程度隨耦合模塊的個(gè)數(shù)增加而增加。2.模塊化原理模塊化原理 控制耦合控制耦合(Control coupling): 模塊之間傳遞有控制信息(可能為數(shù)據(jù)),被調(diào)用函模塊之間傳遞有控制信息(可能為數(shù)據(jù)),被調(diào)用函數(shù)通過(guò)控制信息有選擇地執(zhí)行塊內(nèi)某一功能。數(shù)通過(guò)控制信息有選擇地執(zhí)行塊內(nèi)某一功能。 One module passes parameters to control the activity of another module.ABFlagF2F1FnFlag接口單一,但仍然影響被控模塊的內(nèi)部邏輯。接口單一,但仍然影響被控模塊的內(nèi)部邏輯。 數(shù)據(jù)耦合數(shù)據(jù)耦合(D

15、ata coupling): 模塊之間通過(guò)參數(shù)(數(shù)據(jù))交換信息。模塊之間通過(guò)參數(shù)(數(shù)據(jù))交換信息。 模塊之間至少存在數(shù)據(jù)耦合。模塊之間至少存在數(shù)據(jù)耦合。 Only data are passed. It is easy to trace data and make changes.原則:原則:盡量使用數(shù)據(jù)耦合;盡量使用數(shù)據(jù)耦合; 少用控制耦合;少用控制耦合; 限制公共耦合的范圍;限制公共耦合的范圍; 完全不用內(nèi)容耦合。完全不用內(nèi)容耦合。2.模塊化原理模塊化原理2.模塊化原理模塊化原理 低內(nèi)聚:低內(nèi)聚: 巧合內(nèi)聚、邏輯內(nèi)聚、時(shí)間內(nèi)聚巧合內(nèi)聚、邏輯內(nèi)聚、時(shí)間內(nèi)聚 巧合內(nèi)聚巧合內(nèi)聚(偶然內(nèi)聚,偶然內(nèi)

16、聚,Coincidental cohesion):): 一個(gè)模塊完成一組任務(wù),關(guān)系松散。一個(gè)模塊完成一組任務(wù),關(guān)系松散。 一個(gè)模塊內(nèi)的各處理元素之間沒(méi)有任何聯(lián)系。一個(gè)模塊內(nèi)的各處理元素之間沒(méi)有任何聯(lián)系。 Unrelated functions, processes, or data are found in the same module (for convenience). 內(nèi)聚內(nèi)聚 (Cohesion): The elements of a module are directed to perform the same task.模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度。模塊內(nèi)部各個(gè)元素彼此結(jié)合

17、的緊密程度。.2.模塊化原理模塊化原理 邏輯內(nèi)聚邏輯內(nèi)聚(Logical cohesion):): 一個(gè)模塊完成的任務(wù)在邏輯上相同一個(gè)模塊完成的任務(wù)在邏輯上相同/相似相似 Logically related functions or data are placed in the same module. 例如把編輯各種輸入數(shù)據(jù)的功能放在一個(gè)模塊中,通例如把編輯各種輸入數(shù)據(jù)的功能放在一個(gè)模塊中,通過(guò)參數(shù)確定該模塊完成哪一個(gè)功能。過(guò)參數(shù)確定該模塊完成哪一個(gè)功能。A:Read inputsfrom diskfrom tapefrom 例如:例如:2.模塊化原理模塊化原理 時(shí)間內(nèi)聚時(shí)間內(nèi)聚(Tempo

18、ral cohesion):): 一個(gè)模塊內(nèi)所有任務(wù)必須在同一時(shí)間完成。一個(gè)模塊內(nèi)所有任務(wù)必須在同一時(shí)間完成。 The functions are related only by the timing involved.例如:系統(tǒng)的初始化例如:系統(tǒng)的初始化問(wèn)題:不同功能混在一個(gè)模塊中,有時(shí)共用部分問(wèn)題:不同功能混在一個(gè)模塊中,有時(shí)共用部分 編碼,使局部功能的修改牽動(dòng)全局。編碼,使局部功能的修改牽動(dòng)全局。2.模塊化原理模塊化原理 中內(nèi)聚:中內(nèi)聚:過(guò)程內(nèi)聚、通信內(nèi)聚過(guò)程內(nèi)聚、通信內(nèi)聚 過(guò)程內(nèi)聚過(guò)程內(nèi)聚(Procedural cohesion):): 模塊內(nèi)各元素相關(guān),必須以特定次序執(zhí)行。模塊內(nèi)各元

19、素相關(guān),必須以特定次序執(zhí)行。(程序流程圖劃分模塊)(程序流程圖劃分模塊) Functions are grouped together in a module to ensure a certain order of performance.例如:例如:enter datacheck datamanipulate data2.模塊化原理模塊化原理 通信內(nèi)聚通信內(nèi)聚(Communicational cohesion):): 模塊中所有元素使用同一個(gè)模塊中所有元素使用同一個(gè)I/OI/O。 All the functions in a module operate on or produce the

20、 same data set.例如:從同一磁帶上讀取不相干的數(shù)據(jù)例如:從同一磁帶上讀取不相干的數(shù)據(jù) 可能破壞獨(dú)立性??赡芷茐莫?dú)立性。2.模塊化原理模塊化原理 高內(nèi)聚:高內(nèi)聚:順序內(nèi)聚、順序內(nèi)聚、功能內(nèi)聚功能內(nèi)聚 順序內(nèi)聚順序內(nèi)聚(Sequential cohesion):): 所有元素與同一功能密切相關(guān),順序執(zhí)行。所有元素與同一功能密切相關(guān),順序執(zhí)行。前一功能前一功能元素的輸出是后一功能元素的輸入。元素的輸出是后一功能元素的輸入。(數(shù)據(jù)流圖劃分模塊)(數(shù)據(jù)流圖劃分模塊) The output from one part of a module is the input to the next

21、part. 功能內(nèi)聚功能內(nèi)聚(Functional cohesion):): 所有元素屬于一個(gè)整體,完成同一功能。所有元素屬于一個(gè)整體,完成同一功能。缺一不可。缺一不可。 Every processing element is essential to the performance of a single function.3.啟發(fā)式規(guī)則啟發(fā)式規(guī)則2. 模塊規(guī)模適中:模塊規(guī)模適中: 過(guò)大不易理解;太小則接口開(kāi)銷過(guò)大。過(guò)大不易理解;太小則接口開(kāi)銷過(guò)大。 注意分解后不應(yīng)降低模塊的獨(dú)立性。注意分解后不應(yīng)降低模塊的獨(dú)立性。模塊的大小準(zhǔn)則:模塊的大小準(zhǔn)則:最好在最好在50150條語(yǔ)句左右,條語(yǔ)句左右,

22、便于理解。便于理解。1. 爭(zhēng)取低耦合、高內(nèi)聚(增加內(nèi)聚爭(zhēng)取低耦合、高內(nèi)聚(增加內(nèi)聚 減少耦合)減少耦合) 提高模塊獨(dú)立性。提高模塊獨(dú)立性。3. 適當(dāng)控制適當(dāng)控制 深度深度 = 分層的層數(shù)。過(guò)大表示分工過(guò)細(xì)。分層的層數(shù)。過(guò)大表示分工過(guò)細(xì)。 寬度寬度 = 同一層上模塊數(shù)的最大值。同一層上模塊數(shù)的最大值。 過(guò)大表示系統(tǒng)復(fù)雜度大。(扇出過(guò)大表示系統(tǒng)復(fù)雜度大。(扇出 )3.啟發(fā)式規(guī)劃啟發(fā)式規(guī)劃3.啟發(fā)式規(guī)劃啟發(fā)式規(guī)劃 扇出扇出 = 一個(gè)模塊直接一個(gè)模塊直接調(diào)用調(diào)用控制的模塊數(shù)??刂频哪K數(shù)。 3 fan-out 9AA的扇出的扇出AA的扇入的扇入 扇入扇入 = 直接調(diào)用該模直接調(diào)用該模塊的模塊數(shù)塊的模塊

23、數(shù)在不破壞獨(dú)立性的前提在不破壞獨(dú)立性的前提下,下,fan-in 大的比較好。大的比較好。3.啟發(fā)式規(guī)劃啟發(fā)式規(guī)劃 深度、寬度、扇入、扇出。深度、寬度、扇入、扇出。TDMABC扇入扇入扇出扇出深深度度寬度寬度 較好的軟件結(jié)構(gòu):頂層扇出多,中層扇出比較較好的軟件結(jié)構(gòu):頂層扇出多,中層扇出比較少,底層高扇入。少,底層高扇入。3.啟發(fā)式規(guī)劃啟發(fā)式規(guī)劃3.啟發(fā)式規(guī)劃啟發(fā)式規(guī)劃4、作用域在控制域內(nèi)、作用域在控制域內(nèi) 控制域控制域MACB直接直接/間接從屬于它的集合間接從屬于它的集合 M的控制域?yàn)榈目刂朴驗(yàn)?M,A,B,C 作用域:作用域:M中的一個(gè)判定所影響的模塊。中的一個(gè)判定所影響的模塊。例如:例如:A

24、: if then goto B1 B: B1: 作用域在控制域內(nèi)作用域在控制域內(nèi)A: if then goto M1 M: M1: goto C1 作用域超出了控制域作用域超出了控制域上例中上例中A的作用超出了控制域。的作用超出了控制域。改進(jìn)方法之一,可以把改進(jìn)方法之一,可以把A中的中的 if 移到移到M中;中; 方法之二,可以把方法之二,可以把C移到移到A下面。下面。3.啟發(fā)式規(guī)劃啟發(fā)式規(guī)劃5、降低接口的復(fù)雜程度、降低接口的復(fù)雜程度 模塊的結(jié)構(gòu)準(zhǔn)則:模塊的結(jié)構(gòu)準(zhǔn)則:接口要簡(jiǎn)單、清晰及含義明確,便于理接口要簡(jiǎn)單、清晰及含義明確,便于理解,易于實(shí)現(xiàn)、測(cè)試與維護(hù)。解,易于實(shí)現(xiàn)、測(cè)試與維護(hù)。 接口

25、復(fù)雜接口復(fù)雜/不一致,可能表明緊耦合,低內(nèi)聚,模塊的獨(dú)不一致,可能表明緊耦合,低內(nèi)聚,模塊的獨(dú)立性差。立性差。6、單出單入,避免內(nèi)容耦合。、單出單入,避免內(nèi)容耦合。7、模塊功能可預(yù)測(cè)、模塊功能可預(yù)測(cè) 相同輸入必產(chǎn)生相同輸出。相同輸入必產(chǎn)生相同輸出。 反例:模塊中使用全局變量或靜態(tài)變量,反例:模塊中使用全局變量或靜態(tài)變量, 則可則可 能導(dǎo)致不可預(yù)測(cè)。能導(dǎo)致不可預(yù)測(cè)。作業(yè):你自己負(fù)責(zé)設(shè)計(jì)的作業(yè):你自己負(fù)責(zé)設(shè)計(jì)的MIS界面中可能遇到哪些類型的界面中可能遇到哪些類型的耦合和內(nèi)聚?耦合和內(nèi)聚? 對(duì)列出的每種類型試舉一例。對(duì)列出的每種類型試舉一例。4.圖形工具圖形工具1、Hierarchy和和HIPO 描

26、繪軟件層次描繪軟件層次 結(jié)構(gòu)。結(jié)構(gòu)。例:例:BooKMisInterface編輯編輯2.0打印打印3.0錄入錄入1.0檢索檢索4.0刪除刪除2.3修改修改2.2添加添加2.1書(shū)名書(shū)名4.1分類分類4.2作者名作者名4.3出版社出版社4.4自然自然科學(xué)科學(xué)4.2.14.圖形工具圖形工具注意:注意: 這里的這里的hierarchy表現(xiàn)軟件的結(jié)構(gòu),而非數(shù)據(jù)結(jié)構(gòu);表現(xiàn)軟件的結(jié)構(gòu),而非數(shù)據(jù)結(jié)構(gòu); 每個(gè)矩形框代表一個(gè)模塊,每個(gè)矩形框代表一個(gè)模塊,框內(nèi)名字體現(xiàn)該??騼?nèi)名字體現(xiàn)該模塊的功能。塊的功能。 連線表示連線表示“調(diào)用調(diào)用”而非而非“組成組成”。模塊間的控模塊間的控制關(guān)系:制關(guān)系:統(tǒng)率、從屬;統(tǒng)率、從屬

27、; 所謂所謂HIPO,即對(duì)每個(gè)模塊附一張,即對(duì)每個(gè)模塊附一張IPO圖。每個(gè)圖。每個(gè)IPO圖中應(yīng)明確標(biāo)出對(duì)應(yīng)模塊的編號(hào)。圖中應(yīng)明確標(biāo)出對(duì)應(yīng)模塊的編號(hào)。4.圖形工具圖形工具2、結(jié)構(gòu)圖、結(jié)構(gòu)圖(Structured Diagram) 描繪軟件結(jié)構(gòu)描繪軟件結(jié)構(gòu) 符號(hào):符號(hào):數(shù)據(jù)傳遞;數(shù)據(jù)傳遞;控制信息;控制信息;或;或;循環(huán)循環(huán). .例:例:BAMM1M2M3CD注:此圖一般注:此圖一般不入文檔,僅不入文檔,僅用于檢查設(shè)計(jì)用于檢查設(shè)計(jì)的正確性和模的正確性和模塊獨(dú)立性。塊獨(dú)立性。4.圖形工具圖形工具須檢查;須檢查; 每個(gè)傳遞的數(shù)據(jù)是否每個(gè)傳遞的數(shù)據(jù)是否必須必須? 完成模塊功能所必須的數(shù)據(jù)是否完成模塊功能

28、所必須的數(shù)據(jù)是否都傳遞了都傳遞了? 傳輸?shù)臄?shù)據(jù)是否只與傳輸?shù)臄?shù)據(jù)是否只與單一單一的功能有關(guān)?的功能有關(guān)? 是否目的明確?是否目的明確?5.面向數(shù)據(jù)流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法(結(jié)構(gòu)化方法(結(jié)構(gòu)化方法SD:Structural Design)基本思想:基本思想: DFD System Hierarchy1、Data Flow 的分類的分類 變換流變換流(Transform Flow): (信息)外部(信息)外部?jī)?nèi)部?jī)?nèi)部 外部外部Internal representationInformationTransform flowOutgoingflowIncomingflowExternal re

29、presentationTime事實(shí)上所事實(shí)上所有信息流有信息流都可歸結(jié)都可歸結(jié)為變換流為變換流5.面向數(shù)據(jù)流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法 事務(wù)流事務(wù)流(Transaction Flow)T = Call one of the several subroutines depending on the type of the incoming transaction request.當(dāng)信息流具有明顯當(dāng)信息流具有明顯的的“發(fā)射中心發(fā)射中心”時(shí)時(shí)(“以事務(wù)為中以事務(wù)為中心心”),可歸結(jié)為),可歸結(jié)為事務(wù)流。事務(wù)流。 TTransactionrequest Action paths Transact

30、ion center2. 設(shè)計(jì)過(guò)程設(shè)計(jì)過(guò)程: P.685.面向數(shù)據(jù)流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法3、分析設(shè)計(jì)、分析設(shè)計(jì) 變換分析變換分析例:例:P.96 汽車數(shù)字儀表板的設(shè)計(jì)汽車數(shù)字儀表板的設(shè)計(jì)功能:功能: 通過(guò)模通過(guò)模 - 數(shù)轉(zhuǎn)換實(shí)現(xiàn)傳感器和微處理機(jī)接口;數(shù)轉(zhuǎn)換實(shí)現(xiàn)傳感器和微處理機(jī)接口; 在發(fā)光二極管面板上顯示數(shù)據(jù);在發(fā)光二極管面板上顯示數(shù)據(jù); 指示每小時(shí)英里數(shù)指示每小時(shí)英里數(shù)(mph),行駛的里程,每加行駛的里程,每加侖油行駛的英里數(shù)侖油行駛的英里數(shù)(mpg)等等;等等; 指示加速或減速;指示加速或減速; 如果車速超過(guò)如果車速超過(guò)55mph, 則發(fā)出警告鈴聲。則發(fā)出警告鈴聲。5.面向數(shù)據(jù)

31、流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法第一步:第一步:DFD分界,先分出分界,先分出I、P、O三塊三塊燃料流燃料流 傳感器信號(hào)傳感器信號(hào)SPS旋轉(zhuǎn)信號(hào)旋轉(zhuǎn)信號(hào)讀讀旋轉(zhuǎn)旋轉(zhuǎn)信號(hào)信號(hào)收集收集和求和求平均平均確定確定加加/ /減減速速轉(zhuǎn)換轉(zhuǎn)換成成轉(zhuǎn)轉(zhuǎn)/ /分分計(jì)算計(jì)算里程里程計(jì)算計(jì)算mph,超超速值速值產(chǎn)生產(chǎn)生加加/ /減減速顯示速顯示計(jì)算計(jì)算燃料燃料消耗消耗計(jì)算計(jì)算gph讀和讀和校核校核產(chǎn)生產(chǎn)生mpg顯示顯示產(chǎn)生產(chǎn)生mph顯示顯示發(fā)出發(fā)出鈴聲鈴聲產(chǎn)生產(chǎn)生里程里程顯示顯示SPS SPS箭頭指示箭頭指示燃燒流燃燒流上箭頭上箭頭水平線水平線下箭頭下箭頭rpmrpmgphmphmpgmph超速值超速值英里英里顯

32、示顯示鈴聲鈴聲mph顯示顯示mpg顯示顯示注:注:SPS 信號(hào)信號(hào)/秒秒 rpm轉(zhuǎn)轉(zhuǎn)/分分 gph加侖油加侖油/時(shí)時(shí)5.面向數(shù)據(jù)流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法一般問(wèn)題的一般問(wèn)題的一級(jí)分解方一級(jí)分解方法:法:數(shù)字儀表板數(shù)字儀表板控制控制數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)轉(zhuǎn)換控制控制驅(qū)動(dòng)儀表板驅(qū)動(dòng)儀表板接收傳感器接收傳感器信號(hào)信號(hào)MPIO5.面向數(shù)據(jù)流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法第二步:映射第二步:映射ADCBMICBDA:每個(gè)處理直接對(duì)應(yīng):每個(gè)處理直接對(duì)應(yīng)一個(gè)下層模塊。一個(gè)下層模塊。P:由邊界向:由邊界向回溯回溯,將,將每個(gè)遇到的處理器映每個(gè)遇到的處理器映成相應(yīng)的層模塊。成相應(yīng)的層模塊。I:由邊界向:由邊界向外推

33、外推,方,方法與法與 類似類似OI5.面向數(shù)據(jù)流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法例:例: 數(shù)字儀表板數(shù)字儀表板控制控制數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)轉(zhuǎn)換控制控制驅(qū)動(dòng)儀表板驅(qū)動(dòng)儀表板接收傳感器接收傳感器信號(hào)信號(hào)計(jì)算計(jì)算gph讀燃料流讀燃料流轉(zhuǎn)換成轉(zhuǎn)換成rpm收集收集sps讀旋轉(zhuǎn)信號(hào)讀旋轉(zhuǎn)信號(hào)確定確定加加/ /減速減速計(jì)算計(jì)算mph計(jì)算計(jì)算mpg計(jì)算計(jì)算里程里程加加/ /減速減速顯示顯示顯示顯示mpg顯示顯示mph顯示顯示里程里程發(fā)出發(fā)出鈴聲鈴聲發(fā)光二極管顯示發(fā)光二極管顯示5.面向數(shù)據(jù)流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法第三步:修改第三步:修改 本著高內(nèi)聚、低耦合的原則。本著高內(nèi)聚、低耦合的原則。例:精化后的數(shù)字儀表板系

34、統(tǒng)的軟件結(jié)構(gòu)。例:精化后的數(shù)字儀表板系統(tǒng)的軟件結(jié)構(gòu)。5.面向數(shù)據(jù)流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法注:每個(gè)模塊應(yīng)附一簡(jiǎn)要說(shuō)明描述注:每個(gè)模塊應(yīng)附一簡(jiǎn)要說(shuō)明描述 進(jìn)出該模塊的信息(接口描述);進(jìn)出該模塊的信息(接口描述); 模塊內(nèi)部的信息;模塊內(nèi)部的信息; 過(guò)程陳述,包括主要判定點(diǎn)及任務(wù)等;過(guò)程陳述,包括主要判定點(diǎn)及任務(wù)等; 對(duì)約束和特殊特點(diǎn)的簡(jiǎn)短討論。對(duì)約束和特殊特點(diǎn)的簡(jiǎn)短討論。5.面向數(shù)據(jù)流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法 事務(wù)分析事務(wù)分析MIIISABCIIISBAC接受分支接受分支發(fā)送分支發(fā)送分支5.面向數(shù)據(jù)流的設(shè)計(jì)方法面向數(shù)據(jù)流的設(shè)計(jì)方法3、SD的總體過(guò)程:的總體過(guò)程:“變換變換”“事務(wù)事務(wù)”精化數(shù)據(jù)流圖精化數(shù)據(jù)流圖流類型流類型區(qū)分事務(wù)中心和區(qū)分事務(wù)中心和數(shù)據(jù)接收通路數(shù)據(jù)接收通路區(qū)分輸入和區(qū)分輸入和輸出分支輸出分支映射成事務(wù)結(jié)構(gòu)映射成事務(wù)結(jié)構(gòu)映射成變換結(jié)構(gòu)映射成變換結(jié)構(gòu)用啟發(fā)式設(shè)計(jì)規(guī)用啟發(fā)式設(shè)計(jì)規(guī)則精化軟件結(jié)構(gòu)則精化軟件結(jié)構(gòu)導(dǎo)出接口描述和導(dǎo)出接口描述和全程數(shù)據(jù)結(jié)構(gòu)全程數(shù)據(jù)結(jié)構(gòu)復(fù)復(fù) 查查詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)變換分析變換分析事務(wù)分析事務(wù)分析優(yōu)化的前題是優(yōu)化的前題是:“Get it to work, then make it fast.”

展開(kāi)閱讀全文
溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!