PHÂN TÍCH THIẾT KẾ THÀNH PHẦN DỮ LIỆU __ MÔ HÌNH HÓA DỮ LIỆU MỨC QUAN NIỆM 1 Mục tiêu • Hiểu các khái niệm trong việc mô hình hóa dữ liệu ở mức quan niệm: Mô hình quan niệm dữ liệu (conceptual data model), mô hình thực thể - liên kết (entity-relationship model), loại thực thể (entity type), thể hiện thực thể (entity instance), thuộc tính (attribute), khóa dự tuyển (candidate key), thuộc tính đa trị (multivalued attribute), mối kết hợp (relationship), số ngôi của mối kết hợp (degree), bản số của mối kết hợp (cardinality), loại thực thể kết hợp (associative entity). • Vẽ được mô hình thực thể - mối kết hợp. • Hiểu vai trò của việc mô hình hóa dữ liệu trong giai đoạn phân tích (analysis) và thiết kế (design) một hệ thống thông tin. • Phân biệt được các thành phần trong mô hình thực thể kết hợp.
• Nắm rõ quy tắc và các bước xây dựng mô hình thực thể kết hợp. 2 Thế giới quan HTTT cần tin học hóa Thành phần dữ liệu Cài đặt thành phần dữ liệu dựa vào các Tìm hiểu và mô mô hình đã thiết kế hình hóa Các mô hình thiết kế Nhóm chuyên gia phân Nhóm lập trình tích thiết kế Hệ quản trị CSDL CSDL của HTTT cần tin học hóa 3 Mô hình hóa dữ liệu mức quan niệm ØKhái niệm về thành phần dữ liệu mức quan niệm • Mô hình thực thể - liên kết (ER) • Mô hình thực thể - liên kết mở rộng • Các bước xây dựng mô hình ER • Các phương pháp phân tích dữ liệu • Các quy tắc mô hình hóa dữ liệu 4 Khái niệm về TPDL mức quan niệm • Dữ liệu là tập hợp các ký hiệu xây dựng nên những thông tin phản ánh các mặt của tổ chức, là thành phần quan trọng chủ yếu của HTTT. Để thông tin phản ánh chính xác, đầy đủ và kịp thời các khía cạnh dữ liệu, cần phải nghiên cứu cách thức, phương pháp nhằm nhận biết, tổ chức, lưu trữ dữ liệu nhằm xử lý và khai thác hiệu quả nhất • Mô hình dữ liệu là tập hợp các khái niệm dùng để diễn tả tập các đối tượng dữ liệu cũng như những mối quan hệ giữa chúng trong hệ thống thông tin cần tin học hóa. Nó được xem là cầu nối giữa thế giới thực với mô hình cơ sở dữ liệu bên trong máy tính.
Khi một mô hình dữ liệu mô tả một tập hợp các khái niệm từ thế giới thực, ta gọi đó là mô hình quan niệm dữ liệu. 5 Các loại câu hỏi thường dùng Loại câu hỏi Câu hỏi người dùng hệ thống (System Users) và người quản lý doanh nghiệp (Business Managers) 1. Thực thể dữ liệu Doanh nghiệp cần lưu trữ dữ liệu gì? (dữ liệu về con người (people), (Data entities) nguyên vật liệu (material), …). Số lượng dữ liệu cần lưu trữ là bao nhiêu? 2.
Khóa dự tuyển Nét đặc trưng (characteristic) duy nhất phân biệt giữa đối tượng này và (Candidate key) đối tượng khác trong cùng một loại là gì? Đặc trưng này có thay đổi theo thời gian và có bị mất đi khi đối tượng vẫn còn tồn tại hay không? 3. Thuộc tính Những nét đặc trưng cơ bản của đối tượng là gì? (Attributes) 4. Bảo mật Người dùng thực hiện những thao tác gì trên dữ liệu? (thao tác (Security control) thêm/xóa/sửa dữ liệu)? Những ai được quyền sử dụng dữ liệu? Ai có vai trò thiết lập các giá trị hợp lệ cho dữ liệu? 5. Mối quan hệ (Rlationships), Các đối tượng có mối quan hệ với nhau như thế nào? bản số (cardinality) và số ngôi (degrees) 6.
Ràng buộc toàn vẹn Người dùng có những quy định, điều kiện ràng buộc gì trên dữ liệu? (Integrity rules), bản số tối thiểu và bản số tối đa (minimum and maximum cardinality) 6 Mô hình hóa dữ liệu mức quan niệm • Khái niệm về thành phần dữ liệu mức quan niệm ØMô hình thực thể - liên kết (ER) • Mô hình thực thể - liên kết mở rộng • Các bước xây dựng mô hình ER • Các phương pháp phân tích dữ liệu • Các quy tắc mô hình hóa dữ liệu 7 Mô hình thực thể - liên kết (ER) • Giới thiệu • Thực thể, thể hiện của thực thể • Thuộc tính của thực thể • Khoá của thực thể • Mối kết hợp, thể hiện của mối kết hợp • Thuộc tính của mối kết hợp • Bản số 8 Giới thiệu • Mô hình thực thể liên kết (Entity-Relationship Model viết tắc ER) được CHEN giới thiệu năm 1976. • Mô hình ER được sử dụng nhiều trong phân tích thiết kế dữ liệu ở mức quan niệm. 9 Thực thể • Định nghĩa: Thực thể (Entity Type) biểu diễn lớp các đối tượng hay sự vật của thế giới thực tồn tại cụ thể cần được quản lý. • Ví dụ : SINHVIEN, LOP, MONHOC, … • Ký hiệu: TÊN THỰC THỂ • Tên thực thể: danh từ, cụm danh từ Ví dụ: SINHVIEN LOP 10 Thực thể - Loại thực thể • Sự khác biệt quan trọng giữa loại thực thể (entity types) và thể hiện thực thể (entity instances).
• Loại thực thể là một tập các thực thể chia sẻ các thuộc tính (properties) hoặc các đặc tính (characteristics) chung. • Mỗi loại thực thể trong mô hình thực thể - liên kết (ER) có một tên, đại diện cho một tập thực thể. 11 Thể hiện của thực thể • Định nghĩa: là một đối tượng cụ thể của một thực thể. • Mỗi loại thực thể có nhiều thể hiện thực thể được lưu trữ trong cơ sở dữ liệu • Ví dụ: Thực thể SINHVIEN có các thể hiện: – (‘SV001’, ‘Nguyen Nam’, ‘1/2/1987’,’Nam’) – (‘SV002’, ‘Trần Nam’, ‘13/2/1987’, ‘Nam’) 12 Thuộc tính của thực thể • Định nghĩa: thuộc tính là những tính chất đặc trưng của thực thể cần lưu trữ.
• Ví dụ: Thực thể SINHVIEN có các thuộc tính: Mã sinh viên, họ tên, giới tính, ngày sinh, nơi sinh • Ký hiệu: MaSV Hoten SINHVIEN Gioitinh Ngaysinh Noisinh 13 Các loại thuộc tính • Đơn trị (Simple): mỗi thực thể chỉ có một giá trị ứng với các thuộc tính. Ví dụ: MaSV,TenSV • Đa hợp (Composite): thuộc tính có thể được tạo thành từ nhiều thành phần. • Đa trị (Multi-valued): thuộc tính có thể có nhiều giá trị đối với một thực thể. Ví dụ: BANGCAP ký hiệu {BANGCAP} 14 Các loại thuộc tính • Tóm lại, các thuộc tính đa hợp và đa trị có thể lồng nhau tùy ý.
– Ví dụ: thuộc tính BANGCAP của HOCVIEN là một thuộc tính đa hợp được ký hiệu bằng {BANGCAP(TRUONGCAP,NAM,KETQUA, CHUYENNGANH)} 15 Khóa của thực thể • Khóa của thực thể là tập thuộc tính nhận diện thực thể. • Căn cứ vào giá trị của khóa có thể xác định duy nhất một đối tượng cụ thể (thể hiện). • Ký hiệu: Khóa có 1 thuộc tính Khóa có nhiều thuộc tính • Ví dụ: – Mỗi sinh viên có một mã số duy nhất => Khoá của thực thể SINHVIEN là Mã sinh viên MaSV Hoten SINHVIEN Gioitinh Ngaysinh Noisinh 16 Mối kết hợp • Định nghĩa: mối kết hợp là sự kết hợp giữa hai hay nhiều thực thể • Ví dụ: giữa hai thực thể HOCVIEN và LOP có mối kết hợp THUOC • Tên mối kết hợp: là động từ hoặc cụm động từ • Ký hiệu: bằng một hình thoi HOCVIEN LOP Thuộc 17 Mối kết hợp • Giữa hai thực thể có thể tồn tại nhiều hơn một mối kết hợp. • Ví dụ Thuộc HOCVIEN LOP Là lớp trưởng 18 Thể hiện của mối kết hợp Là tập hợp không trùng lặp các thể hiện của các thực thể tham gia vào mối kết hợp đó.
Giảng GIÁO VIÊN MÔN HỌC (1,n) dạy (0,n) <g1,m1> m1 g1 <g2,m2> m2 g2 <g1,m1> m3 Không hợp lệ do trùng lặp 19 Số ngôi của mối kết hợp • Số ngôi của mối kết hợp là số thực thể tham gia vào mối kết hợp đó. • Ví dụ 1: Mối kết hợp Thuộc kết hợp 2 thực thể HOCVIEN và LOP nên có số ngôi là 2 => đây còn gọi là mối kết hợp nhị phân • Ví dụ 2: Mối kết hợp Giảng dạy kết hợp 3 thực thể GIAOVIEN, MONHOC, LOP nên có số ngôi là 3 => đây còn gọi là mối kết hợp đa phân 20 Số ngôi của mối kết hợp HOCVIEN LOP MONHOC LOP Giảng dạy GIAOVIEN 21 Thuộc tính của mối kết hợp • Thuộc tính của mối kết hợp bao gồm các thuộc tính khoá của các thực thể tham gia vào mối kết hợp đó. Ngoài ra còn có thể có thêm những thuộc tính bổ sung khác. • Ví dụ: Mối kết hợp Giảng dạy giữa ba thực thể GIAOVIEN, MONHOC và LOP có các thuộc tính là Magv,Mamh,Malop, ngoài ra còn có thuộc tính riêng là Hocky, Nam 22 Thuộc tính của mối kết hợp LOP MONHOC Giảng dạy Hocky Nam GIAOVIEN 23 Bản số • Mối kết hợp thể hiện liên kết giữa các thực thể, mỗi liên kết được gọi là một nhánh.
• Định nghĩa: bản số của nhánh là số lượng tối thiểu và số lượng tối đa các thể hiện mà một đối tượng cụ thể của thực thể thuộc nhánh đó tham gia vào mối kết hợp. • Ký hiệu: (bản số tối thiểu, bản số tối đa) • Ví dụ: Thực thể Hocvien và Lop có mối kết hợp Thuoc. 24 Bản số Thuộc (1,1) (1,n) HOCVIEN LOP 25 Bản số Thuộc (1,1) (1,n) HOCVIEN LOP (0,1) (1,1) Là lớp trưởng 26 Bài tập - Xây dựng mô hình ER • Xây dựng mô hình ER cho CSDL quản lý giáo vụ gồm có các chức năng sau: – Lưu trữ thông tin: Sinh viên , giáo viên, môn học, lớp học – Xếp lớp cho sinh viên, chọn lớp trưởng cho lớp – Phân công giảng dạy: giáo viên dạy lớp nào với môn học gì, ở học kỳ, năm học nào. – Lưu trữ kết quả thi: học viên thi môn học nào, lần thi thứ mấy, điểm thi bao nhiêu.
27 Mô hình hóa dữ liệu mức quan niệm • Khái niệm về thành phần dữ liệu mức quan niệm • Mô hình thực thể - liên kết (ER) ØMô hình thực thể - liên kết mở rộng • Các bước xây dựng mô hình ER • Các phương pháp phân tích dữ liệu • Các quy tắc mô hình hóa dữ liệu 28 Mô hình ER mở rộng • Thực thể yếu • Mối kết hợp đệ quy • Mối kết hợp mở rộng • Cấu trúc phân cấp - Chuyên biệt hoá / Tổng quát hóa 29 Thực thể yếu • Định nghĩa: – Là thực thể không có thuộc tính khóa – Phải tham gia trong một mối kết hợp xác định trong đó có một thực thể chủ. • Ký hiệu: Thực thể • Ví dụ: thực thể LYLICH tham gia trong mối kết hợp Co với thực thể SINHVIEN là thực thể yếu.