31
Bài 6: MÔ HÌNH HÓA DỮ LIỆU

Bài 6: Mô hình hóa dữ liệu

Embed Size (px)

DESCRIPTION

Tìm hiểu mô hình thực thể liên kết (Entity Relationship Modeling) và các thành phần của mô hình Tìm hiểu các mô hình mô tả tiến trình (sơ đồ tiến trình)

Citation preview

Page 1: Bài 6: Mô hình hóa dữ liệu

Bài 6:MÔ HÌNH HÓA DỮ LIỆU

Page 2: Bài 6: Mô hình hóa dữ liệu

Các bất thường khi cập nhật dữ liệu

Giải thích sự cần thiết phải chuẩn hóa dữ liệu

Tìm hiểu một số khái niệm:

Khóa của quan hệ

Phụ thuộc hàm

Tìm hiểu quy trình chuẩn hóa CSDL

Tìm hiểu 3 dạng chuẩn: 1NF, 2NF, 3NF

Trình tự chuẩn hóa theo 3 dạng chuẩn

Tìm hiểu khái niệm khử chuẩn

Hệ thống bài cũ

Các bất thường khi cập nhật dữ liệu

Giải thích sự cần thiết phải chuẩn hóa dữ liệu

Tìm hiểu một số khái niệm:

Khóa của quan hệ

Phụ thuộc hàm

Tìm hiểu quy trình chuẩn hóa CSDL

Tìm hiểu 3 dạng chuẩn: 1NF, 2NF, 3NF

Trình tự chuẩn hóa theo 3 dạng chuẩn

Tìm hiểu khái niệm khử chuẩn

Slide 6 - Mô hình hóa dữ liệu 2

Page 3: Bài 6: Mô hình hóa dữ liệu

Tìm hiểu mô hình thực thể liên kết (Entity Relationship

Modeling) và các thành phần của mô hình

Tìm hiểu các mô hình mô tả tiến trình (sơ đồ tiến trình)

Mục tiêu bài học hôm nay

Slide 6 - Mô hình hóa dữ liệu 3

Page 4: Bài 6: Mô hình hóa dữ liệu

Mô hình thực thể - liên kết được đề xuất bởi P. Chen

(1976).

Mô hình thực thể - liên kết dùng trong giai đoạn phân

tích phần mềm để xây dựng mô hình CSDL ở mức khái

niệm.

Các thành phần cơ bản của mô hình thực thể - liên kết:

Các thực thể

Các liên kết

Mô hình thực thể - liên kết

Mô hình thực thể - liên kết được đề xuất bởi P. Chen

(1976).

Mô hình thực thể - liên kết dùng trong giai đoạn phân

tích phần mềm để xây dựng mô hình CSDL ở mức khái

niệm.

Các thành phần cơ bản của mô hình thực thể - liên kết:

Các thực thể

Các liên kết

Slide 6 - Mô hình hóa dữ liệu 4

Page 5: Bài 6: Mô hình hóa dữ liệu

Mô hình thực thể - liên kết biểu diễn các thực thể, thuộc

tính và các mối liên kết giữa các thực thể

Biểu diễn mô hình thực thể - liên kết dưới dạng Sơ đồ

thực thể liên kết (Entity Relationship Diagram - ERD)

Mô hình thực thể - liên kết

Mô hình thực thể - liên kết biểu diễn các thực thể, thuộc

tính và các mối liên kết giữa các thực thể

Biểu diễn mô hình thực thể - liên kết dưới dạng Sơ đồ

thực thể liên kết (Entity Relationship Diagram - ERD)

Slide 6 - Mô hình hóa dữ liệu 5

Page 6: Bài 6: Mô hình hóa dữ liệu

Sơ đồ ERD

Các tậpthực thể

Mối quan hệ

Slide 6 - Mô hình hóa dữ liệu 6

Thuộc tính

Page 7: Bài 6: Mô hình hóa dữ liệu

Khái niệm thực thể

Là một hình ảnh cụ thể của một đối tượng quản lý trong

HTTT quản lý.

Biểu diễn thực thể bởi hình chữ nhật

Thực thể được đặc trưng bởi:

Tên thực thể

Danh sách các thuộc tính với tên gọi riêng cho mỗi thực thể và

miền giá trị của từng thuộc tính

Thuộc tính Khóa của thực thể

Thực thể

Slide 6 - Mô hình hóa dữ liệu 7

Là một hình ảnh cụ thể của một đối tượng quản lý trong

HTTT quản lý.

Biểu diễn thực thể bởi hình chữ nhật

Thực thể được đặc trưng bởi:

Tên thực thể

Danh sách các thuộc tính với tên gọi riêng cho mỗi thực thể và

miền giá trị của từng thuộc tính

Thuộc tính Khóa của thực thể

Page 8: Bài 6: Mô hình hóa dữ liệu

Ví dụ: biểu diễn thực thể nhân viên gồm các thuộc tính như sau

Khái niệm thực thể

Slide 6 - Mô hình hóa dữ liệu 8

Page 9: Bài 6: Mô hình hóa dữ liệu

Liên kết mô tả mối liên quan giữa hai hay nhiều thực

thể. Mỗi liên kết có một ý nghĩa riêng.

Biểu diễn liên kết bởi hình thoi

Mỗi liên kết được đặc trưng bởi:

Tên gọi: thường dùng động từ

Danh sách các thuộc tính (có thể có) với tên gọi riêng cho mỗi

thực thể và miền giá trị của từng thuộc tính

Số ngôi: là số thực thể tham gia vào liên kết đó

Bản số: số phần tử của thực thể tham gia vào liên kết

Khái niệm Liên kết

Liên kết mô tả mối liên quan giữa hai hay nhiều thực

thể. Mỗi liên kết có một ý nghĩa riêng.

Biểu diễn liên kết bởi hình thoi

Mỗi liên kết được đặc trưng bởi:

Tên gọi: thường dùng động từ

Danh sách các thuộc tính (có thể có) với tên gọi riêng cho mỗi

thực thể và miền giá trị của từng thuộc tính

Số ngôi: là số thực thể tham gia vào liên kết đó

Bản số: số phần tử của thực thể tham gia vào liên kết

Slide 6 - Mô hình hóa dữ liệu 9

Page 10: Bài 6: Mô hình hóa dữ liệu

Ví dụ thực thể NHANVIEN và PHONGBAN có thể có các quan hệ sau:

Một Nhân viên Làm việc tại một Phòng ban nào đó

Một Nhân viên có thể là Trưởng phòng của một Phòng ban

Khái niệm Liên kết

Slide 6 - Mô hình hóa dữ liệu 10

Page 11: Bài 6: Mô hình hóa dữ liệu

Liên kết giữa hai tập thực thể A và B có thể là:

Liên kết Một-Một (1-1)

Liên kết Một-Nhiều (1-N)

Liên kết Nhiều-Nhiều (N-N)

Khái niệm liên kết

Liên kết giữa hai tập thực thể A và B có thể là:

Liên kết Một-Một (1-1)

Liên kết Một-Nhiều (1-N)

Liên kết Nhiều-Nhiều (N-N)

Slide 6 - Mô hình hóa dữ liệu 11

Page 12: Bài 6: Mô hình hóa dữ liệu

Liên kết 1-1Một A có quan hệ với một B và ngược lại một B có quan hệ vớimột A

Liên kết 1-NMột A có quan hệ với nhiều B và một B có quan hệ với một A

Khái niệm liên kết

A Tênquan hệ

B1 1

Liên kết 1-1Một A có quan hệ với một B và ngược lại một B có quan hệ vớimột A

Liên kết 1-NMột A có quan hệ với nhiều B và một B có quan hệ với một A

Slide 6 - Mô hình hóa dữ liệu 12

A Tênquan hệ

B1 N

Page 13: Bài 6: Mô hình hóa dữ liệu

Liên kết N-NMột A có quan hệ với nhiều B, và ngược lại một B có quan hệ vớinhiều A

Khái niệm liên kết

A Quanhệ

BN N

Liên kết N-NMột A có quan hệ với nhiều B, và ngược lại một B có quan hệ vớinhiều A

Slide 6 - Mô hình hóa dữ liệu 13

Page 14: Bài 6: Mô hình hóa dữ liệu

Giải thích ý nghĩa các thành phần trong sơ đồ ERD sau:

Ví dụ

Slide 6 - Mô hình hóa dữ liệu 14

Page 15: Bài 6: Mô hình hóa dữ liệu

Xác định thực thể

Tìm tất cả các giao tác, hành động có thể xảy ra giữa hai hay nhiều

thực thể

Phân tích mối quan hệ tự nhiên để xác định số bản số

Xác định thuộc tính cho thực thể hay mối liên kết, kiểu dữ liệu, miền

giá trị, thuộc tính khóa.

Vẽ mô hình bằng cách sử dụng công cụ như Visio, UML…

Các bước để tạo một sơ đồ ERD

Xác định thực thể

Tìm tất cả các giao tác, hành động có thể xảy ra giữa hai hay nhiều

thực thể

Phân tích mối quan hệ tự nhiên để xác định số bản số

Xác định thuộc tính cho thực thể hay mối liên kết, kiểu dữ liệu, miền

giá trị, thuộc tính khóa.

Vẽ mô hình bằng cách sử dụng công cụ như Visio, UML…

Slide 6 - Mô hình hóa dữ liệu 15

Page 16: Bài 6: Mô hình hóa dữ liệu

Biểu diễn theo mô hình Chen ứng dụng quản lý hóa đơn khách hàng

Ví dụ sơ đồ ERD

Slide 6 - Mô hình hóa dữ liệu 16

Page 17: Bài 6: Mô hình hóa dữ liệu

Biểu diễn theo dạng các lược đồ quan hệ

Ví dụ sơ đồ ERD

Slide 6 - Mô hình hóa dữ liệu 17

Page 18: Bài 6: Mô hình hóa dữ liệu

Biểu diễn theo dạng IE (Information Engineering)

Ví dụ sơ đồ ERD

Slide 6 - Mô hình hóa dữ liệu 18

Page 19: Bài 6: Mô hình hóa dữ liệu

Biểu diễn theo ngôn ngữ UML

Ví dụ sơ đồ ERD

Slide 6 - Mô hình hóa dữ liệu 19

Page 20: Bài 6: Mô hình hóa dữ liệu

Slide 3 - Truy vấn cơ sở dữ liệu trên form 20

Page 21: Bài 6: Mô hình hóa dữ liệu

Sơ đồ tiến trình trong CSDL là sơ đồ biểu diễn một cách trực quan

trình tự thực hiện các chức năng và sự di chuyển của các luồng dữ

liệu trong thiết kế mô hình mức khái niệm.

Các kiểu sơ đồ tiến trình:

Sơ đồ luồng (Flowchart)

Sơ đồ phân cấp chức năng (Function Hierarchy Diagram)

Sơ đồ các làn song song (Swim Lanes Diagram)

Sơ đồ luồng dữ liệu (Data Flow Diagram)

Sơ đồ tiến trình

Sơ đồ tiến trình trong CSDL là sơ đồ biểu diễn một cách trực quan

trình tự thực hiện các chức năng và sự di chuyển của các luồng dữ

liệu trong thiết kế mô hình mức khái niệm.

Các kiểu sơ đồ tiến trình:

Sơ đồ luồng (Flowchart)

Sơ đồ phân cấp chức năng (Function Hierarchy Diagram)

Sơ đồ các làn song song (Swim Lanes Diagram)

Sơ đồ luồng dữ liệu (Data Flow Diagram)

Slide 3 - Truy vấn cơ sở dữ liệu trên form 21

Page 22: Bài 6: Mô hình hóa dữ liệu

Các bước trong tiến trình được biểu diễn bởi hình chữ nhật:

Các quyết định thực hiện trong tiến trình được biểu diễn bởi hìnhthoi

Các đường mũi tên chỉ luồng điều khiển trong tiến trình

Các điểm Bắt đầu và Kết thúc biểu diễn bởi hình chữ nhật đầu tròn:

Sơ đồ luồng (Flowchart)

Các bước trong tiến trình được biểu diễn bởi hình chữ nhật:

Các quyết định thực hiện trong tiến trình được biểu diễn bởi hìnhthoi

Các đường mũi tên chỉ luồng điều khiển trong tiến trình

Các điểm Bắt đầu và Kết thúc biểu diễn bởi hình chữ nhật đầu tròn:

Slide 6 - Mô hình hóa dữ liệu 22

Page 23: Bài 6: Mô hình hóa dữ liệu

Ví dụ:

Sơ đồ luồng (Flowchart)

Slide 6 - Mô hình hóa dữ liệu 23

Page 24: Bài 6: Mô hình hóa dữ liệu

Các chức năng được tổ chức theo kiến trúc phân cấp

Mỗi chức năng được biểu diễn bởi một hình chữ nhật

Sơ đồ phân cấp chức năng

Các chức năng được tổ chức theo kiến trúc phân cấp

Mỗi chức năng được biểu diễn bởi một hình chữ nhật

Slide 6 - Mô hình hóa dữ liệu 24

Page 25: Bài 6: Mô hình hóa dữ liệu

Mỗi bước trong tiến trình là một làn đường thẳng đứng trong sơ đồ

Mỗi quyết định ứng với mỗi bước được đặt trong phần làn đường

dành cho bước đó.

Các mũi tên chỉ ra trình tự hoặc luồng điều khiển các bước trong

tiến trình

Sơ đồ các làn song song

Mỗi bước trong tiến trình là một làn đường thẳng đứng trong sơ đồ

Mỗi quyết định ứng với mỗi bước được đặt trong phần làn đường

dành cho bước đó.

Các mũi tên chỉ ra trình tự hoặc luồng điều khiển các bước trong

tiến trình

Slide 6 - Mô hình hóa dữ liệu 25

Page 26: Bài 6: Mô hình hóa dữ liệu

Ví dụ:

Sơ đồ các làn song song

Slide 6 - Mô hình hóa dữ liệu 26

Page 27: Bài 6: Mô hình hóa dữ liệu

Các thành phần của sơ đồ luồng dữ liệu:

Các bước của tiến trình được biểu diễn bởi hình chữ nhật

Dữ liệu được biểu diễn bởi các hình chữ nhật mở

Các thực thể biểu diễn bởi các hình vuông

Các đường mũi tên biểu diễn luồng đi của dữ liệu

Sơ đồ luồng dữ liệu

Các thành phần của sơ đồ luồng dữ liệu:

Các bước của tiến trình được biểu diễn bởi hình chữ nhật

Dữ liệu được biểu diễn bởi các hình chữ nhật mở

Các thực thể biểu diễn bởi các hình vuông

Các đường mũi tên biểu diễn luồng đi của dữ liệu

Slide 6 - Mô hình hóa dữ liệu 27

Page 28: Bài 6: Mô hình hóa dữ liệu

Là sơ đồ biểu diễn các luồng dữ liệu đi qua các bước của

tiến trình.

Là sự kết hợp của sơ đồ luồng và sơ đồ phân cấp chức

năng.

Sơ đồ luồng dữ liệu thể hiện được tốt nhất các chức

năng và luồng đi của dữ liệu. Vì vậy được sử dụng nhiều

nhất.

Sơ đồ luồng dữ liệu

Là sơ đồ biểu diễn các luồng dữ liệu đi qua các bước của

tiến trình.

Là sự kết hợp của sơ đồ luồng và sơ đồ phân cấp chức

năng.

Sơ đồ luồng dữ liệu thể hiện được tốt nhất các chức

năng và luồng đi của dữ liệu. Vì vậy được sử dụng nhiều

nhất.

Slide 6 - Mô hình hóa dữ liệu 28

Page 29: Bài 6: Mô hình hóa dữ liệu

Ví dụ:

Sơ đồ luồng dữ liệu

Slide 6 - Mô hình hóa dữ liệu 29

Page 30: Bài 6: Mô hình hóa dữ liệu

Mô hình thực thể liên kết để biểu diễn mối liên kết giữa các thực thể

trong thiết kế mô hình mức khái niệm

Các thành phần chủ yếu của mô hình thực thể liên kết là:

Các thực thể

Các liên kết

Hạn chế: không thể hiện được sự di chuyển của các luồng dữ liệu.

Tổng kết bài học

Mô hình thực thể liên kết để biểu diễn mối liên kết giữa các thực thể

trong thiết kế mô hình mức khái niệm

Các thành phần chủ yếu của mô hình thực thể liên kết là:

Các thực thể

Các liên kết

Hạn chế: không thể hiện được sự di chuyển của các luồng dữ liệu.

Slide 6 - Mô hình hóa dữ liệu 30

Page 31: Bài 6: Mô hình hóa dữ liệu

Sơ đồ tiến trình để biểu diễn trình tự thực hiện các chức năng và sự di

chuyển của các luồng dữ liệu trong thiết kế mô hình mức khái niệm.

Các thành phần trong sơ đồ tiến trình: các bước của tiến trình, các

quyết định thực hiện, các luồng dữ liệu, các thực thể.

Các sơ đồ tiến trình:

Sơ đồ luồng

Sơ đồ phân cấp chức năng

Sơ đồ các làn song song

Sơ đồ luồng dữ liệu: thể hiện tốt nhất và thường được sử dụng nhất

Tổng kết bài học

Sơ đồ tiến trình để biểu diễn trình tự thực hiện các chức năng và sự di

chuyển của các luồng dữ liệu trong thiết kế mô hình mức khái niệm.

Các thành phần trong sơ đồ tiến trình: các bước của tiến trình, các

quyết định thực hiện, các luồng dữ liệu, các thực thể.

Các sơ đồ tiến trình:

Sơ đồ luồng

Sơ đồ phân cấp chức năng

Sơ đồ các làn song song

Sơ đồ luồng dữ liệu: thể hiện tốt nhất và thường được sử dụng nhất

Slide 6 - Mô hình hóa dữ liệu 31