資源描述:
《軟件開發(fā)文檔xcz概要設(shè)計(jì)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第五章軟件開發(fā)文檔主要內(nèi)容5.1可行性研究報(bào)告5.2軟件需求文檔5.3面向數(shù)據(jù)流概要設(shè)計(jì)5.4面向數(shù)據(jù)流的詳細(xì)設(shè)計(jì)5.5面向?qū)ο蟮能浖O(shè)計(jì)5.3面向數(shù)據(jù)流的概要設(shè)計(jì)5.3.2軟件設(shè)計(jì)的概念與原理5.3.3模塊的獨(dú)立性5.3.4圖形工具5.3.5概要設(shè)計(jì)說明書的編寫示例5.3.6數(shù)據(jù)庫設(shè)計(jì)5.3.1總體設(shè)計(jì)過程5.3.7數(shù)據(jù)庫設(shè)計(jì)說明書概要設(shè)計(jì):基本目標(biāo)是回答“概括地講,系統(tǒng)應(yīng)該如何實(shí)現(xiàn)?”。概要設(shè)計(jì)的兩項(xiàng)設(shè)計(jì)任務(wù):系統(tǒng)設(shè)計(jì)結(jié)構(gòu)設(shè)計(jì)確定系統(tǒng)的具體實(shí)現(xiàn)方案確定軟件結(jié)構(gòu)5.3.1總體設(shè)計(jì)過程(1)設(shè)想供選擇的
2、方案(2)選取合理的方案(3)推薦最佳方案(4)功能分解(5)設(shè)計(jì)軟件結(jié)構(gòu)(6)數(shù)據(jù)庫設(shè)計(jì)(7)指定測試計(jì)劃(8)書寫文檔(9)審查與復(fù)審總體設(shè)計(jì)的過程:(1)設(shè)想供選擇的方案數(shù)據(jù)流圖需求分析階段方案1方案2方案n規(guī)劃不同的自動(dòng)化邊界總體設(shè)計(jì)的過程:(2)選取合理的方案方案1方案2方案n工程規(guī)模與目標(biāo)征求用戶意見低成本中成本高成本選擇的方案總體設(shè)計(jì)的過程:(3)推薦最佳方案部門負(fù)責(zé)人審批用戶與技術(shù)專家審查推薦最佳方案詳細(xì)實(shí)現(xiàn)計(jì)劃進(jìn)入結(jié)構(gòu)設(shè)計(jì)總體設(shè)計(jì)的過程:(4)功能分解把復(fù)雜的功能進(jìn)一步分解為一系列比較
3、簡單的功能。以確定軟件結(jié)構(gòu)。(5)設(shè)計(jì)軟件結(jié)構(gòu)軟件結(jié)構(gòu)是由模塊組成的層次系統(tǒng),通常用層次圖或結(jié)構(gòu)圖來描述??傮w設(shè)計(jì)的過程:(6)數(shù)據(jù)庫設(shè)計(jì)通常的四個(gè)步驟:?模式設(shè)計(jì)?子模式設(shè)計(jì)?完整性與安全性?優(yōu)化(7)指定測試計(jì)劃在軟件開發(fā)早期考慮測試問題,能使軟件設(shè)計(jì)人員在軟件設(shè)計(jì)時(shí)注意提高軟件的可測試性??傮w設(shè)計(jì)的過程:(8)書寫文檔?系統(tǒng)說明?用戶手冊?測試計(jì)劃?詳細(xì)的實(shí)現(xiàn)計(jì)劃?數(shù)據(jù)庫設(shè)計(jì)結(jié)果(9)審查與復(fù)審?技術(shù)審查?管理復(fù)審5.3面向數(shù)據(jù)流的概要設(shè)計(jì)5.3.2軟件設(shè)計(jì)的概念與原理5.3.3模塊的獨(dú)立性5.3
4、.4圖形工具5.3.5概要設(shè)計(jì)說明書的編寫示例5.3.6數(shù)據(jù)庫設(shè)計(jì)5.3.1總體設(shè)計(jì)過程5.3.7數(shù)據(jù)庫設(shè)計(jì)說明書軟件設(shè)計(jì)的概念與原理?軟件系統(tǒng)的模塊化是指整個(gè)軟件被劃分成若干單獨(dú)命名和可編址的部分,稱之為模塊。這些模塊可以被組裝起來以滿足整個(gè)問題的需求。?把問題/子問題的分解與軟件開發(fā)中的系統(tǒng)/子系統(tǒng)或系統(tǒng)/模塊對(duì)應(yīng)起來,就能夠把一個(gè)大而復(fù)雜的軟件系統(tǒng)劃分成易于理解的比較單純的模塊結(jié)構(gòu)。模塊化:軟件設(shè)計(jì)的概念與原理?現(xiàn)實(shí)世界中一定的事物,狀態(tài)或過程之間總存在某些相似的方面(共性)。把這些相似方面集中和
5、概括起來,暫時(shí)忽略它們之間的差異,這就是抽象。抽象化:5.3面向數(shù)據(jù)流的概要設(shè)計(jì)5.3.2軟件設(shè)計(jì)的概念與原理5.3.3模塊的獨(dú)立性5.3.4圖形工具5.3.5概要設(shè)計(jì)說明書的編寫示例5.3.6數(shù)據(jù)庫設(shè)計(jì)5.3.1總體設(shè)計(jì)過程5.3.7數(shù)據(jù)庫設(shè)計(jì)說明書模塊(Module)模塊獨(dú)立性模塊的獨(dú)立性:?模塊(Module)“模塊”,又稱“組件”。它一般具有如下三個(gè)基本屬性:功能:描述該模塊實(shí)現(xiàn)什么功能邏輯:描述模塊內(nèi)部怎么做狀態(tài):該模塊使用時(shí)的環(huán)境和條件模塊的獨(dú)立性:?模塊獨(dú)立性模塊獨(dú)立性,是指軟件系統(tǒng)中每個(gè)
6、模塊只涉及軟件要求的具體的子功能,而和軟件系統(tǒng)中其它的模塊的接口是簡單的例如,若一個(gè)模塊只具有單一的功能且與其它模塊沒有太多的聯(lián)系,則稱此模塊具有模塊獨(dú)立性模塊的獨(dú)立性:模塊獨(dú)立性重要性:(1)有效的模塊化的軟件比較容易開發(fā)(2)獨(dú)立的模塊比較容易測試和維護(hù)。一般采用兩個(gè)準(zhǔn)則度量模塊獨(dú)立性。即模塊間耦合和模塊內(nèi)聚耦合是模塊之間的互相連接的緊密程度的度量。內(nèi)聚是模塊功能強(qiáng)度(一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度)的度量。模塊獨(dú)立性比較強(qiáng)的模塊應(yīng)是高內(nèi)聚低耦合的模塊。模塊的獨(dú)立性:模塊間的耦合非直接耦合(
7、NondirectCoupling)如果兩個(gè)模塊之間沒有直接關(guān)系,它們之間的聯(lián)系完全是通過主模塊的控制和調(diào)用來實(shí)現(xiàn)的,這就是非直接耦合。這種耦合的模塊獨(dú)立性最強(qiáng)。模塊的獨(dú)立性:數(shù)據(jù)耦合(DataCoupling)如果一個(gè)模塊訪問另一個(gè)模塊時(shí),彼此之間是通過簡單數(shù)據(jù)參數(shù)(不是控制參數(shù)、公共數(shù)據(jù)結(jié)構(gòu)或外部變量)來交換輸入、輸出信息的,則稱這種耦合為數(shù)據(jù)耦合。標(biāo)記耦合(StampCoupling)如果一組模塊通過參數(shù)表傳遞記錄信息,就是標(biāo)記耦合。這個(gè)記錄是某一數(shù)據(jù)結(jié)構(gòu)的子結(jié)構(gòu),而不是簡單變量。模塊的獨(dú)立性:控
8、制耦合(ControlCoupling)如果一個(gè)模塊通過傳送開關(guān)、標(biāo)志、名字等控制信息,明顯地控制選擇另一模塊的功能,就是控制耦合。模塊的獨(dú)立性:外部耦合(ExternalCoupling)一組模塊都訪問同一全局簡單變量而不是同一全局?jǐn)?shù)據(jù)結(jié)構(gòu),而且不是通過參數(shù)表傳遞該全局變量的信息,則稱之為外部耦合。公共耦合(CommonCoupling)若一組模塊都訪問同一個(gè)公共數(shù)據(jù)環(huán)境,則它們之間的耦合就稱為公共耦合。公共的數(shù)據(jù)環(huán)境可以是全局?jǐn)?shù)據(jù)結(jié)構(gòu)、