Chapter 6 Instructor Slides

Download Report

Transcript Chapter 6 Instructor Slides

Systems Analysis & Design
5th Edition
第6章
資料設計
階段說明
● 系統設計是在系統發展生命週期 (SDLC) 中
的第三個階段
● 現在你可以進行系統的實體設計,以建立滿
足系統需求文件所述規格的系統
● 系統設計的工作包括資料設計、使用者介面
設計,及系統架構
2
學習目標
● Explain data design concepts and data structures
● Describe file processing systems and various
types of files
● Understand database systems and define the
components of a database management system
(DBMS)
● Describe Web-based data design and
characteristics
● 解釋資料設計概念及資料結構
● 描述檔案處理系統及各種不同類型的檔案
● 了解資料庫系統及定義資料庫管理系統 (DBMS) 的元
件
3
● 描述以Web為基礎的資料設計及其特質
學習目標
● 解說資料設計的術語,包含實體、欄位、共
同欄位、紀錄、檔案、資料表及鍵欄位
● 解釋資料關聯性、畫出實體關聯圖、定義資
料維數,及使用資料維數標記法
● 解釋正規化的觀念
● 了解資料庫設計的步驟
4
學習目標
● 描述階層式、網路式、關聯式,及物件導向
資料庫模型
● 解釋資料倉儲及資料探勘
● 區別邏輯及實體紀錄
● 解釋資料控制方法
5
簡
介
● 你將發展一個資料的組織、儲存,及取用之實
體計畫
● 本章是由了解資料設計的概念及術語開始,然
後討論以檔案為基礎的系統及資料庫系統,包
括以Web為基礎的資料庫
● 本章最後,以討論資料探勘、資料倉儲、實體
設計問題、邏輯及實體紀錄、資料儲存格式及
資料控制等作為結束
6
資料設計觀念
● 在建構資訊系統之前,系統分析師必須了解
基本資料設計觀念,包含資料結構及檔案導
向與資料庫系統的特徵,及以 Web 為基礎
的資料庫設計
7
資料設計觀念
● 資料結構
–檔案 (file) 或資料表 (table) 存放著與資訊系統互動的
人、地、物,或事件等資料
– 檔案導向系統 (file-oriented system)
– 檔案處理 (file processing)
– 資料庫系統 (database system)
8
資料設計觀念
● 檔案處理系統概述
–有些公司使用檔案處理來處理例行的大量結構化資料
–雖然在今日已較不普遍,但是檔案處理在某些狀況下
,是可以比 DBMS 更具有效率及節省成本
9
資料設計觀念
● 檔案處理系統概述
– 潛在問題
• 資料重複 (data redundancy)
• 資料完整性 (data integrity)
• 僵硬資料結構 (rigid data structure)
– 使用各種類型的檔案
•
•
•
•
•
•
主檔 (master file)
對照表檔 (table file)
交易檔 (transaction file)
工作檔 (work file) 也稱作暫用檔 (scratch file)
安全檔 (security file)
歷史檔 (history file)
10
資料設計觀念
● 資料庫系統概述
– 設計完善的資料庫可為檔案處理系統所會面臨的
問題提供解決方案
– 資料庫提供可避免資料重複及支援即時與動態環
境的整體架構
11
資料設計觀念
● 資料庫系統概述
12
資料設計觀念
● 資料庫系統概述
– 資料庫管理系統 (DBMS, database management
system) 是一套讓使用者能夠新增、更新、管理
、取用及分析資料庫內容的工具、機能、及介面
的組合
– DBMS 的主要優點是它提供適時的、互動的,及
彈性的資料存取
13
資料設計觀念
● 資料庫系統概述
– 優點
•
•
•
•
•
•
•
•
•
•
規模彈性 (scalability)
提供主從式系統更佳的支援
經濟規模
有彈性的資料分享
普及企業全體的應用系統 -- 資料庫管理師 (DBA, database
administrator)
更強化的標準
受控制的資料重複
更好的安全
提升程式設計師生產力
資料獨立性
14
資料設計觀念
● 資料庫的一些取捨
– 因為 DBMS 力量強大,它們需要更貴的硬體、
軟體,及資料網路以提供支援多使用者環境
– 比檔案處理系統更複雜
– 在資料庫環境中,安全、備份,及回復等程序都
相當複雜且重要
15
DBMS元件
● DBMS 提供介於資料庫與需要存取該資料庫的
使用者之間的介面
16
DBMS元件
● 給使用者、資料庫管理師,及相關系統的介
面
– 使用者
• 查詢語言 (query language)
• 實例查詢 (QBE, query-by-example) 語言
• 結構化查詢語言 (SQL, structured query language)
– 資料庫管理師 (DBA)
• 資料庫管理師負責 DBMS 的管理及支援。
17
DBMS元件
● 給使用者、資料庫管理師,及相關系統的介
面
– 相關資訊系統
• A DBMS can support several related information
systems that provide input to, and require specific
data from, the DBMS
• DBMS 可支援許多提供輸入給 DBMS 或是從 DBMS
取得特定資料的相關資訊系統
● 資料處理語言
– 資料處理語言 (DML, data manipulation language)
控制資料庫的運作,包含資料的儲存、取用、更
新,及刪除
18
DBMS元件
● 綱目 (schema)
– 資料庫的完整定義,包含所有欄位、各資料表,
及關聯性的描述,稱之為綱目 (schema)
– 你也可以定義一或多個子綱目 (subschema)
● 實體資料儲存空間
– 資料詞典將轉換成實體資料儲存,它也包含綱目
及子綱目。
– 實體儲存庫可以是集中式,或是分散於許多不同
的位置
19
以Web為基礎的資料庫設計
● 以Web為基礎的設計之特質
– 在以 Web 為基礎的設計中,Internet 是作為資料庫
管理系統的前端或介面。網際網路科技提供了大量
的力量及彈性
– 以 Web 為基礎的系統之所以廣受採用,就是因為他
們提供簡便、符合成本效益,且遍及全球的連結
20
以Web為基礎的資料庫設計
● 網際網路術語
– Web瀏覽器 (Web browser)
– 網頁 (Web page)
– 超文件標示語言 (HTML, Hypertext Markup
Language)
– Web伺服器 (Web server)
– 網站 (Web site)
– 企業內部網路 (intranet)
21
以Web為基礎的資料庫設計
● 網際網路術語
–
–
–
–
–
企業外部網路 (extranet)
協定 (prtocols)
以 Web 為中心 (Web-centric)
用戶端 (client)
伺服器 (server)
22
以Web為基礎的資料庫設計
● 將資料庫連上 Web
– 資料庫必須連接上 Internet 或 intranet
• 中間軟體 (middleware)
• Macromedia 的 ColdFusion
23
以Web為基礎的資料庫設計
● 資料安全
– 以 Web 為基礎的資料必須完全安全,但對有權
使用的人又要易於取用
– 為達到此一目標,設計完善的系統提供三階層的
安全性:資料庫本身、Web 伺服器,及連結系
統各元件的通訊線路
24
資料設計術語
● 定
義
–實體 (entity)
–資料表 (table) 或檔案 (file)
–欄位 (field)
• 屬性 (attribute)共同欄位 (common field)
–紀錄 (record)
• 也稱作列錄 (tuple)
25
資料設計術語
● 鍵欄位 (key fields)
– 主鍵 (primary key)
•
•
•
•
組合鍵 (combination key)
複合鍵 (composite key)
接合鍵 (concatenated key)
多值鍵 (multi-valued key)
– 備選鍵 (candidate key)
• 非鍵欄位 (nonkey field)
– 外來鍵 (foreign key)
– 次級鍵 (secondary key)
26
資料設計術語
● 參照完整性 (referential integrity)
– 驗證檢查可以幫助避免資料輸入錯誤
– 參照完整性 (referential integrity) 是驗證檢查的一
種類型,它是可用來避免資料不一致及發生品質
問題的一組規則
– 在關聯式資料庫中,參照完整性是指,某個外來
鍵值除非可對應到另一個資料表的一個已存在的
主鍵值,否則不可以被輸入到資料表
27
資料關聯性
● 關聯性 (relationship) 是實體間的互動關係所產生的
邏輯連結
● 實體關聯圖 (ERD, entity-relationship diagram)
–
–
–
–
一對一關係 (one-to-one relationship) ,簡寫成 1: 1
一對多關係 (one-to-many relationship) ,簡寫成 1: M
多對多關係 (many-to-many relationship) ,簡寫成 M: N
資料維數 (cardinality)
• 資料維數標記法 (cardinality notation)
• 鴨足標記法 (crow's foot notation)
• Unified Modeling Language (UML)
28
資料關聯性
● 實體關聯圖 (ERD, entity-relationship diagram)
29
正規化 (normalization)
● 正規化 (normalization)
● 資料表設計 (table design)
● 包含四個階段:未正規化的設計、第一正規
形式、第二正規形式,及第三正規形式
● 大多數業務相關的資料庫必須設計成第三正
規形式
30
正規化 (normalization)
● 標準標記格式
– 如果你使用一套標準標記格式 (standard
notation format) 來顯示資料表的結構、欄位,
及主鍵,那麼資料表的設計會比較容易
名稱 (欄位1,欄位2,欄位3)
31
正規化 (normalization)
● 重複群組及未正規化的設計
–重複群組 (repeating group)
• 經常發生在由使用者製作的手工文件
–未正規化的設計 (unnormalized design)
32
正規化 (normalization)
● 第一正規形式
–如果資料表中不含重複群組,它就屬於第一正規形式
(1 NF, first normal form)
–要將未正規化的設計轉成 1NF,你必須先擴展主鍵以
包含重複群組的主鍵。
33
正規化 (normalization)
● 第二正規形式
– 要了解第二正規形式 (2NF) ,你必須先了解函數
相依觀念
– 如果 X 欄位的值是依欄位 Y 的值而定,則欄位
X 是函數相依 (functional dependent) 於欄位 Y
34
正規化 (normalization)
● 第二正規形式
–
將資料表從 1NF 轉換成 2NF 有一個標準程序
1. 為主鍵中的每一個欄位建立新的資料表並命名
2. 為原來主鍵各欄位的每種可能組合建立一張新資料
表
3. 將其餘的欄位與適當的主鍵放在一起
35
正規化 (normalization)
● 第二正規形式
– 有四種問題會在 1NF 的設計中找到,而不會在
2NF 中發現
•
•
•
•
考慮當因為工作需要而必須更換某特定產品說明時
1NF 資料表可能包含不一致的資料
加入新產品是個問題
刪除一項產品也是問題
36
正規化 (normalization)
● 第三正規形式
–3NF 設計可以避免仍然存在於2NF設計中的資料重複
及資料完整性問題
–如果資料表設計為 2NF,且沒有任何非鍵欄位相依於
另一個非鍵欄位,則稱此資料表設計滿足第三正規形
式 (3NF, third normal form)
37
正規化 (normalization)
● 第三正規形式
– 要將此紀錄轉換成 3NF,你必須將 2NF 紀錄中
,相依於其他非鍵欄位的所有欄位移除,將它們
放在新的資料表中,而以該非鍵欄位作為其主鍵
38
正規化 (normalization)
● 一個正規化實例
– 為了展示正規化的過程,想像一下如圖 6-24 所示的
一個大家熟悉的狀況,這是述說學校指導體制中的
幾個實體:“指導老師” (ADVISOR) 、“學生”
(STUDENT) ,及“課程” (COURSE)
– 這三個實體間的關聯性如圖 6-25 中的 ERD 所示
39
資料庫設計步驟
1. 建立初步的 ERD
2. 分配各個實體的資料要素
3. 建立所有資料表的 3NF 設計,仔細確認所
有主鍵、次級鍵,及外來鍵
4. 檢驗所有資料詞典的各個實體
● 在建立最終 ERD 及正規化資料表之後,你
可以將它們轉變成一個資料庫
40
資料庫模式
● 階層式資料庫 (hierarchical database)及網路
式資料庫 (network database)
– 在階層式資料庫 (hierarchical database) 中,資
料的組織有如族譜或是組織架構圖一樣,有許多
代表父紀錄及子紀錄的分支
– 網路式資料庫 (network database) 與階層式設計
相近,但提供較大的彈性
41
資料庫模式
● 關聯式模式 (relational model)
– 關聯式模式 (relational model) 是在 1970 年代推
出的,並且因為其彈性及處理能力很快流行起來
– 因為資料表是相互連結著,使用者可以查詢滿足
某些特殊條件的資料
– 新的實體及屬性可以隨時加入而不用重新建構整
個資料庫
42
資料庫模式
● 物件導向資料庫(OODB, object-oriented
database)
–許多系統開發人員視物件導向資料庫 設計為物件導向
分析程序的自然延伸而使用它
• 物件定義語言 (ODL, Object Definition Language)
• 物件資料庫管理組織 (ODMG, Object Database Management
Group)
• 每一個物件在 OODB 中都有唯一的物件識別碼 (object
identifier)
43
資料儲存
● 資料倉儲 (Data Warehousing)
– 資料倉儲系統允許使用者指定某些向度 (dimension)
,或特性 (characteristics)
– 沒有資料倉儲而要讓使用者萃取出散佈在不同系統
及時間區段中的特定資料將會是非常困難
– 允許使用者輕易地存取及分析資料的格式來儲存交
易資料
44
資料儲存
● 資料探勘 (data mining)
– 當你有明確又可度量的目標時資料探勘更能發揮
其功效
• 提高每次造訪平均點閱頁數 (average pages viewed
per session)
• 提高轉介客戶數量 (number of reffered customers)
• 減少成交點選次數 (clicks to close)
• 提高每次造訪成交次數 (checkout per visit)
• 提高每次成交的平均利潤 (average profit per
checkout)
45
資料儲存
● 邏輯與實體儲存
– 邏輯儲存 (logical storage)
•
•
•
•
係指透過使用者觀點所見到的資訊
邏輯資料的基本要素是字母或數值字元 (character)
資料要素 (data element) 或是資料項目 (data item)
邏輯紀錄 (logical record)
– 實體儲存 (physical storage)
• 硬體相關的
• 實體紀錄 (physical record) 或是區塊 (block)
• 區塊因數 (blocking factor)
46
資料儲存
● 資料儲存格式
–
–
–
–
–
二進位數字 (binary digits)
Bit
Byte
EBCDIC and ASCII
Unicode
47
資料儲存
● 資料儲存格式
– Binary
•
•
•
•
二進位儲存格式 (binary storage format)
整數格式 (integer format)
長整數格式 (long integer format)
也有其他二進位格式可用來有效儲存更長的數字
48
資料儲存
● 選擇一種資料儲存格式
– 在很多情況下,使用者可以選擇特定的資料儲存格
式
– 例如,當使用 Microsoft Office 時,藉由選用一種
稱為 Arial Unicode MS 的字型,你就可以將文件
、試算表,及資料庫以 Unicode 相容的格式儲存
– 視情況而選擇資料儲存格式
49
資料儲存
● 日期欄位
– 大部分日期格式都是依照國際標準組織 (ISO,
International Organization for Standardization) 所
建立的標準
– 可以很容易排序並作比較
– 絕對日期 (absolute date)
– 儲存日期欄位的最佳方法取決於特定日期要如何
列印、顯示或用以計算
50
資料控制
● 檔案與資料控制必須包含所有足以保證資料儲
存正確、完整,及安全的必要方法
● 一個設計良好的 DBMS 必須提供內建控制與
安全功能,包含子綱目、密碼、加密、稽核軌
跡檔案,與維護資料所需的備份及回復程序
51
資料控制
●
●
●
●
●
●
●
使用者 ID (user ID)
密碼 (password)
備份 (backup)
回復程序 (recovery procedure)
稽核紀錄檔 (audit log file)
稽核欄位 (audit field)
加密 (encryption)
52
本章總結
● 檔案及資料表包含會影響資訊系統的人、地點
、事,或是事件等的資料
● DBMS 設計比傳統檔案導向系統具有更強的能
力且更具彈性
53
本章總結
● 資料設計工作包含建構初步 ERD;將資料要素
指定給實體;正規化所有的資料表設計;完成
資料詞典中記載的所有檔案、紀錄,及資料要
素
● 四個基本資料庫模式是階層式、網路式、關聯
式,及物件導向式
54
本章總結
● 邏輯儲存是經由使用者的眼睛所見到的資訊,
而不論該資訊實際上組織及存放的方法及地點
● 實體儲存則是與硬體有關且涉及將二進位資料
區塊從實體媒體讀取或寫入
● 檔案及資料控管方法包含限制資料的存取、資
料加密、備份回復程序,稽核紀錄檔,及內建
稽核欄位
55
Systems Analysis & Design
5th Edition
Chapter 6 Complete