版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第一章 引 論1、數(shù)據(jù)庫技術(shù)產(chǎn)生于 20世紀(jì) 60年代, 是信息系統(tǒng)的核心技術(shù)和重要基礎(chǔ) ;2、計算機(jī)科學(xué)與技術(shù)學(xué)科劃分為四個 專業(yè)方向:計算機(jī)科學(xué)(CS)計算機(jī)工程(CE); 軟件工程(SE)信息技術(shù)(IT)。1.1 基本概念1.1.1 信息與數(shù)據(jù)1、信息、物質(zhì)、能量是組成客觀世界 并促進(jìn)社會發(fā)展的三大基本要素 ;2、信息 (Information)- 是客觀世界事物 的存在方式和運(yùn)動狀態(tài)的反映, 是對事物之 間相互聯(lián)系、相互作用的描述。信息具有可 感知、可存儲、可加工、可傳遞和可再生的 自然屬性。3、數(shù)據(jù) (Data)-是描述現(xiàn)實世界事物的 符號記錄, 是用物理符號記錄下來的可以識 別的信
2、息。 不同的物理符號體現(xiàn)出數(shù)據(jù)的不 同表現(xiàn)形式。4、信息與數(shù)據(jù)間存在固有聯(lián)系,數(shù)據(jù) 是信息的符號表示,或稱為載體。信息則是 數(shù)據(jù)的語義解釋,是數(shù)據(jù)的內(nèi)涵,信息以數(shù) 據(jù)的形式表現(xiàn)出來,并為人們理解和接受。5、數(shù)據(jù)處理 (Data Processing)-是指對 數(shù)據(jù)進(jìn)行分類、收集、組織、存儲,進(jìn)而從 已數(shù)據(jù)出發(fā),抽取或推導(dǎo)出新的數(shù)據(jù),這些 數(shù)據(jù)表示了新的信息。6、數(shù)據(jù)管理 (Data Management)- 是指 對數(shù)據(jù)的分類、收集、組織、編碼、存儲、 檢索和維護(hù),是數(shù)據(jù)處理業(yè)務(wù)的重要環(huán)節(jié)。7、數(shù)據(jù)處理與數(shù)據(jù)管理的區(qū)別在于, 數(shù)據(jù)處理除了具有數(shù)據(jù)管理功能外, 還可通 過數(shù)據(jù)管理得到的數(shù)據(jù)進(jìn)一步
3、深加工, 從中 獲取新的數(shù)據(jù)和信息。1.1.2 數(shù)據(jù)庫系統(tǒng)1、數(shù)據(jù)庫 (DB,DataBase)-是長期存儲 在計算機(jī)內(nèi)有組織的、大量的、共享的數(shù)據(jù) 集合 ;2、數(shù)據(jù)庫管理系統(tǒng) (DBMS, Database Management System)- 是指在計算機(jī)系統(tǒng) 中,位于用戶與操作系統(tǒng)之間的數(shù)據(jù)管理系 統(tǒng)軟件,是數(shù)據(jù)庫系統(tǒng)的核心。3、數(shù)據(jù)庫系統(tǒng) (DBS,DataBase System)- 是指在計算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的軟硬 件系統(tǒng)構(gòu)成,DBS-般分成三個層次:(1)計 算機(jī)硬件平臺 ;(2)系統(tǒng)軟件和應(yīng)用軟件 ;(3)用 戶; 在不引起混淆和歧義的情況下, 數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫。4、
4、(狹義的 )數(shù)據(jù)庫系統(tǒng) 是由數(shù)據(jù)庫 和數(shù)據(jù)庫管理系統(tǒng)組成的軟件系統(tǒng), 主要為 用戶提供數(shù)據(jù)存儲和查詢、插入、修改、刪 除、更新等數(shù)據(jù)管理功能。5 、 (狹義的 )數(shù)據(jù)庫應(yīng)用系統(tǒng) (DBAS, DataBase Application System) 是由數(shù)據(jù)庫、 數(shù)據(jù)庫管理系統(tǒng)、 數(shù)據(jù)庫應(yīng)用程序組成的軟 件系統(tǒng),它面向具體應(yīng)用領(lǐng)域,提供了更為 復(fù)雜的數(shù)據(jù)處理功能。6 、 數(shù)據(jù)庫技術(shù) 是研究數(shù)據(jù)庫的結(jié) 構(gòu)、存儲、設(shè)計、管理和使用的-門計算機(jī) 應(yīng)用學(xué)科。7、 數(shù)據(jù)庫技術(shù)與其它計算機(jī)科學(xué)有密 切關(guān)系:(1) 數(shù)據(jù)庫技術(shù)以文件系統(tǒng)為基礎(chǔ)發(fā)展 而來,DBMS需要操作系統(tǒng)的支持,數(shù)據(jù)庫 以文件形式存儲在外
5、部存儲上的 ;(2) 數(shù)據(jù)庫與數(shù)據(jù)結(jié)構(gòu)的關(guān)系很密切, 數(shù)據(jù)庫技術(shù)不僅用到數(shù)據(jù)結(jié)構(gòu)中的鏈表、 樹、圖等知識,各種數(shù)據(jù)模型本身就屬于復(fù) 雜數(shù)據(jù)結(jié)構(gòu) ;(3) 主流的關(guān)系數(shù)據(jù)庫系統(tǒng),其理論基 礎(chǔ)是關(guān)系數(shù)據(jù)模型, 而該模型是在離散數(shù)學(xué) 集合論中 “關(guān)系 ”這-基本概念上發(fā)展起來 的;(4) 當(dāng)用戶訪問數(shù)據(jù)庫,DBMS對用戶提 交的查詢操作類似于, 計算機(jī)編譯系統(tǒng)對程 序的編譯過程 ;(5) 開發(fā)一些大型的DBS或 DBMS的過程,要遵循軟件工程的開發(fā)模式。1.2 數(shù)據(jù)模型1.2.1 數(shù)據(jù)模型概念1 、數(shù)據(jù)模型 (Data Model)- 是數(shù)據(jù)庫系 統(tǒng)的形式框架, 是用來描述數(shù)據(jù)的一組概念 和定義,包
6、括描述數(shù)據(jù)、數(shù)據(jù)聯(lián)系、數(shù)據(jù)操 作、數(shù)據(jù)語義以及數(shù)據(jù)一致性的概念工具 ;2、 數(shù)據(jù)模型應(yīng)滿足:(1 )能夠比較真實 地模擬現(xiàn)實世界 ;(2)容易為人們所理解 ;(3)便 于在計算機(jī)上實現(xiàn)。3、數(shù)據(jù)模型的組成:(1) 數(shù)據(jù)結(jié)構(gòu):用于描述系統(tǒng)的靜態(tài)特 征,從語法角度表述了客觀世界中數(shù)據(jù)對象 本身的結(jié)構(gòu)和數(shù)據(jù)對象之間的關(guān)聯(lián)關(guān)系, 是 刻畫一個數(shù)據(jù)模型性質(zhì)最重要的方面。 在數(shù) 據(jù)庫系統(tǒng)中, 通常按照數(shù)據(jù)結(jié)構(gòu)的類型來區(qū) 分、命名各種數(shù)模,如層次、網(wǎng)狀、關(guān)系數(shù)模。(2) 數(shù)據(jù)操作:用于描述系統(tǒng)的動態(tài)特 征,是一組對數(shù)據(jù)庫中各種數(shù)據(jù)對象允許執(zhí) 行的操作和操作規(guī)則組成的集合。 數(shù)據(jù)操作 可以是檢索、插入等,數(shù)模
7、必須定義這些操 作的確切含義、操作符號、操作規(guī)則以及實 現(xiàn)操作的數(shù)據(jù)庫語言。(3) 數(shù)據(jù)完整性約束:是一組完整性規(guī) 則的集合, 它定義了數(shù)模必須遵守的語義約 束,也規(guī)定了數(shù)據(jù)庫中數(shù)據(jù)內(nèi)部及數(shù)據(jù)之間 聯(lián)系所必須滿足的語義約束。 它限定了數(shù)據(jù) 庫的狀態(tài)以及狀態(tài)的變化, 以便維護(hù)數(shù)據(jù)的 正確性、有效性。1.2.2 數(shù)據(jù)模型分類1、用數(shù)據(jù)模型這一概念來描述數(shù)據(jù)庫 的結(jié)構(gòu)和語義,通過現(xiàn)實世界 信息世界 機(jī)器世界的抽象轉(zhuǎn)換過程構(gòu)建數(shù)據(jù)庫, 并根 據(jù)模型所定義的規(guī)范去管理和使用數(shù)據(jù)。2、建模過程: (1) 將現(xiàn)實世界的數(shù)據(jù)對 象抽象為信息世界中的某一信息結(jié)構(gòu);(2) 再將信息結(jié)構(gòu)轉(zhuǎn)換為機(jī)器世界中某一具體DB
8、MS支持的數(shù)據(jù)模型,并存儲于計算機(jī)中。3、數(shù)據(jù)模型分類:(1) 概念數(shù)據(jù)模型 (概念模型 ):按用戶的 觀點(diǎn)對數(shù)據(jù)和信息進(jìn)行建模, 是現(xiàn)實世界到 信息世界的第一層抽象, 強(qiáng)調(diào)其語義表達(dá)功 能,易于用戶理解,是用戶與設(shè)計人員交流 的語言,主要用于數(shù)據(jù)庫設(shè)計。最常用的是 實體 聯(lián)系模型。(2) 數(shù)據(jù)結(jié)構(gòu)模型 (表示型 / 實現(xiàn)型 ):是 機(jī)器世界中與具體 DBMS相關(guān)的數(shù)據(jù)模型, 包括關(guān)系模型、網(wǎng)狀模型和層次模型(3) 物理數(shù)據(jù)模型:屬底層數(shù)據(jù)模型, 描述數(shù)據(jù)的實際存儲方式。1.3 數(shù)據(jù)視圖與模式結(jié)構(gòu)1.3.1 數(shù)據(jù)視圖與數(shù)據(jù)抽象1、數(shù)據(jù)視圖:指從某個角度看到的客 觀世界數(shù)據(jù)對象的特征, 是對數(shù)據(jù)
9、對象某一 方面特征的描述。2、數(shù)據(jù)抽象:是一種數(shù)據(jù)描述和數(shù)據(jù) 庫設(shè)計原則, 是指專注于數(shù)據(jù)對象的某方面 特征,而忽略其他特征。3、集和值:集是指對某一類數(shù)據(jù)的結(jié) 構(gòu)和屬性的說明,值是集的一個具體賦值 ;4、數(shù)據(jù)模式:對數(shù)據(jù)庫中數(shù)據(jù)某方面 結(jié)構(gòu)和特征的描述,它僅涉及集的描述,不 涉及具體的值。1.3.2 三級模式結(jié)構(gòu)1、數(shù)據(jù)庫三級模式結(jié)構(gòu) 外部級、概 念級和內(nèi)部級,分別定義了外模式、模式和 內(nèi)模式,用于從不同角度描述數(shù)據(jù)庫結(jié)構(gòu)。2、模式:(1) 也稱邏輯模式、概念模式 ;(2) 對數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和 特征的描述,是所有用戶的公共數(shù)據(jù)視圖 ;(3) 模式不僅定義了數(shù)據(jù)的邏輯結(jié)構(gòu), 還定義
10、了數(shù)據(jù)之間的聯(lián)系、 與數(shù)據(jù)的關(guān)的安 全性和完整性要求 ;(4) 一個數(shù)據(jù)庫只有一個模式,建立在 某種數(shù)據(jù)結(jié)構(gòu)模型基礎(chǔ)上。3、外模式:(1) 也稱子模式、用戶模式、用戶視圖 ;(2) 是對數(shù)據(jù)庫用戶能夠看見和使用的 局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。(3) 一個數(shù)據(jù)庫可以有多個外模式,每 個外模式描述了某個特定用戶所使用的局 部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征, 是與某一應(yīng)用有 關(guān)的數(shù)據(jù)的邏輯表示。(4) 外模式還是保證數(shù)據(jù)安全的有力措 施,每個用戶只能看見和訪問所對應(yīng)的外模 式中的數(shù)據(jù),其它數(shù)據(jù)對他是不可見的。4、內(nèi)模式:(1) 也稱物理模式、存儲模式 ;(2) 是對數(shù)據(jù)庫中數(shù)據(jù)的物理結(jié)構(gòu) 和存儲方式的描述
11、, 代表了數(shù)據(jù)在數(shù)據(jù)庫內(nèi) 部的表示方式和物理組織結(jié)構(gòu) ;1.3.3 二級映象與數(shù)據(jù)獨(dú)立性1、外模式 / 模式映象:(1) 定義了數(shù)據(jù)庫中不同用戶的外 模式與數(shù)據(jù)庫邏輯模式之間的對應(yīng)關(guān)系 ;(2) 可有多個外模式 / 模式映象, 對 于每個外模式,需要一個外模式 / 模式映象 來定義該外模式與模式之間的對應(yīng)關(guān)系 ;(3) 當(dāng)模式發(fā)生變化時,只需調(diào)整 外模式 / 模式間的映象關(guān)系,而外模式無需 修改,保證了數(shù)據(jù)與應(yīng)用程序的邏輯獨(dú)立 性,稱為數(shù)據(jù)的邏輯獨(dú)立性。2、模式 / 內(nèi)模式映象:(1) 定義了數(shù)據(jù)庫中數(shù)據(jù)全局邏輯 結(jié)構(gòu), 與這些數(shù)據(jù)在系統(tǒng)中的物理存儲組織 結(jié)構(gòu)之間的對應(yīng)關(guān)系。(2) 模式 /
12、內(nèi)模式映象是唯一的 ;(3) 當(dāng)內(nèi)模式發(fā)生變化時,只需調(diào) 整模式 / 內(nèi)模式映象關(guān)系,而模式無需修改, 保證了數(shù)據(jù)庫中的數(shù)據(jù)與應(yīng)用程序間的物 理獨(dú)立性,稱為數(shù)據(jù)的物理獨(dú)立性。1.4 數(shù)據(jù)庫系統(tǒng)體系結(jié)構(gòu)1、數(shù)據(jù)庫系統(tǒng)體系結(jié)構(gòu):是指數(shù) 據(jù)庫系統(tǒng)的組成構(gòu)件、 各構(gòu)件的功能及各構(gòu) 件間的協(xié)同工作方式 ;2、分類:(1) 集中式:全部數(shù)據(jù)和數(shù)據(jù)管理 功能均集中在一臺計算機(jī)上的數(shù)據(jù)庫系統(tǒng) 包括單用戶和主從式兩種,單用戶DBS是指系統(tǒng)由一個用戶獨(dú)占, 不同機(jī)器間不能共享 數(shù)據(jù);主從式DBS是指一個主機(jī)帶多個分時 多用戶的 DBS;(2) 分布式:數(shù)據(jù)庫中的數(shù)據(jù)在邏 輯上是一個整體, 但在物理上卻可以分布在
13、網(wǎng)絡(luò)中不同數(shù)據(jù)管理節(jié)點(diǎn)上 ;(3) 客戶/服務(wù)器:將DBMS和數(shù)據(jù) 庫應(yīng)用分開, 網(wǎng)絡(luò)中某些節(jié)點(diǎn)上的計算機(jī)專 門執(zhí)行DBMS功能,負(fù)責(zé)數(shù)據(jù)管理服務(wù),稱 為數(shù)據(jù)庫服務(wù)器 ;其他節(jié)點(diǎn)的計算機(jī)上安裝 DBMS的外圍應(yīng)用開發(fā)工具,支持用戶的應(yīng) 用,主要負(fù)責(zé)數(shù)據(jù)表示服務(wù),稱為客戶端 ;(4) 并行式:硬件平臺是并行計算機(jī)系統(tǒng),使用多個CPU和多個磁盤進(jìn)行并行 數(shù)據(jù)處理和磁盤訪問操作, 以提高執(zhí)行速度(5) WEB式:由通過互聯(lián)網(wǎng)連接起 來的客戶端、WEB服務(wù)器、數(shù)據(jù)庫服務(wù)器組 成。1.5 數(shù)據(jù)庫管理系統(tǒng)1.5.1 數(shù)據(jù)庫管理系統(tǒng)的功能(1) 數(shù)據(jù)定義功能:DBMS提供了數(shù) 據(jù)定義語言(DDL),用戶利用
14、DDL定義數(shù)據(jù)庫 對象的三級模式結(jié)構(gòu), 描述數(shù)據(jù)庫的結(jié)構(gòu)特 征。(2) 數(shù)據(jù)操縱功能:DBMS提供數(shù)據(jù) 操縱語言(DML),用戶利用DML對數(shù)據(jù)進(jìn)行 查詢、插入、刪除或更新 ;(3) 數(shù)據(jù)庫運(yùn)行管理和控制功能(4) 數(shù)據(jù)庫的建立和維護(hù)功能1.5.2 數(shù)據(jù)庫系統(tǒng)的全局結(jié)構(gòu)1、DBS可分為用戶、人機(jī)交互界 面、DBMS和磁盤四個層次;2、用戶可分為四類:數(shù)據(jù)庫管理員DBA;專業(yè)用戶;應(yīng)用程序員;終端用戶;3、DBMS可分為兩部份:(1) 查詢處理器:面向用戶查詢請求;包括以下幾個功能模塊:DML編譯器、嵌入式DML的預(yù)編譯器、DDL編譯器、查詢執(zhí) 行引擎 ;(2) 存儲管理器:面向數(shù)據(jù)存儲訪 問,
15、包括以下幾個功能模塊:權(quán)限和完整性 管理器、事務(wù)管理器、文件管理器、緩沖區(qū) 管理器 ;4、磁盤存儲的類型:(1) 以數(shù)據(jù)庫文件方式存儲的應(yīng)用 數(shù)據(jù) ;(2) 數(shù)據(jù)字典 ;(3) 為提高查詢速度而設(shè)置的數(shù)據(jù) 庫引擎 ;(4) DMS運(yùn)行時的統(tǒng)計分析數(shù)據(jù);(5) 日志信息。1.6數(shù)據(jù)庫技術(shù)的發(fā)展和應(yīng)用1 、 第一代 DBS: 60年代末 70年代 初,層次型和網(wǎng)狀型 DBS;2、第二代 DBS: 70年代后期,關(guān)系數(shù)據(jù)庫系統(tǒng) ;3、新型 DBS: 80年代,分布式數(shù) 據(jù)庫系統(tǒng) ;90年代, 面向?qū)ο髷?shù)據(jù)庫系統(tǒng)、 網(wǎng) 絡(luò)數(shù)據(jù)庫系統(tǒng)第二章 數(shù)據(jù)庫應(yīng)用系統(tǒng)生命周期2.1 數(shù)據(jù)庫應(yīng)用系統(tǒng)生命周期2.1.1
16、 軟件工程與軟件開發(fā)方法1 、 軟件工程:指導(dǎo)計算機(jī)軟件開 發(fā)和維護(hù)的工程科學(xué),它采用工程化的概 念、原理、技術(shù)和方法,以及正確的項目管 理技術(shù), 來開發(fā)和維護(hù)軟件 ;它將系統(tǒng)化、 規(guī) 范化、定量化方法應(yīng)用于軟件的開發(fā)、操作 和維護(hù),也就是將工程化應(yīng)用于軟件生產(chǎn) ;2、軟件工程的目標(biāo): 在給定成本、 進(jìn)度的前提下, 開發(fā)出滿足用戶需求并具有 下述特征的軟件產(chǎn)品:可修改性、有效性、 可靠性、可理解性、可維護(hù)性、可重用性、 可適應(yīng)性、可移植性、可追蹤性和可互操作 性。3、軟件生命周期:指軟件產(chǎn)品從 考慮其概念開始, 到該產(chǎn)品交付使用的整個 時期, 包括概念階段、 需求階段、 設(shè)計階段、 實現(xiàn)階段、
17、 測試階段、 安裝部署及交付階段 ;4、軟件項目管理:為了能使軟件 開發(fā)按預(yù)定的質(zhì)量、進(jìn)度和成本進(jìn)行,而對 成本、質(zhì)量、進(jìn)度、人員、風(fēng)險等進(jìn)行分析和有效管理的一系列活動。5、軟件工程以關(guān)注軟件質(zhì)量為特 征,由方法、工具和過程三部分組成 ;6、軟件過程模型 (軟件開發(fā)模型 ): 是對軟件過程的一種抽象表示, 表示了軟件 過程的整體框架和軟件開發(fā)活動各階段間 的關(guān)系,常見的有:瀑布模型、快速原形模 型、增量模型和螺旋模型。2.1.2 DBAS軟件組成1 、 數(shù)據(jù)庫應(yīng)用軟件在內(nèi)部可看作 由一系列軟件模塊 /子系統(tǒng)組成,這些模塊 / 子系統(tǒng)可分成兩類:(1) 與數(shù)據(jù)訪問有關(guān)的數(shù)據(jù)庫事務(wù) 模塊:利用DB
18、MS提供的數(shù)據(jù)庫管理功能, 以數(shù)據(jù)庫事務(wù)方式直接對數(shù)據(jù)庫中的各類 應(yīng)用數(shù)據(jù)進(jìn)行操作,模塊粒度較小 ;(2) 與數(shù)據(jù)訪問無直接關(guān)聯(lián)的應(yīng)用 模塊:在許多與數(shù)據(jù)處理有關(guān)的應(yīng)用系統(tǒng) 中,對數(shù)據(jù)庫的訪問只是整體中的一部分, 其他功能則與數(shù)據(jù)庫訪問無直接關(guān)系, 這部 分模塊粒度可以比較大。2、DBAS設(shè)計開發(fā)的硬件方面:主 要涉及根據(jù)系統(tǒng)的功能、性能、存儲等需求 選擇和配置合適的計算機(jī)硬件平臺, 并與開 發(fā)好的DBA漱件系統(tǒng)進(jìn)行集成,組成完整的 數(shù)據(jù)庫應(yīng)用系統(tǒng) ;2.1.3 DBAS生命周期模型1、數(shù)據(jù)庫應(yīng)用系統(tǒng)的生命周期模型:(1) 參照軟件開發(fā)瀑布模型的原理,DBAS的生命周期由項目規(guī)劃、 需求分析、
19、 系統(tǒng)設(shè)計、實現(xiàn)和部署、運(yùn)行管理與維護(hù)等 5個基本活動組成 ;(2) 將快速原形模型和增量模型的 開發(fā)思路引入DBAS生命周期模型,允許漸 進(jìn)、迭代地開發(fā) DBAS;(3) 根據(jù)DBAS的軟件組成和各自功能,細(xì)化DBAS需求分析和設(shè)計階段,弓I入了 數(shù)據(jù)組織與存儲設(shè)計、數(shù)據(jù)訪問與處理設(shè) 計、應(yīng)用設(shè)計三條設(shè)計主線,分別用于設(shè)計 DBAS中的數(shù)據(jù)庫、數(shù)據(jù)庫事務(wù)和應(yīng)用程序;(4) 將DBAS設(shè)計階段細(xì)分為概念設(shè) 計、邏輯設(shè)計、物理設(shè)計三個步驟,每一步 的設(shè)計內(nèi)容又涵蓋了三條設(shè)計主線。2.2 規(guī)劃與分析2.2.1 系統(tǒng)規(guī)劃與定義1 、 定義:系統(tǒng)規(guī)劃與分析是面向 將要開發(fā)的DBAS,通過了解用戶實際需
20、求, 明確該系統(tǒng)需要實現(xiàn)的目標(biāo)和任務(wù), 并從數(shù) 據(jù)管理和數(shù)據(jù)處理的角度, 確定系統(tǒng)中數(shù)據(jù) 庫軟件的功能、性能范圍 ;2、系統(tǒng)規(guī)劃與定義包括:(1) 任務(wù)陳述:描述所要開發(fā)的DBAS勺總體目標(biāo);(2) 確定任務(wù)目標(biāo) ;(3) 確定系統(tǒng)范圍和邊界 ;(4) 確定用戶視圖 ;2.2.2 可行性分析1 、 可行性分析包括以下四方面:(1) 經(jīng)濟(jì)可行性:對項目進(jìn)行成本效益分析;DBAS的成本主要包括:A、軟硬件 購置費(fèi)用;B、系統(tǒng)開發(fā)費(fèi)用;C、系統(tǒng)安裝、 運(yùn)行、維護(hù)費(fèi)用。(2) 技術(shù)可行性:是根據(jù)用戶提出 的系統(tǒng)功能、 性能及實現(xiàn)系統(tǒng)的各項約束條 件,對系統(tǒng)軟件、硬件、技術(shù)方案作出評估 和選擇建議 ;A
21、、硬件可行性研究是分析 DBAS 的硬件平臺環(huán)境和設(shè)置 ;B、軟件可行性研究包括:對可用的DBMS和操作系統(tǒng)的選型評估,對中間件 和開發(fā)環(huán)境的選型建議,對DBAS開發(fā)模式和 編程語言的建議 ;C、技術(shù)方案的選擇是根據(jù)系統(tǒng)技 術(shù)需求,提出DBAS可能采用的合理技術(shù)方案 和關(guān)鍵技術(shù) ;(3) 操作可行性:是論證是否具備DBAS發(fā)所需的各類人員資源、軟件資源、 硬件資源和工作環(huán)境等,以及為支持 DBAS 開發(fā)如何去改進(jìn)加強(qiáng)這幾方面資源。(4) 開發(fā)方案選擇:目的是提出并 評價實現(xiàn)系統(tǒng)的各種開發(fā)方案, 從中選出一 種適用于DBAS軟件的開發(fā)方案;2.2.3 項目規(guī)劃1 、 項目規(guī)劃是項目管理者對資 源
22、、成本和進(jìn)度做出合理估算,并在此基礎(chǔ) 上制定切實可行的DBAS項目開發(fā)計劃。2、 項目規(guī)劃包括以下內(nèi)容:(1) 確定項目的目標(biāo)和范圍 ;(2) 根據(jù)DBAS軟件開發(fā)模型,分解 和定義整個項目包括的工作活動和任務(wù) ;(3) 估算完成該項目的規(guī)模和所需 各種資源 ;(4) 制定合理的DBAS項目計劃3、項目規(guī)劃的結(jié)果應(yīng)形成數(shù)據(jù)庫 應(yīng)用系統(tǒng)項目計劃文檔,即項目計劃書。2.3 需求分析1、數(shù)據(jù)庫應(yīng)用系統(tǒng)需求是指用戶對DBAS在功能、性能、行為、設(shè)計約束等方 面的期望和要求 ;2、DBAS需求分析是在已經(jīng)明確的 DBAS系統(tǒng)范圍基礎(chǔ)上,通過對應(yīng)用問題的理 解和分析,采用合適的工具和符號,系統(tǒng)地 描述DB
23、AS的功能特征、性能特征和約束,并 形成需求規(guī)范說明文檔 ;3、需求分析過程由需求獲取、需 求分析、需求描述和規(guī)范說明、需求驗證等 組成 ;4、DBAS的需求分析包括:(1) 數(shù)據(jù)需求分析 ;(2) 數(shù)據(jù)處理需求分析 ;(3) 業(yè)務(wù)需求分析 ;(4) 分析數(shù)據(jù)庫系統(tǒng)在性能、 存儲、 安全、備份與恢復(fù)等方面的要求 ;2.3.1 數(shù)據(jù)與數(shù)據(jù)處理需求分析1、數(shù)據(jù)需求分析:是從對數(shù)據(jù)組 織與存儲的設(shè)計角度, 辨識應(yīng)用領(lǐng)域所管理 的各類數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu), 與數(shù)據(jù)處理需求 分析結(jié)果一起,組成數(shù)據(jù)字典 ;2、數(shù)據(jù)處理需求分析:是從數(shù)據(jù) 訪問和處理的角度, 明確對各類數(shù)據(jù)項所需 進(jìn)行的數(shù)據(jù)訪問操作, 分析結(jié)果
24、可表示為數(shù) 據(jù)流圖或事務(wù)規(guī)范 ;3、事務(wù)規(guī)范包括:(1) 事務(wù)名稱 ;(2) 事務(wù)描述 ;(3) 事務(wù) 所訪問的數(shù)據(jù)項 ;(4)事務(wù)用戶 ;2.3.2 業(yè)務(wù)規(guī)則需求分析1、業(yè)務(wù)規(guī)則需求分析:是從 DBAS 高層目標(biāo)和整體功能出發(fā), 分析系統(tǒng)或系統(tǒng) 中一些大粒度子系統(tǒng)應(yīng)具有的業(yè)務(wù)類型和 功能,明確用戶或外部系統(tǒng)與 DBAS的交互模 式;2.3.3 性能需求分析1、DBAS的性能指標(biāo):(1) 數(shù)據(jù)操作響應(yīng)時間 (或數(shù)據(jù)訪 問響應(yīng)時間 ):從提交請求到返回結(jié)果的時 間;(2) 系統(tǒng)吞吐量:指系統(tǒng)在單位時 間內(nèi)所完成的事務(wù)或查詢的數(shù)量,單位為 TPS;(3) 允許并發(fā)訪問的最大用戶數(shù): 在保證響應(yīng)時間
25、的前提下, 系統(tǒng)最多允許多 少用戶同時訪問數(shù)據(jù)庫 ;(4) 每TPS弋價值,用于衡量系統(tǒng)性 價比的指標(biāo)2、影響DBAS性能的因素:(1) 系統(tǒng)硬件資源 ;(2) 網(wǎng)絡(luò)通信設(shè)備性能 ;(3) 操作系統(tǒng)環(huán)境 ;(4) 數(shù)據(jù)庫的邏輯設(shè)計和物理設(shè)計 質(zhì)量,數(shù)據(jù)庫配置參數(shù) ;(5) DBAS的配置和性能;(6) 數(shù)據(jù)庫應(yīng)用程序自身。2.3.4 其它需求分析1 、 存儲需求分析: 是指估計 DBAS 系統(tǒng)需要的數(shù)據(jù)存儲量, 包括: (1)初始數(shù)據(jù) 庫大小 ; (2 )數(shù)據(jù)庫增長速度 ;存儲總量估算可 采用: 根據(jù)數(shù)據(jù)字典中每個數(shù)據(jù)項的結(jié)構(gòu)描 述信息,估計每個數(shù)據(jù)項的容量,將所有數(shù) 據(jù)項的容量累加 ;2、(
26、1)安全性需求分析:DBAS系統(tǒng)應(yīng)達(dá)到的安全控制級別;(2)各類用戶的數(shù)據(jù)視圖和視圖訪問權(quán)限;(3)DBAS應(yīng)有的口令保護(hù)機(jī)制或其它安全認(rèn)證機(jī)制, 用以控制用戶登錄數(shù)據(jù)庫 系統(tǒng)。3、備份和恢復(fù)需求分析:(1) DBAS運(yùn)行過程中備份數(shù)據(jù)庫的 時間和備份周期 ;(2) 所需備份的數(shù)據(jù)是全部數(shù)據(jù)庫 數(shù)據(jù),還是一部分 ;(3) 備份方式是采用完全備份還是 采用差異備份。2.4 系統(tǒng)設(shè)計2.4.1 概念設(shè)計1 、 數(shù)據(jù)庫概念模型設(shè)計:是根據(jù) 數(shù)據(jù)需求分析階段得到的需求結(jié)果, 分析辨 識需要組織存儲在數(shù)據(jù)庫中的各類應(yīng)用領(lǐng) 域數(shù)據(jù)對象的特征及其相互之間關(guān)聯(lián)關(guān)系, 并采用概念數(shù)據(jù)模型表示出來, 得到獨(dú)立于
27、具體DBMS的數(shù)據(jù)庫概念模型;2、EF方法:選擇局部應(yīng)用;(2)分別設(shè)計各個局部ER圖;(3)局部ER圖合并;3、系統(tǒng)總體設(shè)計:(1) 確定DBAS體系結(jié)構(gòu);(2) 系統(tǒng)硬件平臺和操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)等系統(tǒng)軟件的選型和配置 ;(3) 應(yīng)用軟件結(jié)構(gòu)設(shè)計(4) 對需求分析階段識別出的業(yè)務(wù) 規(guī)則進(jìn)行初步設(shè)計,細(xì)化業(yè)務(wù)規(guī)則流程,明 確采用的關(guān)鍵技術(shù)和算法 ;(5) 對系統(tǒng)采用的關(guān)鍵技術(shù)進(jìn)行方 案選型和初步設(shè)計。2.4.2 邏輯設(shè)計1、數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計:指從數(shù) 據(jù)庫的概念模型出發(fā), 設(shè)計表示為邏輯模式 的數(shù)據(jù)庫邏輯結(jié)構(gòu)。(1) ER圖轉(zhuǎn)換為初始關(guān)系模式;(2) 對初始關(guān)系模式進(jìn)行優(yōu)化 ;(3) 檢
28、查關(guān)系表對數(shù)據(jù)庫事務(wù)的支 持性 ;(4) 確定關(guān)系模式的完整性約束 ;(5) 從數(shù)據(jù)安全性和獨(dú)立性出發(fā), 設(shè)計用戶視圖。2、應(yīng)用程序概要設(shè)計 (II);3、 數(shù)據(jù)庫事務(wù)概要設(shè)計 ;2.4.3 物理設(shè)計1 、 數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計:主要指 數(shù)據(jù)文件在外存上的存儲結(jié)構(gòu)和存取方法, 它依賴于系統(tǒng)具體的硬件環(huán)境、 操作系統(tǒng)和 DBMS;(1) 數(shù)據(jù)庫邏輯模式調(diào)整 ;(2) 選擇或配置基本關(guān)系表的文件 組織形式 ;(3) 數(shù)據(jù)分布設(shè)計 ;(4) 安全模式設(shè)計 ;(5) 確定系統(tǒng)配置 ;(6) 物理模式評估 ;2、 數(shù)據(jù)庫事務(wù)詳細(xì)設(shè)計:根據(jù)事務(wù)流程,利用SQL語句、數(shù)據(jù)庫訪問接口, 采用高級程序設(shè)計語言或D
29、BMS提供的事務(wù)實現(xiàn)機(jī)制,設(shè)計數(shù)據(jù)庫事務(wù)。3、應(yīng)用程序詳細(xì)設(shè)計:2.5 實現(xiàn)與部署1 、 建立數(shù)據(jù)庫結(jié)構(gòu) ;2、數(shù)據(jù)加載 ;3、事務(wù)和應(yīng)用程序的編碼及測試4、系統(tǒng)集成、測試與試運(yùn)行 ;5、系統(tǒng)部署 ;2.6 運(yùn)行管理與維護(hù)2.6.1 日常維護(hù)(1) 數(shù)據(jù)庫的備份與恢復(fù)(2) 完整性維護(hù)(3) 安全性維護(hù)(4) 存儲空間管理(5) 并發(fā)控制及死鎖處理2.6.2 系統(tǒng)性能監(jiān)控和分析1 、 統(tǒng)計數(shù)據(jù)可以通過兩種途徑收 集:(1) 由DBMS本身自動收集和存儲 統(tǒng)計數(shù)據(jù)(2) 通過監(jiān)控系統(tǒng)得到2.6.3 系統(tǒng)性能優(yōu)化調(diào)整1 、 糸統(tǒng)性能優(yōu)化的手段有:數(shù)據(jù) 查詢調(diào)整與優(yōu)化、索引調(diào)整、數(shù)據(jù)庫摸式調(diào) 整、D
30、BMS和操作系統(tǒng)參數(shù)調(diào)整等。2、模式調(diào)整主要涉及邏輯模式調(diào) 整,可以從下考慮:(1) 已達(dá)到第三范式的基本表,不 要進(jìn)一步規(guī)范化為 BCNF;(2) 在分布式數(shù)據(jù)庫中,對一個基 本表中某些頻繁被訪問的數(shù)據(jù), 可以按水平 分區(qū)或垂直分區(qū)方式拆分基本表。2.6.4 系統(tǒng)升級1 、 改進(jìn)應(yīng)用桯序 ;2、數(shù)據(jù)庫重組 ;3、DBMS和 OS版本升級第3章 需求分析及功能建模方法3.1 需求分析概述3.1.1 需求分析概念1 、 所謂需求分折:就是對待開發(fā) 的系統(tǒng)要做什么,完成什么功能的全面描 述。2、需求分析的工作:通過對需求 的調(diào)查、了解、觀察和分析,通過對原始數(shù) 據(jù)的收集、 分類和抽象, 并采用有效
31、的技術(shù)、 工具,對原始資料進(jìn)行加工整理,描述開發(fā) 目標(biāo)、 實現(xiàn)的功能及其相互關(guān)系等活動的集 合;3、需求的定義:客戶對一個待開 發(fā)的系統(tǒng)在實現(xiàn)目標(biāo)、完成功能、應(yīng)達(dá)到的 性能、安全性、可靠性等方面的期望和要求 的集合;4、需求獲取的困難:(1) 軟件功能復(fù)雜 ;(2) 需求的可變性 ;5、需求分析階段的主要任務(wù):分 析當(dāng)前的業(yè)務(wù)流程,包括體系結(jié)構(gòu),各職能 部門完成的主要任務(wù)、關(guān)系及其交流的信 息。6、需求分析的結(jié)果通常以模型等 建模工具和方法描述系統(tǒng)的信息流、 功能結(jié) 構(gòu)及完成各功能需要的數(shù)據(jù)。7、功能模型和軟件需求規(guī)格說明 書是軟件開發(fā)的依據(jù), 將指導(dǎo)后續(xù)的開發(fā)工 作。8、需求分析工作是系統(tǒng)分
32、析員與 用戶不斷交互的過程中完成的。3.1.2 系統(tǒng)分析員的職能1、系統(tǒng)分析員的主要要任務(wù):是 確定應(yīng)用信息系統(tǒng)及軟件產(chǎn)品應(yīng)該達(dá)到的 各項功能性要求和非功能性要求, 即用戶要 做什么。2、系統(tǒng)分析員應(yīng)該具備的素質(zhì):(1) 獲取需求的能力 ;(2) 管理及溝通能力 ;(3) 技術(shù)素養(yǎng) ;3.1.3 需求獲取的方法 常用的幾種獲取需求的方法: (1) 面談 ;(2)實地觀察 ;(3)問卷調(diào)查 ;(4)查閱資源 ;3.1.4 需求分析過程1、標(biāo)識問題:(1) 需求分析的第一步,通過對問 題的識別和標(biāo)識獲得所求解問題及其運(yùn)行 環(huán)境的理解 ;(2) 標(biāo)識問題從現(xiàn)行系統(tǒng)的業(yè)務(wù)流 程做起,理解現(xiàn)行系統(tǒng)的業(yè)務(wù)
33、流程 ;(3) 在標(biāo)識理解需求的同時,還要 注意確定系統(tǒng)的人機(jī)界面 ;2、建立需求模型:(1) 模型是對現(xiàn)實原形所作的一種 抽象, 其本質(zhì)是只關(guān)心與研究內(nèi)容有關(guān)的因 素,而忽略無關(guān)的因素,其目的是把復(fù)雜的 事物變得簡單,便于認(rèn)識和分析 ;(2) 目前常用的模型方法主要有DFD數(shù)據(jù)流圖和IDEFO,都屬于結(jié)構(gòu)化分析方 法,其特征是抽象和分解 ;(3) 首先對應(yīng)用領(lǐng)域進(jìn)行全面的分 析,發(fā)現(xiàn)并找出同類事物的本質(zhì),用抽象方 法把這類事物的非主要方面剔除, 把握住事 物的內(nèi)部規(guī)律或本質(zhì), 就可以找到解決辦法 ; 然后采用自上而下逐步求精的方法對復(fù)雜 的問題進(jìn)行分解 ;(4) 結(jié)構(gòu)化分析及建模方法的主要
34、優(yōu)點(diǎn):(A) 不過早陷入具體的細(xì)節(jié) ;(B) 從整體或宏觀入手分析問題 ;(C) 通過圖形化的模型對象直觀地 表示系統(tǒng)要做什么,完成什么功能 ;(D) 圖形化建模方法方便系統(tǒng)分析 員理解和描述系統(tǒng) ;(E) 模型對象不涉及太多的技術(shù)術(shù) 語,便于用戶理解 ;3、描述需求:(1) 需求描述的目標(biāo):對軟件項目 功能性和非功能性的需求全面描述 ;(2) 功能性需求:指需要計算機(jī)實 際解決的問題或?qū)崿F(xiàn)的具體功能, 明確描述 系統(tǒng)必須做什么, 實現(xiàn)什么功能以及輸入輸 出等;(3) 非功能性需求:軟件項目對實 際運(yùn)行環(huán)境的要求 ;(4) 需求描述主要由需求模型和需 求說明書組成,說明書側(cè)重文字說明,內(nèi)容 如
35、下:需求概述 ;功能需求 ;信息需求 ;性能需 求 ;環(huán)境需求 ;其他需求 ;(5) 在對需求進(jìn)行分析過程中,系 統(tǒng)分析員要經(jīng)??紤]的問題:(A) 描述的需求是完全的嗎 ?(B) 需求描述是正確的和一致的 嗎?(C) 描述的這些需求是可行的、實 際可操作的嗎 ?(D) 描述中的每一條需求都是客戶 需要的嗎 ?4、確認(rèn)需求:1、評審委員會審核下列內(nèi)容:功 能需求 ;數(shù)據(jù)需求 ;性能 ;數(shù)據(jù)管理 ;其他需求。3.2 DFD建模方法3.2.1 DFD方法的基本對象1 、 數(shù)據(jù)流: 具有名字且有流向的數(shù)據(jù), 用標(biāo)有名字的箭頭表示。2、處理:表示對數(shù)據(jù)的加工和變換, 在圖中用矩形框表示。3、數(shù)據(jù)存儲:表
36、示用數(shù)據(jù)庫形式存儲 的數(shù)據(jù), 對其存取分別以指向或離開數(shù)據(jù)存 儲的箭頭表示 ;4、數(shù)據(jù)源及數(shù)據(jù)終點(diǎn):表示當(dāng)前系統(tǒng) 的數(shù)據(jù)來源和去向, 其圖形符號以平行四邊 形表示。322開發(fā)DFD圖1、DFD圖采用自頂而下逐步細(xì)化的結(jié)構(gòu)化分析方法表示目標(biāo)系統(tǒng) ;2、DFD方法應(yīng)以軟件項目的功能為中 心進(jìn)行抽象和分解, 以數(shù)據(jù)流的變換來分析 數(shù)據(jù)對企業(yè)中各類業(yè)務(wù)活動的影響 ;3.2.4 數(shù)據(jù)字典1、數(shù)據(jù)字典包括以下說明信息:(1) 源點(diǎn)及終點(diǎn)詞條描述 ;(2) 數(shù)據(jù)流詞條描述 ;(3) 數(shù)據(jù)存儲 ;(4) 處理描述 ;(5) 數(shù)據(jù)元素詞條描述。3.3 IDEFC建模方法3.3.1 概述1、IDEF0勺基本思想是
37、結(jié)構(gòu)化分析方法,強(qiáng) 調(diào)自頂而下有控制地逐步地展開細(xì)節(jié), 全面 地描述系統(tǒng),且通過建模來理解一個系統(tǒng)。 一個模型由圖形文字說明、 詞匯表及相互的 交叉引用表組成。2、IDEF方法的優(yōu)點(diǎn):具有模型元素單 一、語義豐富、更易于從全局角度分析考察 問題,模型容易理解。3.3.2 IDEF0方法1、基本元素(1) 矩形:代表活動,活動名稱標(biāo)在矩 形內(nèi), 活動編號按要求標(biāo)在矩形框右下角指i=y=r定位置 ;(2)箭頭: 左邊的輸入箭頭代表完成活動需 要的數(shù)據(jù)、 上方的控制箭頭描述了影響活動 的執(zhí)行的事件或約束、 右邊的輸出箭頭說明 由活動產(chǎn)生的結(jié)果及信息、 下方進(jìn)入的機(jī)制 箭頭表示實施該活動的物理手段或資
38、源。(3) 輸入輸出箭頭描述活動是什么 (what)、控制箭頭描述為何這么做 (why)、機(jī) 制箭頭表示如何做 (how)。2、IDEF0模型(1)一個IDEF0模型由一組圖形組成,這些圖 形組成一個由父到子的層次結(jié)構(gòu)圖, 這組圖 形把一個復(fù)雜事物按自頂向下逐步細(xì)化的 方式分解成一個個簡單的或多個組成部分 ;3、建模規(guī)則(1) 矩形框:用動詞為矩形內(nèi)活動命名,每 個矩形要至少有一個控制箭頭和輸出箭頭, 可以沒有輸入, 但不可以同時沒有輸入和控制。(2) 箭頭:箭頭代表數(shù)據(jù)約束,而不是 代表流或順序 ;(3) 其他:(A)ICOM碼:只有一端與矩形相連的箭頭叫 邊界箭頭,這些箭頭表示父矩形框的輸
39、入、 控制和輸出。IDEF0用專門的記號ICOM碼來 說明父子圖中的箭頭關(guān)系。 子圖中每個邊界 箭頭的開端分別用字母I、C 0、M來標(biāo)明是 輸入、控制、輸出及機(jī)制,再用一個數(shù)字表 示其在父矩形框中箭頭的相對位置。(B) 結(jié)點(diǎn)號:IDEF0模型是一組有一定層 次結(jié)構(gòu)的圖形, 通常用結(jié)點(diǎn)號來標(biāo)志圖形或 矩形框在層次圖中的位置 ;(C) 模型名:每個模型有一個名字,通常用名字代表主題,用子名字表示不同的模型。 基本名字與子名字間用“/隔開,如A/B/C,A是主題、B是模型號、C是結(jié)點(diǎn)號。3.3.3 建模過程及步驟1、IDEF0建模過程及步驟:(1) 明確目的,確定范圍:在建模前首 先要明確目的和意圖
40、,確定問題域 ;(2) 建立內(nèi)外關(guān)系圖A-0圖:根據(jù)系統(tǒng)目 標(biāo)、功能建立內(nèi)外關(guān)系圖 A-0圖,以確定整 個模型的內(nèi)外關(guān)系,確定系統(tǒng)的邊界 ;(3) 構(gòu)造頂層圖:把A-0圖分解成36個 主要部分得到A0圖,A0圖是模型真正的頂層 圖;(4)開發(fā)IDEF(層次結(jié)構(gòu)圖:對 A0圖中的每 個矩形框進(jìn)行分解, 就形成了基本的圖形層 次結(jié)構(gòu)。 在分解時要列出所有的數(shù)據(jù)項和活 動表,分解的次序采用以下原則:(A) 保持在同一水平上進(jìn)行分解,均勻 的模型深度 ;(B) 按困難程序進(jìn)行選擇 ;(4) 寫文字說明 ;(5) 檢查確認(rèn)圖形 ;3.4 DFD與 IDEF0的比較1、DFD與 IDEF0共同點(diǎn):都是結(jié)構(gòu)
41、化分析思 想,強(qiáng)調(diào)自頂而下逐步求精的方法對現(xiàn)實世 界建模,先抓住主要的問題,形成較高層次 的抽象, 再由粗到細(xì)、 由表及里地逐步細(xì)化, 將一個大問題分解成幾個小問題, 對這小問 題再進(jìn)行分析求解 ;2、DFD與 IDEFO區(qū)另 U:(1)DFD圖用箭頭(數(shù)據(jù)流)來描述數(shù)據(jù)移動 的方向、 數(shù)據(jù)處理及處理之間的數(shù)據(jù)依賴關(guān) 系。IDEF0圖也用箭頭代表數(shù)據(jù)流,但在IDEF0 中不是強(qiáng)調(diào)流或順序,而是強(qiáng)調(diào)數(shù)據(jù)約束。(2)從表達(dá)形式上看,DFD圖與IDEFC圖都是 用箭頭和處理表達(dá)一個企業(yè)或組織的業(yè)務(wù) 流程。但I(xiàn)DEF0圖的箭頭不僅能夠表示數(shù)據(jù) 流,還可以表示控制流和說明處理或?qū)嵤┓?式的一些約束 ;(
42、3)從模型元素的組成上來看,DFD模型由4 種元素組成,即外部頂、數(shù)據(jù)流、數(shù)據(jù)存儲 和處理。而IDEF0莫型元素的組成更加簡單, 只有 2種元素組成,即箭頭和活動 ;(4) 從模型規(guī)范上來講,IDEF方法更加 規(guī)范 ;(5) IDEF0模型結(jié)構(gòu)清楚,便于理解和溝 通。第四章 數(shù)據(jù)庫概念設(shè)計及數(shù)據(jù)建模4.1 數(shù)據(jù)庫概念設(shè)計概述4.1.1 數(shù)據(jù)庫概念設(shè)計的任務(wù)1、定義和描述應(yīng)用領(lǐng)域涉及的數(shù)據(jù)范 圍;2、獲取應(yīng)用領(lǐng)域或問題域的信息模型3、描述清楚數(shù)據(jù)的屬性特征 ;4、描述清楚數(shù)據(jù)之間的關(guān)系 ;5、定義和描述數(shù)據(jù)的約束 ;6、說明數(shù)據(jù)的安全性要求 ;7、支持用戶的各種數(shù)據(jù)處理需求 ;8、保證信息模型方
43、便地轉(zhuǎn)換成數(shù)據(jù)庫 的邏輯結(jié)構(gòu),同時便于用戶理解。4.1.2 概念設(shè)計過程1、概念設(shè)計的依據(jù): 是需求分析階段的文 檔,通過對這些文檔的分析理解,構(gòu)造出信 息模型,編寫數(shù)據(jù)庫概念設(shè)計說明書,信息 模型和數(shù)據(jù)庫概念設(shè)計說明書是數(shù)據(jù)庫邏 輯設(shè)計的依據(jù) ;2、 概念設(shè)計的基本步驟:(1) 確定實體集 ;(2) 確定聯(lián)系和聯(lián)系類型 ;(3) 建立由信息模型表示的企業(yè)模型 ;(4) 確定實體集屬性 ;(5) 對信息模型優(yōu)化。4.2 數(shù)據(jù)建模方法1、 數(shù)據(jù)建模方法的共同特點(diǎn)是:(1) 能夠真實客觀地描述現(xiàn)實世界中的 數(shù)據(jù)及數(shù)據(jù)之間的關(guān)系 ;(2) 組成模型的概念少,語義清楚,容 易理解 ;(3) 不同概念的
44、語義不重疊,概念無多 義性;(4) 用圖形方式描述數(shù)據(jù),數(shù)據(jù)直觀易 懂,有利于數(shù)據(jù)庫設(shè)計者和用戶交流 ;(5) 這種數(shù)據(jù)模型容易轉(zhuǎn)換成數(shù)據(jù)庫邏 輯設(shè)計階段需要的數(shù)據(jù)結(jié)構(gòu)。4.3 ERt模方法4.3.1 基本概念1、實體或?qū)嵗褐缚陀^存在并可相互 區(qū)分的事物,可以是一個具體的人或物,也 可以是抽象的事件或概念 ;2、實體集:表示一個現(xiàn)實的和抽象事 物的集合, 這些事物必須具有相同的屬性或 特征。3、屬性:用于描述一個實體集的性質(zhì) 和特征 ;4、碼:實體集中能惟一標(biāo)識每一個實 例的屬性或?qū)傩越M ;5、聯(lián)系:描述現(xiàn)實世界中實體之間的 關(guān)系。 (1)一對一聯(lián)系 ;(2)一對多聯(lián)系 ;(3)多對 多聯(lián)系
45、4.3.2 ER方法語法1、ER方法中用矩形框表示實體集,矩 形框內(nèi)寫上實體集的名稱 ;2、ER模型用菱形表示聯(lián)系,聯(lián)系名寫 在菱形框內(nèi) ;3、ER莫型中實體集的屬性用橢圓或圓 角矩形框表示,屬性名字寫在其中。4.4 IDEF1X 建模方法4.4.1 IDEF1X概述1、IDEF0側(cè)重描述系統(tǒng)功能,被稱為功能建 模方法;IDEF1X側(cè)重分析、抽象和概括應(yīng)用領(lǐng) 域中的數(shù)據(jù),稱為數(shù)據(jù)建模方法 ;2、IDEF1X方法具有豐富的語法和語義 ;3、實體集分為 (1)獨(dú)立標(biāo)識符實體集 ;(2) 從屬標(biāo)識符實體集 ;4、 實體集之間的聯(lián)系分為:(1)標(biāo)定型 聯(lián)系 ;(2)非標(biāo)定型聯(lián)系 ;(3)分類聯(lián)系 ;(
46、4)不確 定聯(lián)系442 IDEF1)模型元素1 、 實體集:(1)實體集語義: 如果一個實體集的每一個 實例都能被惟一地標(biāo)識, 而不決定于它與其 他實體的聯(lián)系, 那么該實體集稱為獨(dú)立實體 集; 否則就叫從屬實體集 ;(2) 實體集語法:IDEF1X用矩形框來表 示獨(dú)立實體集, 用圓角矩形框來表示從屬實 體集 ;2、聯(lián)系:(1) 聯(lián)系語義:(A)標(biāo)定型聯(lián)系:一個 “確定型聯(lián)系 ”中,如 果子女實體集中的每個實例都是由它與雙 親的聯(lián)系而確定的,這個關(guān)系稱為 “標(biāo)定型 聯(lián)系 ”;(B)非標(biāo)定型聯(lián)系:一個 “確定型聯(lián)系 ”中, 如果子女實體集中的每一個實例都能被惟 一地確認(rèn)而無需了解與之相聯(lián)系的雙親實
47、 體集的實例,這個問題關(guān)系叫 “非標(biāo)定型聯(lián) 系”。(C)分類聯(lián)系: 是兩個或多個實體集之間的 聯(lián)系, 且在這些實體集中存在一個一般實體 集,它的每一個實例都恰好與一個且僅一個 分類實體集的一個實例相聯(lián)系。(D)不確定聯(lián)系: 一個非確定聯(lián)系又稱為多 對多聯(lián)系,這種聯(lián)系關(guān)聯(lián)的兩個實體集之 間,任一實體集的一個實例都將對應(yīng)另一實 體集的 0個、 1 個或多個實例。(2) 聯(lián)系的語法:(A)標(biāo)定聯(lián)系語法:在IDEF1X圖中,聯(lián)系的 語法用直線表示,在一個標(biāo)定型聯(lián)系中,子 女實體集總是一個從屬實體集, 用圓角矩形 框表示 ;(B) 非標(biāo)定聯(lián)系語法:如果兩個實體集 之間有關(guān)系,并且是一個非標(biāo)定聯(lián)系,就用
48、一條虛線把它們連接起來。(C) 分類聯(lián)系語法:一般實體集的一個 實例只能與分類實體集的一個實例相對應(yīng) ;(D) 不確定聯(lián)系m:n的語法:不確定聯(lián)系 用一個兩端帶有實心圓的線段描述, 表示多 對多的連接關(guān)系。3、屬性(1) 屬性的語義:用來描述一類現(xiàn)實或 抽象事物的特征或性質(zhì)。 一個屬性的具體取 值叫屬性實例,它由屬性的類型和值來定 義。(2) 屬性的語法(A)主碼和非主碼屬性語法: 在一個實體集 中屬性要有惟一的名字,屬性名由名詞表 示,主碼屬性名后加(PK)標(biāo)注,被列在屬性 列表的頂端, 并用水平線將主碼和其他屬性 分開。(B) 外碼語法:在外碼屬性后加“ FK”識別由聯(lián)系繼承得到的外來屬性
49、。4.4.3 建模過程1 、第一階段:建模規(guī)劃及準(zhǔn)備(1) 建模目標(biāo):(A) 目標(biāo)說明:回答將構(gòu)造的模型完成 什么功能,涉及的問題和數(shù)據(jù)范圍,同時說 明是一個當(dāng)前系統(tǒng)模型還是待建模型。(B) 范圍說明:在建模初期要給出模型 覆蓋的問題范圍 ;(2) 建模計劃(A) 項目說明 ;(B) 收集數(shù)據(jù) ;(C) 定義實體 ;(D) 定義聯(lián)系 ;(E) 定義碼屬性 ;(F) 定義非碼屬性 ;(G) 確認(rèn)模型 ;(H) 評審驗收。(3) 組織隊伍:包括項目負(fù)責(zé)人、建模 者、信息源、課題專家、評審委員會1 、 第二階段:定義實體集(1) 目標(biāo)是標(biāo)識和定義應(yīng)用領(lǐng)域中的實 體集, 方法是分類標(biāo)識原始材料中的所有
50、名 詞;(2) 區(qū)別實體集名詞和非實體集名詞的 方法,是否具有下列特征:(A) 它能夠被描述或說明嗎 ?(B) 有多少同類的實例嗎 ?(C) 每個實例可以被標(biāo)識和區(qū)分嗎 ?2、第三階段:定義聯(lián)系(1) 標(biāo)識實體集之間的聯(lián)系:建立聯(lián)系矩 陣,聯(lián)系矩陣由一個二維數(shù)組表示。把實體 集沿水平和垂直兩方向列出, 分析兩個實體 間的聯(lián)系,有聯(lián)系就用“ X”示,不存在聯(lián)系 用“null表示。聯(lián)系只標(biāo)識直接關(guān)系,不標(biāo)識 間接關(guān)系。(2) 定義聯(lián)系:包括表示依賴、命名聯(lián)系、 關(guān)于聯(lián)系的說明 ;當(dāng)實體集之間的依賴關(guān)系 建立后,就可以命名聯(lián)系了。聯(lián)系的名字可 以動詞表示。原則必須是具體的、簡明的和 有意義的。(3)
51、 構(gòu)造實體級數(shù):實體級圖的范圍和 數(shù)目 ,依賴于建模的規(guī)模和建模問題涉及的 實體集數(shù)目。3、第四階段:定義健(1) 分解不確定的聯(lián)系:把實體級圖中 不確定的關(guān)系轉(zhuǎn)換成確定的連接形式, 把每 一個不確定的聯(lián)系轉(zhuǎn)換成為兩個確定的聯(lián)系;(2) 標(biāo)識碼屬性:碼屬性是那些能夠惟 一識別實體集中每一個實例的屬性 ;(3) 遷移主碼:把一個實體集的主碼復(fù) 制到其他有關(guān)實體集的過程, 但要遵守以下 規(guī)則:(A) 在一個聯(lián)系中,遷移總是從父到子 或從一般實體集移向分類實體集 ;(B) 主碼屬性才能被遷移,如主碼由多 個屬性組成,則要全部遷移 ;4、第五階段:定義屬性(1) 標(biāo)識和定義非主屬性 ;(2) 建立屬性
52、的所有者 ;(3) 確認(rèn)屬性的定義 ;(4) 繪制局部數(shù)據(jù)視圖 ;(A) 實體集的名稱和編號寫在矩形框外 的上面 ;(B) 主碼屬性寫在矩形框內(nèi)水平線的上 面并用“ PK”注;(C) 外碼屬性寫在矩形框內(nèi)水平線的下 面并用“FK”注;(D) 非主屬性也可以寫在矩形框內(nèi)水平 線的下面 ;第五章 關(guān)系數(shù)據(jù)庫邏輯設(shè)計5.1 概述5.2 基本概念5.2.1 關(guān)系模型1、關(guān)系模型采用一個二維表格在 計算機(jī)中組織、存儲、處理和管理數(shù)據(jù)。(1) 關(guān)系名 (數(shù)據(jù)庫名 ):由字母數(shù)字 組成;(2) 屬性名 ;(3) 關(guān)系模式和關(guān)系:描述模式描 述關(guān)系的靜態(tài)結(jié)構(gòu),由模式名、關(guān)系模式所 包含的屬性及屬性值所滿足的條
53、件組成模 式定義。(4) 元組:描述關(guān)系中的行 ;(5) 域:它定義關(guān)系的每個屬性取 值的類型 ;(6) 主碼:能夠惟一標(biāo)識關(guān)系中每 一個元組的屬性或?qū)傩越M ;(7) 關(guān)系的數(shù)學(xué)定義:關(guān)系模式是 建立在集合集論的基礎(chǔ)上的, 用數(shù)學(xué)的概念 定義關(guān)系有 ;(A) 定義一:域是值的集合,同一 個域中的值具有相同的數(shù)據(jù)類型 ;(B) 定義二:(C) 定義三:(D) 當(dāng)關(guān)系引用了屬性名后關(guān)系具 有以下屬性:1 不能有重復(fù)的元組 ;2 元組上下無序 ;3 按屬性名引用時屬性左右無序;4 所有屬性值都是原子項 (不可 再分);(8) 總結(jié):關(guān)系是一張二維表,表 中的一行被稱為一個元組,一列稱為屬性, 由一組
54、域值組成。關(guān)系是元組的集合,關(guān)系 中的每個元組在數(shù)學(xué)上被定義為這個關(guān)系 所涉及的全部域值中笛卡兒積的一個元素。5.2.2 關(guān)系數(shù)據(jù)庫1、關(guān)系數(shù)據(jù)庫是按照二維表組織 和存儲的相互關(guān)聯(lián)的關(guān)系的集合, 關(guān)系數(shù)據(jù) 庫模式是關(guān)系模式的集合 ;5.2.3 關(guān)系的完整性1、關(guān)系的完整性 (完整性約束 ): 是對關(guān)系的某種約束規(guī)則和關(guān)系滿足的定 義。通常這組約束規(guī)則用來限定和檢查數(shù)據(jù) 庫所含實例的合法性和正確性 ;2、完整性約束分靜態(tài)和動態(tài)兩 種,靜態(tài)完整性約束是基于關(guān)系模式的,主 要有主碼、外碼約束和域約束組成 ;動態(tài)完整 性約束是基于企業(yè)的業(yè)務(wù)規(guī)則的。3、靜態(tài)完整性約束規(guī)則:(1) 主碼約束:主碼必須滿足
55、:(A) 惟一性:在一個關(guān)系中不存在 兩個元組,它們具有相同的主碼值 ;(B) 最小性:不存在從組成主碼的 屬性集中去掉一個屬性, 還仍能保持?jǐn)?shù)據(jù)的 惟一性 ;(2) 外碼約束:(3) 用戶定義的完整性:5.3 關(guān)系數(shù)據(jù)庫設(shè)計理論5.3.1 問題的提出 究竟一個關(guān)系數(shù)據(jù)庫包含哪些屬 性是合理的, 如何評價一個關(guān)系模式設(shè)計的 優(yōu)劣?5.3.2 函數(shù)依賴 函數(shù)依理論利用一個關(guān)系中屬性 之間的依賴關(guān)系評價和優(yōu)化關(guān)系模式, 以保 證存儲到數(shù)據(jù)庫中的關(guān)系具有較好特性 ;1、函數(shù)依賴:(1)設(shè)R(U)為一關(guān)系模式,X和 丫為 屬性全集U的子集,若對于R(U)的任意一個 可能的關(guān)系r, r中不可能存在兩個元組在 X 上的屬性值相等,而在 丫上的屬性值不等, 則稱X函數(shù)決定Y”或丫函數(shù)依賴于X”,并記 作X丫其中X稱為決定因素,因為根據(jù)函數(shù) 依賴定義,給定一個X,就能惟一決定一個Y。(2) 這里討論的函數(shù)關(guān)系與數(shù)學(xué)上 的不同,是不能計算的,是一個關(guān)系中屬性 之間存在的依賴關(guān)系 ;它是一種語義范疇的 概念, 只能根據(jù)兩個屬性之間的語義來確定 一個函數(shù)依賴是否存在。2、完全與部分函數(shù)依賴:(1) 在關(guān)系模式R(U)中,如果Xd 成 立,并且對X的任何真子集X'不能函數(shù)決定Y, 則稱丫對X是完全函數(shù)依賴,被記作X-
溫馨提示
- 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年股權(quán)轉(zhuǎn)讓合同股權(quán)比例與轉(zhuǎn)讓價格
- 2024建筑水電工程合同書
- 2024年銷售中介服務(wù)條款正式版協(xié)議版B版
- 2025年度新能源發(fā)電項目投資與運(yùn)營管理合同3篇
- 2024年項目股份轉(zhuǎn)移及合作意向合同一
- 2024年舞臺燈光維修保養(yǎng)協(xié)議版B版
- 2025年倉儲物流安全管理規(guī)范執(zhí)行合同3篇
- 2024年高效農(nóng)業(yè)設(shè)備定制與供應(yīng)合同
- 2025年度食品鋪貨與餐飲行業(yè)合作合同3篇
- 職業(yè)學(xué)院學(xué)生外出活動管理規(guī)定
- 冬春季呼吸道傳染病防控
- 數(shù)學(xué)-2025年高考綜合改革適應(yīng)性演練(八省聯(lián)考)
- 2024-2025學(xué)年安徽省六安市金安區(qū)三上數(shù)學(xué)期末調(diào)研試題含解析
- ISO 56001-2024《創(chuàng)新管理體系-要求》專業(yè)解讀與應(yīng)用實踐指導(dǎo)材料之10:“5領(lǐng)導(dǎo)作用-5.4創(chuàng)新文化”(雷澤佳編制-2025B0)
- 【物 理】2024-2025學(xué)年八年級上冊物理寒假作業(yè)人教版
- 交通運(yùn)輸安全生產(chǎn)管理規(guī)范
- 2024年期貨居間業(yè)務(wù)代理合同范本2篇
- 2024年醫(yī)療器械經(jīng)營質(zhì)量管理規(guī)范培訓(xùn)課件
- 2024年計算機(jī)二級WPS考試題庫380題(含答案)
- 化妝品原料名稱對照及用途
- 雙梁門式起重機(jī)計算書
評論
0/150
提交評論