




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、返回返回返回返回1第第6章數(shù)據(jù)庫設(shè)計(jì)章數(shù)據(jù)庫設(shè)計(jì) 返回返回返回返回26.1 6.1 數(shù)據(jù)庫設(shè)計(jì)概述數(shù)據(jù)庫設(shè)計(jì)概述6.1.1 6.1.1 數(shù)據(jù)庫設(shè)計(jì)的任務(wù)、內(nèi)容和特點(diǎn)數(shù)據(jù)庫設(shè)計(jì)的任務(wù)、內(nèi)容和特點(diǎn)6.1.1.1 6.1.1.1 數(shù)據(jù)庫設(shè)計(jì)的任務(wù)數(shù)據(jù)庫設(shè)計(jì)的任務(wù)數(shù)據(jù)庫設(shè)計(jì)是指根據(jù)用戶需求研制數(shù)據(jù)庫結(jié)構(gòu)數(shù)據(jù)庫設(shè)計(jì)是指根據(jù)用戶需求研制數(shù)據(jù)庫結(jié)構(gòu)的過程,具體地說,是指對于一個給定的應(yīng)用的過程,具體地說,是指對于一個給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能有效的存儲數(shù)據(jù),滿足用其應(yīng)用系統(tǒng),使之能有效的存儲數(shù)據(jù),滿足用戶的信息要求和處理要求。
2、戶的信息要求和處理要求。也就是把現(xiàn)實(shí)世界中的數(shù)據(jù),根據(jù)各種應(yīng)用處也就是把現(xiàn)實(shí)世界中的數(shù)據(jù),根據(jù)各種應(yīng)用處理的要求,加以合理地組織,滿足硬件和操作理的要求,加以合理地組織,滿足硬件和操作系統(tǒng)的特性,利用已有的系統(tǒng)的特性,利用已有的DBMSDBMS來建立能夠?qū)崿F(xiàn)來建立能夠?qū)崿F(xiàn)系統(tǒng)目標(biāo)的數(shù)據(jù)庫。系統(tǒng)目標(biāo)的數(shù)據(jù)庫。返回返回返回返回3數(shù)據(jù)庫設(shè)計(jì)的任務(wù)如圖數(shù)據(jù)庫設(shè)計(jì)的任務(wù)如圖6.16.1所示。所示。數(shù)據(jù)庫設(shè)計(jì)信息需求處理需求信息需求典型應(yīng)用程序DBM特性硬件和操作系統(tǒng)特性圖6.1 數(shù)據(jù)庫設(shè)計(jì)的任務(wù)返回返回返回返回46.1.1.2 6.1.1.2 數(shù)據(jù)庫設(shè)計(jì)的內(nèi)容數(shù)據(jù)庫設(shè)計(jì)的內(nèi)容數(shù)據(jù)庫設(shè)計(jì)包括數(shù)據(jù)庫的結(jié)構(gòu)設(shè)
3、計(jì)和數(shù)據(jù)庫的數(shù)據(jù)庫設(shè)計(jì)包括數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)庫的行為設(shè)計(jì)兩方面的內(nèi)容。行為設(shè)計(jì)兩方面的內(nèi)容。1 1數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)指是根據(jù)給定的應(yīng)用環(huán)境,數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)指是根據(jù)給定的應(yīng)用環(huán)境,進(jìn)行數(shù)據(jù)庫的模式或子模式的設(shè)計(jì)。進(jìn)行數(shù)據(jù)庫的模式或子模式的設(shè)計(jì)。它包括數(shù)據(jù)庫的概念設(shè)計(jì)、邏輯設(shè)計(jì)和物理設(shè)它包括數(shù)據(jù)庫的概念設(shè)計(jì)、邏輯設(shè)計(jì)和物理設(shè)計(jì)。計(jì)。數(shù)據(jù)庫模式是各應(yīng)用程序共享的結(jié)構(gòu),是靜態(tài)數(shù)據(jù)庫模式是各應(yīng)用程序共享的結(jié)構(gòu),是靜態(tài)的、穩(wěn)定的,一經(jīng)形成后通常情況下是不容易的、穩(wěn)定的,一經(jīng)形成后通常情況下是不容易改變的,所以結(jié)構(gòu)設(shè)計(jì)又稱為改變的,所以結(jié)構(gòu)設(shè)計(jì)又稱為靜態(tài)模型設(shè)計(jì)靜態(tài)模型設(shè)
4、計(jì)。返回返回返回返回52 2數(shù)據(jù)庫的行為設(shè)計(jì)數(shù)據(jù)庫的行為設(shè)計(jì) 數(shù)據(jù)庫的行為設(shè)計(jì)是指確定數(shù)據(jù)庫用戶的行為和動作。數(shù)據(jù)庫的行為設(shè)計(jì)是指確定數(shù)據(jù)庫用戶的行為和動作。而在數(shù)據(jù)庫系統(tǒng)中,用戶的行為和動作指用戶對數(shù)據(jù)而在數(shù)據(jù)庫系統(tǒng)中,用戶的行為和動作指用戶對數(shù)據(jù)庫的操作,這些要通過應(yīng)用程序來實(shí)現(xiàn),所以數(shù)據(jù)庫庫的操作,這些要通過應(yīng)用程序來實(shí)現(xiàn),所以數(shù)據(jù)庫的行為設(shè)計(jì)就是應(yīng)用程序的設(shè)計(jì)。的行為設(shè)計(jì)就是應(yīng)用程序的設(shè)計(jì)。 用戶的行為總是使數(shù)據(jù)庫的內(nèi)容發(fā)生變化,所以行為用戶的行為總是使數(shù)據(jù)庫的內(nèi)容發(fā)生變化,所以行為設(shè)計(jì)是動態(tài)的,行為設(shè)計(jì)又稱為設(shè)計(jì)是動態(tài)的,行為設(shè)計(jì)又稱為動態(tài)模型設(shè)計(jì)動態(tài)模型設(shè)計(jì)。6.1.1.3 6.1
5、.1.3 數(shù)據(jù)庫設(shè)計(jì)的特點(diǎn)數(shù)據(jù)庫設(shè)計(jì)的特點(diǎn) 在在7070年代末年代末8080年代初,人們?yōu)榱搜芯繑?shù)據(jù)庫設(shè)計(jì)方法年代初,人們?yōu)榱搜芯繑?shù)據(jù)庫設(shè)計(jì)方法學(xué)的便利,曾主張將結(jié)構(gòu)設(shè)計(jì)和行為設(shè)計(jì)兩者分離,學(xué)的便利,曾主張將結(jié)構(gòu)設(shè)計(jì)和行為設(shè)計(jì)兩者分離,隨著數(shù)據(jù)庫設(shè)計(jì)方法學(xué)的成熟和結(jié)構(gòu)化分析、設(shè)計(jì)方隨著數(shù)據(jù)庫設(shè)計(jì)方法學(xué)的成熟和結(jié)構(gòu)化分析、設(shè)計(jì)方法的普遍使用,人們主張將兩者作一體化的考慮,這法的普遍使用,人們主張將兩者作一體化的考慮,這樣可以縮短數(shù)據(jù)庫的設(shè)計(jì)周期,提高數(shù)據(jù)庫的設(shè)計(jì)效樣可以縮短數(shù)據(jù)庫的設(shè)計(jì)周期,提高數(shù)據(jù)庫的設(shè)計(jì)效率。率。返回返回返回返回6現(xiàn)代數(shù)據(jù)庫的設(shè)計(jì)的特點(diǎn)是強(qiáng)調(diào)結(jié)構(gòu)設(shè)計(jì)與行現(xiàn)代數(shù)據(jù)庫的設(shè)計(jì)的特點(diǎn)
6、是強(qiáng)調(diào)結(jié)構(gòu)設(shè)計(jì)與行為設(shè)計(jì)相結(jié)合,是一種為設(shè)計(jì)相結(jié)合,是一種“反復(fù)探尋,逐步求精反復(fù)探尋,逐步求精”的過程。首先從數(shù)據(jù)模型開始設(shè)計(jì),以數(shù)據(jù)模的過程。首先從數(shù)據(jù)模型開始設(shè)計(jì),以數(shù)據(jù)模型為核心進(jìn)行展開,數(shù)據(jù)庫設(shè)計(jì)和應(yīng)用系統(tǒng)設(shè)型為核心進(jìn)行展開,數(shù)據(jù)庫設(shè)計(jì)和應(yīng)用系統(tǒng)設(shè)計(jì)相結(jié)合,建立一個完整、獨(dú)立、共享、冗余計(jì)相結(jié)合,建立一個完整、獨(dú)立、共享、冗余小、安全有效的數(shù)據(jù)庫系統(tǒng)。小、安全有效的數(shù)據(jù)庫系統(tǒng)。圖圖6.26.2給出了數(shù)據(jù)庫設(shè)計(jì)的全過程。給出了數(shù)據(jù)庫設(shè)計(jì)的全過程。返回返回返回返回7現(xiàn)實(shí)世界數(shù)據(jù)分析用戶業(yè)務(wù)活動分析概念設(shè)計(jì)功能模型邏輯設(shè)計(jì)事務(wù)設(shè)計(jì)物理設(shè)計(jì)程序說明子模式設(shè)計(jì)應(yīng)用程序設(shè)計(jì)加載試驗(yàn)數(shù)據(jù)程序編碼調(diào)
7、試性能考核滿意?是否加載數(shù)據(jù)庫運(yùn)行和維護(hù)圖圖6.2 6.2 數(shù)據(jù)庫設(shè)計(jì)的全過程數(shù)據(jù)庫設(shè)計(jì)的全過程返回返回返回返回86.1.2 數(shù)據(jù)庫設(shè)計(jì)方法簡述數(shù)據(jù)庫設(shè)計(jì)方法簡述 數(shù)據(jù)庫設(shè)計(jì)方法目前可分為四類:數(shù)據(jù)庫設(shè)計(jì)方法目前可分為四類:直觀設(shè)計(jì)法直觀設(shè)計(jì)法、規(guī)范設(shè)計(jì)法規(guī)范設(shè)計(jì)法、計(jì)計(jì)算機(jī)輔助設(shè)計(jì)法算機(jī)輔助設(shè)計(jì)法和和自動化設(shè)計(jì)法自動化設(shè)計(jì)法。 直觀設(shè)計(jì)法也叫手工試湊法,它是最早使用的數(shù)據(jù)庫設(shè)計(jì)方法。直觀設(shè)計(jì)法也叫手工試湊法,它是最早使用的數(shù)據(jù)庫設(shè)計(jì)方法。這種方法依賴于設(shè)計(jì)者的經(jīng)驗(yàn)和技巧,缺乏科學(xué)理論和工程原則這種方法依賴于設(shè)計(jì)者的經(jīng)驗(yàn)和技巧,缺乏科學(xué)理論和工程原則的支持,設(shè)計(jì)的質(zhì)量很難保證,常常是數(shù)據(jù)庫運(yùn)行
8、一段時間后又的支持,設(shè)計(jì)的質(zhì)量很難保證,常常是數(shù)據(jù)庫運(yùn)行一段時間后又發(fā)現(xiàn)各種問題,這樣再重新進(jìn)行修改,增加了系統(tǒng)維護(hù)的代價。發(fā)現(xiàn)各種問題,這樣再重新進(jìn)行修改,增加了系統(tǒng)維護(hù)的代價。因此這種方法越來越不適應(yīng)信息管理發(fā)展的需要。因此這種方法越來越不適應(yīng)信息管理發(fā)展的需要。 為了改變這種情況,為了改變這種情況,1978年年10月,來自三十多個國家的數(shù)據(jù)庫專月,來自三十多個國家的數(shù)據(jù)庫專家在美國新奧爾良(家在美國新奧爾良(New Orleans)市專門討論了數(shù)據(jù)庫設(shè)計(jì)問)市專門討論了數(shù)據(jù)庫設(shè)計(jì)問題,他們運(yùn)用軟件工程的思想和方法,提出了數(shù)據(jù)庫設(shè)計(jì)的規(guī)范,題,他們運(yùn)用軟件工程的思想和方法,提出了數(shù)據(jù)庫設(shè)計(jì)
9、的規(guī)范,這就是著名的新奧爾良法,它是目前公認(rèn)的比較完整和權(quán)威的一這就是著名的新奧爾良法,它是目前公認(rèn)的比較完整和權(quán)威的一種規(guī)范設(shè)計(jì)法。新奧爾良法將數(shù)據(jù)庫設(shè)計(jì)分成需求分析(分析用種規(guī)范設(shè)計(jì)法。新奧爾良法將數(shù)據(jù)庫設(shè)計(jì)分成需求分析(分析用戶需求)、概念設(shè)計(jì)(信息分析和定義)、邏輯設(shè)計(jì)(設(shè)計(jì)實(shí)現(xiàn))戶需求)、概念設(shè)計(jì)(信息分析和定義)、邏輯設(shè)計(jì)(設(shè)計(jì)實(shí)現(xiàn))和物理設(shè)計(jì)(物理數(shù)據(jù)庫設(shè)計(jì))。目前,常用的規(guī)范設(shè)計(jì)方法大和物理設(shè)計(jì)(物理數(shù)據(jù)庫設(shè)計(jì))。目前,常用的規(guī)范設(shè)計(jì)方法大多起源于新奧爾良法,并在設(shè)計(jì)的每一階段采用一些輔助方法來多起源于新奧爾良法,并在設(shè)計(jì)的每一階段采用一些輔助方法來具體實(shí)現(xiàn)。具體實(shí)現(xiàn)。 下面簡
10、單介紹幾種常用的規(guī)范設(shè)計(jì)方法。下面簡單介紹幾種常用的規(guī)范設(shè)計(jì)方法。 返回返回返回返回91基于基于E-R模型的數(shù)據(jù)庫設(shè)計(jì)方法模型的數(shù)據(jù)庫設(shè)計(jì)方法 v基于基于E-R模型的數(shù)據(jù)庫設(shè)計(jì)方法是由模型的數(shù)據(jù)庫設(shè)計(jì)方法是由P.P.S.chen于于1976年提出的數(shù)據(jù)庫設(shè)計(jì)方法,其基本思想是在需年提出的數(shù)據(jù)庫設(shè)計(jì)方法,其基本思想是在需求分析的基礎(chǔ)上,用求分析的基礎(chǔ)上,用E-R(實(shí)體(實(shí)體聯(lián)系)圖構(gòu)造一聯(lián)系)圖構(gòu)造一個反映現(xiàn)實(shí)世界實(shí)體之間聯(lián)系的企業(yè)模式,然后再個反映現(xiàn)實(shí)世界實(shí)體之間聯(lián)系的企業(yè)模式,然后再將此企業(yè)模式轉(zhuǎn)換成基于某一特定的將此企業(yè)模式轉(zhuǎn)換成基于某一特定的DBMS的概念的概念模式。模式。2 2基于基于
11、3NF3NF的數(shù)據(jù)庫設(shè)計(jì)方法的數(shù)據(jù)庫設(shè)計(jì)方法v基于基于3NF的數(shù)據(jù)庫設(shè)計(jì)方法是由的數(shù)據(jù)庫設(shè)計(jì)方法是由SAtre提出的結(jié)構(gòu)提出的結(jié)構(gòu)化設(shè)計(jì)方法,其基本思想是在需求分析的基礎(chǔ)上,化設(shè)計(jì)方法,其基本思想是在需求分析的基礎(chǔ)上,確定數(shù)據(jù)庫模式中的全部屬性和屬性間的依賴關(guān)系,確定數(shù)據(jù)庫模式中的全部屬性和屬性間的依賴關(guān)系,將它們組織在一個單一的關(guān)系模式中,然后再分析將它們組織在一個單一的關(guān)系模式中,然后再分析模式中不符合模式中不符合3NF的約束條件,將其進(jìn)行投影分解,的約束條件,將其進(jìn)行投影分解,規(guī)范成若干個規(guī)范成若干個3NF關(guān)系模式的集合。關(guān)系模式的集合。其具體設(shè)計(jì)步驟分為五個階段:其具體設(shè)計(jì)步驟分為五個
12、階段: 返回返回返回返回10(1)(1)設(shè)計(jì)企業(yè)模式,利用規(guī)范化得到的設(shè)計(jì)企業(yè)模式,利用規(guī)范化得到的3NF3NF關(guān)關(guān)系模式畫出企業(yè)模式;系模式畫出企業(yè)模式;(2)(2)設(shè)計(jì)數(shù)據(jù)庫的概念模式,把企業(yè)模式轉(zhuǎn)換設(shè)計(jì)數(shù)據(jù)庫的概念模式,把企業(yè)模式轉(zhuǎn)換成成DBMSDBMS所能接受的概念模式,并根據(jù)概念模所能接受的概念模式,并根據(jù)概念模式導(dǎo)出各個應(yīng)用的外模式;式導(dǎo)出各個應(yīng)用的外模式;(3)(3)設(shè)計(jì)數(shù)據(jù)庫的物理模式(存儲模式);設(shè)計(jì)數(shù)據(jù)庫的物理模式(存儲模式);(4)(4)對物理模式進(jìn)行評價;對物理模式進(jìn)行評價; (5) 實(shí)現(xiàn)數(shù)據(jù)庫。實(shí)現(xiàn)數(shù)據(jù)庫。 返回返回返回返回113 3基于視圖的數(shù)據(jù)庫設(shè)計(jì)方法基于視圖的
13、數(shù)據(jù)庫設(shè)計(jì)方法此方法先從分析各個應(yīng)用的數(shù)據(jù)著手,其基本此方法先從分析各個應(yīng)用的數(shù)據(jù)著手,其基本思想是為每個應(yīng)用建立自己的視圖,然后再把思想是為每個應(yīng)用建立自己的視圖,然后再把這些視圖匯總起來合并成整個數(shù)據(jù)庫的概念模這些視圖匯總起來合并成整個數(shù)據(jù)庫的概念模式。合并過程中要解決以下問題:式。合并過程中要解決以下問題: (1) (1) 消除命名沖突;消除命名沖突;(2) (2) 消除冗余的實(shí)體和聯(lián)系;消除冗余的實(shí)體和聯(lián)系;(3)(3)進(jìn)行模式重構(gòu),在消除了命名沖突和冗余后,需進(jìn)行模式重構(gòu),在消除了命名沖突和冗余后,需要對整個匯總模式進(jìn)行調(diào)整,使其滿足全部完整性要對整個匯總模式進(jìn)行調(diào)整,使其滿足全部完
14、整性約束條件。約束條件。 返回返回返回返回12 除了以上三種方法外,規(guī)范化設(shè)計(jì)方法還有實(shí)體分析除了以上三種方法外,規(guī)范化設(shè)計(jì)方法還有實(shí)體分析法、屬性分析法和基于抽象語義的設(shè)計(jì)方法等,這里法、屬性分析法和基于抽象語義的設(shè)計(jì)方法等,這里不再詳細(xì)介紹。不再詳細(xì)介紹。 規(guī)范設(shè)計(jì)法從本質(zhì)上來說仍然是手工設(shè)計(jì)方法,其基規(guī)范設(shè)計(jì)法從本質(zhì)上來說仍然是手工設(shè)計(jì)方法,其基本思想是過程迭代和逐步求精。本思想是過程迭代和逐步求精。 計(jì)算機(jī)輔助設(shè)計(jì)法是指在數(shù)據(jù)庫設(shè)計(jì)的某些過程中模計(jì)算機(jī)輔助設(shè)計(jì)法是指在數(shù)據(jù)庫設(shè)計(jì)的某些過程中模擬某一規(guī)范化設(shè)計(jì)的方法,并以人的知識或經(jīng)驗(yàn)為主擬某一規(guī)范化設(shè)計(jì)的方法,并以人的知識或經(jīng)驗(yàn)為主導(dǎo),
15、通過人機(jī)交互方式實(shí)現(xiàn)設(shè)計(jì)中的某些部分。導(dǎo),通過人機(jī)交互方式實(shí)現(xiàn)設(shè)計(jì)中的某些部分。 目前許多計(jì)算機(jī)輔助軟件工程(目前許多計(jì)算機(jī)輔助軟件工程(Computer Aided Software Engineering,CASE)工具可以自動或輔助)工具可以自動或輔助設(shè)計(jì)人員完成數(shù)據(jù)庫設(shè)計(jì)過程中的很多任務(wù)設(shè)計(jì)人員完成數(shù)據(jù)庫設(shè)計(jì)過程中的很多任務(wù).比如比如SYSBASE公司的公司的PowerDesigner和和Oracle公司的公司的Design 2000。 返回返回返回返回136.1.3 6.1.3 數(shù)據(jù)庫設(shè)計(jì)的步驟數(shù)據(jù)庫設(shè)計(jì)的步驟和其他軟件一樣,數(shù)據(jù)庫的設(shè)計(jì)過程可以使用和其他軟件一樣,數(shù)據(jù)庫的設(shè)計(jì)過程可
16、以使用軟件工程中的生存周期的概念來說明,稱為軟件工程中的生存周期的概念來說明,稱為“數(shù)據(jù)庫設(shè)計(jì)的生存期數(shù)據(jù)庫設(shè)計(jì)的生存期”,它是指從數(shù)據(jù)庫研,它是指從數(shù)據(jù)庫研制到不再使用它的整個時期。制到不再使用它的整個時期。按規(guī)范設(shè)計(jì)法可將數(shù)據(jù)庫設(shè)計(jì)分為六個階段按規(guī)范設(shè)計(jì)法可將數(shù)據(jù)庫設(shè)計(jì)分為六個階段(如圖(如圖6.36.3所示):所示):(1 1)系統(tǒng)需求分析階段)系統(tǒng)需求分析階段(2 2)概念結(jié)構(gòu)設(shè)計(jì)階段)概念結(jié)構(gòu)設(shè)計(jì)階段(3 3)邏輯結(jié)構(gòu)設(shè)計(jì)階段)邏輯結(jié)構(gòu)設(shè)計(jì)階段(4 4)物理設(shè)計(jì)階段)物理設(shè)計(jì)階段(5 5)數(shù)據(jù)庫實(shí)施階段)數(shù)據(jù)庫實(shí)施階段(6 6)數(shù)據(jù)庫運(yùn)行與維護(hù)階段)數(shù)據(jù)庫運(yùn)行與維護(hù)階段 返回返回返回
17、返回14 該方法是分階段完成的,每完成一個階段,都要進(jìn)行該方法是分階段完成的,每完成一個階段,都要進(jìn)行設(shè)計(jì)分析,評價一些重要的設(shè)計(jì)指標(biāo),把設(shè)計(jì)階段產(chǎn)設(shè)計(jì)分析,評價一些重要的設(shè)計(jì)指標(biāo),把設(shè)計(jì)階段產(chǎn)生的文檔組織評審,與用戶進(jìn)行交流。如果設(shè)計(jì)的數(shù)生的文檔組織評審,與用戶進(jìn)行交流。如果設(shè)計(jì)的數(shù)據(jù)庫不符合要求則進(jìn)行修改,這種分析和修改可能要據(jù)庫不符合要求則進(jìn)行修改,這種分析和修改可能要重復(fù)若干次,以求最后實(shí)現(xiàn)的數(shù)據(jù)庫能夠比較精確地重復(fù)若干次,以求最后實(shí)現(xiàn)的數(shù)據(jù)庫能夠比較精確地模擬現(xiàn)實(shí)世界,能較準(zhǔn)確地反映用戶的需求,設(shè)計(jì)一模擬現(xiàn)實(shí)世界,能較準(zhǔn)確地反映用戶的需求,設(shè)計(jì)一個完善的數(shù)據(jù)庫應(yīng)用系統(tǒng)往往是六個階段的
18、不斷反復(fù)個完善的數(shù)據(jù)庫應(yīng)用系統(tǒng)往往是六個階段的不斷反復(fù)的過程。的過程。 數(shù)據(jù)庫設(shè)計(jì)中,前兩個階段是面向用戶的應(yīng)用要求,數(shù)據(jù)庫設(shè)計(jì)中,前兩個階段是面向用戶的應(yīng)用要求,面向具體的問題;中間兩個階段是面向數(shù)據(jù)庫管理系面向具體的問題;中間兩個階段是面向數(shù)據(jù)庫管理系統(tǒng);最后兩個階段是面向具體的實(shí)現(xiàn)方法。前四個階統(tǒng);最后兩個階段是面向具體的實(shí)現(xiàn)方法。前四個階段可統(tǒng)稱為段可統(tǒng)稱為“分析和設(shè)計(jì)階段分析和設(shè)計(jì)階段”,后兩個階段稱為,后兩個階段稱為“實(shí)現(xiàn)和運(yùn)行階段實(shí)現(xiàn)和運(yùn)行階段”。 六個階段的主要工作各有不同。六個階段的主要工作各有不同。 返回返回返回返回151 1系統(tǒng)需求分析階段系統(tǒng)需求分析階段v需求分析是整個
19、數(shù)據(jù)庫設(shè)計(jì)過程的基礎(chǔ),要收集數(shù)需求分析是整個數(shù)據(jù)庫設(shè)計(jì)過程的基礎(chǔ),要收集數(shù)據(jù)庫所有用戶的信息內(nèi)容和處理要求,并加以規(guī)格據(jù)庫所有用戶的信息內(nèi)容和處理要求,并加以規(guī)格化和分析。這是最費(fèi)時、最復(fù)雜的一步,但也是最化和分析。這是最費(fèi)時、最復(fù)雜的一步,但也是最重要的一步,相當(dāng)于待構(gòu)建的數(shù)據(jù)庫大廈的地基,重要的一步,相當(dāng)于待構(gòu)建的數(shù)據(jù)庫大廈的地基,它決定了以后各步設(shè)計(jì)的速度與質(zhì)量。需求分析做它決定了以后各步設(shè)計(jì)的速度與質(zhì)量。需求分析做得不好,可能會導(dǎo)致整個數(shù)據(jù)庫設(shè)計(jì)返工重做。在得不好,可能會導(dǎo)致整個數(shù)據(jù)庫設(shè)計(jì)返工重做。在分析用戶需求時,要確保用戶目標(biāo)的一致性。分析用戶需求時,要確保用戶目標(biāo)的一致性。2 2
20、概念結(jié)構(gòu)設(shè)計(jì)階段概念結(jié)構(gòu)設(shè)計(jì)階段v概念設(shè)計(jì)是把用戶的信息要求統(tǒng)一到一個整體邏輯概念設(shè)計(jì)是把用戶的信息要求統(tǒng)一到一個整體邏輯結(jié)構(gòu)中,此結(jié)構(gòu)能夠表達(dá)用戶的要求,是一個獨(dú)立結(jié)構(gòu)中,此結(jié)構(gòu)能夠表達(dá)用戶的要求,是一個獨(dú)立于任何于任何DBMSDBMS軟件和硬件的概念模型。軟件和硬件的概念模型。3 3邏輯結(jié)構(gòu)設(shè)計(jì)階段邏輯結(jié)構(gòu)設(shè)計(jì)階段v邏輯設(shè)計(jì)是將上一步所得到的概念模型轉(zhuǎn)換為某個邏輯設(shè)計(jì)是將上一步所得到的概念模型轉(zhuǎn)換為某個DBMSDBMS所支持的數(shù)據(jù)模型,并對其進(jìn)行優(yōu)化。所支持的數(shù)據(jù)模型,并對其進(jìn)行優(yōu)化。 返回返回返回返回16圖圖6.3數(shù)據(jù)庫的設(shè)計(jì)步驟數(shù)據(jù)庫的設(shè)計(jì)步驟YYNN需求分析階段現(xiàn) 有 應(yīng) 用、 未
21、來 應(yīng)用數(shù)據(jù)分析概念模型設(shè)計(jì)轉(zhuǎn)換規(guī)范,規(guī)范化理論DBMS要求邏輯模型設(shè)計(jì)用戶應(yīng)用要求DBMS限制物理模型設(shè)計(jì)應(yīng) 用 程 序的 使 用 頻率性能評價與預(yù)測符合要求?物理實(shí)現(xiàn)試運(yùn)行滿意?使用與維護(hù)概念設(shè)計(jì)階段邏輯設(shè)計(jì)階段物理設(shè)計(jì)階段數(shù)據(jù)庫實(shí)施階段數(shù)據(jù)庫運(yùn)行維護(hù)階段返回返回返回返回174 4物理設(shè)計(jì)階段物理設(shè)計(jì)階段v 物理設(shè)計(jì)是為邏輯數(shù)據(jù)模型建立一個完整的能實(shí)現(xiàn)的數(shù)據(jù)庫物理設(shè)計(jì)是為邏輯數(shù)據(jù)模型建立一個完整的能實(shí)現(xiàn)的數(shù)據(jù)庫結(jié)構(gòu),包括存儲結(jié)構(gòu)和存取方法。結(jié)構(gòu),包括存儲結(jié)構(gòu)和存取方法。v 上述分析和設(shè)計(jì)階段是很重要的,如果做出不恰當(dāng)?shù)姆治龌蛏鲜龇治龊驮O(shè)計(jì)階段是很重要的,如果做出不恰當(dāng)?shù)姆治龌蛟O(shè)計(jì),則會導(dǎo)致
22、一個不恰當(dāng)或反應(yīng)遲鈍的應(yīng)用系統(tǒng)。設(shè)計(jì),則會導(dǎo)致一個不恰當(dāng)或反應(yīng)遲鈍的應(yīng)用系統(tǒng)。5 5數(shù)據(jù)庫實(shí)施階段數(shù)據(jù)庫實(shí)施階段v 根據(jù)物理設(shè)計(jì)的結(jié)果把原始數(shù)據(jù)裝入數(shù)據(jù)庫,建立一個具體根據(jù)物理設(shè)計(jì)的結(jié)果把原始數(shù)據(jù)裝入數(shù)據(jù)庫,建立一個具體的數(shù)據(jù)庫并編寫和調(diào)試相應(yīng)的應(yīng)用程序。應(yīng)用程序的開發(fā)目的數(shù)據(jù)庫并編寫和調(diào)試相應(yīng)的應(yīng)用程序。應(yīng)用程序的開發(fā)目標(biāo)是開發(fā)一個可依賴的有效的數(shù)據(jù)庫存取程序,來滿足用戶標(biāo)是開發(fā)一個可依賴的有效的數(shù)據(jù)庫存取程序,來滿足用戶的處理要求。的處理要求。6 6數(shù)據(jù)庫運(yùn)行與維護(hù)階段數(shù)據(jù)庫運(yùn)行與維護(hù)階段v 這一階段主要是收集和記錄實(shí)際系統(tǒng)運(yùn)行的數(shù)據(jù),數(shù)據(jù)庫運(yùn)這一階段主要是收集和記錄實(shí)際系統(tǒng)運(yùn)行的數(shù)據(jù),數(shù)
23、據(jù)庫運(yùn)行的記錄用來提高用戶要求的有效信息,用來評價數(shù)據(jù)庫系行的記錄用來提高用戶要求的有效信息,用來評價數(shù)據(jù)庫系統(tǒng)的性能,進(jìn)一步調(diào)整和修改數(shù)據(jù)庫。在運(yùn)行中,必須保持統(tǒng)的性能,進(jìn)一步調(diào)整和修改數(shù)據(jù)庫。在運(yùn)行中,必須保持?jǐn)?shù)據(jù)庫的完整性,并能有效地處理數(shù)據(jù)庫故障和進(jìn)行數(shù)據(jù)庫數(shù)據(jù)庫的完整性,并能有效地處理數(shù)據(jù)庫故障和進(jìn)行數(shù)據(jù)庫恢復(fù)。在運(yùn)行和維護(hù)階段,可能要對數(shù)據(jù)庫結(jié)構(gòu)進(jìn)行修改或恢復(fù)。在運(yùn)行和維護(hù)階段,可能要對數(shù)據(jù)庫結(jié)構(gòu)進(jìn)行修改或擴(kuò)充。擴(kuò)充。 返回返回返回返回18 可以看出,以上六個階段是從數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計(jì)和可以看出,以上六個階段是從數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計(jì)和開發(fā)的全過程來考察數(shù)據(jù)庫設(shè)計(jì)的問題。因此,它既開發(fā)
24、的全過程來考察數(shù)據(jù)庫設(shè)計(jì)的問題。因此,它既是數(shù)據(jù)庫也是應(yīng)用系統(tǒng)的設(shè)計(jì)過程。在設(shè)計(jì)過程中,是數(shù)據(jù)庫也是應(yīng)用系統(tǒng)的設(shè)計(jì)過程。在設(shè)計(jì)過程中,努力使數(shù)據(jù)庫設(shè)計(jì)和系統(tǒng)其他部分的設(shè)計(jì)緊密結(jié)合,努力使數(shù)據(jù)庫設(shè)計(jì)和系統(tǒng)其他部分的設(shè)計(jì)緊密結(jié)合,把數(shù)據(jù)和處理的需求收集、分析、抽象、設(shè)計(jì)和實(shí)現(xiàn)把數(shù)據(jù)和處理的需求收集、分析、抽象、設(shè)計(jì)和實(shí)現(xiàn)在各個階段同時進(jìn)行、相互參照、相互補(bǔ)充,以完善在各個階段同時進(jìn)行、相互參照、相互補(bǔ)充,以完善兩方面的設(shè)計(jì)。按照這個原則,數(shù)據(jù)庫過程各個階段兩方面的設(shè)計(jì)。按照這個原則,數(shù)據(jù)庫過程各個階段的設(shè)計(jì)可用圖的設(shè)計(jì)可用圖6.46.4描述。描述。 在上圖有關(guān)處理特性的描述中,采用的設(shè)計(jì)方法和工在
25、上圖有關(guān)處理特性的描述中,采用的設(shè)計(jì)方法和工具屬于軟件工程和管理信息系統(tǒng)等課程中的內(nèi)容,本具屬于軟件工程和管理信息系統(tǒng)等課程中的內(nèi)容,本書不再討論,這里重點(diǎn)介紹數(shù)據(jù)特性的設(shè)計(jì)描述以及書不再討論,這里重點(diǎn)介紹數(shù)據(jù)特性的設(shè)計(jì)描述以及在結(jié)構(gòu)特性中參照處理特性設(shè)計(jì)以完善數(shù)據(jù)模型設(shè)計(jì)在結(jié)構(gòu)特性中參照處理特性設(shè)計(jì)以完善數(shù)據(jù)模型設(shè)計(jì)的問題。的問題。 以下各節(jié)分別詳細(xì)介紹數(shù)據(jù)庫設(shè)計(jì)的六個階段。以下各節(jié)分別詳細(xì)介紹數(shù)據(jù)庫設(shè)計(jì)的六個階段。返回返回返回返回19需求分析是數(shù)據(jù)庫設(shè)計(jì)的起點(diǎn),為以后的具體需求分析是數(shù)據(jù)庫設(shè)計(jì)的起點(diǎn),為以后的具體設(shè)計(jì)作準(zhǔn)備。設(shè)計(jì)作準(zhǔn)備。需求分析的結(jié)果是否準(zhǔn)確的反映了用戶的實(shí)際需求分析的結(jié)果
26、是否準(zhǔn)確的反映了用戶的實(shí)際要求,將直接影響到后面各個階段的設(shè)計(jì),并要求,將直接影響到后面各個階段的設(shè)計(jì),并影響到設(shè)計(jì)結(jié)果是否合理和實(shí)用。影響到設(shè)計(jì)結(jié)果是否合理和實(shí)用。經(jīng)驗(yàn)證明,由于設(shè)計(jì)要求的不正確或誤解,直經(jīng)驗(yàn)證明,由于設(shè)計(jì)要求的不正確或誤解,直到系統(tǒng)測試階段才發(fā)現(xiàn)許多錯誤,則糾正起來到系統(tǒng)測試階段才發(fā)現(xiàn)許多錯誤,則糾正起來要付出很大代價。要付出很大代價。因此,必須高度重視系統(tǒng)的需求分析。因此,必須高度重視系統(tǒng)的需求分析。 6.2 6.2 系統(tǒng)需求分析系統(tǒng)需求分析返回返回返回返回206.2.1 6.2.1 需求分析的任務(wù)需求分析的任務(wù)從數(shù)據(jù)庫設(shè)計(jì)的角度來看,需求分析的任務(wù)是:從數(shù)據(jù)庫設(shè)計(jì)的角度
27、來看,需求分析的任務(wù)是:對現(xiàn)實(shí)世界要處理的對象(組織、部門、企業(yè))對現(xiàn)實(shí)世界要處理的對象(組織、部門、企業(yè))等進(jìn)行詳細(xì)的調(diào)查,通過對原系統(tǒng)的了解,收等進(jìn)行詳細(xì)的調(diào)查,通過對原系統(tǒng)的了解,收集支持新系統(tǒng)的基礎(chǔ)數(shù)據(jù)并對其進(jìn)行處理,在集支持新系統(tǒng)的基礎(chǔ)數(shù)據(jù)并對其進(jìn)行處理,在此基礎(chǔ)上確定新系統(tǒng)的功能。此基礎(chǔ)上確定新系統(tǒng)的功能。 返回返回返回返回21具體地說,需求分析階段的任務(wù)包括以下三項(xiàng):具體地說,需求分析階段的任務(wù)包括以下三項(xiàng): 設(shè)計(jì)階段設(shè) 計(jì) 描 述數(shù)據(jù)處理需求分析數(shù)據(jù)字典、全系統(tǒng)中數(shù)據(jù)項(xiàng)、數(shù)據(jù)流、數(shù)據(jù)存儲的描述數(shù)據(jù)流圖和定表(判定樹)數(shù)據(jù)字典中處理過程的描述概念結(jié)構(gòu)設(shè)計(jì)概念模型(E-R圖)數(shù)據(jù)字
28、典系統(tǒng)說明書。包括:(1)新系統(tǒng)要求、方案和概圖(2)反映新系統(tǒng)信息的數(shù)據(jù)流圖邏輯結(jié)構(gòu)設(shè)計(jì)某種數(shù)據(jù)模型關(guān)系模型系統(tǒng)結(jié)構(gòu)圖非關(guān)系模型(模塊結(jié)構(gòu)圖)物理設(shè)計(jì)存儲安排存取方法選擇存取路徑建立模塊設(shè)計(jì)IPO表實(shí)施階段編寫模式裝入數(shù)據(jù)數(shù)據(jù)庫試運(yùn)行程序編碼編譯聯(lián)結(jié)測試運(yùn)行維護(hù)性能測試,轉(zhuǎn)儲/恢復(fù)數(shù)據(jù)庫重組和重構(gòu)新舊系統(tǒng)轉(zhuǎn)換、運(yùn)行、維護(hù)(修正性、適應(yīng)性、改善性維護(hù))圖圖6.4 6.4 數(shù)據(jù)庫各個設(shè)計(jì)階段的描述數(shù)據(jù)庫各個設(shè)計(jì)階段的描述返回返回返回返回221 1調(diào)查分析用戶的活動調(diào)查分析用戶的活動這個過程通過對新系統(tǒng)運(yùn)行目標(biāo)的研究,對現(xiàn)這個過程通過對新系統(tǒng)運(yùn)行目標(biāo)的研究,對現(xiàn)行系統(tǒng)所存在的主要問題的分析以及制約
29、因素行系統(tǒng)所存在的主要問題的分析以及制約因素的分析,明確用戶總的需求目標(biāo),確定這個目的分析,明確用戶總的需求目標(biāo),確定這個目標(biāo)的功能域和數(shù)據(jù)域。具體做法是:標(biāo)的功能域和數(shù)據(jù)域。具體做法是:(1) (1) 調(diào)查組織機(jī)構(gòu)情況,包括該組織的部門組成情況,調(diào)查組織機(jī)構(gòu)情況,包括該組織的部門組成情況,各部門的職責(zé)和任務(wù)等。各部門的職責(zé)和任務(wù)等。(2) (2) 調(diào)查各部門的業(yè)務(wù)活動情況,包括各部門輸入和調(diào)查各部門的業(yè)務(wù)活動情況,包括各部門輸入和輸出的數(shù)據(jù)與格式、所需的表格與卡片、加工處理輸出的數(shù)據(jù)與格式、所需的表格與卡片、加工處理這些數(shù)據(jù)的步驟、輸入輸出的部門等。這些數(shù)據(jù)的步驟、輸入輸出的部門等。返回返回
30、返回返回232 2收集和分析需求數(shù)據(jù),確定系統(tǒng)邊界收集和分析需求數(shù)據(jù),確定系統(tǒng)邊界 在熟悉業(yè)務(wù)活動的基礎(chǔ)上,協(xié)助用戶明確對新系統(tǒng)的在熟悉業(yè)務(wù)活動的基礎(chǔ)上,協(xié)助用戶明確對新系統(tǒng)的各種需求,包括用戶的信息需求、處理需求、安全性各種需求,包括用戶的信息需求、處理需求、安全性和完整性的需求等。和完整性的需求等。(1 1)信息需求指目標(biāo)范圍內(nèi)涉及的所有實(shí)體、實(shí)體的屬性以及)信息需求指目標(biāo)范圍內(nèi)涉及的所有實(shí)體、實(shí)體的屬性以及實(shí)體間的聯(lián)系等數(shù)據(jù)對象,也就是用戶需要從數(shù)據(jù)庫中獲得實(shí)體間的聯(lián)系等數(shù)據(jù)對象,也就是用戶需要從數(shù)據(jù)庫中獲得信息的內(nèi)容與性質(zhì)。由信息要求可以導(dǎo)出數(shù)據(jù)要求,即在數(shù)信息的內(nèi)容與性質(zhì)。由信息要求
31、可以導(dǎo)出數(shù)據(jù)要求,即在數(shù)據(jù)庫中需要存儲哪些數(shù)據(jù)。據(jù)庫中需要存儲哪些數(shù)據(jù)。(2 2)處理需求指用戶為了得到需求的信息而對數(shù)據(jù)進(jìn)行加工處)處理需求指用戶為了得到需求的信息而對數(shù)據(jù)進(jìn)行加工處理的要求,包括對某種處理功能的響應(yīng)時間,處理的方式理的要求,包括對某種處理功能的響應(yīng)時間,處理的方式(批處理或聯(lián)機(jī)處理)等。(批處理或聯(lián)機(jī)處理)等。(3 3)安全性和完整性的需求。在定義信息需求和處理需求的同)安全性和完整性的需求。在定義信息需求和處理需求的同時必須相應(yīng)確定安全性和完整性約束。時必須相應(yīng)確定安全性和完整性約束。 在收集各種需求數(shù)據(jù)后,對前面調(diào)查的結(jié)果進(jìn)行初步在收集各種需求數(shù)據(jù)后,對前面調(diào)查的結(jié)果進(jìn)
32、行初步分析,確定新系統(tǒng)的邊界,確定哪些功能由計(jì)算機(jī)完分析,確定新系統(tǒng)的邊界,確定哪些功能由計(jì)算機(jī)完成或?qū)頊?zhǔn)備讓計(jì)算機(jī)完成,哪些活動由人工完成。成或?qū)頊?zhǔn)備讓計(jì)算機(jī)完成,哪些活動由人工完成。由計(jì)算機(jī)完成的功能就是新系統(tǒng)應(yīng)該實(shí)現(xiàn)的功能。由計(jì)算機(jī)完成的功能就是新系統(tǒng)應(yīng)該實(shí)現(xiàn)的功能。 返回返回返回返回243 3編寫需求分析說明書編寫需求分析說明書 系統(tǒng)分析階段的最后是編寫系統(tǒng)分析報(bào)告,通常稱為系統(tǒng)分析階段的最后是編寫系統(tǒng)分析報(bào)告,通常稱為需求規(guī)范說明書。需求規(guī)范說明書是對需求分析階段需求規(guī)范說明書。需求規(guī)范說明書是對需求分析階段的一個總結(jié)。編寫系統(tǒng)分析報(bào)告是一個不斷反復(fù)、逐的一個總結(jié)。編寫系統(tǒng)分析報(bào)
33、告是一個不斷反復(fù)、逐步深入和逐步完善的過程,系統(tǒng)分析報(bào)告應(yīng)包括如下步深入和逐步完善的過程,系統(tǒng)分析報(bào)告應(yīng)包括如下內(nèi)容:內(nèi)容:(1) (1) 系統(tǒng)概況,系統(tǒng)的目標(biāo)、范圍、背景、歷史和現(xiàn)狀;系統(tǒng)概況,系統(tǒng)的目標(biāo)、范圍、背景、歷史和現(xiàn)狀;(2) (2) 系統(tǒng)的原理和技術(shù),對原系統(tǒng)的改善;系統(tǒng)的原理和技術(shù),對原系統(tǒng)的改善;(3) (3) 系統(tǒng)總體結(jié)構(gòu)與子系統(tǒng)結(jié)構(gòu)說明;系統(tǒng)總體結(jié)構(gòu)與子系統(tǒng)結(jié)構(gòu)說明;(4) (4) 系統(tǒng)功能說明;系統(tǒng)功能說明;(5) (5) 數(shù)據(jù)處理概要、工程體制和設(shè)計(jì)階段劃分;數(shù)據(jù)處理概要、工程體制和設(shè)計(jì)階段劃分;(6) (6) 系統(tǒng)方案及技術(shù)、經(jīng)濟(jì)、功能和操作上的可行性。系統(tǒng)方案及技
34、術(shù)、經(jīng)濟(jì)、功能和操作上的可行性。 完成系統(tǒng)的分析報(bào)告后,在項(xiàng)目單位的領(lǐng)導(dǎo)下要組織完成系統(tǒng)的分析報(bào)告后,在項(xiàng)目單位的領(lǐng)導(dǎo)下要組織有關(guān)技術(shù)專家評審系統(tǒng)分析報(bào)告,這是對需求分析結(jié)有關(guān)技術(shù)專家評審系統(tǒng)分析報(bào)告,這是對需求分析結(jié)構(gòu)的再審查。審查通過后由項(xiàng)目方和開發(fā)方領(lǐng)導(dǎo)簽字構(gòu)的再審查。審查通過后由項(xiàng)目方和開發(fā)方領(lǐng)導(dǎo)簽字認(rèn)可。認(rèn)可。 返回返回返回返回25隨系統(tǒng)分析報(bào)告提供下列附件:隨系統(tǒng)分析報(bào)告提供下列附件:(1) (1) 系統(tǒng)的硬件、軟件支持環(huán)境的選擇及規(guī)格要求系統(tǒng)的硬件、軟件支持環(huán)境的選擇及規(guī)格要求(所選擇的數(shù)據(jù)庫管理系統(tǒng)、操作系統(tǒng)、漢字平臺、(所選擇的數(shù)據(jù)庫管理系統(tǒng)、操作系統(tǒng)、漢字平臺、計(jì)算機(jī)型號及
35、其網(wǎng)絡(luò)環(huán)境等)。計(jì)算機(jī)型號及其網(wǎng)絡(luò)環(huán)境等)。(2) (2) 組織機(jī)構(gòu)圖、組織之間聯(lián)系圖組織機(jī)構(gòu)圖、組織之間聯(lián)系圖t t 各機(jī)構(gòu)功能業(yè)務(wù)各機(jī)構(gòu)功能業(yè)務(wù)一覽圖。一覽圖。(3) (3) 數(shù)據(jù)流程圖、功能模塊圖和數(shù)據(jù)字典等圖表。數(shù)據(jù)流程圖、功能模塊圖和數(shù)據(jù)字典等圖表。如果用戶同意系統(tǒng)分析報(bào)告和方案設(shè)計(jì),在與如果用戶同意系統(tǒng)分析報(bào)告和方案設(shè)計(jì),在與用戶進(jìn)行詳盡商討的基礎(chǔ)上,最后簽訂技術(shù)協(xié)用戶進(jìn)行詳盡商討的基礎(chǔ)上,最后簽訂技術(shù)協(xié)議書。議書。系統(tǒng)分析報(bào)告是設(shè)計(jì)者和用戶一致確認(rèn)的權(quán)威系統(tǒng)分析報(bào)告是設(shè)計(jì)者和用戶一致確認(rèn)的權(quán)威性文獻(xiàn),是今后各階段設(shè)計(jì)和工作的依據(jù)。性文獻(xiàn),是今后各階段設(shè)計(jì)和工作的依據(jù)。 返回返回返
36、回返回266.2.2 6.2.2 需求分析的方法需求分析的方法 用戶參加數(shù)據(jù)庫設(shè)計(jì)是數(shù)據(jù)應(yīng)用系統(tǒng)設(shè)計(jì)的特點(diǎn),是用戶參加數(shù)據(jù)庫設(shè)計(jì)是數(shù)據(jù)應(yīng)用系統(tǒng)設(shè)計(jì)的特點(diǎn),是數(shù)據(jù)庫設(shè)計(jì)理論不可分割的一部分。數(shù)據(jù)庫設(shè)計(jì)理論不可分割的一部分。 在數(shù)據(jù)需求分析階段,任何調(diào)查研究沒有用戶的積極在數(shù)據(jù)需求分析階段,任何調(diào)查研究沒有用戶的積極參加是寸步難行的,設(shè)計(jì)人員應(yīng)和用戶取得共同的語參加是寸步難行的,設(shè)計(jì)人員應(yīng)和用戶取得共同的語言,幫助不熟悉計(jì)算機(jī)的用戶建立數(shù)據(jù)庫環(huán)境下的共言,幫助不熟悉計(jì)算機(jī)的用戶建立數(shù)據(jù)庫環(huán)境下的共同概念,所以這個過程中不同背景的人員之間互相了同概念,所以這個過程中不同背景的人員之間互相了解與溝通是
37、至關(guān)重要的,同時方法也很重要。解與溝通是至關(guān)重要的,同時方法也很重要。 用于需求分析的方法有多種,主要方法有自頂向下和用于需求分析的方法有多種,主要方法有自頂向下和自底向上兩種自底向上兩種, ,如圖如圖6.56.5所示。所示。 其中自頂向下的分析方法(其中自頂向下的分析方法(Structured Analysis,簡稱,簡稱SA方法)是最簡單實(shí)用的方法。方法)是最簡單實(shí)用的方法。SA方法從最上層的系方法從最上層的系統(tǒng)組織機(jī)構(gòu)入手,采用逐層分解的方式分析系統(tǒng),用統(tǒng)組織機(jī)構(gòu)入手,采用逐層分解的方式分析系統(tǒng),用數(shù)據(jù)流圖數(shù)據(jù)流圖(Data Flow Diagram,DFD)和)和數(shù)據(jù)字典數(shù)據(jù)字典(Da
38、ta Dictionary,DD)描述系統(tǒng)。)描述系統(tǒng)。 下面對數(shù)據(jù)流圖和數(shù)據(jù)字典作些簡單的介紹。下面對數(shù)據(jù)流圖和數(shù)據(jù)字典作些簡單的介紹。 返回返回返回返回271 1數(shù)據(jù)流圖數(shù)據(jù)流圖 使用使用SASA方法,任何一個系統(tǒng)都可抽象為圖方法,任何一個系統(tǒng)都可抽象為圖6.66.6所示的數(shù)所示的數(shù)據(jù)流圖。據(jù)流圖。 在數(shù)據(jù)流圖中,用命名的箭頭表示數(shù)據(jù)流,用圓圈表在數(shù)據(jù)流圖中,用命名的箭頭表示數(shù)據(jù)流,用圓圈表示處理,用矩形或其他形狀表示存儲。示處理,用矩形或其他形狀表示存儲。 圖圖6.76.7是一個簡單的數(shù)據(jù)流圖。一個簡單的系統(tǒng)可用一是一個簡單的數(shù)據(jù)流圖。一個簡單的系統(tǒng)可用一張數(shù)據(jù)流圖來表示。當(dāng)系統(tǒng)比較復(fù)雜
39、時,為了便于理張數(shù)據(jù)流圖來表示。當(dāng)系統(tǒng)比較復(fù)雜時,為了便于理解,控制其復(fù)雜性,可以采用分層描述的方法。一般解,控制其復(fù)雜性,可以采用分層描述的方法。一般用第一層描述系統(tǒng)的全貌,第二層分別描述各子系統(tǒng)用第一層描述系統(tǒng)的全貌,第二層分別描述各子系統(tǒng)的結(jié)構(gòu)。如果系統(tǒng)結(jié)構(gòu)還比較復(fù)雜,那么可以繼續(xù)細(xì)的結(jié)構(gòu)。如果系統(tǒng)結(jié)構(gòu)還比較復(fù)雜,那么可以繼續(xù)細(xì)化,直到表達(dá)清楚為止。在處理功能逐步分解的同時,化,直到表達(dá)清楚為止。在處理功能逐步分解的同時,它們所用的數(shù)據(jù)也逐級分解,形成若干層次的數(shù)據(jù)流它們所用的數(shù)據(jù)也逐級分解,形成若干層次的數(shù)據(jù)流圖。數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理過程的關(guān)系。圖。數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理過程的關(guān)
40、系。 在在SA方法中,處理過程的處理邏輯常常借助判定表或方法中,處理過程的處理邏輯常常借助判定表或判定樹來描述,而系統(tǒng)中的數(shù)據(jù)則是借助數(shù)據(jù)字典來判定樹來描述,而系統(tǒng)中的數(shù)據(jù)則是借助數(shù)據(jù)字典來描述描述 返回返回返回返回28圖圖6.5 需求分析的方法需求分析的方法(a)自頂向下的需求分析(b)自底向上的需求分析需求需求需求需求需求需求需求需求需求需求需求需求需求需求返回返回返回返回29圖圖6.6 數(shù)據(jù)流圖數(shù)據(jù)流圖數(shù)據(jù)流數(shù)據(jù)流數(shù)據(jù)存儲數(shù)據(jù)來源處理數(shù)據(jù)輸出處理需求信息需求返回返回返回返回30圖圖6.7 數(shù)據(jù)流圖示例數(shù)據(jù)流圖示例付款憑證報(bào)銷單報(bào)銷登記報(bào)銷人審查分錄返回返回返回返回312 2數(shù)據(jù)字典數(shù)據(jù)字
41、典 數(shù)據(jù)字典是對系統(tǒng)中數(shù)據(jù)的詳細(xì)描述,是各類數(shù)據(jù)結(jié)數(shù)據(jù)字典是對系統(tǒng)中數(shù)據(jù)的詳細(xì)描述,是各類數(shù)據(jù)結(jié)構(gòu)和屬性的清單。它與數(shù)據(jù)流圖互為注釋。構(gòu)和屬性的清單。它與數(shù)據(jù)流圖互為注釋。 數(shù)據(jù)字典貫穿于數(shù)據(jù)庫需求分析直到數(shù)據(jù)庫運(yùn)行的全數(shù)據(jù)字典貫穿于數(shù)據(jù)庫需求分析直到數(shù)據(jù)庫運(yùn)行的全過程,在不同的階段其內(nèi)容和用途各有區(qū)別。過程,在不同的階段其內(nèi)容和用途各有區(qū)別。 在需求分析階段,它通常包含以下五部分內(nèi)容。在需求分析階段,它通常包含以下五部分內(nèi)容。(1) (1) 數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng)v 數(shù)據(jù)項(xiàng)是數(shù)據(jù)的最小單位,其具體內(nèi)容包括:數(shù)據(jù)頂名、含數(shù)據(jù)項(xiàng)是數(shù)據(jù)的最小單位,其具體內(nèi)容包括:數(shù)據(jù)頂名、含義說明、別名、類型、長度、取值范
42、圍、與其他數(shù)據(jù)項(xiàng)的關(guān)義說明、別名、類型、長度、取值范圍、與其他數(shù)據(jù)項(xiàng)的關(guān)系。系。v 其中,取值范圍、與其他數(shù)據(jù)項(xiàng)的關(guān)系這兩項(xiàng)內(nèi)容定義了完其中,取值范圍、與其他數(shù)據(jù)項(xiàng)的關(guān)系這兩項(xiàng)內(nèi)容定義了完整性約束條件,是設(shè)計(jì)數(shù)據(jù)檢驗(yàn)功能的依據(jù)。整性約束條件,是設(shè)計(jì)數(shù)據(jù)檢驗(yàn)功能的依據(jù)。(2) (2) 數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)v 數(shù)據(jù)結(jié)構(gòu)是數(shù)據(jù)項(xiàng)有意義的集合。內(nèi)容包括:數(shù)據(jù)結(jié)構(gòu)名、數(shù)據(jù)結(jié)構(gòu)是數(shù)據(jù)項(xiàng)有意義的集合。內(nèi)容包括:數(shù)據(jù)結(jié)構(gòu)名、含義說明,這些內(nèi)容組成數(shù)據(jù)項(xiàng)名。含義說明,這些內(nèi)容組成數(shù)據(jù)項(xiàng)名。 返回返回返回返回32(3) (3) 數(shù)據(jù)流數(shù)據(jù)流v 數(shù)據(jù)流可以是數(shù)據(jù)項(xiàng),也可以是數(shù)據(jù)結(jié)構(gòu),它表示某一處理數(shù)據(jù)流可以是數(shù)據(jù)項(xiàng),也
43、可以是數(shù)據(jù)結(jié)構(gòu),它表示某一處理過程中數(shù)據(jù)在系統(tǒng)內(nèi)傳輸?shù)穆窂?。過程中數(shù)據(jù)在系統(tǒng)內(nèi)傳輸?shù)穆窂?。v 內(nèi)容包括:數(shù)據(jù)流名、說明、流出過程、流入過程,這些內(nèi)內(nèi)容包括:數(shù)據(jù)流名、說明、流出過程、流入過程,這些內(nèi)容組成數(shù)據(jù)項(xiàng)或數(shù)據(jù)結(jié)構(gòu)。容組成數(shù)據(jù)項(xiàng)或數(shù)據(jù)結(jié)構(gòu)。v 其中,流出過程說明該數(shù)據(jù)流由什么過程而來;流入過程說其中,流出過程說明該數(shù)據(jù)流由什么過程而來;流入過程說明該數(shù)據(jù)流到什么過程。明該數(shù)據(jù)流到什么過程。(4) (4) 數(shù)據(jù)存儲數(shù)據(jù)存儲v 處理過程中數(shù)據(jù)的存放場所,也是數(shù)據(jù)流的來源和去向之一。處理過程中數(shù)據(jù)的存放場所,也是數(shù)據(jù)流的來源和去向之一??梢允鞘止{證,手工文檔或計(jì)算機(jī)文件??梢允鞘止{證,手工
44、文檔或計(jì)算機(jī)文件。v 包括數(shù)據(jù)存儲名,說明,輸入數(shù)據(jù)流,輸出數(shù)據(jù)流,組成:包括數(shù)據(jù)存儲名,說明,輸入數(shù)據(jù)流,輸出數(shù)據(jù)流,組成:數(shù)據(jù)項(xiàng)或數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)量,存取頻度,存取方式。數(shù)據(jù)項(xiàng)或數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)量,存取頻度,存取方式。v 其中,存取頻度是指每天(或每小時、或每周)存取幾次,其中,存取頻度是指每天(或每小時、或每周)存取幾次,每次存取多少數(shù)據(jù)等信息。存取方法指的是批處理,還是聯(lián)每次存取多少數(shù)據(jù)等信息。存取方法指的是批處理,還是聯(lián)機(jī)處理;是檢索還是更新;是順序檢索還是隨機(jī)檢索等。機(jī)處理;是檢索還是更新;是順序檢索還是隨機(jī)檢索等。 返回返回返回返回33(5) (5) 處理過程處理過程v處理過程的處理
45、邏輯通常用判定表或判定樹來描述,處理過程的處理邏輯通常用判定表或判定樹來描述,數(shù)據(jù)字典只用來描述處理過程的說明性信息。數(shù)據(jù)字典只用來描述處理過程的說明性信息。v處理過程包括處理過程名,說明,輸入:數(shù)據(jù)處理過程包括處理過程名,說明,輸入:數(shù)據(jù)流,輸出:數(shù)據(jù)流,處理,簡要說明。流,輸出:數(shù)據(jù)流,處理,簡要說明。v其中,簡要說明主要說明處理過程的功能及處理要其中,簡要說明主要說明處理過程的功能及處理要求。求。v功能是指該處理過程用來做什么(不是怎么做),功能是指該處理過程用來做什么(不是怎么做),處理要求指該處理頻度要求,如單位時間里處理多處理要求指該處理頻度要求,如單位時間里處理多少事務(wù)、多少數(shù)據(jù)
46、量、響應(yīng)時間要求等,這些處理少事務(wù)、多少數(shù)據(jù)量、響應(yīng)時間要求等,這些處理要求是后面物理設(shè)計(jì)的輸入及性能評價的標(biāo)準(zhǔn)。要求是后面物理設(shè)計(jì)的輸入及性能評價的標(biāo)準(zhǔn)。最終形成的數(shù)據(jù)流圖和數(shù)據(jù)字典為最終形成的數(shù)據(jù)流圖和數(shù)據(jù)字典為“需求分析需求分析說明書說明書”的主要內(nèi)容,這是下一步進(jìn)行概念設(shè)的主要內(nèi)容,這是下一步進(jìn)行概念設(shè)計(jì)的基礎(chǔ)。計(jì)的基礎(chǔ)。 返回返回返回返回346.3.1 6.3.1 概念結(jié)構(gòu)設(shè)計(jì)的必要性概念結(jié)構(gòu)設(shè)計(jì)的必要性 在需求分析階段,設(shè)計(jì)人員充分調(diào)查并描述了用戶的需求,在需求分析階段,設(shè)計(jì)人員充分調(diào)查并描述了用戶的需求,但這些需求只是現(xiàn)實(shí)世界的具體要求,應(yīng)把這些需求抽象但這些需求只是現(xiàn)實(shí)世界的具
47、體要求,應(yīng)把這些需求抽象為信息世界的結(jié)構(gòu),才能更好地實(shí)現(xiàn)用戶的需求。為信息世界的結(jié)構(gòu),才能更好地實(shí)現(xiàn)用戶的需求。 概念設(shè)計(jì)就是將需求分析得到的用戶需求抽象為信息結(jié)構(gòu),概念設(shè)計(jì)就是將需求分析得到的用戶需求抽象為信息結(jié)構(gòu),即概念模型。即概念模型。 在早期的數(shù)據(jù)庫設(shè)計(jì)中,概念設(shè)計(jì)并不是一個獨(dú)立的設(shè)計(jì)在早期的數(shù)據(jù)庫設(shè)計(jì)中,概念設(shè)計(jì)并不是一個獨(dú)立的設(shè)計(jì)階段。當(dāng)時的設(shè)計(jì)方式是在需求分析之后,接著就進(jìn)行邏階段。當(dāng)時的設(shè)計(jì)方式是在需求分析之后,接著就進(jìn)行邏輯設(shè)計(jì)。這樣設(shè)計(jì)人員在進(jìn)行邏輯設(shè)計(jì)時,考慮的因素太輯設(shè)計(jì)。這樣設(shè)計(jì)人員在進(jìn)行邏輯設(shè)計(jì)時,考慮的因素太多,既要考慮用戶的信息,又要考慮具體多,既要考慮用戶的信
48、息,又要考慮具體DBMS的限制,的限制,使得設(shè)計(jì)過程復(fù)雜化,難以控制。為了改善這種狀況,使得設(shè)計(jì)過程復(fù)雜化,難以控制。為了改善這種狀況,P.P.S.chen設(shè)計(jì)了基于設(shè)計(jì)了基于E-R模型的數(shù)據(jù)庫設(shè)計(jì)方法,即在需模型的數(shù)據(jù)庫設(shè)計(jì)方法,即在需求分析和邏輯設(shè)計(jì)之間增加了一個概念設(shè)計(jì)階段。在這個求分析和邏輯設(shè)計(jì)之間增加了一個概念設(shè)計(jì)階段。在這個階段,設(shè)計(jì)人員僅從用戶角度看待數(shù)據(jù)及處理要求和約束,階段,設(shè)計(jì)人員僅從用戶角度看待數(shù)據(jù)及處理要求和約束,產(chǎn)生一個反映用戶觀點(diǎn)的概念模型,然后再把概念模型轉(zhuǎn)產(chǎn)生一個反映用戶觀點(diǎn)的概念模型,然后再把概念模型轉(zhuǎn)換成邏輯模型。這樣做有三個好處:換成邏輯模型。這樣做有三個
49、好處: 6.3 6.3 概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)設(shè)計(jì)返回返回返回返回35(1) (1) 從邏輯設(shè)計(jì)中分離出概念設(shè)計(jì)以后,各階段的任從邏輯設(shè)計(jì)中分離出概念設(shè)計(jì)以后,各階段的任務(wù)相對單一化,設(shè)計(jì)復(fù)雜程度大大降低,便于組織務(wù)相對單一化,設(shè)計(jì)復(fù)雜程度大大降低,便于組織管理。管理。(2) (2) 概念模型不受特定的概念模型不受特定的DBMSDBMS的限制,也獨(dú)立于存儲的限制,也獨(dú)立于存儲安排和效率方面的考慮,因而比邏輯模型更為穩(wěn)定。安排和效率方面的考慮,因而比邏輯模型更為穩(wěn)定。(3) (3) 概念模型不含具體的概念模型不含具體的DBMSDBMS所附加的技術(shù)細(xì)節(jié),更所附加的技術(shù)細(xì)節(jié),更容易為用戶所理解,因而更
50、有可能準(zhǔn)確反映用戶的容易為用戶所理解,因而更有可能準(zhǔn)確反映用戶的信息需求。信息需求。設(shè)計(jì)概念模型的過程稱為概念設(shè)計(jì)。概念模型設(shè)計(jì)概念模型的過程稱為概念設(shè)計(jì)。概念模型在數(shù)據(jù)庫的各級模型中的地位如圖在數(shù)據(jù)庫的各級模型中的地位如圖6.8所示。所示。 返回返回返回返回36圖圖6.8 數(shù)據(jù)庫各級模型的形成數(shù)據(jù)庫各級模型的形成應(yīng)用1應(yīng)用要求應(yīng)用2應(yīng)用要求應(yīng)用3應(yīng)用要求概念模式綜合應(yīng)用1外模式1應(yīng)用2外模式2應(yīng)用3外模式3概念模式概念模式轉(zhuǎn)換映象映象返回返回返回返回376.3.2 6.3.2 概念模型的特點(diǎn)概念模型的特點(diǎn) 概念模型作為概念設(shè)計(jì)的表達(dá)工具,為數(shù)據(jù)庫提供一概念模型作為概念設(shè)計(jì)的表達(dá)工具,為數(shù)據(jù)庫
51、提供一個說明性結(jié)構(gòu),是設(shè)計(jì)數(shù)據(jù)庫邏輯結(jié)構(gòu)即邏輯模型的個說明性結(jié)構(gòu),是設(shè)計(jì)數(shù)據(jù)庫邏輯結(jié)構(gòu)即邏輯模型的基礎(chǔ)。因此,概念模型必須具備以下特點(diǎn):基礎(chǔ)。因此,概念模型必須具備以下特點(diǎn):(1) (1) 語義表達(dá)能力豐富。概念模型能表達(dá)用戶的各種需求,充語義表達(dá)能力豐富。概念模型能表達(dá)用戶的各種需求,充分反映現(xiàn)實(shí)世界,包括事物和事物之間的聯(lián)系、用戶對數(shù)據(jù)分反映現(xiàn)實(shí)世界,包括事物和事物之間的聯(lián)系、用戶對數(shù)據(jù)的處理要求,它是現(xiàn)實(shí)世界的一個真實(shí)模型。的處理要求,它是現(xiàn)實(shí)世界的一個真實(shí)模型。(2) (2) 易于交流和理解。概念模型是易于交流和理解。概念模型是DBADBA、應(yīng)用開發(fā)人員和用戶之、應(yīng)用開發(fā)人員和用戶之間
52、的主要界面,因此,概念模型要表達(dá)自然、直觀和容易理間的主要界面,因此,概念模型要表達(dá)自然、直觀和容易理解,以便和不熟悉計(jì)算機(jī)的用戶交換意見,用戶的積極參與解,以便和不熟悉計(jì)算機(jī)的用戶交換意見,用戶的積極參與是保證數(shù)據(jù)庫設(shè)計(jì)和成功的關(guān)鍵。是保證數(shù)據(jù)庫設(shè)計(jì)和成功的關(guān)鍵。(3) (3) 易于修改和擴(kuò)充。概念模型要能靈活地加以改變,以反映易于修改和擴(kuò)充。概念模型要能靈活地加以改變,以反映用戶需求和現(xiàn)實(shí)環(huán)境的變化。用戶需求和現(xiàn)實(shí)環(huán)境的變化。(4) (4) 易于向各種數(shù)據(jù)模型轉(zhuǎn)換。概念模型獨(dú)立于特定的易于向各種數(shù)據(jù)模型轉(zhuǎn)換。概念模型獨(dú)立于特定的DBMSDBMS,因而更加穩(wěn)定,能方便地向關(guān)系模型、網(wǎng)狀模型或
53、層次模型因而更加穩(wěn)定,能方便地向關(guān)系模型、網(wǎng)狀模型或?qū)哟文P偷雀鞣N數(shù)據(jù)模型轉(zhuǎn)換。等各種數(shù)據(jù)模型轉(zhuǎn)換。 人們提出了許多概念模型,其中最著名、最實(shí)用的一人們提出了許多概念模型,其中最著名、最實(shí)用的一種是種是E-R模型,它將現(xiàn)實(shí)世界的信息結(jié)構(gòu)統(tǒng)一用屬性、模型,它將現(xiàn)實(shí)世界的信息結(jié)構(gòu)統(tǒng)一用屬性、實(shí)體以及它們之間的聯(lián)系來描述。實(shí)體以及它們之間的聯(lián)系來描述。 返回返回返回返回386.3.3 6.3.3 概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟1 1概念結(jié)構(gòu)設(shè)計(jì)的方法概念結(jié)構(gòu)設(shè)計(jì)的方法 設(shè)計(jì)概念結(jié)構(gòu)的設(shè)計(jì)概念結(jié)構(gòu)的E-RE-R模型可采用四種方法。模型可采用四種方法。(1) (1) 自頂向下。先定義全
54、局概念結(jié)構(gòu)自頂向下。先定義全局概念結(jié)構(gòu)E-RE-R模型的框架,再逐步細(xì)模型的框架,再逐步細(xì)化。如圖化。如圖6.96.9(a a)所示。)所示。(2) (2) 自底向上。先定義各局部應(yīng)用的概念結(jié)構(gòu)自底向上。先定義各局部應(yīng)用的概念結(jié)構(gòu)E-RE-R模型,然后將模型,然后將它們集成,得到全局概念結(jié)構(gòu)它們集成,得到全局概念結(jié)構(gòu)E-RE-R模型。如圖模型。如圖6.96.9(b b)所示。)所示。(3) (3) 逐步擴(kuò)張。先定義最重要的核心概念逐步擴(kuò)張。先定義最重要的核心概念E-RE-R模型,然后向外擴(kuò)模型,然后向外擴(kuò)充,以滾雪球的方式逐步生成其他概念結(jié)構(gòu)充,以滾雪球的方式逐步生成其他概念結(jié)構(gòu)E-RE-R模
55、型。如圖模型。如圖6.96.9(c c)所示。)所示。(4) (4) 混合策略。該方法采用自頂向下和自底向上相結(jié)合的方法,混合策略。該方法采用自頂向下和自底向上相結(jié)合的方法,先自頂向下定義全局框架,再以它為骨架集成自底向上方法先自頂向下定義全局框架,再以它為骨架集成自底向上方法中設(shè)計(jì)的各個局部概念結(jié)構(gòu)。中設(shè)計(jì)的各個局部概念結(jié)構(gòu)。 其中最常用的方法是自底向上。即自頂向下地進(jìn)行需其中最常用的方法是自底向上。即自頂向下地進(jìn)行需求分析,再自底向上地設(shè)計(jì)概念結(jié)構(gòu)。求分析,再自底向上地設(shè)計(jì)概念結(jié)構(gòu)。 返回返回返回返回392 2概念結(jié)構(gòu)設(shè)計(jì)的步驟概念結(jié)構(gòu)設(shè)計(jì)的步驟 自底向上的設(shè)計(jì)方法可分為兩步,如圖自底向上
56、的設(shè)計(jì)方法可分為兩步,如圖6.106.10所示:所示:(1) (1) 進(jìn)行數(shù)據(jù)抽象,設(shè)計(jì)局部進(jìn)行數(shù)據(jù)抽象,設(shè)計(jì)局部E-RE-R模型,即設(shè)計(jì)用戶視圖。模型,即設(shè)計(jì)用戶視圖。(2) (2) 集成各局部集成各局部E-RE-R模型,形成全局模型,形成全局E-RE-R模型,即視圖的集成。模型,即視圖的集成。3 3數(shù)據(jù)抽象與局部數(shù)據(jù)抽象與局部E-RE-R模型設(shè)計(jì)模型設(shè)計(jì) 概念結(jié)構(gòu)是對現(xiàn)實(shí)世界的一種抽象。概念結(jié)構(gòu)是對現(xiàn)實(shí)世界的一種抽象。 所謂抽象是對實(shí)際的人、物、事和概念進(jìn)行人為處理,所謂抽象是對實(shí)際的人、物、事和概念進(jìn)行人為處理,它抽取人們關(guān)心的共同特性,忽略非本質(zhì)的細(xì)節(jié),并它抽取人們關(guān)心的共同特性,忽略
57、非本質(zhì)的細(xì)節(jié),并把這些特性用各種概念精確地加以描述,這些概念組把這些特性用各種概念精確地加以描述,這些概念組成了某種模型。成了某種模型。 概念結(jié)構(gòu)設(shè)計(jì)首先要根據(jù)需求分析得到的結(jié)果(數(shù)據(jù)概念結(jié)構(gòu)設(shè)計(jì)首先要根據(jù)需求分析得到的結(jié)果(數(shù)據(jù)流圖、數(shù)據(jù)字典等)對現(xiàn)實(shí)世界進(jìn)行抽象,設(shè)計(jì)各個流圖、數(shù)據(jù)字典等)對現(xiàn)實(shí)世界進(jìn)行抽象,設(shè)計(jì)各個局部局部E-R模型。模型。 返回返回返回返回40圖圖6.9 概念結(jié)構(gòu)設(shè)計(jì)的方法概念結(jié)構(gòu)設(shè)計(jì)的方法概念模式(b)自底向上的設(shè)計(jì)方法概念模式概念模式概念模式子 需求概念模式概念模式全局概念模式子 需求子 需求子 需求全局概念模式概念模式概念模式概念模式概念模式概念模式(a)自頂向下
58、的設(shè)計(jì)方法概念模式需求(c)逐步擴(kuò)張的設(shè)計(jì)方法核 心 需求需求核 心概 念結(jié)構(gòu)全 局概 念結(jié)構(gòu)返回返回返回返回41圖圖6.10 自底向上方法的設(shè)計(jì)步驟自底向上方法的設(shè)計(jì)步驟需求分析數(shù)據(jù)抽象、局部視圖設(shè)計(jì)視圖集成征求用戶意見DFD、DD局部ER圖全局ER圖邏輯結(jié)構(gòu)設(shè)計(jì)返回返回返回返回42(1) (1) E-RE-R方法方法 E-RE-R方法是方法是“實(shí)體實(shí)體- -聯(lián)系方法聯(lián)系方法”(Entity-Relationship Entity-Relationship ApproachApproach)的簡稱。它是描述現(xiàn)實(shí)世界概念結(jié)構(gòu)模型的)的簡稱。它是描述現(xiàn)實(shí)世界概念結(jié)構(gòu)模型的有效方法。用有效方法。用
59、E-RE-R方法建立的概念結(jié)構(gòu)模型稱為方法建立的概念結(jié)構(gòu)模型稱為E-RE-R模型,模型,或稱為或稱為E-RE-R圖。圖。 E-RE-R圖基本成分包含實(shí)體型、屬性和聯(lián)系。(在第圖基本成分包含實(shí)體型、屬性和聯(lián)系。(在第1 1章已章已經(jīng)介紹過它們的基本概念,這里只給出它們的表示方經(jīng)介紹過它們的基本概念,這里只給出它們的表示方法。)法。)實(shí)體型:用矩形框表示,框內(nèi)標(biāo)注實(shí)體名稱。如圖實(shí)體型:用矩形框表示,框內(nèi)標(biāo)注實(shí)體名稱。如圖6.116.11(a a)所)所示。示。屬性:用橢圓形框表示,框內(nèi)標(biāo)注屬性名稱。如圖屬性:用橢圓形框表示,框內(nèi)標(biāo)注屬性名稱。如圖6.116.11(b b)所)所示。示。聯(lián)系:指實(shí)體
60、之間的聯(lián)系,有一對一(聯(lián)系:指實(shí)體之間的聯(lián)系,有一對一(1:1),一對多(),一對多(1:n)或多對多(或多對多(m :n)三種聯(lián)系類型。例如系主任領(lǐng)導(dǎo)系,學(xué)生屬)三種聯(lián)系類型。例如系主任領(lǐng)導(dǎo)系,學(xué)生屬于某一系,學(xué)生選修課程,工人生產(chǎn)產(chǎn)品,這里于某一系,學(xué)生選修課程,工人生產(chǎn)產(chǎn)品,這里“領(lǐng)導(dǎo)領(lǐng)導(dǎo)”、“屬屬于于”、“選修選修”、“生產(chǎn)生產(chǎn)”表示實(shí)體間的聯(lián)系,可以作為聯(lián)系名表示實(shí)體間的聯(lián)系,可以作為聯(lián)系名稱。聯(lián)系用菱形框表示,框內(nèi)標(biāo)注聯(lián)系名稱。如圖稱。聯(lián)系用菱形框表示,框內(nèi)標(biāo)注聯(lián)系名稱。如圖6.11(c)所示。)所示。 返回返回返回返回43現(xiàn)實(shí)世界的復(fù)雜性導(dǎo)致實(shí)體聯(lián)系的復(fù)雜性。表現(xiàn)在現(xiàn)實(shí)世界的復(fù)雜
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 檔案信息化管理試題及答案
- 收納在社會生活中的作用試題及答案
- 收納師考試時間管理試題及答案分享
- 2024年咖啡師考試高效學(xué)習(xí)試題及答案
- 咖啡行業(yè)運(yùn)營策略試題及答案
- 備戰(zhàn)策略秘書證試題及答案
- 2024年統(tǒng)計(jì)師考試風(fēng)險評估題及答案
- 2024年珠寶鑒定師考試挑戰(zhàn)試題及答案揭秘
- 工程項(xiàng)目的立項(xiàng)與二級建造師試題及答案
- 舉例說明的多媒體設(shè)計(jì)試題及答案
- 二手車交易定金合同范本5篇
- 《烏魯木齊市國土空間總體規(guī)劃(2021-2035年)》
- AQ/T 2076-2020 頁巖氣鉆井井控安全技術(shù)規(guī)范(正式版)
- Python數(shù)據(jù)可視化 課件 第5、6章 Matplotlib繪圖高階設(shè)置、Matplotlib庫其他繪圖函數(shù)
- 15MW源網(wǎng)荷儲一體化項(xiàng)目可行性研究報(bào)告寫作模板-備案審批
- 經(jīng)營異常授權(quán)委托書范本
- 2024年陪診師準(zhǔn)入理論考核試題
- 2024年京福鐵路客運(yùn)專線安徽有限責(zé)任公司招聘筆試沖刺題(帶答案解析)
- 《人生就像自行車》課件
- 吉利汽車人才測評試題在線測試
- 2024年企業(yè)招聘考試-農(nóng)科院招聘筆試歷年真題薈萃含答案
評論
0/150
提交評論