大學數據庫課件第7章數據庫設計DataBa.ppt
《大學數據庫課件第7章數據庫設計DataBa.ppt》由會員分享,可在線閱讀,更多相關《大學數據庫課件第7章數據庫設計DataBa.ppt(90頁珍藏版)》請在裝配圖網上搜索。
數據庫系統(tǒng)概論AnIntroductiontoDatabaseSystem第六章數據庫設計,第六章數據庫設計,6.1數據庫設計概述6.2需求分析6.3概念結構設計6.4邏輯結構設計6.5數據庫的物理設計6.6數據庫實施6.7數據庫運行與維護6.8小結,6.1數據庫設計概述,6.1.1數據庫和信息系統(tǒng)6.1.2數據庫設計的特點6.1.3數據庫設計方法簡述6.1.4數據庫設計的基本步驟,數據庫設計概述(續(xù)),什么是數據庫設計數據庫設計是指對于一個給定的應用環(huán)境,構造最優(yōu)的數據庫模式,建立數據庫及其應用系統(tǒng),使之能夠有效地存儲數據,滿足各種用戶的應用需求(信息要求和處理要求)在數據庫領域內,常常把使用數據庫的各類系統(tǒng)統(tǒng)稱為數據庫應用系統(tǒng)。,6.1.1數據庫和信息系統(tǒng),數據庫是信息系統(tǒng)的核心和基礎把信息系統(tǒng)中大量的數據按一定的模型組織起來提供存儲、維護、檢索數據的功能使信息系統(tǒng)可以方便、及時、準確地從數據庫中獲得所需的信息數據庫是信息系統(tǒng)的各個部分能否緊密地結合在一起以及如何結合的關鍵所在數據庫設計是信息系統(tǒng)開發(fā)和建設的重要組成部分,數據庫設計人員應該具備的技術和知識,數據庫的基本知識和數據庫設計技術計算機科學的基礎知識和程序設計的方法和技巧軟件工程的原理和方法應用領域的知識,6.1數據庫設計概述,6.1.1數據庫和信息系統(tǒng)6.1.2數據庫設計的特點6.1.3數據庫設計方法簡述6.1.4數據庫設計的基本步驟,6.1.2數據庫設計的特點,數據庫建設是硬件、軟件和干件的結合三分技術,七分管理,十二分基礎數據技術與管理的界面稱之為“干件”數據庫設計應該與應用系統(tǒng)設計相結合結構(數據)設計:設計數據庫框架或數據庫結構行為(處理)設計:設計應用程序、事務處理等,數據庫設計的特點(續(xù)),結構和行為分離的設計傳統(tǒng)的軟件工程忽視對應用中數據語義的分析和抽象,只要有可能就盡量推遲數據結構設計的決策早期的數據庫設計致力于數據模型和建模方法研究,忽視了對行為的設計,數據庫設計的特點(續(xù)),6.1數據庫設計概述,6.1.1數據庫和信息系統(tǒng)6.1.2數據庫設計的特點6.1.3數據庫設計方法簡述6.1.4數據庫設計的基本步驟,6.1.3數據庫設計方法簡述,手工試湊法設計質量與設計人員的經驗和水平有直接關系缺乏科學理論和工程方法的支持,工程的質量難以保證數據庫運行一段時間后常常又不同程度地發(fā)現各種問題,增加了維護代價,數據庫設計方法簡述(續(xù)),規(guī)范設計法手工設計方法基本思想過程迭代和逐步求精,數據庫設計方法簡述(續(xù)),規(guī)范設計法(續(xù))典型方法新奧爾良(NewOrleans)方法將數據庫設計分為四個階段S.B.Yao方法將數據庫設計分為五個步驟I.R.Palmer方法把數據庫設計當成一步接一步的過程,數據庫設計方法簡述(續(xù)),計算機輔助設計ORACLEDesigner2000SYBASEPowerDesigner,6.1數據庫設計概述,6.1.1數據庫和信息系統(tǒng)6.1.2數據庫設計的特點6.1.3數據庫設計方法簡述6.1.4數據庫設計的基本步驟,6.1.4數據庫設計的基本步驟,一、數據庫設計的準備工作選定參加設計的人員1.數據庫分析設計人員數據庫設計的核心人員自始至終參與數據庫設計其水平決定了數據庫系統(tǒng)的質量,6.1.4數據庫設計的基本步驟,2.用戶在數據庫設計中也是舉足輕重的主要參加需求分析和數據庫的運行維護用戶積極參與帶來的好處加速數據庫設計提高數據庫設計的質量,數據庫設計的基本步驟(續(xù)),3.程序員在系統(tǒng)實施階段參與進來,負責編制程序4.操作員在系統(tǒng)實施階段參與進來,準備軟硬件環(huán)境,數據庫設計的基本步驟(續(xù)),二、數據庫設計的過程(六個階段)⒈需求分析階段準確了解與分析用戶需求(包括數據與處理)是整個設計過程的基礎,是最困難、最耗費時間的一步,數據庫設計的基本步驟(續(xù)),⒉概念結構設計階段是整個數據庫設計的關鍵通過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型,數據庫設計的基本步驟(續(xù)),⒊邏輯結構設計階段將概念結構轉換為某個DBMS所支持的數據模型對其進行優(yōu)化,數據庫設計的基本步驟(續(xù)),⒋數據庫物理設計階段為邏輯數據模型選取一個最適合應用環(huán)境的物理結構(包括存儲結構和存取方法),數據庫設計的基本步驟(續(xù)),⒌數據庫實施階段運用DBMS提供的數據語言、工具及宿主語言,根據邏輯設計和物理設計的結果建立數據庫編制與調試應用程序組織數據入庫并進行試運行,數據庫設計的基本步驟(續(xù)),⒍數據庫運行和維護階段數據庫應用系統(tǒng)經過試運行后即可投入正式運行。在數據庫系統(tǒng)運行過程中必須不斷地對其進行評價、調整與修改。,數據庫設計的基本步驟(續(xù)),設計一個完善的數據庫應用系統(tǒng)往往是上述六個階段的不斷反復。如下圖所示,,設計特點,在設計過程中把數據庫的設計和對數據庫中數據處理的設計緊密結合起來將這兩個方面的需求分析、抽象、設計、實現在各個階段同時進行,相互參照,相互補充,以完善兩方面的設計設計過程各個階段的設計描述:如下圖所示,Creat……Load……,Main()……if……then……end,概念結構設計,邏輯結構設計,物理設計,數據庫設計的基本步驟(續(xù)),數據庫各級模式的形成過程.,,需求分析階段綜合各個用戶的應用需求概念設計階段形成獨立于機器特點,獨立于各個DBMS產品的概念模式(E-R圖),數據庫設計的基本步驟(續(xù)),邏輯設計階段首先將E-R圖轉換成具體的數據庫產品支持的數據模型,如關系模型,形成數據庫邏輯模式然后根據用戶處理的要求、安全性的考慮,在基本表的基礎上再建立必要的視圖(View),形成數據的外模式,數據庫設計的基本步驟(續(xù)),物理設計階段根據DBMS特點和處理的需要,進行物理存儲安排,建立索引,形成數據庫內模式,第六章數據庫設計,6.1數據庫設計概述6.2需求分析6.3概念結構設計6.4邏輯結構設計6.5數據庫的物理設計6.6數據庫實施6.7數據庫運行與維護6.8小結,6.2需求分析,6.2.1需求分析的任務6.2.2需求分析的方法6.2.3數據字典,需求分析(續(xù)),需求分析就是分析用戶的需要與要求需求分析是設計數據庫的起點需求分析的結果是否準確反映了用戶的實際要求,將直接影響到后面各個階段的設計,并影響到設計結果是否合理和實用,6.2需求分析,6.2.1需求分析的任務6.2.2需求分析的方法6.2.3數據字典,6.2.1需求分析的任務,一、需求分析的任務二、需求分析的重點三、需求分析的難點,一、需求分析的任務,通過詳細調查現實世界要處理的對象(組織、部門、企業(yè)等),充分了解原系統(tǒng)(手工系統(tǒng)或計算機系統(tǒng))工作概況,明確用戶的各種需求在此基礎上確定新系統(tǒng)的功能。新系統(tǒng)必須充分考慮今后可能的擴充和改變,不能僅僅按當前應用需求來設計數據庫,二、需求分析的重點,需求分析的重點是調查、收集與分析用戶在數據管理中的信息要求、處理要求、安全性與完整性要求。信息要求用戶需要從數據庫中獲得信息的內容與性質由用戶的信息要求可以導出數據要求,即在數據庫中需要存儲哪些數據,需求分析的重點(續(xù)),處理要求對處理功能的要求對處理的響應時間的要求對處理方式的要求(批處理/聯(lián)機處理)新系統(tǒng)的功能必須能夠滿足用戶的信息要求、處理要求、安全性與完整性要求。,三、需求分析的難點,確定用戶最終需求的難點用戶缺少計算機知識,開始時無法確定計算機究竟能為自己做什么,不能做什么,因此無法一下子準確地表達自己的需求,他們所提出的需求往往不斷地變化。設計人員缺少用戶的專業(yè)知識,不易理解用戶的真正需求,甚至誤解用戶的需求。新的硬件、軟件技術的出現也會使用戶需求發(fā)生變化。,需求分析的難點(續(xù)),解決方法設計人員必須采用有效的方法,與用戶不斷深入地進行交流,才能逐步得以確定用戶的實際需求,6.2需求分析,6.2.1需求分析的任務6.2.2需求分析的方法6.2.3數據字典,6.2.2需求分析的方法,調查清楚用戶的實際需求并進行初步分析與用戶達成共識進一步分析與表達這些需求,一、調查與初步分析用戶需求,⑴調查組織機構情況組織部門的組成情況各部門的職責等,調查與初步分析用戶需求(續(xù)),⑵調查各部門的業(yè)務活動情況。調查重點之一。各個部門輸入和使用什么數據如何加工處理這些數據輸出什么信息輸出到什么部門輸出結果的格式是什么,調查與初步分析用戶需求(續(xù)),⑶在熟悉業(yè)務活動的基礎上,協(xié)助用戶明確對新系統(tǒng)的各種要求。調查重點之二。信息要求處理要求完全性與完整性要求,調查與初步分析用戶需求(續(xù)),⑷對前面調查的結果進行初步分析確定新系統(tǒng)的邊界確定哪些功能由計算機完成或將來準備讓計算機完成確定哪些活動由人工完成由計算機完成的功能就是新系統(tǒng)應該實現的功能。,二、常用調查方法,做需求調查時,往往需要同時采用多種方法無論使用何種調查方法,都必須有用戶的積極參與和配合設計人員應該和用戶取得共同的語言,幫助不熟悉計算機的用戶建立數據庫環(huán)境下的共同概念,并對設計工作的最后結果共同承擔責任,常用調查方法(續(xù)),常用調查方法⑴跟班作業(yè)通過親身參加業(yè)務工作了解業(yè)務活動的情況能比較準確地理解用戶的需求,但比較耗時⑵開調查會通過與用戶座談來了解業(yè)務活動情況及用戶需求⑶請專人介紹,常用調查方法(續(xù)),⑷詢問對某些調查中的問題,可以找專人詢問⑸設計調查表請用戶填寫如果調查表設計合理,則很有效,且易于為用戶接受⑹查閱記錄查閱與原系統(tǒng)有關的數據記錄,三、進一步分析和表達用戶需求,分析和表達用戶的需求的常用方法自頂向下的結構化分析方法(StructuredAnalysis,簡稱SA方法)SA方法從最上層的系統(tǒng)組織機構入手,采用逐層分解的方式分析系統(tǒng),并用數據流圖和數據字典描述系統(tǒng)。,進一步分析和表達用戶需求(續(xù)),1.首先把任何一個系統(tǒng)都抽象為:,進一步分析和表達用戶需求(續(xù)),2.分解處理功能和數據(1)分解處理功能將處理功能的具體內容分解為若干子功能,再將每個子功能繼續(xù)分解,直到把系統(tǒng)的工作過程表達清楚為止。(2)分解數據在處理功能逐步分解的同時,其所用的數據也逐級分解,形成若干層次的數據流圖數據流圖表達了數據和處理過程的關系,進一步分析和表達用戶需求(續(xù)),(3)表達方法處理過程:用判定表或判定樹來描述數據:用數據字典來描述,進一步分析和表達用戶需求(續(xù)),3.將分析結果再次提交給用戶,征得用戶的認可,四、需求分析小結,需求分析小結(續(xù)),實例:假設我們要開發(fā)一個學校管理系統(tǒng)。1.經過可行性分析和初步需求調查,抽象出該系統(tǒng)最高層數據流圖,該系統(tǒng)由教師管理子系統(tǒng)、學生管理子系統(tǒng)、后勤管理子系統(tǒng)組成,每個子系統(tǒng)分別配備一個開發(fā)小組。,學校管理高層數據流圖,主層分解后的數據流圖,2.進一步細化各個子系統(tǒng)。其中學生管理子系統(tǒng)開發(fā)小組通過進行進一步的需求調查,明確了該子系統(tǒng)的主要功能是進行學籍管理和課程管理,包括學生報到、入學、畢業(yè)的管理,學生上課情況的管理。通過詳細的信息流程分析和數據收集后,他們生成了該子系統(tǒng)的數據流圖。,售書系統(tǒng)(),領書單進書通知,購書單缺書單,學生,,教材購銷系統(tǒng),,書庫保管員,,,實例:假設要開發(fā)一個售書系統(tǒng),售書系統(tǒng),顧客,P1銷售,P2采購,供應商,,,,,,,,F1配件庫存,,,,,,,,,,P3會計,,,,,,,,,,,,,,,,付款,付款,收據,應付款通知,收款通知,到貨通知,訂貨單,訂貨單,發(fā)貨單,發(fā)貨單,例子:銷售采購管理系統(tǒng)第1層數據流程圖,,F2配件目錄,,,,,顧客,P1.1編輯訂貨單,業(yè)務員,P1.3確定訂貨,P1.5產生暫存訂貨單,P1.2登錄新顧客,F3顧客,P1.4開發(fā)貨單修改庫存,P1.6對照暫存訂貨單,采購,,,,,,,,,,,,,,,,,,,,F4暫存訂貨單,,,,,P1.8編制銷售、庫存報表,P1.7檢索庫存,F1配件庫存,經理,F5銷售歷史,F10應收款明細帳,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,第2層數據流程圖之一(銷售),發(fā)貨單,訂貨單,不合格,合格,新顧客,不滿足的訂貨,可發(fā)的訂貨,,,到貨通知,,,,,,,,,F4暫存訂貨單,P2.1按配件匯總,,P2.2確定訂貨的配件,,P2.5修改庫存、待訂數量,F6待訂貨的配件,P2.6編制到貨通知,P2.4核對發(fā)貨單,F1配件庫存,P2.3按供應商匯總,F8向供應商的訂貨單,F9應付款明細帳,銷售,供應商,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,訂貨單,發(fā)貨單,錯誤發(fā)貨單,正確發(fā)貨單,,,,,第2層數據流程圖之二(采購),顧客,P3.1開收據并修改明細帳,P3.5編制會計報表,經理,P3.4修改總帳,F10應收款明細帳,F11總帳,P3.3付款并修改明細帳,P3.2核對付款單,F9應付款明細帳,供應商,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,第2層數據流程圖之三(會計),應付款通知,付款,收據,6.2需求分析,6.2.1需求分析的任務6.2.2需求分析的方法6.2.3數據字典,6.2.3數據字典,一、數據字典的用途二、數據字典的內容,一、數據字典的用途,數據字典是各類數據描述的集合數據字典是進行詳細的數據收集和數據分析所獲得的主要結果數據字典在數據庫設計中占有很重要的地位,二、數據字典的內容,數據字典的內容數據項數據結構數據流數據存儲處理過程數據項是數據的最小組成單位若干個數據項可以組成一個數據結構數據字典通過對數據項和數據結構的定義來描述數據流、數據存儲的邏輯內容。,⒈數據項,數據項是不可再分的數據單位對數據項的描述數據項描述={數據項名,數據項含義說明,別名,數據類型,長度,取值范圍,取值含義,與其他數據項的邏輯關系}取值范圍、與其他數據項的邏輯關系定義了數據的完整性約束條件,⒉數據結構,數據結構反映了數據之間的組合關系。一個數據結構可以由若干個數據項組成,也可以由若干個數據結構組成,或由若干個數據項和數據結構混合組成。對數據結構的描述數據結構描述={數據結構名,含義說明,組成:{數據項或數據結構}},⒊數據流,數據流是數據結構在系統(tǒng)內傳輸的路徑。對數據流的描述數據流描述={數據流名,說明,數據流來源,數據流去向,組成:{數據結構},平均流量,高峰期流量}數據流來源是說明該數據流來自哪個過程數據流去向是說明該數據流將到哪個過程去平均流量是指在單位時間(每天、每周、每月等)里的傳輸次數高峰期流量則是指在高峰時期的數據流量,⒋數據存儲,數據存儲是數據結構停留或保存的地方,也是數據流的來源和去向之一。對數據存儲的描述數據存儲描述={數據存儲名,說明,編號,流入的數據流,流出的數據流,組成:{數據結構},數據量,存取方式}流入的數據流:指出數據來源流出的數據流:指出數據去向數據量:每次存取多少數據,每天(或每小時、每周等)存取幾次等信息存取方法:批處理/聯(lián)機處理;檢索/更新;順序檢索/隨機檢索,⒌處理過程,處理過程的具體處理邏輯一般用判定表或判定樹來描述。數據字典中只需要描述處理過程的說明性信息處理過程說明性信息的描述處理過程描述={處理過程名,說明,輸入:{數據流},輸出:{數據流},處理:{簡要說明}},處理過程(續(xù)),簡要說明:主要說明該處理過程的功能及處理要求功能:該處理過程用來做什么處理要求:處理頻度要求(如單位時間里處理多少事務,多少數據量);響應時間要求等處理要求是后面物理設計的輸入及性能評價的標準,數據字典是關于數據庫中數據的描述,即元數據,而不是數據本身。數據本身將存放在物理數據庫中,由數據庫管理系統(tǒng)管理。數據字典有助于這些數據的進一步管理和控制,為設計人員和數據庫管理員在數據庫設計、實現和運行階段控制有關數據提供依據。我們以學生學籍管理子系統(tǒng)為例,簡要說明如何定義數據字典。,處理過程(續(xù)),例:學生學籍管理子系統(tǒng)的數據字典。該子系統(tǒng)涉及很多數據項,其中“學號”數據項可以如下述:數據項,以“學號”為例:數據項:學號含義說明:唯一標識每個學生別名:學生編號類型:字符型長度:8取值范圍:00000000至99999999取值含義:前兩位標別該學生所在年級,后六位按順序編號與其他數據項的邏輯關系:,處理過程(續(xù)),數據結構以“學生”為例“學生”是該系統(tǒng)中的一個核心數據結構:數據結構:學生含義說明:是學籍管理子系統(tǒng)的主體數據結構,定義了一個學生的有關信息組成:學號,姓名,性別,年齡,所在系,年級,處理過程(續(xù)),數據流“體檢結果”可如下描述:數據流:體檢結果說明:學生參加體格檢查的最終結果數據流來源:體檢數據流去向:批準組成:……平均流量:……高峰期流量:……,處理過程(續(xù)),數據存儲“學生登記表”可如下描述:數據存儲:學生登記表說明:記錄學生的基本情況流入數據流:……流出數據流:……組成:……數據量:每年3000張存取方式:隨機存取,處理過程(續(xù)),處理過程“分配宿舍”可如下描述:處理過程:分配宿舍說明:為所有新生分配學生宿舍輸入:學生,宿舍,輸出:宿舍安排處理:在新生報到后,為所有新生分配學生宿舍。要求同一間宿舍只能安排同一性別的學生,同一個學生只能安排在一個宿舍中。每個學生的居住面積不小于3平方米。安排新生宿舍其處理時間應不超過15分鐘。,- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 大學 數據庫 課件 設計 DataBa
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://weibangfood.com.cn/p-11682904.html