Mô hình dữ liệu lôgicChỉ ra tổ chức của dữ liệu, không chỉ định nó được lữu trữ, tạo ra hoặc vận dụng như thế nào... Các ký hiệu của ERD có thể chỉ ra khi một trường hợp của thực thể phả
Trang 13.4 - 1
PHÂN TÍCH VÀ THIẾT KẾ HỆ
THỐNG
Chương 3 (cont) 3.4 MÔ HÌNH DỮ LIỆU
Trang 2Mô hình dữ liệu lôgic
Chỉ ra tổ chức của dữ liệu, không chỉ định nó được lữu trữ, tạo ra hoặc vận dụng như thế nào.
Trang 33.4 - 3
Sơ đồ thực thể liên kết (ERD)
Trang 53.4 - 5
Sử dụng ERD để chỉ ra các quy tắc
thương mại
Các quy tắc thông tin thương mại là các ràng buộc xảy
ra khi hệ thống đang hoạt động.
Các ký hiệu của ERD có thể chỉ ra khi một trường hợp của thực thể phải tồn tại cho một trường hợp của thực thể khác tồn tại
Một bác sỹ phải tồn tại trước khi việc bổ nhiệm bác sỹ được tạo ra
Các biểu tượng của ERD có thể chỉ ra khi một trường hợp thực thể có thể liên quan đến duy nhất một hoặc nhiều trường hợp của thực thể khác
• Một bác sỹ có thể có nhiều bệnh nhân, mỗi bệnh nhân có thể có duy nhất một bác sỹ chính
Các biểu tượng ERD chỉ ra khi tình trạng một trường hợp thực thể là tuỳ ý cho trường hợp thực thể liên quan
• Một bệnh nhân có thể hoặc không thể có bảo hiểm
Trang 63.4 - 6
Ví dụ ERD
BACSY Maso_basy
Thoigian Maso_basy Thoihan Lydo Capbac
BENHNHAN Maso_benhnhan Hoten
Diachi Dienthoai Ngaysinh
Soluongtra Ngaytra Phuongthuc
CTYBAOHIEM Ten_cty
Dienthoai Diachi Thongtinsoluoc
Trang 83.4 - 8
Thực thể
Một người, một vị trí, sự kiện hoặc điều gì đó mà dữ liệu được tập trung
Phải có nhiều sự kiện mới trở thành một thực thể
Ví dụ: Nếu công ty có duy nhất một kho hàng, kho hàng không phải là thực thể Tuy nhiên, nếu công ty có một số kho hàng, kho hàng là thực thể nếu công ty muốn lưu trữ dữ liệu về mỗi trường hợp kho hàng
Trang 93.4 - 9
Ví dụ
Ví dụ: Thực thể Trường hợp
Kho hàng Gia lâm Kho hàng Thanh xuân
Trang 103.4 -
10
Thuộc tính
Là thông tin lấy được về một thực thể
Tên thuộc tính là danh từ
Đôi khi tên thực thể được đưa vào tại bắt đầu của tên thuộc tính cho rõ ràng
Trang 11SINH VIÊN SV_Ma
SV_Ten SV_Ngay sinh
Trang 12Khoá kép bao gồm một số các thuộc tính
Một khoá có thể là ‘nhân tạo’, như khi tạo ra một số IDCác thuộc tính khoá có thể không phát triển cho đến giai đoạn thiết kế
Trang 133.4 -
13
BENHNHAN Ten_BN
Ho_BN
BENHNHAN Ma_BN
Ten_BN Ho_BN
BENHNHAN Ten_BN
Ho_BN
vào sau
Trang 15Một trường hợp trong một thực thể liên quan tới một và duy nhất một trường hợp trong thực thể liên quan (1:1)
Một trường hợp trong một thực thể liên quan tới một hoặc nhiều hơn một trường hợp trong thực thể liên quan (1:N)
Một hoặc nhiều hơn các trường hợp trong một thực thể liên quan tới một hoặc nhiều hơn các trường hợp trong thực thể liên quan (M:N)
Trang 16Not Null có nghĩa rằng trường hợp trong thực thể liên quan phải tồn tại cho trường hợp trong thực thể khác là có giá trị
Null có nghĩa rằng trường hợp trong thực thể liên quan là cần thiết cho trường hợp trong thực thể khác có giá trị
Trang 17Ten_TC Mota_TC
BACSY
Ma_BS Ten_BS Dc_BS Dt_BS Chuyenmonchinh
Chuyenmon
Ten_CM Mota_CM
Trang 183.4 -
18
Từ điển dữ liệu và siêu dữ liệu
Siêu dữ liệu là thông tin lưu trữ về các thành phần của
mô hình dữ liệu
Siêu dữ liệu được lưu trữ trong từ điển dữ liệu vì vậy
nó có thể chia sẻ bởi những người phát triển và sử dụng dọc theo SDLC
Hoàn toàn, chia sẻ từ điển dữ liệu giúp cải tiến chất lượng hệ thống dưới sự phát triển
Trang 193.4 -
19
Từ điển dữ liệu mục từ cho thực thể
bệnh nhân
Trang 203.4 - 20
Xây dựng sơ đồ thực thể liên
kết (ERD)
Trang 223.4 -
22
Xác định các thực thể
Xác định các loại chính của thông tin
Nếu có giá trị, kiểm tra các mô hình xử lý cho các kho dữ liệu, các thực thể ngoài và các luồng dữ liệuKiểm tra các đầu vào và đầu ra chủ yếu từ các ca
sử dụngXác minh rằng có nhiều hơn một trường hợp của các thực thể xảy ra trong hệ thống
Trang 233.4 -
23
Xác định các thuộc tính của thực thể mà có liên quan tới hệ thống bên dưới sự phát triển
Kiểm tra mô hình xử lý chứa các thực thể cho chi tiết trong các luồng dữ liệu và các kho dữ liệu
Kiểm tra các yêu cầu dữ liệu Phỏng vấn sự hiểu biết của người dùng Thực hiện phân tích tài liệu trong các form và các báo cáo tồn tại
Chọn các thuộc tính khoá
Trang 243.4 -
24
Xác định các mối quan hệ
Bắt đầu với một thực thể và xác định tất cả các thực thể mà nó chia sẻ các mối quan hệ
Mô tả quan hệ với cụm động từ thích hợp
Xác định các yếu tố trong một tập hợp và các phương thức bằng việc thảo luận các quy tắc thương mại với
sự hiểu biết của người dùng
Trang 253.4 -
25
Cú pháp tiên tiến
Thực thể độc lập
Có thể tồn tại không cần sự trợ giúp của thực thể khác
Sự xác định tạo ra từ các thuộc tính của riêng thực thể Các thuộc tính từ các thực thể khác không cần thiết cho các trường hợp xác định duy nhất của các thực thể đó
Trang 26Ten_Tchung Ngayphathien
Trieuchung Ten_Tchung Mota
Trang 273.4 - 27
Tính hợp lệ của ERD
Trang 28để cải tiến tổ chức của chúng
Có 3 quy tắc chuẩn hoá phổ biến
Trang 29tính lặp? Yes: Tách tất cả các thuộc tính lặp và tạo một thực thể mới chứa các thuộc tính lặp đó Cần phải thêm vào 1
quan hệ nối giữa thực thể cũ và mới No: Mô hình dữ liệu là dạng chuẩn 1 (1NF) Dạng chuẩn 1
No: Mô hình dữ liệu là dạng chuẩn 2 (2NF) Dạng chuẩn 2
No: Mô hình dữ liệu là dạng chuẩn 3 (3NF)
Dạng chuẩn 3
Trang 30Ten_KH Diachi_KH Dthoai_KH Ma_MH1 SL1, DG1, TT1 Ma_MH2
SL2, DG2, TT2
….
Trang 31Ten_KH Diachi_KH Dthoai_KH
DONG DON HANG SH_ donhang Ma_MH
SL DG TT
Trang 32SL TT
DONG DH2 Ma_MH DG
Trang 333.4 -
33
Dạng chuẩn 3 (3NF)
Tìm các thuộc tính phụ thuộc duy nhất vào thuộc tính không khoá.
Nếu thấy, tách chúng thành thực thể mới Cũng tách một số các thuộc tính tính toán
DON HANG SH_ donhang Ma_KH
Ten_KH Diachi_KH Dthoai_KH
DON HANG 1 SH_ donhang Ma_KH
DON HANG 2 Ma_KH
Ten_KH Diachi_KH Dthoai_KH
Trang 343.4 -
34
Sự tương đương giữa ERDs với DFDs
Tất cả các hoạt động phân tích có quan hệ với nhau
Các mô hình xử lý chứa 2 thành phần dữ liệu
Các luồng dữ liệu và các kho dữ liệuCác thành phần dữ liệu DFD cần phải cân bằng với các kho dữ liệu của ERD (các thực thể) và các yếu tố dữ liệu (các thuộc tính)
Nhiều công cụ CASE cung cấp các đặc trưng để kiểm tra sự thiếu cân bằng
Kiểm tra tất cả các kho dữ liệu và các yếu tố tương ứng giữa các mô hình
Dữ liệu mà không được sử dụng là không cần thiết
Dữ liệu mà có bỏ sót kết quả trong hệ thống là không đầy đủ
Trang 35ERD phải cân bằng với DFD.
Trang 363.4 -
36
Ví dụ
SACH Ma_sach Ten_sach Tacgia Nhaxuatban Namxuatban Giatien
Tienphatmatsach
Ten_sach Tacgia Nhaxuatban Namxuatban Giatien
Tienphatmatsach
SACH Ma_sach Ma_mota Tinhtrang(Y/N)