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ể - kết hợp ER ➢ Mô hình thực thể - kết hợp mở rộng ➢ Các bước xây dựng mô hình ER ➢ Các
Trang 1Chương 4: Phân tích & thiết kế
Trang 2Mô 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ể - kết hợp (ER)
➢ Mô hình thực thể - kết hợp 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
➢ Một số vấn đề thường gặp
Trang 3Thế giới quan
HTTT cần tin học hóa Thành phần dữ liệu
Tìm hiểu và mô hình hóa
Các mô hình thiết kế
Cài đặt thành phần
dữ liệu dựa vào các
mô hình đã thiết kế
Trang 4Mô 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ể - kết hợp (ER)
➢ Mô hình thực thể - kết hợp 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
➢ Một số vấn đề thường gặp
Trang 5Thành phần dữ liệu ở mức quan niệm
➢ Dữ liệu
o 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.
o Là thành phần quan trọng chủ yếu của HTTT.
o Để 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
o 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
Trang 6Cá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)
Nét đặc trưng (characteristic) duy nhất phân biệt giữa đối tượng này và
đố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?
5 Mối quan hệ (Rlationships),
bản số (cardinality) và số ngôi
(degrees)
Các đối tượng có mối quan hệ với nhau như thế nào?
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?
Trang 7Mô 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ể - kết hợp (ER)
➢ Mô hình thực thể - kết hợp 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
➢ Một số vấn đề thường gặp
Trang 8Mô hình thực thể - kết hợp (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ể
➢ 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ố
Trang 9Giới thiệu
➢ Mô hình thực thể kết hợp (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 thiết kế dữ liệu ở
mức quan niệm
Trang 10Thự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ể: danh từ, cụm danh từ
TÊN THỰC THỂ
LOP SINHVIEN
Trang 11Thự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ể có cùng 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ể - kết hợp (ER)
có một tên, đại diện cho một tập thực thể
Trang 12Thể 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ụ: Loại thực thể SINHVIEN có các thể hiện:
o (‘SV001’, ‘Nguyen Nam’, ‘1/2/1987’,’Nam’)
o (‘SV002’, ‘Trần Nam’, ‘13/2/1987’, ‘Nam’)
Trang 13Thuộc tính của loại 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ụ: Loại 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:
SINHVIEN GioitinhHoten
MaSV
Ngaysinh Noisinh
Trang 14hay thuộc tính HOTEN(HO,TENLOT,TEN).
➢ Đ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}
Trang 15Các loại thuộc tính
➢ Thuộc tính đa hợp và đa trị có thể lồng nhau tùy ý
o 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)}
Trang 16Khó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 SINHVIEN GioitinhHoten
Trang 17➢ 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 oval hoặc hình thoi
Trang 19Thể hiện của mối kết hợp
Giảng dạy
g1 g2
m1 m2 m3
<g1,m1>
<g2,m2>
<g1,m1>
➢ 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 đó
Trang 20Số 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
Trang 21Số ngôi của mối kết hợp
GIAOVIEN Giảng dạy
Trang 22Thuộ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
Trang 23Thuộc tính của mối kết hợp
GIAOVIEN
Hocky Nam
Giảng dạy
Trang 24Bả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
Trang 25Bản số
Thuộc
Trang 27Bà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:
o Lưu trữ thông tin: Sinh viên, giáo viên, môn học, lớp học
o Xếp lớp cho sinh viên, chọn lớp trưởng cho lớp
o 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.
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.
Trang 28Mô 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ể - kết hợp (ER)
➢ Mô hình thực thể - kết hợp 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
➢ Một số vấn đề thường gặp
Trang 30➢ Định nghĩa:
o Là thực thể không có thuộc tính khóa
o 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:
➢ 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
Thực thể
Thực thể yếu
Trang 31Thực thể yếu
Co
Trang 32Mối kết hợp đệ quy
➢ Định nghĩa: là mối kết hợp được tạo thành từ cùng một
thực thể (hay một thực thể có mối kết hợp với chính nó)
➢ Ví dụ: Mỗi nhân viên có một người quản lý trực tiếp và
người quản lý đó cũng là một nhân viên
NHANVIEN
(0,n) (0,1)
QuanLy
Trang 34o Xếp lớp cho sinh viên, chọn lớp trưởng cho lớp
o Lập danh sách các môn học được mở cho một lớp trong một học kỳ
o Phân công giảng dạy: những môn học được mở cho giáo
viên
o Lưu trữ thông tin đăng ký môn học của sinh viên trên môn học được mở
Trang 35Ví dụ - Mối kết hợp mở rộng
MỞ MH
Mã MH Tên MH
Mã SV
Số học
phần
Tên sinh viên Địa chỉ
Mã lớp Tên lớp
Trang 36Cấu trúc phân cấp
➢ E là một tổng quát hóa của một nhóm các thực thể E1,
E2, , En nếu mỗi đối tượng của lớp E1, E2, , En
cũng là đối tượng của lớp E
E
Thực thể tổng quát
Các thực thể chuyên biệt
Trang 38NV - KẾ TOÁN
NV - KINH DOANH
NV - TIẾP THỊ
Trang 40Chi tiết giao
PHIẾU GIAO HÀNG
HÀNG HÓA
Chi tiết đặt
Số PGH Ngày giao
Số ĐĐH Ngày đặt
SL giao
SL đặt
Mã hàng Tên hàng ĐVTính
Mã hàng Tên hàng
(0,n) (1,n)
CHỨNG TỪ
CT CTỪ
(t,e)
Trang 41• - partial):các đối tượng của tất cả các thực thể
chuyên biệt không phủ toàn bộ tập đối tượng của thực thể tổng
quát
Trang 43Cấu trúc phân cấp
Tập tổng quát
Tập chuyên biệt
Tập tổng quát
Tập chuyên biệt
Tập chuyên biệt
Tập chuyên biệt
Tập chuyên biệt
Trang 44NV - KẾ TOÁN
NV - KINH DOANH
NV - TIẾP THỊ
Trang 46CÔNG-NHÂN
THƯỜNG-XUYÊN
Họ tên Địa chỉ
NGÀY KÝ HỢP ĐỒNG
Sự tương quan trong tập con luôn là bán phần và riêng biệt (p,e)
Trang 47Mô 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
Trang 48Các bước xây dựng mô hình ER
➢ B1 - Phân hoạch dữ liệu theo các phân hệ xử lý
➢ B2 - Xây dựng mô hình thực thể - kết hợp cho từng
Trang 49B1 - Phân hoạch dữ liệu thành các phân hệ xử lý
Tiêu chuẩn phân hoạch thường căn cứ vào tính chất chức
➢
năng, nghiệp vụ của tổ chức
Các dữ liệu của phân hệ xử lý này có khi liên quan đến dữ
➢
liệu của phân hệ xử lý kia
Thí dụ: Hệ thống kế toán có thể phân chia thành các phân hệ
➢
Phân hệ tiền tệ: thu
o – chi tiền mặt, tiền gửi ngân hàng
Phân hệ hàng hóa: mua
Phân hệ nguyên liệu: nhập
o – xuất nguyên liệu chính, nguyên liệu phụ, công cụ sản xuất
Trang 50B2 - Xây dựng mô hình thực thể - kết hợp cho
Trang 51B3 - Tổng hợp các mô hình thực thể - kết hợp từ tất các phân hệ xử lý của hệ thống ứng dụng để có một
Trang 52B3 - Tổng hợp các mô hình thực thể - kết hợp từ tất các phân hệ xử lý của hệ thống ứng dụng để có một
o 2 vật thể khác nhau mang cùng một tên
Ví dụ: Trong trường Đại học, khi sau này có phân biệt liên quan đến
•
chức năng, cùng là "NHÂN VIÊN" nhưng sẽ không phân biệt được
đó là "CÁN BỘ GIẢNG DẠY" hay "NHÂN VIÊN HÀNH
CHÁNH"
Trang 53Tạo danh mục tổng quát gồm các danh mục sau:
mối kết hợp trong một mô hình thực thể – kết hợp khác
B3 - Tổng hợp các mô hình thực thể - kết hợp từ tất các phân hệ xử lý của hệ thống ứng dụng để có một
mô hình tổng quát (tt)
Trang 54con của nhân viên thì cần quan tâm đến ngữ nghĩa của vấn đề:
đó là con của nhân viên với người vợ hoặc người chồng nào vì mỗi nhân viên có thể chưa (thậm chí không) nhưng cũng có nhiều vợ (hoặc nhiều chồng).
Trang 55B5 - Kiểm tra lần cuối
Trao đổi lại với những người có trách nhiệm và những người
➢
có liên quan đến mô hình như: lãnh đạo cơ quan, những người
sử dụng, cũng như các đồng nghiệp, những nhà tin học khác Phân tích những ý kiến này, nếu hợp lý => điều chỉnh cho phù
➢
hợp
Trang 56Mô 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
Trang 57Các phương pháp phân tích dữ liệu
Các luật căn bản phân tích quan niệm dữ liệu
Trang 58Luật căn bản phân tích dữ liệu
Trang 59Luật căn bản phân tích dữ liệu
(c) Lược đồ chuyển đổi
Trang 60Luật căn bản phân tích dữ liệu
Luật căn bản trên xuống:
Trang 61Luật căn bản phân tích dữ liệu
Luật căn bản trên xuống:
➢
Trang 62Luật căn bản phân tích dữ liệu
Luật căn bản trên xuống
CON NGƯỜI
Sinh tại
Trang 63Luật căn bản phân tích dữ liệu
Luật căn bản trên xuống
Trang 64Luật căn bản phân tích dữ liệu
Luật căn bản trên xuống
Phường Quận Thành phố
(f) ứng dụng luật T7
Năm Ngày
Ngày
Thông tin sức khoẻ
Tình trạng sức khoẻ Ngày tiêm chủng cuối
(g) ứng dụng luật T8
Trang 65Luật căn bản Lược đồ khởi điểm Lược đồ kết quả
B1: Giai đoạn Thực thể
B2: Giai đoạn mối kết hợp
B3: Giai đoạn Tổng quát hóa
(Giai đoạn Tập con)
B4: Cấu trúc các thuộc tính
Luật căn bản phân tích dữ liệu
Luật căn bản dưới lên:
➢
Trang 66Luật căn bản phân tích dữ liệu
Luật căn bản dưới lên
CON NGƯỜI NHÂN VIÊN
Trang 67Luật căn bản phân tích dữ liệu
Luật căn bản dưới lên
Đường phố Thành phố
Đường phố Thành phố
(e) Ứng dụng luật B5
Trang 68Chiến lược thiết kế lược đồ
Chiến lược trên
Lãnh vực ứng dụng
Mặt phẳng tinh chế thứ 1
Mặt phẳng tính chế thứ 2
Mặt phẳng tính chế thứ cuối cùng
Trang 69Chiến lược thiết kế lược đồ
Chiến lược trên
Thông tin về vị
trí
Liên quan đến
Lược đồ khởi tạo
Trang 70Chiến lược thiết kế lược đồ
Chiến lược trên
chủng học”
Sinh tại
Sống ở
Tinh chế lần 2
Trang 71Chiến lược thiết kế lược đồ
Chiến lược trên
chủng học”
Sinh tại Sống ở
(1,1)
Tinh chế lần cuối
Trang 72Chiến lược thiết kế lược đồ
Chiến lược trên
Lược đồ khởi tạo
Thông tin
bán BĐ
Thông tin mua BĐ
Liên
quan 2
Tinh chế lần 1
Trang 73Chiến lược thiết kế lược đồ
Chiến lược trên
BĐ
Chi tiết bán lẻ
Trang 74Chiến lược thiết kế lược đồ
Chiến lược trên
Đại lý băng đĩa”
HOÁ ĐƠN
HOÁ ĐƠN GIAO HÀNG
BĐ
Chi tiết hóa đơn
Cho
Của
Mã số Tên BĐ ĐVTính Loại Hiệu Đơn giá bán
Mã KH Tên khách hàng Điện thoại
Chi tiết đơn hàng
(0,n) (0,n)
Trang 75Chiến lược thiết kế lược đồ
Chiến lược dưới
Lãnh vực ứng dụng
Xây dựng các khái niệm cơ bản
Thu thập thêm các khái niệm cơ bản Kết hợp các khái
Lãnh vực ứng dụng cung cấp các thông tin chi tiết về cấu trúc từ: báo cáo, tập tin, sổ sách, chứng từ
Các đặc trưng của đối tượng sẽ được thu thập (thuộc tính)
Kết hợp các đặc trưng thu thập để hình thành các
Trang 76Chiến lược thiết kế lược đồ
Chiến lược dưới
Tuổi đàn ông
Chiều cao đàn
ông Tên đàn ông
Cân nặng
Tuổi phụ nữ
Chiều cao phụ
nữ Tên phụ nữ
Cân nặng phụ
nữ Tên con gái
Châu lục Tên miền Chức danh
Tên quốc gia
Dân số quốc
gia
Tên thành phố Dân số thành
phố
Trang 77Chiến lược thiết kế lược đồ
Chiến lược dưới
Chức danh
Tên con gái
Họ tên phụ nữ Tuổi phụ nữ Chiều cao phụ
nữ Cân nặng phụ nữ
phố
Trang 78Chiến lược thiết kế lược đồ
Chiến lược dưới
Xây dựng các khái niệm trừu tượng hóa hơn
ông Chức danh
PHỤ NỮ
Tên con gái
Họ tên phụ nữ Tuổi phụ nữ Chiều cao phụ
nữ Cân nặng phụ nữ
Trang 79Chiến lược thiết kế lược đồ
Chiến lược dưới
Châu lục Chức danh Tên con gái
Số năm
(0,n) (1,n)
(1,1)
Trang 80Chiến lược thiết kế lược đồ
Chiến lược trong
Lãnh vực ứng dụng
Chọn lọc các khái niệm quan trọng nhất
Tiến triển theo
“vết dầu loang”
Lược đồ khởi điểm
Lược đồ trung
gian
Các thực thể quan trọng, nổi bật của hệ thống
Lặp: phát triển thêm các khái niệm có liên kết với các khái niệm đã tồn tại
Trang 81Chiến lược thiết kế lược đồ
Chiến lược trong
Châu lục Chức danh Tên con gái
Số năm
(1,1) (0,n)
(0,n) (1,n)
Thuộc
(1,1)
Trang 82Chiến lược thiết kế lược đồ
Chiến lược trong
NKH”
NHÀ KHOA HỌC
ngữ
(0,n)
(0,n) (1,1)
Tiến triển lần một
Tiến triển lần hai
CẤP
ĐƠN SÁCH
Cung cấp
Chi tiết YC
Chi tiết đặt
Mã số
Đặt tới
Tên NCC Địa chỉ
Số đặt sách Ngày đặt Ngày giao
(1,n)
(1,1)
(1,n) (1,n)
Tiến triển Tiến triển
Cấp
(1,1) (0,n)
Trang 83Chiến lược thiết kế lược đồ
Chiến lược trong
sách NKH”
Tên NCC
PHIẾU
Số phiếu Ngày
Trị giá
Tình trạng
Ngày giao Của
Năm
SÁCH
Chi tiết phiếu
Đặt tới
Mã số
Số trang Ngôn ngữ
Cung cấp
(1,1)
(t,e)
Trang 84Chiến lược thiết kế lược đồ
Chiến lược trong phối hợp:
Trang 85Chiến lược thiết kế lược đồ
Chiến lược trong phối hợp
BĐ
Chi tiết hóa đơn
Mã số
Tên BĐ ĐVTính Loại Hiệu Đơn giá bán
Chi tiết đơn hàng
Số HĐ
Ngày HĐ
Trị giá
Số lượng Đơn giá
Số lượng đặt
(1,n)
(0,n)
(0,n) (0,n)
Tinh chế
Trang 86Chiến lược thiết kế lược đồ
Chiến lược trong phối hợp
BĐ
Mã số
Tên BĐ ĐVTính Loại
Tồn
Tồn đầu kỳ Tổng nhập
Tổng xuất Tồn tối thiểu
nhập Số lượng nhập
Đơn giá nhập
Số PN Ngày nhập
Mô tả Trị giá
(0,n) (0,n) (0,n)
(1,n)
Mô hình hóa TỒN KHO
Trang 87Loại Hiệu
NĂM
Tháng Năm
Tồn
Tồn đầu kỳ Tổng nhập
HOÁ ĐƠN
HOÁ ĐƠN GIAO HÀNG
BĐ
Chi tiết hóa đơn
Mã số Tên BĐ ĐVTính
Đơn giá bán
Chi tiết đơn hàng
Số HĐ Ngày HĐ
Trị giá
Số lượng Đơn giá
Số lượng đặt
(1,n)
(0,n)
(0,n) (0,n)
Chiến lược thiết kế lược đồ
Chiến lược trong phối hợp
Trang 88Chiến lược thiết kế lược đồ
So sánh các chiến lược:
➢
Trên xuống Các khái niệm từng
bước được tinh chế
Không có các hiệu ứng lề không mong muốn
Đòi hỏi phân tích viên phải giỏi với mức trừu tượng hóa cao lúc khởi điểm
Dưới lên Các khái niệm được
xây dựng từ các thành phần cơ bản
- Dễ dàng cho các ứng dụng có tính chất cục bộ
- Dễ dàng phát hiện ra các khái niệm mới liên quan đến các khái niệm đã có
Phân
- tích không phải chịu gánh nặng quá lớn lúc bắt đầu
Hình ảnh toàn bộ của ứng dụng chỉ được xây dựng vào giai đoạn cuối cùng
Phối hợp Phân tích từ trên
xuống các yêu cầu;
tích hợp từ dưới lên
Ti
- ếp cận theo cách “chia để trị” để giảm độ phức tạp
Đòi hỏi quyết định quan trọng về lược đồ khung tại thời điểm bắt đầu của quá