Bài giảng Phân tích và thiết kế hệ thống - Chương 3: Khởi đầu dự án - Phần 3.4 Mô hình dữ liệu
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Phân tích và thiết kế hệ thống - Chương 3: Khởi đầu dự án - Phần 3.4 Mô hình dữ liệu", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_phan_tich_va_thiet_ke_he_thong_chuong_3_khoi_dau_d.ppt
Nội dung text: Bài giảng Phân tích và thiết kế hệ thống - Chương 3: Khởi đầu dự án - Phần 3.4 Mô hình dữ liệu
- PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG Chương 3 (cont) 3.4. MÔ HÌNH DỮ LIỆU 3.4 - 1
- Một số định nghĩa Mô hình dữ liệu Là cách để biểu diễn dữ liệu sẽ được sử dụng và tạo ra bởi hệ thống Chỉ ra con người, vị trí, những dữ liệu nào được lưu trữ và các mối quan hệ giữa chúng. Mô 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. Mô hình dữ liệu vật lý Chỉ ra dữ liệu thực sự được lưu trữ trong các CSDL và File như thế nào. Chuẩn hoá là quá trình phân tích sử dụng để xác nhận tính hợp lệ của các mô hình dữ liệu. Các mô hình dữ liệu phải tương ứng với các mô hình xử lý 3.4 - 2
- Sơ đồ thực thể liên kết (ERD) 3.4 - 3
- Sơ đồ thực thể liên kết là gì? Là một bức tranh chỉ thông tin được tạo ra, lưu trữ và sử dụng bởi hệ thống Các thực thể thông thường biểu diễn tương tự các kiểu thông tin Các đường vẽ giữa các thực thể chỉ ra các quan hệ giữa dữ liệu 3.4 - 4
- 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 3.4 - 5
- Ví dụ ERD BACSY Subonhiem BENHNHAN Maso_basy Ngay Maso_benhnhan Hoten Thoigian Hoten Diachi Maso_basy Diachi Quoctich Thoihan Dienthoai Dienthoai Lydo Ngaysinh Chuyenmonchinh Capbac HOADON Lichthanhtoan CTYBAOHIEM Sohoadon Sobienlai Ten_cty Soluongbaohiem Soluongtra Dienthoai Sokhongbaohiem Ngaytra Diachi Ngaygui Phuongthuc Thongtinsoluoc Tinhtrang 3.4 - 6
- Các thành phần của ERD Thực thể: Là một người, vị trí, hoặc dữ liệu Tên thực thể Có một tên xác định Phải chứa nhiều hơn 1 trường hợp Thuộc tính: - Là đặc tính của thực thể - Được sử dụng bởi ít nhất 1 quá trình Tên thuộc tính thương mại Mối quan hệ: Chỉ ra mối liên kết giữa 2 thực thể Có 1 thực thể cha và 1 thực thể con Tên quan hệ Được mô tả bởi một động từ Có các tập hợp(1:1, 1:N, M:N) Được xác định (not null, null) 3.4 - 7
- 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. 3.4 - 8
- Ví dụ Ví dụ: Thực thể Trường hợp Kho hàng Kho hàng Đông anh Kho hàng Gia lâm Kho hàng Thanh xuân 3.4 - 9
- 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 3.4 - 10
- Ví dụ SINH VIÊN SINH VIÊN Ma sv SV_Ma Ten sv SV_Ten Ngay sinh SV_Ngay sinh 3.4 - 11
- Thuộc tính khoá Một hoặc nhiều thuộc tính có thể cung cấp như thực thể nhận dạng, xác định duy nhất mỗi trường hợp của thực thể Khoá 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ố ID Các thuộc tính khoá có thể không phát triển cho đến giai đoạn thiết kế 3.4 - 12
- Một số trường hợp khoá Khoá kép Khoá đơn Khoá được đưa vào sau BENHNHAN BENHNHAN BENHNHAN Ten_BN Ma_BN Ten_BN Ho_BN Ten_BN Ho_BN Ho_BN 3.4 - 13
- Các quan hệ Là liên kết giữa các thực thể Thực thể đầu tiên trong mối quan hệ là thực thể cha; thực thể thứ 2 trong mối quan hệ là thực thể con Các mối quan hệ sẽ có các tên động từ hoạt động Các mối quan hệ có cả chỉ dẫn 3.4 - 14
- Chỉ số trong tập hợp Chỉ số trong tập hợp Đề cập đến số lần các trường hợp trong một thực thể có thể liên quan đến các trường hợp trong một thực thể khác Mộ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) 3.4 - 15
- Phương thức Phương thức Đề cập đến dù một trường hợp của thực thể con có thể tồn tại không liên quan với trường hợp trong thực thể cha hay không Not 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ị 3.4 - 16
- Các quan hệ M:N BENHNHAN Ma_BN TrieuChung Ten_BN Ten_TC Ns_BN Mota_TC Dc_BN Dt_BN BACSY Ma_BS Chuyenmon Ten_BS Ten_CM Dc_BS Mota_CM Dt_BS Chuyenmonchinh 3.4 - 17
- 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 3.4 - 18
- Từ điển dữ liệu mục từ cho thực thể bệnh nhân 3.4 - 19
- Xây dựng sơ đồ thực thể liên kết (ERD) 3.4 - 20
- Các bước để xây dựng ERDs Xác định các thực thể Thêm các thuộc tính và các thuộc tính khoá Xác định các quan hệ 3.4 - 21
- 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ệu Kiểm tra các đầu vào và đầu ra chủ yếu từ các ca sử dụng Xá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 3.4 - 22
- Thêm thuộc tính và bổ nhiệm khoá 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á 3.4 - 23
- 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 3.4 - 24
- 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ể đó Thực thể phụ thuộc Các quan hệ khi một thực thể con thực hiện yêu cầu các thuộc tính từ thực thể cha để xác định duy nhất một trường hợp Thực thể giao nhau Tồn tại để nắm giữ một số thông tin về quan hệ mà tồn tại giữa 2 thực thể khác nhau. Điển hình, các thực thể giao nhau được đưa vào mô hình dữ liệu cho thông tin lưu trữ về 2 thực thể chia sẻ M : N mối quan hệ. 3.4 - 25
- Cú pháp tiên tiến - giải quyết quan hệ M : N BENHNHAN Trieuchung Ma_BN Ten_Tchung Ten Mota Dchi Dthoai Ngaysinh BENHNHAN Trieuchung_BN Trieuchung Ma_BN Ma_BN Ten_Tchung Ten Ten_Tchung Mota Dchi Ngayphathien Dthoai Ngaysinh 3.4 - 26
- Tính hợp lệ của ERD 3.4 - 27
- Chuẩn hoá Là kỹ thuật sử dụng cho các mô hình dữ liệu có giá trị Chuỗi các quy tắc áp dụng cho mô hình dữ liệu logic để cải tiến tổ chức của chúng Có 3 quy tắc chuẩn hoá phổ biến 3.4 - 28
- Các bước chuẩn hoá Dạng chuẩn 0 Có một số thuộc Yes: Tách tất cả các thuộc tính lặp và tạo một thực thể tính lặp? 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 Có một số thuộc Yes: Tách tất cả các thuộc tính phụ thuộc vào một phần tính phụ thuộc vào của khoá và tạo một thực thể mới chứa chúng. Cần một phần của phải thêm vào 1 quan hệ nối giữa thực thể cũ và mới khoá? No: Mô hình dữ liệu là dạng chuẩn 2 (2NF) Dạng chuẩn 2 Có một số thuộc Yes: Tách tất cả các thuộc tính phụ thuộc vào thuộc tính phụ thuộc tính ngoài khoá và tạo một thực thể mới chứa chúng. vào thuộc tính Cần phải thêm vào 1 quan hệ nối giữa thực thể cũ và ngoài khoá mới No: Mô hình dữ liệu là dạng chuẩn 3 (3NF) Dạng chuẩn 3 3.4 - 29
- Thực thể không chuẩn hoá ĐƠN HÀNG Bắt đầu với một thực thể SH_ donhang từ mô hình dữ liệu logic Ma_KH Ten_KH Diachi_KH Dthoai_KH Ma_MH1 SL1, DG1, TT1 Ma_MH2 SL2, DG2, TT2 . 3.4 - 30
- Dạng chuẩn 1 (1NF) Tìm kiếm các nhóm lặp của các thuộc tính và tách chúng thành các thực thể riêng DON HANG ĐƠN HÀNG SH_ donhang Ma_KH SH_ donhang Ten_KH Ma_KH Diachi_KH Dthoai_KH Ten_KH Diachi_KH Dthoai_KH DONG DON HANG Ma_MH1 SH_ donhang SL1, DG1, TT1 Ma_MH Ma_MH2 SL SL2, DG2, TT2 DG TT . 3.4 - 31
- Dạng chuẩn 2 (2NF) Tìm các thuộc tính mà phụ thuộc duy nhất một phần khoá . Nếu gặp, tách chúng thành thực thể mới DONG DH1 SH_ donhang Ma_MH DONG DON HANG SL SH_ donhang TT Ma_MH SL DG TT DONG DH2 Ma_MH DG 3.4 - 32
- 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 1 SH_ donhang Ma_KH DON HANG SH_ donhang Ma_KH Ten_KH Diachi_KH DON HANG 2 Dthoai_KH Ma_KH Ten_KH Diachi_KH Dthoai_KH 3.4 - 33
- 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ệu Cá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 đủ 3.4 - 34
- Tóm tắt ERD là một kỹ thuật chung nhất để vẽ các mô hình dữ liệu. Các khối xây dựng của ERD là: Các thực thể mô tả con người, vị trí, hoặc các công việc Các thuộc tính nắm giữ thông tin về thực thể Các quan hệ kết nối dữ liệu theo các thực thể Các thực thể giao nhau, độc lập, phụ thuộc phải được nhận dạng. ERD phải cân bằng với DFD. 3.4 - 35
- Ví dụ SACH Ma_sach SACH Ma_mota Ma_sach Tinhtrang(Y/N) Ten_sach Tacgia Nhaxuatban Namxuatban Giatien Tienphatmatsach MOTASACH Tinhtrang(Y/N) Ma_mota Ten_sach Tacgia Nhaxuatban Namxuatban Giatien Tienphatmatsach 3.4 - 36
- BANDOC SACHMUON SACH PHIEUTHUCHI MOTASACH 3.4 - 37