第六章數(shù)據(jù)庫設(shè)計(jì)-Read_第1頁
第六章數(shù)據(jù)庫設(shè)計(jì)-Read_第2頁
第六章數(shù)據(jù)庫設(shè)計(jì)-Read_第3頁
第六章數(shù)據(jù)庫設(shè)計(jì)-Read_第4頁
第六章數(shù)據(jù)庫設(shè)計(jì)-Read_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第六章

數(shù)據(jù)庫設(shè)計(jì)§6.1數(shù)據(jù)庫設(shè)計(jì)概述§6.2需求分析§6.3概念結(jié)構(gòu)設(shè)計(jì)§6.4邏輯結(jié)構(gòu)設(shè)計(jì)§6.5數(shù)據(jù)庫的物理設(shè)計(jì)§6.6數(shù)據(jù)庫實(shí)施和維護(hù)數(shù)據(jù)庫的設(shè)計(jì)中體現(xiàn)出的特征:lllnnn涉及的知識(shí)面廣,研制的周期長,是一門綜合性的技術(shù),需要----數(shù)據(jù)庫的基本知識(shí)和數(shù)據(jù)庫設(shè)計(jì)技術(shù),計(jì)算機(jī)科學(xué)基礎(chǔ)知識(shí)及程序設(shè)計(jì)技巧,軟件工程的原理和方法,應(yīng)用領(lǐng)域的知識(shí)等。通過本章的學(xué)習(xí),應(yīng)該重點(diǎn)掌握:數(shù)據(jù)庫設(shè)計(jì)的概念;需求分析階段的任務(wù);概念結(jié)構(gòu)設(shè)計(jì)階段的任務(wù)與實(shí)現(xiàn)方法;邏輯結(jié)構(gòu)設(shè)計(jì)階段的任務(wù)與實(shí)現(xiàn)方法;物理結(jié)構(gòu)設(shè)計(jì)階段要考慮的任務(wù);數(shù)據(jù)庫的實(shí)現(xiàn)與維護(hù)?!?.1數(shù)據(jù)庫設(shè)計(jì)概述§6.1.1數(shù)據(jù)庫設(shè)計(jì)的任務(wù)、內(nèi)容和特點(diǎn)§6.1.2數(shù)據(jù)庫設(shè)計(jì)方法§6.1.3數(shù)據(jù)庫設(shè)計(jì)的基本步驟現(xiàn)代信息系統(tǒng)建設(shè),信息資源開發(fā)、利用,最有效的手段,核心問題是數(shù)據(jù)庫技術(shù)。只有合理地利用數(shù)據(jù)庫技術(shù),科學(xué)合理地組織信息資源,才能保證數(shù)據(jù)的完整性、一致性和共享性。數(shù)據(jù)庫設(shè)計(jì)是建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng)的技術(shù),是信息系統(tǒng)開發(fā)和建設(shè)中的核心技術(shù)?!?.1.1數(shù)據(jù)庫設(shè)計(jì)的任務(wù)、內(nèi)容和特點(diǎn)一、數(shù)據(jù)庫設(shè)計(jì)的任務(wù)數(shù)據(jù)庫設(shè)計(jì)的----是指,對(duì)于一個(gè)給定的應(yīng)用環(huán)境,信息求需)求。處理需求l 構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,

l 建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),n

使之能有效地存儲(chǔ)數(shù)據(jù),n滿足各種用戶的需求(信息要求和處理要信息需求數(shù)據(jù)庫設(shè)計(jì)典型應(yīng)用程序DBMS特性硬件和操作系統(tǒng)特性二、數(shù)據(jù)庫設(shè)計(jì)的內(nèi)容數(shù)據(jù)庫設(shè)計(jì)包括:l

數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)

l數(shù)據(jù)庫的行為設(shè)計(jì)兩方面的內(nèi)容。1.?dāng)?shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)指根據(jù)給定的應(yīng)用環(huán)境,進(jìn)行數(shù)據(jù)庫的模式或子模式的設(shè)計(jì)。包括數(shù)據(jù)庫的概念設(shè)計(jì)、邏輯設(shè)計(jì)和物理設(shè)計(jì)。數(shù)據(jù)庫模式是各應(yīng)用程序共享的結(jié)構(gòu),是靜態(tài)的、穩(wěn)定的,一經(jīng)形成后通常情況下是不容易改變的,所以結(jié)構(gòu)設(shè)計(jì)又稱為靜態(tài)模型設(shè)計(jì)。2.?dāng)?shù)據(jù)庫的行為設(shè)計(jì)指確定數(shù)據(jù)庫用戶的行為和動(dòng)作。而在數(shù)據(jù)庫系統(tǒng)中,用戶的行為和動(dòng)作指用戶對(duì)數(shù)據(jù)庫的操作,這些要通過應(yīng)用程序來實(shí)現(xiàn),所以數(shù)據(jù)庫的行為設(shè)計(jì)就是應(yīng)用程序的設(shè)計(jì)。用戶的行為總是使數(shù)據(jù)庫的內(nèi)容發(fā)生變化,所以行為設(shè)計(jì)是動(dòng)態(tài)的,行為設(shè)計(jì)又稱為動(dòng)態(tài)模型設(shè)計(jì)。三、數(shù)據(jù)庫、信息系統(tǒng)與人員之間的聯(lián)系信息系統(tǒng)的核心是數(shù)據(jù)庫,數(shù)據(jù)是穩(wěn)定的。信息系統(tǒng)建設(shè)是“三分技術(shù),七分管理,十二分?jǐn)?shù)據(jù)”。數(shù)據(jù)庫設(shè)計(jì)是IS開發(fā)建設(shè)的重要組成部分。作為一個(gè)良好的數(shù)據(jù)庫設(shè)計(jì)人員應(yīng)具備的知識(shí)結(jié)構(gòu):u

數(shù)據(jù)庫的基本知識(shí)和數(shù)據(jù)庫設(shè)計(jì)技術(shù)u

計(jì)算機(jī)科學(xué)的基礎(chǔ)知識(shí)和程序設(shè)計(jì)的方法和技巧u軟件工程的原理和方法u應(yīng)用領(lǐng)域的知識(shí)四、數(shù)據(jù)庫設(shè)計(jì)的特點(diǎn):u 數(shù)據(jù)庫建設(shè)是硬件、軟件和干件(技術(shù)與管理的界面)的結(jié)合;u數(shù)據(jù)庫設(shè)計(jì)是結(jié)構(gòu)(數(shù)據(jù))設(shè)計(jì)與行為(處理)設(shè)計(jì)的結(jié)合。早期的數(shù)據(jù)庫設(shè)計(jì)存在的嚴(yán)重的問題:功能設(shè)計(jì)與數(shù)據(jù)庫設(shè)計(jì)分離。l

著重結(jié)構(gòu)特性的設(shè)計(jì)而忽視了對(duì)行為的設(shè)計(jì)。l比較重視在給定的應(yīng)用環(huán)境下,采用什么原則、方法來建造數(shù)據(jù)庫的結(jié)構(gòu),而沒有考慮應(yīng)用環(huán)境要求與數(shù)據(jù)庫結(jié)構(gòu)的關(guān)系。因此造成了功能設(shè)計(jì)與數(shù)據(jù)庫設(shè)計(jì)分離。功能設(shè)計(jì)與數(shù)據(jù)庫設(shè)計(jì)分離的設(shè)計(jì)方法流程框架圖,見圖6.1(P204)?,F(xiàn)實(shí)世界數(shù)據(jù)分析概念模型設(shè)計(jì)邏輯數(shù)據(jù)庫設(shè)計(jì)物理數(shù)據(jù)庫設(shè)計(jì)子模式設(shè)計(jì)功能分析功能模型 功能說明事務(wù)設(shè)計(jì)程序說明應(yīng)用程序設(shè)計(jì)建立數(shù)據(jù) 程序編碼調(diào)試圖6.1結(jié)構(gòu)和行為分離的設(shè)計(jì)(P204)解決分離的方法:建立數(shù)據(jù)-功能關(guān)聯(lián)關(guān)系?,F(xiàn)實(shí)世界數(shù)據(jù)分析用戶業(yè)務(wù)活動(dòng)分析概念設(shè)計(jì)功能模型邏輯設(shè)計(jì)事務(wù)設(shè)計(jì)物理設(shè)計(jì)子模式設(shè)計(jì)加載試驗(yàn)數(shù)據(jù)性能考核否滿意?是加載數(shù)據(jù)庫運(yùn)行和維護(hù)程序說明應(yīng)用程數(shù)序據(jù)設(shè)計(jì)庫設(shè)計(jì)的全過程程序編碼調(diào)試IPO圖讀寫模塊輸入、更新、維護(hù)現(xiàn)在OO方法l

在系統(tǒng)分析與設(shè)計(jì)階段強(qiáng)調(diào)了將對(duì)象的屬性(結(jié)構(gòu))與行為設(shè)計(jì)結(jié)合,l

使用統(tǒng)一的表達(dá)工具----對(duì)象圖。但這種方法有待于進(jìn)一步發(fā)展和工程化實(shí)踐。查詢、檢索、使用InputOutput輸入處理輸出Process§6.1.2數(shù)據(jù)庫設(shè)計(jì)方法所謂“數(shù)據(jù)庫設(shè)計(jì)方法”,就是要提出數(shù)據(jù)庫設(shè)計(jì):lll準(zhǔn)則規(guī)程以及工程化步驟。數(shù)據(jù)庫設(shè)計(jì)方法,目前可分為四類:直觀設(shè)計(jì)法:手工試湊法規(guī)范設(shè)計(jì)法:手工設(shè)計(jì)、過程迭代、逐步求精計(jì)算機(jī)輔助設(shè)計(jì)法自動(dòng)化設(shè)計(jì)法早期系統(tǒng)開發(fā)面向應(yīng)用,背離數(shù)據(jù)庫設(shè)計(jì)本質(zhì),針對(duì)具體的單個(gè)應(yīng)用進(jìn)行數(shù)據(jù)庫設(shè)計(jì)。(一個(gè)用戶視圖設(shè)計(jì)一個(gè)數(shù)據(jù)庫表)

應(yīng)用數(shù)據(jù)庫。導(dǎo)致數(shù)據(jù)庫:lll維護(hù)困難,信息不一致性大,共享性差。隨著IS工程化建設(shè)實(shí)踐的進(jìn)程,數(shù)據(jù)庫理論(尤其規(guī)范理論)的發(fā)展,人們提出數(shù)據(jù)庫“規(guī)范設(shè)計(jì)方法”。其中,著名的有新奧爾良(NewOrleans)方法。將數(shù)據(jù)庫設(shè)計(jì)分為四個(gè)階段:lll需求分析(分析用戶要求)、

概念設(shè)計(jì)(信息分析和定義)、邏輯設(shè)計(jì)(設(shè)計(jì)實(shí)現(xiàn))l物理設(shè)計(jì)(物理數(shù)據(jù)庫設(shè)計(jì))。定義了每個(gè)階段的工作內(nèi)容和使用的工具:需求分析階段–

工作內(nèi)容:把握用戶需求(功能需求,信息需求)–

使用工具:數(shù)據(jù)流圖(Data

Flow

Diagram,簡記為DFD);數(shù)據(jù)字典(Data

Dictionary,簡記為DD);––設(shè)計(jì)流程圖(Design

Flow

Diagram)。概念設(shè)計(jì)階段工作內(nèi)容:信息分析和定義用

使用工具:E-R(EtityRelationship)圖邏輯設(shè)計(jì)階段工作內(nèi)容:設(shè)計(jì)實(shí)現(xiàn)使用工具:規(guī)范化理論----基于3NF。(程序員和及其世界結(jié)構(gòu))在設(shè)計(jì)手段上,由“手工設(shè)計(jì)”逐漸研制開發(fā)“輔助設(shè)計(jì)工具”。u

Oracle公司:Design

2000u

Sybase公司:PowerDesigner我們研究所也研制了一套類似于這方面的

CASE工具(Computer

Aided

SoftwareEngineering)。u

CADDSu

DPAT/SDAT/ICATu

IRP2000u

ASSET需求分析概念結(jié)構(gòu)設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)物理結(jié)構(gòu)設(shè)計(jì)§6.1.3數(shù)據(jù)庫設(shè)計(jì)的基本步驟在規(guī)范設(shè)計(jì)方法的基礎(chǔ)上從數(shù)據(jù)庫及應(yīng)用系統(tǒng)開發(fā)的全過程出發(fā),對(duì)數(shù)據(jù)庫設(shè)計(jì)的步驟人們達(dá)成共識(shí),認(rèn)為規(guī)范設(shè)計(jì)方法可將數(shù)據(jù)庫設(shè)計(jì)分為以下六個(gè)步驟:面向用戶的應(yīng)用需求,面向具體問題面向數(shù)據(jù)庫管理系統(tǒng)面向具體的實(shí)現(xiàn)方法分析和設(shè)計(jì)階段實(shí)現(xiàn)和運(yùn)行階段(5)數(shù)據(jù)庫實(shí)施(6)數(shù)據(jù)庫運(yùn)行和維護(hù)參見書P200

圖6.2結(jié)構(gòu)化的數(shù)據(jù)庫設(shè)計(jì)圖6.2數(shù)據(jù)庫設(shè)計(jì)步應(yīng)用要求、DBMS詳細(xì)特征設(shè)計(jì)物理結(jié)構(gòu)需求收集和分析使用、運(yùn)行、維護(hù)尋優(yōu)過程應(yīng)用需求(數(shù)據(jù)、處理)設(shè)計(jì)概念結(jié)構(gòu)轉(zhuǎn)換規(guī)則、

DBMS功能、優(yōu)化方法設(shè)計(jì)邏輯結(jié)構(gòu)迭代過程、數(shù)據(jù)模型優(yōu)化評(píng)價(jià)設(shè)計(jì)、性能預(yù)測不滿意物理實(shí)現(xiàn)需求分析階段概念設(shè)計(jì)階段邏輯設(shè)計(jì)階段物理設(shè)計(jì)階段數(shù)據(jù)實(shí)施階段試驗(yàn)性運(yùn)行不滿意數(shù)據(jù)庫運(yùn)行、維護(hù)階段涉及人員:lllll系統(tǒng)分析人員、數(shù)據(jù)庫設(shè)計(jì)人員、程序員、用戶、數(shù)據(jù)庫管理員。參見P208

圖6.3

數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)階段系統(tǒng)需求分析階段需求分析是整個(gè)數(shù)據(jù)庫設(shè)計(jì)過程的基礎(chǔ)要收集數(shù)據(jù)庫所有用戶的信息內(nèi)容和處理要求,并加以規(guī)格化和分析。概念結(jié)構(gòu)設(shè)計(jì)階段把用戶的信息要求綜合、歸納與抽象,形成一個(gè)能夠表達(dá)用戶的要求,獨(dú)立于任何DBMS軟件和硬件的概念模型。邏輯結(jié)構(gòu)設(shè)計(jì)階段將上一步所得到的概念模型轉(zhuǎn)換為某個(gè)DBMS所支持的數(shù)據(jù)模型,并對(duì)其進(jìn)行優(yōu)化。物理設(shè)計(jì)階段物理設(shè)計(jì)是為邏輯數(shù)據(jù)模型建立一個(gè)完整的能實(shí)現(xiàn)的數(shù)據(jù)庫結(jié)構(gòu),包括存儲(chǔ)結(jié)構(gòu)和存取方法。數(shù)據(jù)庫實(shí)施階段建立數(shù)據(jù)庫編制、調(diào)試應(yīng)用程序組織數(shù)據(jù)入庫進(jìn)行試運(yùn)行數(shù)據(jù)庫運(yùn)行與維護(hù)階段對(duì)數(shù)據(jù)庫性能進(jìn)行評(píng)價(jià)、調(diào)整與修改數(shù)據(jù)庫設(shè)計(jì)六個(gè)階段工作任務(wù):設(shè)計(jì)階段設(shè)計(jì)描述數(shù)據(jù)處理需求分析數(shù)據(jù)字典、全系統(tǒng)中數(shù)據(jù)項(xiàng)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)的描述數(shù)據(jù)流圖和定表(判定樹)數(shù)據(jù)字典中處理過程的描述概念結(jié)構(gòu)設(shè)

計(jì)概念模型(E-R圖)數(shù)據(jù)字典邏輯結(jié)構(gòu)設(shè)

計(jì)某種數(shù)據(jù)模型關(guān)系模型非關(guān)系系統(tǒng)說明書。包括:(1)新系統(tǒng)要求、方案和概圖(2)反映新系統(tǒng)信息的數(shù)據(jù)流圖系統(tǒng)結(jié)構(gòu)圖非關(guān)系模型(模塊結(jié)構(gòu)圖)物理設(shè)計(jì)存儲(chǔ)安排存取方法選擇立存取路徑建模塊設(shè)計(jì)IPO表實(shí)施階段編寫模式裝入數(shù)據(jù)數(shù)據(jù)庫試運(yùn)行程序編碼編譯聯(lián)結(jié)

測試運(yùn)行維護(hù)性能測試,轉(zhuǎn)儲(chǔ)/恢復(fù)數(shù)據(jù)庫重組和重構(gòu)新舊系統(tǒng)轉(zhuǎn)換、運(yùn)行、維護(hù)(修正性、適應(yīng)性、改善性維護(hù))數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)的不同階段形成數(shù)據(jù)庫的各級(jí)模式概念模式邏輯模式應(yīng)用1

應(yīng)用要求應(yīng)用2

應(yīng)用要求應(yīng)用3

應(yīng)用要求應(yīng)用i

應(yīng)用要求轉(zhuǎn)換映象綜合圖6.4數(shù)據(jù)庫的各級(jí)模式(P209)應(yīng)用1 應(yīng)用2外模式 外模式映象應(yīng)用n外模式內(nèi)模式§6.2需求分析是分析用戶的要求。是DB設(shè)計(jì)起點(diǎn)應(yīng)準(zhǔn)確地把握用戶需求一、需求分析的任務(wù)二、需求分析方法一.需求分析的任務(wù):通過詳細(xì)調(diào)查現(xiàn)實(shí)世界要處理的對(duì)象(組織、部門、企業(yè)),充分了解原系統(tǒng)(手工系統(tǒng)或計(jì)算機(jī)系統(tǒng))工作概況,明確用戶各種需求,然后在此基礎(chǔ)上確定新系統(tǒng)的功能,設(shè)計(jì)數(shù)據(jù)庫。具體需求:u

信息要求:用戶從數(shù)據(jù)庫獲得的內(nèi)容與性質(zhì)。u

處理要求:用戶要完成什么處理功能,對(duì)處理的響應(yīng),時(shí)間有什么要求,處理方式:是批處理還是聯(lián)機(jī)處理?

what,who,when,where,howu

安全性與完整性要求。二.需求分析方法進(jìn)行需求分析首先是調(diào)查清楚用戶的實(shí)際要求,與用戶達(dá)成共識(shí),然后分析與表達(dá)這些需求。--用戶積極參與(一)調(diào)查用戶需求的步驟調(diào)查分析用戶的活動(dòng)調(diào)查組織機(jī)構(gòu)情況,包括該組織的部門組成情況,各部門的職責(zé)和任務(wù)等。調(diào)查各部門的業(yè)務(wù)活動(dòng)情況,包括各部門輸入和輸出的數(shù)據(jù)與格式、所需的表格與卡片、加工處理這些數(shù)據(jù)的步驟、輸入輸出的部門等。調(diào)查方法:實(shí)地調(diào)查-跟班作業(yè)開調(diào)查會(huì)請(qǐng)專人介紹詢問設(shè)計(jì)調(diào)查表查閱記錄2.收集和分析需求數(shù)據(jù),確定系統(tǒng)邊界在熟悉業(yè)務(wù)活動(dòng)的基礎(chǔ)上,協(xié)助用戶明確對(duì)新系統(tǒng)的各種需求,包括用戶的信息需求、處理需求、安全性和完整性的需求等。在收集各種需求數(shù)據(jù)后,對(duì)前面調(diào)查的結(jié)果進(jìn)行初步分析,確定新系統(tǒng)的邊界,確定哪些功能由計(jì)算機(jī)完成或?qū)頊?zhǔn)備讓計(jì)算機(jī)完成,哪些活動(dòng)由人工完成。由計(jì)算機(jī)完成的功能就是新系統(tǒng)應(yīng)該實(shí)現(xiàn)的功能。3.編寫需求分析說明書系統(tǒng)分析階段的最后成果是系統(tǒng)分析報(bào)告,通常稱為需求規(guī)范說明書。需求規(guī)范說明書是對(duì)需求分析階段的一個(gè)總結(jié)。編寫系統(tǒng)分析報(bào)告是一個(gè)不斷反復(fù)、逐步深入和逐步完善的過程,系統(tǒng)分析報(bào)告應(yīng)包括如下內(nèi)容:–(1)系統(tǒng)概況,系統(tǒng)的目標(biāo)、范圍、背景、歷史和現(xiàn)狀;–(2)系統(tǒng)的原理和技術(shù),對(duì)原系統(tǒng)的改善;–(3)系統(tǒng)總體結(jié)構(gòu)與子系統(tǒng)結(jié)構(gòu)說明;–(4)系統(tǒng)功能說明;–(5)數(shù)據(jù)處理概要、工程體制和設(shè)計(jì)階段劃分;–(6)系統(tǒng)方案及技術(shù)、經(jīng)濟(jì)、功能和操作上的可行性。完成系統(tǒng)的分析報(bào)告后,在項(xiàng)目單位的領(lǐng)導(dǎo)下要組織有關(guān)技術(shù)專家評(píng)審系統(tǒng)分析報(bào)告,這是對(duì)需求分析結(jié)構(gòu)的再審查。審查通過后由項(xiàng)目方和開發(fā)方領(lǐng)導(dǎo)簽字認(rèn)可。(二)畫新系統(tǒng)的數(shù)據(jù)流程圖(三)編制數(shù)據(jù)字典數(shù)據(jù)項(xiàng)數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)流數(shù)據(jù)存儲(chǔ)處理過程:結(jié)構(gòu)式語言、判斷樹、表需求分析過程中,用戶占主導(dǎo)地位,強(qiáng)調(diào)用戶的參與。(二)需求分析的方法?????(a)自頂向下的需求分析(b)自底向上的需求分析……需求……需求……需求需求需求需求自頂向下自底向上結(jié)構(gòu)化分析方法(SA方法)自頂向下、逐層分解面向?qū)ο蟮姆椒ㄐ畔⒐こ谭椒ㄐ枨?/p>

需求

…需求

需求

需求需求需求…需求…(三)SA方法的描述數(shù)據(jù)流圖、數(shù)據(jù)字典1、數(shù)據(jù)流圖-Data

Flow

Diagram-DFD數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理過程的關(guān)系,反映的是對(duì)事務(wù)處理所需的原始數(shù)據(jù)及經(jīng)處理后的數(shù)據(jù)及其流向。一般地,規(guī)定數(shù)據(jù)流圖的符號(hào)如圖所示。數(shù)據(jù)流圖的符號(hào)數(shù)據(jù)流。數(shù)據(jù)流由一組確定的數(shù)據(jù)組成。名字表示流經(jīng)的數(shù)據(jù),箭頭表示數(shù)據(jù)流動(dòng)的方向。處理。處理是對(duì)數(shù)據(jù)進(jìn)行的操作或處理。數(shù)據(jù)存儲(chǔ)。文件數(shù)據(jù)暫時(shí)存儲(chǔ)或永久保存的地方,可以是數(shù)據(jù)庫存儲(chǔ)文件。外部實(shí)體。外部實(shí)體是獨(dú)立于系統(tǒng)而存在的,是和系統(tǒng)有聯(lián)系的實(shí)體。它表示數(shù)據(jù)的外部來源和最后的去向。以學(xué)校管理信息系統(tǒng)為例。逐層分解后的數(shù)據(jù)流圖學(xué)校管理高層數(shù)據(jù)流圖然后將處理功能的具體內(nèi)容分解為若干子功能,再將每個(gè)子功能繼續(xù)分解,直到把系統(tǒng)的工作過程表達(dá)清楚為止。在處理功能逐步分解的同時(shí),它們所用的數(shù)據(jù)也逐級(jí)分解,形成若干層次的數(shù)據(jù)流圖。數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理過程的關(guān)系。系統(tǒng)中的數(shù)據(jù)則借助數(shù)據(jù)字典(DataDictionary,簡稱DD)來描述。2、數(shù)據(jù)字典數(shù)據(jù)字典(Data

Dictionary,簡稱DD)是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果。數(shù)據(jù)字典是關(guān)于數(shù)據(jù)庫中數(shù)據(jù)的描述,即元數(shù)據(jù),而不是數(shù)據(jù)本身。數(shù)據(jù)字典是在需求分析階段建立,在數(shù)據(jù)庫設(shè)計(jì)過程中不斷修改、充實(shí),完善的。數(shù)據(jù)字典通常包括:數(shù)據(jù)項(xiàng)數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)流數(shù)據(jù)存儲(chǔ)處理過程:結(jié)構(gòu)式語言、判斷樹、表需求分析過程中,用戶占主導(dǎo)地位,強(qiáng)調(diào)用戶的參與。調(diào)查表:1、《職能域-業(yè)務(wù)過程-業(yè)務(wù)活動(dòng)調(diào)查表》職能域:

填表人:

日NO.1職能域定義(簡要說明包括哪些部門,重要業(yè)務(wù)功能):業(yè)務(wù)過程名稱: 所含的業(yè)務(wù)活動(dòng)業(yè)務(wù)過程定義(簡要說明工作內(nèi)容):2、《用戶視圖調(diào)查表》注:用戶視圖包括:“單證”,“報(bào)表”,“帳冊(cè)”,“屏幕格式”等。生存周期是指保存的時(shí)間,“日”、“月”、

“年”、“永久”。職能域:

填表人:

日NO.1用戶視圖編碼用戶視圖 類型 生存期 記錄數(shù)名稱3、《數(shù)據(jù)流調(diào)查表》職能域:

填表人:

用戶視圖名稱來源單位/職能域去向單位/職能域

日存儲(chǔ)否4、《數(shù)據(jù)庫(主題調(diào)查表)》職能域:

填表人:

日NO.數(shù)據(jù)庫名稱(你可以命名)數(shù)據(jù)庫中應(yīng)包含哪些數(shù)據(jù)(請(qǐng)盡量列出信息內(nèi)容,不必考慮結(jié)構(gòu))§6.3概念結(jié)構(gòu)設(shè)計(jì)將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過程。概念模型是對(duì)現(xiàn)實(shí)世界的抽象。一.概念模型特點(diǎn)二.概念設(shè)計(jì)的方法三.設(shè)計(jì)步驟一.概念模型特點(diǎn):能真實(shí)、充分地反映現(xiàn)實(shí)世界,包括事物與事物之間的聯(lián)系,能滿足用戶對(duì)數(shù)據(jù)處理要求,是對(duì)現(xiàn)實(shí)世界的一個(gè)真實(shí)模擬。易于理解,從而可以用它和不熟悉計(jì)算機(jī)的用戶交換意見,用戶的積極參與是數(shù)據(jù)庫的設(shè)計(jì)成功的關(guān)鍵。易于更改,當(dāng)應(yīng)用環(huán)境和應(yīng)用要求改變時(shí),容易對(duì)概念模型修改和擴(kuò)充。易于向關(guān)系型、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換。概念結(jié)構(gòu)是數(shù)據(jù)模型的共同基礎(chǔ),更獨(dú)立于機(jī)器,更抽象,從而更加穩(wěn)定。描述概念模型的有力工具是E-R模型。二.概念設(shè)計(jì)的方法u

自頂向下:即首先定義全局概念結(jié)構(gòu)框架,逐步細(xì)化。u

自底向上:首先定義各局部應(yīng)用概念結(jié)構(gòu),然后將它們集成起來。u

逐步擴(kuò)展:首先定義核心的概念結(jié)構(gòu),然后向外擴(kuò)充,直到全局結(jié)構(gòu)。u

混合策略:即將自頂向下和自底向上相結(jié)合,用自頂向下策略設(shè)計(jì)一個(gè)全局概念結(jié)構(gòu)的框架,以它為骨架集成由自底向上策略中設(shè)計(jì)的各局部概念結(jié)構(gòu)。三.自底向上設(shè)計(jì)概念結(jié)構(gòu)的設(shè)計(jì)(一)步驟:––抽象數(shù)據(jù)并設(shè)計(jì)局部視圖集成局部視圖,得到全局的概念結(jié)構(gòu)(二)數(shù)據(jù)抽象1定義:對(duì)實(shí)際的人、事、物和概念進(jìn)行人為處理,抽取所關(guān)心的共同特性,忽略非本質(zhì)的細(xì)節(jié),并把這些特性用各種概念精確的加以描述,這些概念組成了某種模型。2抽象的類型:–分類:定義某一類概念作為現(xiàn)實(shí)世界中一組對(duì)象的類型。這些對(duì)象具有某些共同的特性和行為。它抽象了對(duì)象值和型之間的“is

member

of

”的語義。如:實(shí)體型。–聚集:定義某一類型的組成成分。它抽象了對(duì)象內(nèi)部類型和成分之間“is

part

of

”的語義。如:若干屬性的聚集組成了實(shí)體型。–概括:定義類型之間的一種子集聯(lián)系。它抽象了類型之間的“is

subsetof”的語義。如:學(xué)生是一個(gè)實(shí)體型,本科生、研究生也是實(shí)體型。本科生、研究生都是學(xué)生的子集。概括的一個(gè)重要性質(zhì):繼承性。(三)抽象數(shù)據(jù)并設(shè)計(jì)局部視圖任務(wù):利用抽象機(jī)制對(duì)需求分析階段收集到的數(shù)據(jù)進(jìn)行分類、組織(聚集),形成實(shí)體、實(shí)體的屬性,標(biāo)識(shí)實(shí)體的碼,確定實(shí)體之間的聯(lián)系類型,設(shè)計(jì)分E-R圖。步驟:1)選擇局部應(yīng)用2)逐一設(shè)計(jì)分E-R圖:將局部應(yīng)用涉及的數(shù)據(jù)從分析階段整理的數(shù)據(jù)字典中抽取出來,參照該局部應(yīng)用對(duì)應(yīng)的一組數(shù)據(jù)流圖,標(biāo)定其中的實(shí)體、實(shí)體的屬性,標(biāo)識(shí)實(shí)體的碼,確定實(shí)體之間的聯(lián)系及其類型。實(shí)體與屬性劃分的準(zhǔn)則:u 作為“屬性”,不能再具有需要描述的性質(zhì)。“屬性”必須是不可分的數(shù)據(jù)項(xiàng),不能包含其它屬性。·u “屬性”不能與其它實(shí)體具有聯(lián)系,E-R圖中聯(lián)系表示實(shí)體間聯(lián)系。·(四)視圖集成1.方式:?多個(gè)分E―R圖一次集成;逐步集成,用累加的方式一次集成兩個(gè)分E―R圖。2步驟:–

合并:解決各分E-R圖之間的沖突,將各分E-R圖合并成初步E-R圖。–––

修改和重構(gòu)(1)合并分E-R圖,生成初步E-R圖沖突:各分E-R圖中語法和語義有矛盾的概念。沖突的類型屬性沖突:u

屬性域沖突u

屬性取值單位沖突這兩個(gè)問題的解決,需要各部門協(xié)調(diào)。命名沖突:u

同名異義u 異名同義(如:科研項(xiàng)目,課題,項(xiàng)目)結(jié)構(gòu)沖突:u

同一對(duì)象在不同應(yīng)用中具有不同的抽象u 同一實(shí)體在不同的分E-R圖中所包含的屬性個(gè)數(shù)和屬性排列次序不相同數(shù)據(jù)元素一致性的控制(2)消除不必要的冗余,設(shè)計(jì)基本E-R圖初步E-R圖中,可能存在一些冗余的數(shù)據(jù)和冗余的聯(lián)系,這樣易破壞數(shù)據(jù)庫的完整性。四、實(shí)際系統(tǒng)開發(fā),數(shù)據(jù)庫設(shè)計(jì)方法1.識(shí)別定義主題-實(shí)體如學(xué)生管理:學(xué)生基本信息班級(jí)實(shí)體定義:可參照DFD中外部項(xiàng)(源、宿系、學(xué)院數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ))參加社團(tuán)情況-社團(tuán)選課活動(dòng)-各項(xiàng)社會(huì)活動(dòng)………….盡可能詳盡地抽學(xué)象生描綜述合實(shí)評(píng)體價(jià)的組成-屬性定義確定實(shí)體的碼分析實(shí)體間聯(lián)系,形成E-R圖??捎煤喕疎-R圖表示實(shí)體兩兩之間的聯(lián)系§6.4邏輯結(jié)構(gòu)設(shè)計(jì)將轉(zhuǎn)換來的關(guān)系,網(wǎng)狀、層次模型向特定的DBMS支持下的數(shù)據(jù)模型轉(zhuǎn)換。對(duì)數(shù)據(jù)模型進(jìn)行優(yōu)化。任務(wù):把概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的基本E-R圖轉(zhuǎn)換為與選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。1.將概念結(jié)構(gòu)轉(zhuǎn)換為一般的關(guān)系、網(wǎng)狀、層次模型邏輯結(jié)構(gòu)設(shè)計(jì)3個(gè)步驟概念結(jié)構(gòu)基本E-R圖一般數(shù)據(jù)模型關(guān)系,網(wǎng)狀,層次DBMS的特點(diǎn)限制轉(zhuǎn)換規(guī)則優(yōu)化方法特定DBMS支持下的數(shù)據(jù)模型優(yōu)化的數(shù)據(jù)模型一、E-R圖向關(guān)系模型的轉(zhuǎn)換:關(guān)系模型的邏輯結(jié)構(gòu)是一組關(guān)系模式的集合。E-R圖轉(zhuǎn)換為關(guān)系模型:將實(shí)體、實(shí)體的屬性和實(shí)體之間聯(lián)系轉(zhuǎn)化為關(guān)系模式。轉(zhuǎn)換遵循以下原則:一個(gè)實(shí)體型轉(zhuǎn)換為一個(gè)關(guān)系模式,實(shí)體的屬性就是關(guān)系的屬性,實(shí)體的碼就是關(guān)系的碼。一個(gè)1:1的聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與任意一端對(duì)應(yīng)的關(guān)系模式合并,如果轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,則與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,每個(gè)實(shí)體的碼均是該關(guān)系的候選碼。如果與某一端實(shí)體對(duì)應(yīng)的關(guān)系模式合并,則需要在該關(guān)系模式的屬性中加入另一個(gè)關(guān)系模式的碼和聯(lián)系本身的屬性。一個(gè)1:n聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與n端對(duì)應(yīng)的關(guān)系模式合并。如果轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,則與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為n端實(shí)體的碼。一個(gè)m:n聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為各實(shí)體碼的組合。三個(gè)或三個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系可以轉(zhuǎn)換為一個(gè)關(guān)系模式。與該多元聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為各實(shí)體碼的組合。(書上P231例子)具有相同碼的關(guān)系模式可以合并。二.由一般的數(shù)據(jù)模型向特定的RDBMS模型轉(zhuǎn)換考慮所選用的RDBMS的功能與限制,轉(zhuǎn)換簡單三.數(shù)據(jù)模型優(yōu)化進(jìn)一步調(diào)整、修改數(shù)據(jù)模型,提高數(shù)據(jù)結(jié)構(gòu)的合理性、科學(xué)性,用規(guī)范化理論為指導(dǎo)進(jìn)行優(yōu)化工作。確定數(shù)據(jù)依賴:根據(jù)應(yīng)用需要和語義,分別寫出每個(gè)關(guān)系模式內(nèi)部各屬性之間的數(shù)據(jù)依賴以及不同關(guān)系模式屬性之間的數(shù)據(jù)依賴。對(duì)于各個(gè)關(guān)系模式之間的數(shù)據(jù)依賴進(jìn)行極小化處理,消除冗余的聯(lián)系。按照數(shù)據(jù)依賴的理論對(duì)關(guān)系模式逐一進(jìn)行分析,考察是否存在部分函數(shù)依賴、傳遞函數(shù)依賴、多值依賴,確定

各關(guān)系模式分別屬于第幾范式。按照需求分析階段得到的處理要求,分析這些模式對(duì)于這樣的應(yīng)用環(huán)境是否合適,確定是否對(duì)某些模式進(jìn)行合并或分解。對(duì)關(guān)系模式進(jìn)行必要的分解,提高數(shù)據(jù)操作的效率和存儲(chǔ)空間的利用率。水平分解和垂直分解。水平分解:部分元組(80/20原則)垂直分解:投影,將屬性分解為若干個(gè)子集合四.設(shè)計(jì)用戶子模式把各個(gè)子系統(tǒng)的邏輯數(shù)據(jù)模型設(shè)計(jì)出來。設(shè)計(jì)外模式時(shí),要注重考慮用戶的習(xí)慣與方便。使用更符合用戶習(xí)慣的別名。可以對(duì)不同級(jí)別的用戶定義不同的View,以保證系統(tǒng)的安全性。簡化用戶對(duì)系統(tǒng)的使用?!?.5數(shù)據(jù)庫的物理設(shè)計(jì)數(shù)據(jù)庫的物理結(jié)構(gòu):數(shù)據(jù)庫在物理設(shè)備上的存儲(chǔ)結(jié)構(gòu)與存取方法,它依賴于給定的計(jì)算機(jī)系統(tǒng)。數(shù)據(jù)庫的物理設(shè)計(jì):為一個(gè)給定的邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用要求的物理結(jié)構(gòu)的過程。物理設(shè)計(jì)沒有通用的方法可遵循,只能給出一般的設(shè)計(jì)內(nèi)容和原則。希望設(shè)計(jì)優(yōu)化的物理數(shù)據(jù)庫結(jié)構(gòu),使得在數(shù)據(jù)庫上運(yùn)行的各種事務(wù)響應(yīng)時(shí)間小、存儲(chǔ)空間利用率高、事務(wù)吞吐率大。為此首先對(duì)要運(yùn)行的事務(wù)進(jìn)行詳細(xì)分析,獲得選擇物理數(shù)據(jù)庫設(shè)計(jì)所需要的參數(shù)。其次,要充分了解所用的DBMS的內(nèi)部特征,特別是系統(tǒng)提供的存取方法和存儲(chǔ)結(jié)構(gòu)。物理設(shè)計(jì)分兩步:確定數(shù)據(jù)庫的物理結(jié)構(gòu):在關(guān)系數(shù)據(jù)庫中主要指存取方法和存儲(chǔ)結(jié)構(gòu)。對(duì)物理結(jié)構(gòu)進(jìn)行評(píng)價(jià),評(píng)價(jià)的重點(diǎn)是時(shí)間、空間效率。關(guān)系模式存取方法選擇存取方法是快速存取數(shù)據(jù)庫中數(shù)據(jù)的技術(shù)。數(shù)據(jù)庫管理系統(tǒng)一般都提供多種存取方法。常用的存取方法有三類:第一類是索引方法,目前主要是B+樹索引方法;第二類是聚簇(Cluster)方法,又稱簇集;第三類是HASH方法。B+樹索引方法是數(shù)據(jù)庫中經(jīng)典的存取方法,使用最普遍。1.索引存取方法的選擇所謂選擇索引存取方法,實(shí)際上就是根據(jù)應(yīng)用要求確定對(duì)關(guān)系的哪些屬性列建立索引,哪些屬性列建立組合索引,哪些索引要設(shè)計(jì)為惟一索引等。索引的選擇是數(shù)據(jù)庫物理設(shè)計(jì)的基本問題之一,也是比較困難的問題。用啟發(fā)式規(guī)則選擇索引的一般步驟。確定文件的存儲(chǔ)結(jié)構(gòu),即記錄的存放是無序的(堆文件),還是按主鍵

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論