第六章系統(tǒng)設(shè)計_第1頁
第六章系統(tǒng)設(shè)計_第2頁
第六章系統(tǒng)設(shè)計_第3頁
第六章系統(tǒng)設(shè)計_第4頁
第六章系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩192頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第六章第六章 系統(tǒng)設(shè)計系統(tǒng)設(shè)計系統(tǒng)運行和維護系統(tǒng)運行和維護 系統(tǒng)規(guī)劃系統(tǒng)規(guī)劃 系統(tǒng)實施系統(tǒng)實施 系統(tǒng)分析系統(tǒng)分析 開發(fā)開發(fā) 設(shè)計設(shè)計 初步初步 調(diào)查調(diào)查 可行性可行性 研究研究 審批審批 系統(tǒng)系統(tǒng) 評價評價 系統(tǒng)系統(tǒng) 維護維護 總體總體 設(shè)計設(shè)計 詳細詳細 設(shè)計設(shè)計 審計審計 審查審查 編程編程 調(diào)試調(diào)試 系統(tǒng)系統(tǒng) 轉(zhuǎn)換轉(zhuǎn)換 驗收驗收 詳細詳細 調(diào)查調(diào)查 邏輯邏輯 設(shè)計設(shè)計 階段階段回答的中心問題回答的中心問題成果成果系統(tǒng)分析系統(tǒng)分析“做什么做什么”明確系統(tǒng)功能明確系統(tǒng)功能邏輯模型邏輯模型系統(tǒng)設(shè)計系統(tǒng)設(shè)計“怎么做怎么做”如何實現(xiàn)系統(tǒng)說明如何實現(xiàn)系統(tǒng)說明書規(guī)定的系統(tǒng)功能書規(guī)定的系統(tǒng)功能物理模型物

2、理模型第一節(jié)第一節(jié) 系統(tǒng)設(shè)計的任務(wù)系統(tǒng)設(shè)計的任務(wù)系統(tǒng)邏輯模型系統(tǒng)邏輯模型數(shù)據(jù)集中性選擇數(shù)據(jù)集中性選擇計算模式設(shè)計計算模式設(shè)計系統(tǒng)運行平臺設(shè)計系統(tǒng)運行平臺設(shè)計用戶界面設(shè)計用戶界面設(shè)計安全設(shè)計安全設(shè)計編寫系統(tǒng)設(shè)計報告編寫系統(tǒng)設(shè)計報告存儲設(shè)計存儲設(shè)計軟件設(shè)計軟件設(shè)計系統(tǒng)設(shè)計流程系統(tǒng)設(shè)計流程1 1、把總?cè)蝿?wù)分解為許多基本的、具體的任務(wù)、把總?cè)蝿?wù)分解為許多基本的、具體的任務(wù) 具體的任務(wù)合理組織構(gòu)成總?cè)蝿?wù)。又稱為總體設(shè)計具體的任務(wù)合理組織構(gòu)成總?cè)蝿?wù)。又稱為總體設(shè)計(architectural designarchitectural design), ,或概要設(shè)計(或概要設(shè)計(preliminary pre

3、liminary designdesign)。其基本任務(wù):)。其基本任務(wù): 系統(tǒng)軟件體系結(jié)構(gòu)系統(tǒng)軟件體系結(jié)構(gòu) 系統(tǒng)計算模式系統(tǒng)計算模式 系統(tǒng)運行平臺系統(tǒng)運行平臺 系統(tǒng)軟件結(jié)構(gòu)系統(tǒng)軟件結(jié)構(gòu)信息系統(tǒng)流程圖信息系統(tǒng)流程圖功能結(jié)構(gòu)圖功能結(jié)構(gòu)圖功能模塊圖功能模塊圖6.1.1 系統(tǒng)設(shè)計的主要任務(wù)系統(tǒng)設(shè)計的主要任務(wù)2 2、詳細設(shè)計、詳細設(shè)計為各個具體任務(wù)選擇適當(dāng)?shù)募夹g(shù)手段和處理方法。包括:為各個具體任務(wù)選擇適當(dāng)?shù)募夹g(shù)手段和處理方法。包括:代碼(編碼)設(shè)計代碼(編碼)設(shè)計數(shù)據(jù)存儲設(shè)計:數(shù)據(jù)庫的設(shè)計、數(shù)據(jù)庫安全設(shè)計等數(shù)據(jù)存儲設(shè)計:數(shù)據(jù)庫的設(shè)計、數(shù)據(jù)庫安全設(shè)計等計算機處理過程的設(shè)計。包括輸出設(shè)計、輸入設(shè)計、計算機

4、處理過程的設(shè)計。包括輸出設(shè)計、輸入設(shè)計、 人機對話設(shè)計等。人機對話設(shè)計等。6.1.1 系統(tǒng)設(shè)計的主要任務(wù)系統(tǒng)設(shè)計的主要任務(wù) 系統(tǒng)是作為統(tǒng)一整體而存在的,因此,在系統(tǒng)系統(tǒng)是作為統(tǒng)一整體而存在的,因此,在系統(tǒng)設(shè)計中,要從設(shè)計中,要從 整個系統(tǒng)的角度進行考慮,系統(tǒng)的代整個系統(tǒng)的角度進行考慮,系統(tǒng)的代碼要統(tǒng)一,設(shè)計規(guī)范要標準,傳遞語言要碼要統(tǒng)一,設(shè)計規(guī)范要標準,傳遞語言要 盡可能一盡可能一致,對系統(tǒng)的數(shù)據(jù)采集要做到數(shù)出一處、全局共享,致,對系統(tǒng)的數(shù)據(jù)采集要做到數(shù)出一處、全局共享,使一次輸入得到使一次輸入得到 多次利用。多次利用。 6.1.2 系統(tǒng)設(shè)計的原則系統(tǒng)設(shè)計的原則 實用性指以全新的設(shè)計理念、全新

5、的技術(shù)架構(gòu)、全實用性指以全新的設(shè)計理念、全新的技術(shù)架構(gòu)、全新的供應(yīng)模式,來滿足企業(yè)的實際需要的、動態(tài)變化的、新的供應(yīng)模式,來滿足企業(yè)的實際需要的、動態(tài)變化的、不斷增長的需求。不斷增長的需求。 系統(tǒng)設(shè)計充分考慮用戶當(dāng)前各業(yè)務(wù)層次、各環(huán)節(jié)管理中數(shù)據(jù)處系統(tǒng)設(shè)計充分考慮用戶當(dāng)前各業(yè)務(wù)層次、各環(huán)節(jié)管理中數(shù)據(jù)處理的方便性和可行性;理的方便性和可行性; 總體設(shè)計,分步實施(低總體設(shè)計,分步實施(低高);高); 人機操作設(shè)計考慮用戶的實際需要;人機操作設(shè)計考慮用戶的實際需要; 界面設(shè)計界面設(shè)計6.1.2 系統(tǒng)設(shè)計的原則系統(tǒng)設(shè)計的原則 采用當(dāng)今國內(nèi)、國際上成熟的信息技術(shù),以保采用當(dāng)今國內(nèi)、國際上成熟的信息技術(shù),

6、以保證系統(tǒng)的科學(xué)性,使新系統(tǒng)在最大限度地適應(yīng)今后證系統(tǒng)的科學(xué)性,使新系統(tǒng)在最大限度地適應(yīng)今后企業(yè)運作和管理發(fā)展變化的前提下滿足技術(shù)發(fā)展變企業(yè)運作和管理發(fā)展變化的前提下滿足技術(shù)發(fā)展變化的需要?;男枰?。 技術(shù)先進性應(yīng)該適度;技術(shù)先進性應(yīng)該適度; 先進性和實用性之間平衡先進性和實用性之間平衡6.1.2 系統(tǒng)設(shè)計的原則系統(tǒng)設(shè)計的原則 為保持系統(tǒng)的長久生命力,要求系統(tǒng)具有很強為保持系統(tǒng)的長久生命力,要求系統(tǒng)具有很強的環(huán)境適應(yīng)性,的環(huán)境適應(yīng)性, 為此,系統(tǒng)應(yīng)具有較好的開放性和為此,系統(tǒng)應(yīng)具有較好的開放性和結(jié)構(gòu)的可變性。在系統(tǒng)設(shè)計中,應(yīng)盡量采用結(jié)構(gòu)的可變性。在系統(tǒng)設(shè)計中,應(yīng)盡量采用,提高各模塊的獨立性,盡

7、可能減少模塊間的,提高各模塊的獨立性,盡可能減少模塊間的數(shù)據(jù)耦合,使各子系數(shù)據(jù)耦合,使各子系 統(tǒng)間的數(shù)據(jù)依賴減至最低限度。統(tǒng)間的數(shù)據(jù)依賴減至最低限度。這樣,既便于模塊的修改,又便于增加新的內(nèi)這樣,既便于模塊的修改,又便于增加新的內(nèi) 容,容,提高系統(tǒng)適應(yīng)環(huán)境變化的能力。提高系統(tǒng)適應(yīng)環(huán)境變化的能力。 6.1.2 系統(tǒng)設(shè)計的原則系統(tǒng)設(shè)計的原則 可靠性是指系統(tǒng)抵御外界干擾的能力及受外界可靠性是指系統(tǒng)抵御外界干擾的能力及受外界干擾時的恢復(fù)干擾時的恢復(fù) 能力。一個成功的管理信息系統(tǒng)必須能力。一個成功的管理信息系統(tǒng)必須具有較高的可靠性,如安全保密性、檢錯具有較高的可靠性,如安全保密性、檢錯 及糾錯能及糾錯能

8、力、抗病毒能力等。力、抗病毒能力等。 6.1.2 系統(tǒng)設(shè)計的原則系統(tǒng)設(shè)計的原則第二節(jié)第二節(jié) 系統(tǒng)運行平臺設(shè)計系統(tǒng)運行平臺設(shè)計6.2.1 系統(tǒng)平臺設(shè)計依據(jù)系統(tǒng)平臺設(shè)計依據(jù) 系統(tǒng)運行平臺是指管理信息系統(tǒng)運行所依系統(tǒng)運行平臺是指管理信息系統(tǒng)運行所依賴的硬件和軟件賴的硬件和軟件,因此其設(shè)計就是針對新系統(tǒng)的目標,因此其設(shè)計就是針對新系統(tǒng)的目標,在各種技術(shù)手段和實施方法中權(quán)衡利弊,合理地利用各在各種技術(shù)手段和實施方法中權(quán)衡利弊,合理地利用各種資源,選擇適當(dāng)?shù)挠嬎銠C硬件、網(wǎng)絡(luò)通訊設(shè)備及其它種資源,選擇適當(dāng)?shù)挠嬎銠C硬件、網(wǎng)絡(luò)通訊設(shè)備及其它輔助設(shè)備軟件,以滿足新系統(tǒng)邏輯模型的需要和技術(shù)需輔助設(shè)備軟件,以滿足新系

9、統(tǒng)邏輯模型的需要和技術(shù)需求。求。系統(tǒng)硬件平臺系統(tǒng)硬件平臺系統(tǒng)網(wǎng)絡(luò)配置系統(tǒng)網(wǎng)絡(luò)配置系統(tǒng)軟件平臺系統(tǒng)軟件平臺6.2.1 系統(tǒng)平臺設(shè)計依據(jù)系統(tǒng)平臺設(shè)計依據(jù)系統(tǒng)平臺系統(tǒng)平臺設(shè)計依據(jù)設(shè)計依據(jù)信息技術(shù)信息技術(shù)環(huán)境環(huán)境可用的技術(shù)和產(chǎn)品詳細調(diào)查詳細調(diào)查的信息的信息信息處理量、存儲量現(xiàn)有現(xiàn)有平臺平臺企業(yè)可能企業(yè)可能投資投資新系統(tǒng)的新系統(tǒng)的邏輯模型邏輯模型系統(tǒng)的用戶、功能數(shù)據(jù)的數(shù)據(jù)的集中性集中性6.2.2 系統(tǒng)平臺的設(shè)計方法系統(tǒng)平臺的設(shè)計方法 系統(tǒng)平臺的設(shè)計應(yīng)該建立在對企業(yè)現(xiàn)有的計算系統(tǒng)平臺的設(shè)計應(yīng)該建立在對企業(yè)現(xiàn)有的計算機系統(tǒng)硬件、軟件、網(wǎng)絡(luò)設(shè)備以及市場充分了解的機系統(tǒng)硬件、軟件、網(wǎng)絡(luò)設(shè)備以及市場充分了解的基礎(chǔ)

10、上,根據(jù)系統(tǒng)的要求和用戶的實際情況,分析基礎(chǔ)上,根據(jù)系統(tǒng)的要求和用戶的實際情況,分析各種系統(tǒng)平臺設(shè)計的配置、結(jié)構(gòu)、報價和優(yōu)缺點,各種系統(tǒng)平臺設(shè)計的配置、結(jié)構(gòu)、報價和優(yōu)缺點,提出包含若干方案的系統(tǒng)平臺設(shè)計報告,然后經(jīng)過提出包含若干方案的系統(tǒng)平臺設(shè)計報告,然后經(jīng)過有關(guān)人員的充分討論,選擇一個最佳方案。有關(guān)人員的充分討論,選擇一個最佳方案。1 1、類比法、類比法 類比法是指考察類似系統(tǒng)的平臺設(shè)計方案,比較其優(yōu)缺點以及與新系統(tǒng)的異同點,并根據(jù)具體情況作出相應(yīng)的改進或改動。 優(yōu)點:簡單、方便、直觀,可以充分吸取其它平臺設(shè)計方法的經(jīng)驗教訓(xùn); 缺點:應(yīng)用范圍有限。6.2.2 系統(tǒng)平臺的設(shè)計方法系統(tǒng)平臺的設(shè)計

11、方法2 2、招投標法、招投標法 首先根據(jù)新系統(tǒng)的邏輯模型,以及各投標公司提供的系統(tǒng)平臺設(shè)計方案,在綜合價格、質(zhì)量、培訓(xùn)、售后服務(wù)等因素后,確定中標公司。 優(yōu)點:專業(yè)公司的專業(yè)知識;選擇的權(quán)力;降低成本。 缺點:篩選出的方案未必最佳。6.2.2 系統(tǒng)平臺的設(shè)計方法系統(tǒng)平臺的設(shè)計方法 管理對計算機的基本要求是速度快、容管理對計算機的基本要求是速度快、容量大、通道能力強、操作靈活方便,但計算量大、通道能力強、操作靈活方便,但計算機的性能越高,其價格也就愈昂貴,因此,機的性能越高,其價格也就愈昂貴,因此,在計算機硬件的選擇上應(yīng)全面考慮。在計算機硬件的選擇上應(yīng)全面考慮。 6.2.3 計算機硬件的選擇計算

12、機硬件的選擇1 1、數(shù)據(jù)的處理方式、數(shù)據(jù)的處理方式主計算機主計算機前端處理機前端處理機TCTC.集中式數(shù)據(jù)處理集中式數(shù)據(jù)處理6.2.3 計算機硬件的選擇計算機硬件的選擇2 2、應(yīng)用軟件對計算機處理能力的需求、應(yīng)用軟件對計算機處理能力的需求(1)(1)計算機主存計算機主存; ;(2)CPU(2)CPU時鐘時鐘; ;(3)(3)輸入、輸出和通信的通道數(shù)目輸入、輸出和通信的通道數(shù)目; ;(4)(4)顯示方式顯示方式; ;(5)(5)外接轉(zhuǎn)儲設(shè)備及其類型。外接轉(zhuǎn)儲設(shè)備及其類型。6.2.3 計算機硬件的選擇計算機硬件的選擇1 1、網(wǎng)絡(luò)的拓撲結(jié)構(gòu)、網(wǎng)絡(luò)的拓撲結(jié)構(gòu)總線型總線型星型星型環(huán)型環(huán)型混合型混合型6.

13、2.4 計算機網(wǎng)絡(luò)的選擇計算機網(wǎng)絡(luò)的選擇網(wǎng)絡(luò)拓樸結(jié)構(gòu)網(wǎng)絡(luò)拓樸結(jié)構(gòu)2 2、網(wǎng)絡(luò)的邏輯設(shè)計、網(wǎng)絡(luò)的邏輯設(shè)計3 3、網(wǎng)絡(luò)操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)UNIXUNIXNetwareNetwareWindows NT Windows NT 6.2.4 計算機網(wǎng)絡(luò)的選擇計算機網(wǎng)絡(luò)的選擇6.2.5 軟件選型軟件選型1.1.軟件選型的原則軟件選型的原則 符合開放式系統(tǒng)的發(fā)展方向符合開放式系統(tǒng)的發(fā)展方向 必要和足夠的軟件工具支持必要和足夠的軟件工具支持 對新技術(shù)的支持能力對新技術(shù)的支持能力 購買成本購買成本6.2.5 軟件選型軟件選型2.2.軟件選型的內(nèi)容軟件選型的內(nèi)容 操作系統(tǒng)操作系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)

14、 對實用軟件對實用軟件 數(shù)據(jù)庫管理系統(tǒng)的選擇數(shù)據(jù)庫管理系統(tǒng)的選擇在數(shù)據(jù)庫管理系統(tǒng)的選擇上,主要考慮:(1)(1)數(shù)據(jù)庫的性能數(shù)據(jù)庫的性能; ;(2)(2)數(shù)據(jù)庫管理系統(tǒng)的系統(tǒng)平臺數(shù)據(jù)庫管理系統(tǒng)的系統(tǒng)平臺; ;(3)(3)數(shù)據(jù)庫管理系統(tǒng)的安全保密性能數(shù)據(jù)庫管理系統(tǒng)的安全保密性能; ;(4)(4)數(shù)據(jù)的類型。數(shù)據(jù)的類型。 6.2.5 軟件選型軟件選型 應(yīng)用軟件的選擇應(yīng)用軟件的選擇1 1軟件是否能夠滿足用戶的需求。軟件是否能夠滿足用戶的需求。 2 2軟件是否具有足夠的靈活性。軟件是否具有足夠的靈活性。 3 3軟件的技術(shù)支持軟件的技術(shù)支持 6.2.5 軟件選型軟件選型第三節(jié)第三節(jié) 結(jié)構(gòu)化系統(tǒng)設(shè)計方法結(jié)

15、構(gòu)化系統(tǒng)設(shè)計方法 結(jié)構(gòu)化設(shè)計(StructuredDesign,SD)方法,是各種設(shè)計方法中最受重視、使用最廣泛的一種方法。是系統(tǒng)設(shè)計的有力工具,它與結(jié)構(gòu)化系統(tǒng)分析前后呼應(yīng),結(jié)合成一體,是MIS設(shè)計中常用的一種成功的方法。 結(jié)構(gòu)化系統(tǒng)設(shè)計方法為建立一個系統(tǒng)的良好結(jié)構(gòu),研究了系統(tǒng)在分解模塊(即組成系統(tǒng)的基本單位)時的各種影響,并在此基礎(chǔ)上提出了評價模塊結(jié)構(gòu)質(zhì)量的兩個指標兩個指標模塊的內(nèi)聚和模塊間的耦合。 6.3 結(jié)構(gòu)化系統(tǒng)設(shè)計方法結(jié)構(gòu)化系統(tǒng)設(shè)計方法1. 系統(tǒng)的結(jié)構(gòu)系統(tǒng)的結(jié)構(gòu) MIS的軟件系統(tǒng)是一個由模塊組成的分層結(jié)構(gòu)。如圖所示。的軟件系統(tǒng)是一個由模塊組成的分層結(jié)構(gòu)。如圖所示。 這種系統(tǒng)的層次結(jié)構(gòu)

16、是通過系統(tǒng)的自頂向下逐層分解而得到的這種系統(tǒng)的層次結(jié)構(gòu)是通過系統(tǒng)的自頂向下逐層分解而得到的 系系 統(tǒng)統(tǒng) M1M2 M1.1 M1.2 M2.1M2.2M2.3系統(tǒng)的深度系統(tǒng)的深度系統(tǒng)的寬度系統(tǒng)的寬度系統(tǒng)的分層結(jié)構(gòu)圖系統(tǒng)的分層結(jié)構(gòu)圖結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則2. 模塊的屬性模塊的屬性 模塊定義了一組邏輯上相關(guān)聯(lián)的對象,這組對象是一組數(shù)據(jù)和對這組數(shù)據(jù)的操作。 模塊的屬性有內(nèi)部屬性和外部屬性模塊的屬性有內(nèi)部屬性和外部屬性。 內(nèi)部屬性內(nèi)部屬性:描述模塊內(nèi)中各元素之間的關(guān)系,可用模描述模塊內(nèi)中各元素之間的關(guān)系,可用模塊的內(nèi)聚來評價塊的內(nèi)聚來評價。 外部屬性外部屬性:是將模塊看成黑盒

17、子,只注意它與外部其是將模塊看成黑盒子,只注意它與外部其它模塊的聯(lián)系,即模塊的輸入和輸出。模塊的外部屬性它模塊的聯(lián)系,即模塊的輸入和輸出。模塊的外部屬性可通過模塊間的耦合程度來評價可通過模塊間的耦合程度來評價。結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則3. 模塊之間的耦合模塊之間的耦合 耦合耦合:是對一個系統(tǒng)內(nèi)不同模塊之間相互依賴程度的是對一個系統(tǒng)內(nèi)不同模塊之間相互依賴程度的度量。度量。換句話說,就是指各模塊間接口的復(fù)雜程度。耦合是模塊設(shè)計的重要指標。一個好的系統(tǒng),應(yīng)該盡可能地降低模塊之間的耦合程度、提高模塊的獨立性。這樣做的優(yōu)點有:優(yōu)點有:1) 便于程序設(shè)計,使程序之間接口簡單便于程序

18、設(shè)計,使程序之間接口簡單;2) 便于程序測試和維護,在對一個程序測試和維護時,便于程序測試和維護,在對一個程序測試和維護時,不必考慮對別的程序的影響。不必考慮對別的程序的影響。結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則 模塊的內(nèi)聚是指模塊內(nèi)部元素之間的彼此結(jié)合的模塊的內(nèi)聚是指模塊內(nèi)部元素之間的彼此結(jié)合的緊密程度。緊密程度。 模塊的內(nèi)聚可分為七個種類,按由低到高的順序,這七個種類有偶然內(nèi)聚、邏輯內(nèi)聚、時間內(nèi)聚、過偶然內(nèi)聚、邏輯內(nèi)聚、時間內(nèi)聚、過程內(nèi)聚、通訊內(nèi)聚、順序內(nèi)聚和功能內(nèi)聚程內(nèi)聚、通訊內(nèi)聚、順序內(nèi)聚和功能內(nèi)聚。 結(jié)構(gòu)化系統(tǒng)設(shè)計的目標是使模塊具有功能內(nèi)聚的結(jié)構(gòu)化系統(tǒng)設(shè)計的目標是使模塊具

19、有功能內(nèi)聚的模塊。模塊。 結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則4. 模塊的內(nèi)聚模塊的內(nèi)聚1)偶然內(nèi)聚)偶然內(nèi)聚 如果一個模塊完成一組任務(wù),這些任務(wù)彼此間的聯(lián)系是很松散的,這就是偶然內(nèi)聚。偶然內(nèi)聚的模塊存在難以給它適當(dāng)?shù)拿⒑x不易理解、調(diào)試困難、修改困難等缺點。 2)邏輯內(nèi)聚)邏輯內(nèi)聚 如果一個模塊完成的任務(wù)在邏輯上屬于相同或相似的一類操作,則稱此模塊為邏輯內(nèi)聚。例如,用一個模塊完成各種報表的打印輸出,這個模塊就屬于邏輯內(nèi)聚型模塊。這種模塊中各元素之間的聯(lián)系很松散,為了節(jié)省存儲,不同功能合用某一段程序,因此造成修改與測試的困難。當(dāng)調(diào)用該模塊時,需要將整個模塊調(diào)入內(nèi)存,而執(zhí)行的只是

20、其中的一部分。結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則3)時間內(nèi)聚)時間內(nèi)聚 如果一個模塊包含的任務(wù)必須在同一時間內(nèi)執(zhí)行,就叫時間內(nèi)聚。例如,初始化模塊需要在月初或年初對幾個數(shù)據(jù)庫文件進行初始化處理。4)過程內(nèi)聚)過程內(nèi)聚 如果一個模塊的處理元素是相關(guān)的,而且必須以特定次序執(zhí)行則稱為過程內(nèi)聚。這是一種中等聯(lián)系的內(nèi)聚。結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則5)通信內(nèi)聚)通信內(nèi)聚 如果模塊中所有元素都使用同一個輸入數(shù)據(jù),并產(chǎn)生同一個輸出數(shù)據(jù),則稱之為通信內(nèi)聚。通信內(nèi)聚的例子見圖。圖中各方塊都屬于同一個模塊的元素,它們都使用文件T的數(shù)據(jù),并產(chǎn)生同一個輸出結(jié)果。通信內(nèi)聚也屬于中等聯(lián)系

21、的內(nèi)聚。文件T讀文件數(shù)據(jù)X數(shù)據(jù)Y計算A計算B合并輸出結(jié)果A結(jié)果B通信內(nèi)聚例圖結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則6)順序內(nèi)聚)順序內(nèi)聚 如果一個模塊內(nèi)的處理元素和同一功能密切相關(guān),而且這些處理必須順序執(zhí)行,則稱為順序內(nèi)聚。通常這種內(nèi)聚模塊中一個處理元素的輸出數(shù)據(jù)作為下一個處理元素的數(shù)據(jù)。如圖所示。圖中四個處理元素是密切相關(guān)并順序執(zhí)行,共同完成一個功能。 順序內(nèi)聚屬于高等聯(lián)系的內(nèi)聚。 文件T讀文件累加計算百分比編制報表 順序內(nèi)聚例圖結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則7)功能內(nèi)聚)功能內(nèi)聚 如果模塊內(nèi)所有處理元素均屬于一個整體,完成一個單一的功能,則稱之為功能內(nèi)聚。 功能

22、內(nèi)聚中模塊內(nèi)各元素間聯(lián)系最緊密,是最高等的內(nèi)聚模塊。由于它功能單一,所以定義該模塊名字時,應(yīng)該是明確而具體的。如工資計算、打印工資表、登記總帳等。綜上所述,綜上所述,內(nèi)聚分為松散、中等和高等三個等級。以功內(nèi)聚分為松散、中等和高等三個等級。以功能內(nèi)聚為最好能內(nèi)聚為最好。結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則結(jié)構(gòu)化系統(tǒng)設(shè)計的基本原則第四節(jié)第四節(jié) 系統(tǒng)的物理結(jié)構(gòu)設(shè)計系統(tǒng)的物理結(jié)構(gòu)設(shè)計系統(tǒng)的物理結(jié)構(gòu)是使用結(jié)構(gòu)化設(shè)計工具HIPO(Hierarchical Input, Processing and Output)圖或系統(tǒng)結(jié)構(gòu)圖(也可稱為功能結(jié)構(gòu)圖)描述的。系系統(tǒng)的物理結(jié)構(gòu)設(shè)計的依據(jù)是系統(tǒng)的邏輯模型。統(tǒng)的物理結(jié)構(gòu)設(shè)計的

23、依據(jù)是系統(tǒng)的邏輯模型。6.4.1. 系統(tǒng)的物理結(jié)構(gòu)的表示系統(tǒng)的物理結(jié)構(gòu)的表示系統(tǒng)的物理結(jié)構(gòu)描述的是構(gòu)成一個系統(tǒng)的各物理組成部分(即模塊)及模塊之間的關(guān)系。這是一個樹型結(jié)構(gòu)圖,它體現(xiàn)了自頂向下的思想,樹根模塊表示系統(tǒng)總的功能,第一層模塊是根模塊的功能的分解,以下各個層次的模塊,都是上一層模塊的功能分解。上一層模塊調(diào)用它直接的下層模塊。具體說,在軟件工程中常用HIPO圖,在MIS中經(jīng)常介紹系統(tǒng)結(jié)構(gòu)圖,而在實際中常用功能結(jié)構(gòu)圖。這些圖,僅是在表示方法上有點不同,而實質(zhì)上是相同的。下面以學(xué)生成績管理為例,用不同的表示方式給出。6.4 系統(tǒng)的物理結(jié)構(gòu)設(shè)計系統(tǒng)的物理結(jié)構(gòu)設(shè)計學(xué)生成績管理輸入成績單成績處理重

24、修處理留級處理成績統(tǒng)計報表輸出輸出重修通知輸出留級通知輸出成績統(tǒng)計表成績查詢查詢重修通知查詢留級通知查詢成績統(tǒng)計表系統(tǒng)維護代碼維護數(shù)據(jù)維護系統(tǒng)管理學(xué)生成績管理系統(tǒng)HIPO圖6.4.1 系統(tǒng)的物理結(jié)構(gòu)的表示系統(tǒng)的物理結(jié)構(gòu)的表示學(xué)生成績管理報表輸出成績查詢系統(tǒng)維護成績處理輸入成績單重修處理留級處理成績統(tǒng)計輸出重修通知輸出留級通知輸出成績統(tǒng)計表查詢重修通知查詢留級通知查詢成績統(tǒng)計表代碼維護數(shù)據(jù)維護系統(tǒng)管理學(xué)生成績管理系統(tǒng)結(jié)構(gòu)圖6.4.1 系統(tǒng)的物理結(jié)構(gòu)的表示系統(tǒng)的物理結(jié)構(gòu)的表示學(xué)生成績管理輸入成績單成績處理報表輸出成績查詢重修處理留級處理成績統(tǒng)計輸出重修通知輸出留級通知輸出成績統(tǒng)計表查詢重修通知查詢

25、留級通知查詢成績統(tǒng)計系統(tǒng)維護代碼維護數(shù)據(jù)維護系統(tǒng)管理學(xué)生成績管理功能結(jié)構(gòu)圖 并非一個系統(tǒng)的物理結(jié)構(gòu)圖一定要用一張圖來表示并非一個系統(tǒng)的物理結(jié)構(gòu)圖一定要用一張圖來表示,完全可以使用以上三種方式的任意一種將它拆分為多個圖。下面還以學(xué)生成績管理為例,用多圖的形式,給出它的物理結(jié)構(gòu)。這種表示,對于一圖分為多頁表示是很有利的。 6.4.1 系統(tǒng)的物理結(jié)構(gòu)的表示系統(tǒng)的物理結(jié)構(gòu)的表示成績處理重修處理留級處理成績統(tǒng)計學(xué)生成績管理報表輸出成績查詢系統(tǒng)維護成績處理輸入成績單報表輸出輸出重修通知輸出留級通知輸出成績統(tǒng)計表成績查詢查詢重修通知查詢留級通知查詢成績統(tǒng)計表系統(tǒng)維護代碼維護數(shù)據(jù)維護系統(tǒng)管理(a)(b)(c)

26、(d)(e)學(xué)生成績管理系統(tǒng)HIPO圖在結(jié)構(gòu)化設(shè)計中,DFD是系統(tǒng)結(jié)構(gòu)圖設(shè)計的依據(jù)。由數(shù)據(jù)流圖轉(zhuǎn)換為結(jié)構(gòu)圖的方法有三種由數(shù)據(jù)流圖轉(zhuǎn)換為結(jié)構(gòu)圖的方法有三種: :(1)(1)事務(wù)分析法事務(wù)分析法: :通常用于將高層數(shù)據(jù)流圖轉(zhuǎn)換為系統(tǒng)通常用于將高層數(shù)據(jù)流圖轉(zhuǎn)換為系統(tǒng)結(jié)構(gòu)圖,其優(yōu)點是能把一個大的、復(fù)雜的系統(tǒng)分解成若結(jié)構(gòu)圖,其優(yōu)點是能把一個大的、復(fù)雜的系統(tǒng)分解成若干個較小的、簡單的系統(tǒng)。干個較小的、簡單的系統(tǒng)。(2)變換分析法變換分析法: :變換分析通常用于將底層的數(shù)據(jù)流圖變換分析通常用于將底層的數(shù)據(jù)流圖轉(zhuǎn)換為結(jié)構(gòu)圖,將結(jié)構(gòu)圖中的一個功能模塊分解成具有轉(zhuǎn)換為結(jié)構(gòu)圖,將結(jié)構(gòu)圖中的一個功能模塊分解成具有輸入

27、、變換中心、輸出功能的簡單模塊輸入、變換中心、輸出功能的簡單模塊6.4.2 由數(shù)據(jù)流圖轉(zhuǎn)換為結(jié)構(gòu)圖的方法由數(shù)據(jù)流圖轉(zhuǎn)換為結(jié)構(gòu)圖的方法(3)(3)數(shù)據(jù)流圖映射法數(shù)據(jù)流圖映射法: :DFDDFD映射法是將映射法是將DFDDFD的各個層次的圖中的的各個層次的圖中的處理,分別與結(jié)構(gòu)圖的各個層次相對應(yīng)而得到系統(tǒng)物理的結(jié)處理,分別與結(jié)構(gòu)圖的各個層次相對應(yīng)而得到系統(tǒng)物理的結(jié)構(gòu)圖。構(gòu)圖。該方法的特點是,抓住數(shù)據(jù)流圖逐級細化的特點及結(jié)構(gòu)圖逐層分解的特點,將數(shù)據(jù)流圖的每一級細化圖與結(jié)構(gòu)圖相應(yīng)層建立一一對應(yīng)關(guān)系,對應(yīng)規(guī)則是確切的。6.4.2 由數(shù)據(jù)流圖轉(zhuǎn)換為結(jié)構(gòu)圖的方法由數(shù)據(jù)流圖轉(zhuǎn)換為結(jié)構(gòu)圖的方法第五節(jié)第五節(jié) 模塊

28、設(shè)計模塊設(shè)計預(yù)備知識模塊的定義與屬性 模塊是可以組合、更換和分解的單元,是組成系統(tǒng)模塊是可以組合、更換和分解的單元,是組成系統(tǒng)的基本單元。的基本單元。模塊的屬性模塊的屬性屬性類屬性說明外部屬性功能模塊能夠完成的任務(wù)或?qū)崿F(xiàn)的操作模塊能夠完成的任務(wù)或?qū)崿F(xiàn)的操作輸入輸出數(shù)據(jù)模塊使用的條件和模塊之間的關(guān)系模塊使用的條件和模塊之間的關(guān)系內(nèi)部屬性算法模塊內(nèi)部如何實現(xiàn)所要求的功能模塊內(nèi)部如何實現(xiàn)所要求的功能內(nèi)部變量算法中涉及的變量算法中涉及的變量模塊化原理 模塊化即是將復(fù)雜的系統(tǒng)分解成不同粒度的模塊的過模塊化即是將復(fù)雜的系統(tǒng)分解成不同粒度的模塊的過程,最小的模塊完成比較簡單的、獨立的任務(wù)。程,最小的模塊完成

29、比較簡單的、獨立的任務(wù)。ABCDIJK模塊設(shè)計模塊設(shè)計模塊設(shè)計是針對系統(tǒng)結(jié)構(gòu)圖中的每個模塊定義其外部及內(nèi)部特性的工作,即模塊說明。 在軟件工程中,模塊說明也稱模塊IPO圖,主要從模塊的輸入、處理、輸出三部分加以描述,并主要對工作模塊(即結(jié)構(gòu)圖的最底層模塊)進行說明。6.5 模塊設(shè)計模塊設(shè)計模塊說明與數(shù)據(jù)字典的數(shù)據(jù)處理卡有對應(yīng)關(guān)系。數(shù)據(jù)處理卡從功能上定義了處理所完成的功能,包括加工處理的過程、方法等,主要內(nèi)容與模塊說明是一致的。但二者是有區(qū)別的但二者是有區(qū)別的。在邏輯設(shè)計階段,重點考慮邏輯功能重點考慮邏輯功能,尤其是從管理業(yè)務(wù)出發(fā),按業(yè)務(wù)要求詳細描述各處理的功能,如學(xué)生成績統(tǒng)計處理,就應(yīng)詳細說明

30、統(tǒng)計方法、項目、特殊情況處理等。而在物理設(shè)計階段,重點考慮物理實現(xiàn)重點考慮物理實現(xiàn),側(cè)重描述在計算機上實現(xiàn)模塊功能的方法、步驟及注意事項等。如學(xué)生成績統(tǒng)計模塊的模塊說明,應(yīng)具體指明哪些數(shù)據(jù)庫文件中的哪些記錄的哪些字段進行什么計算、結(jié)果寫入哪個數(shù)據(jù)庫文件的哪個記錄的哪個字段等。IPO圖的一般格式如圖所示。 6.5 模塊設(shè)計模塊設(shè)計對IPO圖的格式的說明:“模塊代碼”最好是該模塊的程序名。在此需統(tǒng)一考慮系統(tǒng)中程序的命名。程序名當(dāng)然應(yīng)該使用字母、數(shù)字及下劃線組成的字符串為好,一般不使用漢字。程序名應(yīng)能反映出它的功能、所屬子系統(tǒng)及層次等含義。例如程序名CJ-PO表示成績管理的主控模塊,用CJ-P1、C

31、J-P2等表示第一層模塊的程序名,用CJ-P11、CJ-P12等表示CJ-P1的下級模塊的程序名,其他類同?!澳K名稱”應(yīng)該與系統(tǒng)結(jié)構(gòu)圖中模塊名稱(漢字的)一一對應(yīng),而且是唯一的?!疤幚怼笔悄K說明的核心,需要詳細、準確地描述該模塊的處理內(nèi)容。 模塊模塊IPO圖第圖第 號號系統(tǒng)名稱: 子系統(tǒng)名稱:模塊名稱: 模塊代碼:調(diào)用的模塊: 被調(diào)用的模塊:輸入:輸出:處理:IPO圖的一般格式6.5 模塊設(shè)計模塊設(shè)計下面給出其中的“重修處理”的IPO圖,如圖所示。6.5 模塊設(shè)計模塊設(shè)計模塊IPO圖 第2 號系統(tǒng)名稱:學(xué)生管理 子系統(tǒng)名稱:學(xué)生成績管理模塊名稱:重修處理 模塊代碼:CJ-P21調(diào)用的模塊:

32、無 被調(diào)用的模塊:成績處理輸入:成績簿輸出:補考通知處理:在數(shù)據(jù)存儲“成績簿”(其字段有學(xué)號、科號、成績)中,學(xué)號是關(guān)鍵字,但由于學(xué)生需要學(xué)習(xí)很多科課程,所以在該存儲中,每個學(xué)生會有多個記錄。 1. 打開數(shù)據(jù)庫表“成績簿”和“重修通知”; 2. 從“成績簿”的第一個記錄開始循環(huán)做判斷:IF 成績60 THEN 將該記錄寫入存儲“重修通知”繼續(xù)判斷下個記錄,直到最后。 3. 關(guān)閉以上兩個數(shù)據(jù)庫表,結(jié)束操作。 圖 IPO圖的示例第六節(jié)第六節(jié) 代碼(編碼)設(shè)計代碼(編碼)設(shè)計 一、代(編)碼一、代(編)碼 代碼是用來表征客觀事物的一個或一組有序的符號,代碼是用來表征客觀事物的一個或一組有序的符號,它

33、應(yīng)易于計算機和人識別與處理。也簡稱為它應(yīng)易于計算機和人識別與處理。也簡稱為“碼碼”。 代碼就是用數(shù)字或字母代表事物。 例如:烽火臺傳遞的煙信號、電傳打字機 6.6 代碼設(shè)計代碼設(shè)計 二、代碼的功能二、代碼的功能1 1、鑒別功能、鑒別功能 代碼的最基本的特性。任何代碼都必須具備這種基代碼的最基本的特性。任何代碼都必須具備這種基本特征。在一個分類編碼標準中,一個代碼只能唯一本特征。在一個分類編碼標準中,一個代碼只能唯一的標識一個分類對象,而一個分類對象也只能有一個的標識一個分類對象,而一個分類對象也只能有一個唯一的編碼。唯一的編碼。6.6 代碼設(shè)計代碼設(shè)計2 2、分類、分類 當(dāng)按照分類對象的屬性分

34、類,并分別賦予不同當(dāng)按照分類對象的屬性分類,并分別賦予不同的類別代碼時,代碼又可以作為分類對象類別的標的類別代碼時,代碼又可以作為分類對象類別的標識。識。2001 169 0092001 169 009市場營銷市場營銷2001級級6.6 代碼設(shè)計代碼設(shè)計3 3、排序、排序 當(dāng)按照分類對象產(chǎn)生的時間、所占的空間或其它方當(dāng)按照分類對象產(chǎn)生的時間、所占的空間或其它方面的順序關(guān)系分類,并賦予不同的代碼時,代碼又可以面的順序關(guān)系分類,并賦予不同的代碼時,代碼又可以作為排序的標識。作為排序的標識。6.6 代碼設(shè)計代碼設(shè)計4 4、專用含義、專用含義 當(dāng)分類對象需要采用一些專用的符號時,代碼可以當(dāng)分類對象需要

35、采用一些專用的符號時,代碼可以提供一定的專門含義。提供一定的專門含義。6.6 代碼設(shè)計代碼設(shè)計含義如下含義如下: : 漢語拼音的第一個字母表示自行車的用途漢語拼音的第一個字母表示自行車的用途, ,如如P P為普為普通車、通車、Q Q為輕便車、為輕便車、Z Z為載重為載重 車、車、X X為小輪車為小輪車. . 漢語拼音的第二個字母代表自行車的車輪直徑漢語拼音的第二個字母代表自行車的車輪直徑,A,A、E E、G G、MM分別指輪徑分別指輪徑2828、 26 26 、2424、2020英寸的女式車英寸的女式車. . 最后最后, ,漢語拼音后面的阿拉伯?dāng)?shù)字如漢語拼音后面的阿拉伯?dāng)?shù)字如PA-12PA-1

36、2型的型的12,12,是工廠設(shè)計的順序號是工廠設(shè)計的順序號. . 6.6 代碼設(shè)計代碼設(shè)計 三、代碼的種類三、代碼的種類( (一一) ) 順序碼順序碼 順序碼適宜中最簡單、最常用的代碼。這種代順序碼適宜中最簡單、最常用的代碼。這種代碼是將順序的自然數(shù)或字母賦予分類對象。碼是將順序的自然數(shù)或字母賦予分類對象。6.6 代碼設(shè)計代碼設(shè)計例如:按照例如:按照GB2261-80規(guī)定:規(guī)定: 1為男性為男性 2為女性為女性優(yōu)點:短而簡單,記錄的定位方法簡單,易于管理;優(yōu)點:短而簡單,記錄的定位方法簡單,易于管理; 缺點:代碼本身沒有給出對象的任何其它信息缺點:代碼本身沒有給出對象的任何其它信息( (沒有邏

37、沒有邏輯基礎(chǔ)輯基礎(chǔ)) )6.6 代碼設(shè)計代碼設(shè)計(二)區(qū)間碼(二)區(qū)間碼 區(qū)間碼把數(shù)據(jù)項分成若干組,每一區(qū)間代表一區(qū)間碼把數(shù)據(jù)項分成若干組,每一區(qū)間代表一個組,碼中數(shù)字的個組,碼中數(shù)字的值值和和位置位置 都代表一定意義。都代表一定意義。 4 3 0 0 8 14 3 0 0 8 16.6 代碼設(shè)計代碼設(shè)計( (三三) )助憶碼助憶碼 助憶碼用文字、數(shù)字或文字數(shù)字結(jié)合起來描述,其助憶碼用文字、數(shù)字或文字數(shù)字結(jié)合起來描述,其特點是,可以通過聯(lián)想幫助記憶。特點是,可以通過聯(lián)想幫助記憶。 例如:例如: 用用W-B-l2代表代表12英時黑白電視機英時黑白電視機 用用W-C-20代表代表 20英時彩色電視

38、機。英時彩色電視機。6.6 代碼設(shè)計代碼設(shè)計 四、代碼的設(shè)計四、代碼的設(shè)計1 1、唯一性、唯一性 代碼的唯一性是代碼設(shè)計的首要要求,它要求一代碼的唯一性是代碼設(shè)計的首要要求,它要求一個編碼只能代表一個實體或一個屬性。個編碼只能代表一個實體或一個屬性。2 2、合理性、合理性 代碼在邏輯上必須能滿足用戶的需要,在結(jié)構(gòu)上應(yīng)代碼在邏輯上必須能滿足用戶的需要,在結(jié)構(gòu)上應(yīng)當(dāng)與處理的方法相一致。當(dāng)與處理的方法相一致。 6.6 代碼設(shè)計代碼設(shè)計3 3、可擴充性、可擴充性 代碼設(shè)計時,要預(yù)留足夠的位置,以適應(yīng)不斷變代碼設(shè)計時,要預(yù)留足夠的位置,以適應(yīng)不斷變化的需要。化的需要。4 4、系統(tǒng)性、系統(tǒng)性 代碼要系統(tǒng)化

39、,代碼的編制應(yīng)盡量標準化,從而代碼要系統(tǒng)化,代碼的編制應(yīng)盡量標準化,從而在整個系統(tǒng)中具有通用性。在整個系統(tǒng)中具有通用性。 6.6 代碼設(shè)計代碼設(shè)計5 5、要注意避免引起誤解,不要使用易于混、要注意避免引起誤解,不要使用易于混淆的字符。淆的字符。 6.6 代碼設(shè)計代碼設(shè)計 a a、當(dāng)代碼長于、當(dāng)代碼長于4 4個字母或個字母或5 5個數(shù)字字符時,應(yīng)分成小個數(shù)字字符時,應(yīng)分成小段;段; 如注冊碼:如注冊碼:J2MV9-JYYQ6-JM44K-QMYTH-8RB2WJ2MV9-JYYQ6-JM44K-QMYTH-8RB2W b b、采用不易出錯的代碼結(jié)構(gòu)。、采用不易出錯的代碼結(jié)構(gòu)。 如:字母如:字母-

40、 -字母字母- -數(shù)字數(shù)字 (WW3WW3) 字母字母- -數(shù)字數(shù)字- -字母字母 (W2WW2W)6.6 代碼設(shè)計代碼設(shè)計五、代碼校驗方五、代碼校驗方法法 6.6 代碼設(shè)計代碼設(shè)計6.6 代碼設(shè)計代碼設(shè)計 校驗碼是根據(jù)事先規(guī)定好的數(shù)學(xué)方法及代校驗碼是根據(jù)事先規(guī)定好的數(shù)學(xué)方法及代碼本體計算出來的。碼本體計算出來的。6.6 代碼設(shè)計代碼設(shè)計C1 C2C3.Cn代碼本體代碼本體P1 P2P3.Pn加權(quán)因子加權(quán)因子加權(quán)因子可以為:加權(quán)因子可以為:自然數(shù)自然數(shù) 1,2,3, 幾何級數(shù)幾何級數(shù) 2,4,8,16 質(zhì)數(shù)質(zhì)數(shù) 3,5,7,13,176.6 代碼設(shè)計代碼設(shè)計C1 C2C3.Cn校驗位校驗位代碼

41、本體代碼本體6.6 代碼設(shè)計代碼設(shè)計1、算術(shù)級數(shù)法、算術(shù)級數(shù)法 以算術(shù)級數(shù)作為代碼本體的加權(quán)因子以算術(shù)級數(shù)作為代碼本體的加權(quán)因子12345代碼本體代碼本體65432加權(quán)因子加權(quán)因子50iipcS示例6)11mod(50)mod(MSR校驗位代碼本體12345代碼本體代碼本體3216842加權(quán)因子加權(quán)因子114iipcS4)11mod(114)mod(MSR校驗位代碼本體代碼本體代碼本體加權(quán)因子加權(quán)因子99iipcS0)11mod(99)mod(MSR校驗位代碼本體案例:全國水資源綜合規(guī)劃代碼設(shè)計(行政區(qū)代碼案例:全國水資源綜合規(guī)劃代碼設(shè)計(行政區(qū)代碼 )“中華人民共和國行政區(qū)劃代碼” 國家標準

42、(GB/T 22602002);“縣以下行政區(qū)劃代碼編制規(guī)則” 國家標準(GB1011488)。 由9位數(shù)字組成,其含義如下:第12位表示?。ㄗ灾螀^(qū)、直轄市);第34位表示省直轄市,其中:0120, 5170表示省直轄市,2150表示地區(qū);第56位表示縣,其中:0118表示市轄區(qū)或地轄市,2180表示縣(旗),8199表示省直轄縣級市;第79位表示縣以下行政區(qū)劃,其中:001099表示街道,100199表示鎮(zhèn),200399表示鄉(xiāng);400599表示政企合一單位。 6.6 代碼設(shè)計代碼設(shè)計代碼代碼行政區(qū)名行政區(qū)名代碼代碼行政區(qū)名行政區(qū)名440000000廣東省440303000深圳市福田區(qū)4401

43、00000廣東省廣州市440304000深圳市羅湖區(qū)440102000廣州市東山區(qū)440305000深圳市南山區(qū)6.6 代碼設(shè)計代碼設(shè)計區(qū)間碼的優(yōu)缺點信息處理比較可靠,排序分類檢索等操作比較方便1、碼的長度與它的分類屬性的數(shù)量有關(guān),有時候造成很長的碼;2、在很多情況下,碼有多余的數(shù);3、代碼的維修比較困難。第七節(jié)第七節(jié) 數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計 在系統(tǒng)分析階段,在DFD中設(shè)置了一系列的數(shù)據(jù)存儲。DFD是以處理功能為核心的,在DFD中,處理所需要的數(shù)據(jù)及處理的結(jié)果數(shù)據(jù)常常是用數(shù)據(jù)存儲表示在DFD中,這些數(shù)據(jù)存儲是系統(tǒng)分析員根據(jù)系統(tǒng)處理功能的需要而精心設(shè)計的。在DD中又進一步對這些數(shù)據(jù)存儲的結(jié)構(gòu)進行了

44、定義,確定了這些數(shù)據(jù)存儲的數(shù)據(jù)結(jié)構(gòu)。這就完成了數(shù)據(jù)庫的需求分析、概念設(shè)計、邏輯設(shè)計。應(yīng)該說,這些數(shù)據(jù)存儲是可以滿足系統(tǒng)對數(shù)據(jù)的需求的。6.7 數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計 這里的數(shù)據(jù)庫設(shè)計主要是指數(shù)據(jù)庫的物理設(shè)計。數(shù)據(jù)庫物理設(shè)計的工作任務(wù)主要是在數(shù)據(jù)庫邏輯設(shè)計的基礎(chǔ)上,運用關(guān)系數(shù)據(jù)庫規(guī)范化理論,設(shè)計出適合應(yīng)用環(huán)境的數(shù)據(jù)庫物理結(jié)構(gòu)。6.7 數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計這里采用的是系統(tǒng)分析與系統(tǒng)設(shè)計相一致的方法。 一方面,在系統(tǒng)分析階段的DFD的設(shè)計中,既注意到系統(tǒng)功能的正確分解,同時也要認真考慮數(shù)據(jù)存儲的合理設(shè)置,以保證數(shù)據(jù)存儲滿足處理邏輯的需要,使這一階段的工作完成了數(shù)據(jù)庫設(shè)計的需求分析、概念設(shè)計與邏輯設(shè)計;

45、 另一方面,在系統(tǒng)設(shè)計階段的數(shù)據(jù)庫設(shè)計中,充分利用前一階段的設(shè)計成果,對已設(shè)計的數(shù)據(jù)存儲,運用關(guān)系數(shù)據(jù)庫規(guī)范化理論,完成數(shù)據(jù)庫的物理設(shè)計。6.7 數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計1. 數(shù)據(jù)的規(guī)范化形式數(shù)據(jù)的規(guī)范化形式在設(shè)計數(shù)據(jù)存儲結(jié)構(gòu)時,要盡可能提高數(shù)據(jù)組織的相對獨立性,簡化其結(jié)構(gòu),以降低數(shù)據(jù)的維護成本,這就需要用規(guī)范化方法設(shè)計數(shù)據(jù)存儲的結(jié)構(gòu),提高數(shù)據(jù)的可維護性、完整性和一致性。規(guī)范化理論以關(guān)系數(shù)據(jù)模型為背景。在規(guī)范化理論中,把關(guān)系看做是二維表,它有以下四個性質(zhì):1) 在任一列上,數(shù)據(jù)項應(yīng)該具有同一個屬性;2) 在這個表中所有的行都是不相同的,即不允許有重復(fù)的組項出現(xiàn);3) 在一個表中,行的順序是無關(guān)緊要

46、的;4) 在一個表中,每一個列(屬性)有不同的名稱,列的順序也無關(guān)緊要。6.7.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)范化理論 下面討論數(shù)據(jù)存儲結(jié)構(gòu)中的第一規(guī)范式形式、第二規(guī)范式形式和第三規(guī)范式形式(第一范式即1NF、第二范式即2NF和第三范式即3NF)。2. 第一范式第一范式 在規(guī)范化理論中,關(guān)系必須是規(guī)范化的,所謂規(guī)范化是指在一個數(shù)據(jù)結(jié)構(gòu)中沒有重復(fù)出現(xiàn)的項組。任何一個規(guī)范化的關(guān)系都自動稱為第一規(guī)范化形式(First Normal Form),簡稱第一范式(1NF)。在建立關(guān)系數(shù)據(jù)模型時,必須將非規(guī)范化形式規(guī)范化,表(a)所示關(guān)系為非規(guī)范化形式,而表(b)所示關(guān)系則為滿足第一范式的關(guān)系。6.7

47、.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)范化理論3. 第二范式第二范式先介紹函數(shù)依賴(function dependence)的概念。 在一個數(shù)據(jù)結(jié)構(gòu)R中,如果數(shù)據(jù)元素B的取值依賴于數(shù)據(jù)元素A的取值,則我們稱B函數(shù)依賴于A。換句話說,A決定B,用“AB”表示。 第一范式是基本的,但存在一些問題?,F(xiàn)在來分析表6.4所示關(guān)系,它符合第一范式。在表中反映了職工的姓名、年齡、性別、住址等一系列基本情況信息。假定職工號是每個職工的唯一標識,而工資完全由級別所確定。6.7.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)范化理論 表中各個數(shù)據(jù)項(即屬性)之間有如圖6.14所示的相互依賴關(guān)系。 這表明姓名、級別、工資等的

48、取值依賴于職工號,而畢業(yè)時間要由職工號與學(xué)歷兩個屬性才能唯一確定:(職工號)姓名、級別、工資(職工號、學(xué)歷) 畢業(yè)時間6.7.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)范化理論廠名生產(chǎn)情況(每月)產(chǎn)品名稱數(shù)量F1P1P2P3P4P5P6300200400200100100F2P1P2300400F3P2200F4P2P3P4200300400 廠名產(chǎn)品名稱每月產(chǎn)量F1F1F1F1F1F1F2F2F3F4F4F4P1P2P3P4P5P6P1P2P2P2P3P4300200400200100100300400200200300400表(a) 關(guān)系的非規(guī)范化形式示例 表(b) 關(guān)系的第一范式示例職工基本信

49、息表職工號姓名級別工資學(xué)歷畢業(yè)時間001001001002張三張三張三李四技10技10技10技1083838362中專大學(xué)研究生大學(xué)1957196819811970職工號學(xué) 歷畢業(yè)時間姓 名級 別工 資間接圖7.14 各屬性間的依賴關(guān)系職工號學(xué) 歷畢業(yè)時間姓 名級 別工 資間接各屬性間的依賴關(guān)系 因而,在這個關(guān)系中就無法找到一個或幾個屬性可以共同作為唯一標識的主碼(也叫主關(guān)鍵字)以使其它非主屬性完全依賴于它而確定。 按此關(guān)系所建的數(shù)據(jù)庫有以下幾個缺點: 1) 冗余度高。如張三這個職工的姓名等基本情況信息,由于他有三個學(xué)歷而要存儲三次,浪費了存儲空間。6.7.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)

50、范化理論2) 維護困難。數(shù)據(jù)的修改、刪除、插入等操作都十分不便。例如:張三的級別等基本信息修改時必須同時修改多處,張三記錄的刪除要三個同時刪去;而對李四增加一個學(xué)歷就要把他的基本情況再寫入一遍。3)數(shù)據(jù)不一致。由于數(shù)據(jù)多次存儲,維護操作不便,稍有疏忽就會使同一數(shù)據(jù)在數(shù)據(jù)庫中的結(jié)果不同,同一個張三可能具有不同的工資,這就造成了數(shù)據(jù)庫數(shù)據(jù)的不一致。6.7.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)范化理論 所以,第一范式的關(guān)系必須進一步規(guī)范化為第二范式(2NF)。其方法是:從第一范式中分解出新的關(guān)系,使每個關(guān)系里都可確定一個或幾個屬性作為關(guān)系的主關(guān)鍵字,使該關(guān)系中的其他屬性都完全依賴于它而定,從而消去非

51、主屬性對主關(guān)鍵字的不完全依賴性消去非主屬性對主關(guān)鍵字的不完全依賴性。由此所得關(guān)系叫做第二范式關(guān)系。 表6.5(a)的關(guān)系中主關(guān)鍵字是職工號這一主屬性,表6.5(b)的關(guān)系里主關(guān)鍵字由(職工號、學(xué)歷)兩個主屬性共同構(gòu)成,這兩個關(guān)系中所有的非主屬都完全依賴于主關(guān)鍵字,因而均是第二范式的關(guān)系。對于表6.4,只要拆開為表6.5(a)、表6.5(b),兩個關(guān)系就可以使之滿足第二范式。6.7.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)范化理論 表6.5(a) 表6.5(b)職工號姓名級別工資001張三技1083002李四技1062職工號學(xué)歷畢業(yè)時間001中專1957001大學(xué)1968001研究生1981002大

52、學(xué)1970 表6.6(a) 表6.6(b)級別工資 職工號姓名級別 4. 第三范式先介紹“傳遞依賴”(transitive dependence)的概念。假設(shè)A、B、C分別是同一個數(shù)據(jù)結(jié)構(gòu)R中的三個數(shù)據(jù)元素,或分別是R中若干個數(shù)的集合,如果C函數(shù)依于B,即BC,而B函數(shù)依賴于A,即AB,那么顯然,C也依賴于A,我們稱這種依賴關(guān)系為“傳遞依賴”,即“C傳遞依賴A”。6.7.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)范化理論第二范式仍然會造成一些麻煩。請看表6.5(a)這個關(guān)系,實際上可能很多人的級別都是技10級的,那么他們的工資應(yīng)當(dāng)也都是83元,如果現(xiàn)在要把技10級的工資改為87元,那么,技10級的職

53、工工資都要修改,有一個人改錯了,就會造成同一級工資不一樣的錯誤,因而, 這種關(guān)系也有數(shù)據(jù)冗余(同級工資存儲多次)和易造成數(shù)據(jù)的不一致等問題,其原因就在于這些屬性間存在著如下所示的一種傳遞依賴關(guān)系:職工號級別,級別工資從而使:職工號級別工資也就是說,表6.5(a)中雖然級別與工資兩個屬性完全依賴于主屬性職工號,但實際上是工資直接依賴于級別,由于級別依賴于職工號而使工資通過級別的傳遞作用間接依賴于職工號這個屬性。進一步的規(guī)范化就是要消去非主屬性對主關(guān)鍵字的傳遞依賴性消去非主屬性對主關(guān)鍵字的傳遞依賴性,變?yōu)榈谌妒?3NF)。6.7.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)范化理論 現(xiàn)在只要把第二范式的

54、關(guān)系恰當(dāng)拆開為幾個關(guān)系即可達目的。如表6.5(a)的關(guān)系,拆開為6.6(a)、6.6(b)兩個關(guān)系,它們都滿足第三范式了。 概括以上的規(guī)范化過程概括以上的規(guī)范化過程:先對二維表消去組合項與重復(fù)組項化先對二維表消去組合項與重復(fù)組項化為第一范式,再消去非主屬性對主關(guān)鍵字的非完全函數(shù)依賴性而變?yōu)闉榈谝环妒剑傧シ侵鲗傩詫χ麝P(guān)鍵字的非完全函數(shù)依賴性而變?yōu)榈诙妒?,再消去非主屬性對主關(guān)鍵字的傳遞依賴就化為第三范式第二范式,再消去非主屬性對主關(guān)鍵字的傳遞依賴就化為第三范式。用第三范式的關(guān)系來定義數(shù)據(jù)庫會比直接用二維表所定義的數(shù)據(jù)庫要好得多。關(guān)系理論中還討論了其他范式,如BCN范式(BCNF),第四范式(

55、4NF),第五范式(5NF) ,一般的MIS要求規(guī)范到3NF即可滿足需要。6.7.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)范化理論 關(guān)系模型的規(guī)范化,是為了使數(shù)據(jù)庫在使用、維護、調(diào)整、更關(guān)系模型的規(guī)范化,是為了使數(shù)據(jù)庫在使用、維護、調(diào)整、更新、擴展時保持數(shù)據(jù)結(jié)構(gòu)的靈活、穩(wěn)定、可靠、數(shù)據(jù)的一致以及數(shù)據(jù)新、擴展時保持數(shù)據(jù)結(jié)構(gòu)的靈活、穩(wěn)定、可靠、數(shù)據(jù)的一致以及數(shù)據(jù)與程序的相對獨立性。與程序的相對獨立性。并非規(guī)范化程度越高越好。一般說,規(guī)范化程度高了,使用起來就不方便,同時又影響系統(tǒng)的運行效率。因為,規(guī)范化要將數(shù)據(jù)分解,形成多個關(guān)系,而當(dāng)需要一個較全面的數(shù)據(jù)時,還得將這些被分解了的關(guān)系中檢索同一事物在不同

56、關(guān)系中的記錄,這比起在一個關(guān)系中檢索這些數(shù)據(jù)要多用許多時間。因此,一般的MIS規(guī)范到3NF即可滿足需要,對于要求響應(yīng)速度快的查詢系統(tǒng),所操作的關(guān)系使用頻率很高,這時其規(guī)范化的要求可以降低一些。 6.7.1 關(guān)系數(shù)據(jù)庫規(guī)范化理論關(guān)系數(shù)據(jù)庫規(guī)范化理論 MIS的數(shù)據(jù)庫保存著組織的重要數(shù)據(jù)。因此,如何保護這些數(shù)據(jù),使之不受來自內(nèi)部或外部的破壞,或一旦破壞,如何通過適當(dāng)?shù)拇胧┒杆俚玫交謴?fù),是數(shù)據(jù)庫管理系統(tǒng)中一個極重要的課題。6.7.2 數(shù)據(jù)庫的保護數(shù)據(jù)庫的保護1. 數(shù)據(jù)庫的完整性保護數(shù)據(jù)庫的完整性保護 數(shù)據(jù)庫的完整性保護是指防止和拒絕錯誤數(shù)據(jù)的存儲和操作,保證并維護數(shù)據(jù)庫中數(shù)據(jù)的正確性。應(yīng)用程序編制中

57、的錯誤及操作員的操作錯誤是破壞數(shù)據(jù)完整性的主要原因,數(shù)據(jù)庫管理系統(tǒng)通常提供“完整性控制”的功能。用以檢查數(shù)據(jù)是否滿足規(guī)定條件(稱為完整性約束條件),當(dāng)不滿足條件時,意味著數(shù)據(jù)已經(jīng)受到破壞必須立即采取措施,以維護數(shù)據(jù)庫的完整性。 完整性約束條件從語義上體現(xiàn)了對數(shù)據(jù)或數(shù)據(jù)之間聯(lián)系的約束條件,這些條件通常在模式定義時做相應(yīng)的描述。以關(guān)系數(shù)據(jù)庫為例,完整性約束主要有: 6.7.2 數(shù)據(jù)庫的保護數(shù)據(jù)庫的保護1)關(guān)系的主關(guān)鍵字是唯一的,完整性控制必須保證關(guān)系中不存在兩個元素的關(guān)鍵字有相同的值。 2)某屬性的值必須屬于屬性所特有的域。如月份是兩位數(shù),其值的變化范圍為112。 3) 屬性的值集必須滿足某種統(tǒng)計

58、條件。如百分制計分,學(xué)生的平均成績應(yīng)小等于100分。 4) 對屬性間聯(lián)系的限制,包括同一實體間不同屬性的聯(lián)系限制及不同實體間屬性的聯(lián)系限制,如工資金額與工資級別這兩個屬性間有一定的聯(lián)系,一定的工資級別對應(yīng)工資金額的某一范圍,由此它們之間有一定的約束關(guān)系5) 數(shù)據(jù)的動態(tài)約束,即數(shù)據(jù)庫從一種狀態(tài)轉(zhuǎn)變?yōu)榱硪粻顟B(tài)時,新的值之間所應(yīng)滿足的條件,如調(diào)整并增加工資時,新工資必須大于或等于原工資。6.7.2 數(shù)據(jù)庫的保護數(shù)據(jù)庫的保護2. 數(shù)據(jù)庫的安全性保護數(shù)據(jù)庫的安全性保護 數(shù)據(jù)庫的安全性保護是指為了防止非法使用數(shù)據(jù)庫,警惕非法用戶有目的地盜用數(shù)據(jù)或破壞數(shù)據(jù)庫,而由系統(tǒng)采取的一系列措施。安全性和完整性有共同的

59、目標,都是為了保護數(shù)據(jù)庫中的數(shù)據(jù)。它們之間也有一定的差異,完整性側(cè)重于數(shù)據(jù)本身的保護,對一切用戶有效,而安全性的側(cè)重點在于用戶對數(shù)據(jù)庫的操作權(quán)限,而合理地授予用戶使用規(guī)定數(shù)據(jù)的權(quán)限,只有“權(quán)限用戶”才能使用相應(yīng)的數(shù)據(jù),而非權(quán)限用戶就不能使用相應(yīng)的數(shù)據(jù),安全性保護的措施常用下列三種方法: 6.7.2 數(shù)據(jù)庫的保護數(shù)據(jù)庫的保護1) 使用權(quán)的鑒別使用權(quán)的鑒別 首先對有權(quán)使用數(shù)據(jù)庫的用戶授予一個保密口令(Password)。系統(tǒng)鑒別用戶是否能使用數(shù)據(jù)庫,先詢問用戶的口令,只有口令檢查是正確的,才允許使用數(shù)據(jù)庫。2) 使用范圍的限制使用范圍的限制 被允許使用數(shù)據(jù)庫的用戶,并不是對數(shù)據(jù)庫中所有的數(shù)據(jù)均要進

60、行訪問,如一個MIS中,財務(wù)部門無權(quán)訪問人事部門的數(shù)據(jù),特別是一些經(jīng)濟決策數(shù)據(jù),只對企業(yè)高層管理者提供,其它部門無權(quán)訪問。因此,一個用戶使用數(shù)據(jù)庫的權(quán)限是有范圍限制的。一般可以用子模式的方法限制用戶使用數(shù)據(jù)庫的范圍。用戶只可以使用子模式定義范圍內(nèi)的數(shù)據(jù)。而子模式?jīng)]有定義的那些數(shù)據(jù),用戶無權(quán)使用。6.7.2 數(shù)據(jù)庫的保護數(shù)據(jù)庫的保護3) 存取控制權(quán)鑒別存取控制權(quán)鑒別 被允許使用數(shù)據(jù)庫中某子模式的用戶并不是允許他對此子模式的數(shù)據(jù)進行一切操作,也不是能訪問該子模式的所有區(qū)域。如MIS中財務(wù)部門的子模式只有其本部門人員才能修改其中的數(shù)據(jù),而設(shè)備部門可以查閱有關(guān)數(shù)據(jù),但無權(quán)修改數(shù)據(jù)。因此,對每個用戶規(guī)定

溫馨提示

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

評論

0/150

提交評論