Bài giảng Kỹ thuật phần mềm ứng dụng - Chương 4: Mô hình thực thể và liên kết (Phần 2) - Các nguyên tắc thiết kế và chuyển đổi sang mô hình quan hệ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kỹ thuật phần mềm ứng dụng - Chương 4: Mô hình thực thể và liên kết (Phần 2) - Các nguyên tắc thiết kế và chuyển đổi sang mô hình quan hệ", để 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_ky_thuat_phan_mem_ung_dung_chuong_4_mo_hinh_thuc_t.pdf
Nội dung text: Bài giảng Kỹ thuật phần mềm ứng dụng - Chương 4: Mô hình thực thể và liên kết (Phần 2) - Các nguyên tắc thiết kế và chuyển đổi sang mô hình quan hệ
- Kỹ thuật phần mềm ứng dụng Chương 4 Mô hình thực thể liên kết (Phần 2) Các nguyên tắc thiết kế và chuyển đổi sang mô hình quan hệ 9/7/2017
- Nội dung chính . Các nguyên tắc thiết kế cơ bản . Cách chuyển từ mô hình thực thể liên kết sang mô hình quan hệ 3 4 2
- Nhắc lại các giai đoạn phát triển hệ thống Khảo sát hệ thống Phân tích hệ thống Thiết kế hệ thống Thu thập Phân tích Thiết kế dữ các yêu dữ liệu liệu cầu Các Kịch bản sử dụng Mô hình Mô hình thực thể quan hệ Từ điển dữ liên kết liệu 3
- Các nguyên tắc thiết kế 1. Trung thành 2. Tránh dư thừa 3. Giữ cho mô hình đơn giản 4. Chọn đúng loại liên kết 5. Chọn loại thành phần phù hợp 4
- Nguyên tắc 1: Trung thành . Luôn luôn, các phân tích và thiết kế cần phải phản ánh chân thực các mô tả của hệ thống nghiệp vụ. . Với mô hình TTLK, điều này có nghĩa là các thành phần của nó cũng phải phản ánh sự thực này. Nên đặt tên các Thực thể, Liên kết và Thuộc tính càng gần với thực tế càng tốt. 5
- Nguyên tắc 2: Tránh dư thừa . Không để tình trạng cùng một thông tin lại xuất hiện ở nhiều chỗ khác nhau trong mô hình . Có thể gộp các thực thể có thông tin chung, và kết hợp với liên kết ISA để giảm dư thừa 6
- Ví dụ: dư thừa name name addr N 1 Beers ManfBy Manfs manf Thông tin về nhà sản xuất đã xuất hiện 2 lần, ở thuộc tính và ở thực thể 7
- Ví dụ: không còn dư thừa name name addr N 1 Beers ManfBy Manfs Thông tin về nhà sản xuất chỉ còn xuất hiện đúng 1 lần 8
- Ví dụ: giảm dư thừa với liên kết ISA name dob roll# name dob Student ID addr school Person addr school company name dob emp# Student Employee Employee addr company 9
- Nguyên tắc 3: Giữ mô hình đơn giản . Không bổ sung thêm các thành phần mới khi không thực sự cần thiết. . Cần lưu ý cân bằng việc phát triển hệ thống hiện tại và nhu cầu nâng cấp hệ thống trong tương lai. 10
- Ví dụ: Thực thể không cần thiết . Trong hệ thống quản lý Khối lượng giảng dạy cho một Trường, thì có thể có thực thể Trường và Khoa, và một Trường thì có thể có nhiều Khoa. Nhưng trong hệ thống chỉ có 1 thực thể Trường nên việc tạo ra tập thực thể Trường là không cần thiết. 1 N Trường Có Khoa 11
- Nguyên tắc 4: Chọn đúng loại liên kết . Khi giữa các thực thể có thể tồn tại nhiều liên kết khác nhau, thì chỉ cần chọn các liên kết cơ bản nhất. Còn các liên kết còn lại mà có thể suy được từ các liên kết cơ bản thì nên bỏ đi. 12
- Ví dụ: Chọn đúng loại liên kết Salary title year name addr Movies Contracts Stars N length genre 1 . Liệu có cần thêm các liên kết giữa Movies và Studios Studios, cũng như giữa Movies và Stars không? . Nếu có thì liên kết name addr Contracts có cần thiết nữa không? 13
- Nguyên tắc 5: Chọn loại thành phần phù hợp . Đôi khi không dễ quyết định xem biểu diễn một thông tin dưới dạng nào của mô hình TTLK, vì dường như dạng nào cũng có thể được. Khi đó cần chọn dạng nào phù hợp nhất, mà tiêu chuẩn có thể dựa vào các nguyên tắc trên. . Cần phân biệt giữa thực thể, thuộc tính và liên kết để chọn cho phù hợp: – Thực thể có thể tồn tại độc lập và cần có thêm thông tin chi tiết cho nó (các thuộc tính). – Các thuộc tính không đứng độc lập, mà cần bổ sung, hay là bộ phận của thực thể hay liên kết nào đó. – Liên kết cũng không tồn tại độc lập, mà phụ thuộc vào các thực thể thành phần 14
- Chuyển đổi từ mô hình thực thể liên kết sang mô hình quan hệ 1. Chuyển từ thực thể sang quan hệ 2. Chuyển từ liên kết sang quan hệ 15
- Chuyển từ thực thể sang quan hệ . Quy tắc: – Tên thực thể Tên quan hệ – Các thuộc tính của thực thể Các thuộc tính của QH. name dob roll# Student (roll#, name, dob, addr, school) Student school addr 16
- Chuyển từ liên kết sang quan hệ . Chuyển liên kết nhiều ngôi thành các liên kết hai ngôi: – Coi liên kết như tập thực thể Sinh viên Sinh viên 1 N N 1 Khoa Học Học Khoa N 1 Khóa Khóa 17
- Chuyển từ liên kết sang quan hệ . Chuyển liên kết 2 ngôi: – Liên kết 1:1: nên ghép 2 thực thể này lại để thành một thực thể chung, rồi chuyển thực thể chung này thành QH – Liên kết M:N: Tên liên kết Tên quan hệ Thuộc tính của quan hệ = các thuộc tính khóa của các thực thể thành viên. – Liên kết 1:N: chỉ cần thêm thuộc tính khóa của thực thể ở đầu1 vào thực thể ở đầu N, thì liên kết này có thể được bỏ đi. 18
- Ví dụ Sinh viên (ID_SV, Tên SV); ID_SV ID_Khóa M N Khóa (ID_Khóa, Tên khóa); Sinh viên Học Khóa Học (ID_SV, ID_Khóa); Tên SV Tên khóa ID_SV ID_Lớp Sinh viên (ID_SV, Tên SV, M 1 ID_Lop); Sinh viên Học Lớp Lớp (ID_Lớp, Tên lớp); Tên SV Tên lớp 19
- Chuyển từ liên kết sang quan hệ . Với liên kết ISA: không cần phải tạo quan hệ mới cho loại liên kết này, nhưng các thực thể tham gia một cây liên kết này cần được xử lý đặc biệt theo 1 trong 3 cách như sau: – Theo góc nhìn Thực thể/Liên kết: với mỗi thực thể E trong cây liên kết, tạo một quan hệ mà chứa các thuộc tính khóa của gốc và các thuộc tính thuộc về E. – Theo cách tiếp cận hướng đối tượng: Coi các thực thể như các đối tượng thuộc về một lớp. Với mỗi cây con của cây liên kết, thì tạo ra một quan hệ mà chứa tất cả các thuộc tính của cây con đó. – Sử dụng giá trị rỗng (NULL values): tạo ra một quan hệ duy nhất bao gồm tất cả các thuộc tính của các thực thể trong cây liên kết. 20
- Ví dụ - Theo góc nhìn Thực thể/Liên kết . Chuyển cây liên kết sau: address name dob Ta sẽ có 3 quan hệ: ID Person Person(ID, name, address, dob) isa isa Student(ID, roll#, school) roll# emp# Employee(ID, emp#, Student Employee company) school company 21
- Ví dụ - Theo Hướng đối tượng . Cây liên kết trên có 4 cây con: – Một mình Person – Person và Student – Person và Employee – Cả 3 tập thực thể . Từ đó ta sẽ có 4 quan hệ: – Person(ID, name, address, dob) – PersonS(ID, name, address, dob, roll#, school) – PersonE(ID, name, address, dob, emp#, company) – PersonSE(ID, name, address, dob, roll#, school , emp#, company) 22
- Ví dụ - Sử dụng giá trị NULL . Từ cây liên kết, ta tạo ra 1 quan hệ duy nhất: Person(ID, name, address, dob, roll#, school , emp#, company)) 23
- Tóm tắt chương . Các thành phần cơ bản của mô hình thực thể liên kết . Các nguyên tắc xây dựng mô hình . Các phương pháp chuyển đổi từ mô hình TTLK sang mô hình quan hệ. 24