



















Preview text:
lOMoAR cPSD| 58950985
THUYẾT MINH ĐỒ ÁN HỆ CƠ SỞ DỮ LIỆU
THUYẾT MINH ĐỒ ÁN HỆ CƠ SỞ DỮ LIỆU 1
I. ĐỀ TÀI TINY COLLEGE (ĐỀ TÀI 00). 3
I.1. MÔ TẢ LĨNH VỰC HOẠT ĐỘNG, ĐẶC TẢ YÊU CẦU CƠ BẢN. 3
I.1.1. Mô tả lĩnh vực hoạt động. 3
I.1.2. Viết đặc tả yêu cầu cơ bản. 3
I.1.2.1. Đối với người dùng cuối. 3
I.1.2.2. Đối với hệ thống. 3
I.2. MÔ TẢ QUY TẮC NGHIỆP VỤ VÀ QUAN HỆ CỦA CÁC THÀNH PHẦN TRONG TINY COLLEGE. 7
I.2.1. Các thực thể và thuộc tính trong Tiny College. 7
I.2.1.1. Giảng viên (PROFESSOR). 7
I.2.1.2. Trường trực thuộc (SCHOOL). 7
I.2.1.3. Khoa trong trường (DEPARTMENT). 8
I.2.1.4. Học kỳ trong năm (SEMESTER). 8
I.2.1.5. Khoá học (COURSE). 8 I.2.1.6. Đăng ký (ENROLL). 8 I.2.1.7. Phòng học (ROOM). 8
I.2.1.8. Sinh viên (STUDENT). 8
I.2.1.9. Tòa nhà (BUILDING). 9
I.2.1.10. Lớp học (CLASS). 9
I.2.2. Mô tả các quy tắc nghiệp vụ và quan hệ trong Tiny College. 9
I.2.2.1. Mô tả quy tắc nghiệp vụ và quan hệ giữa PROFESSOR và SCHOOL. 9 lOMoAR cPSD| 58950985
I.2.2.2. Mô tả quy tắc nghiệp vụ và quan hệ giữa DEPARTMENT và SCHOOL. 9
I.2.2.3. Mô tả quy tắc nghiệp vụ và quan hệ giữa DEPARTMENT và COURSE. 11
I.2.2.4. Mô tả quy tắc nghiệp vụ và quan hệ giữa CLASS, COURSE và SEMESTER. 12
I.2.2.5. Mô tả quy tắc nghiệp vụ và quan hệ giữa PROFESSOR và DEPARTMENT. 13
I.2.2.6. Mô tả quy tắc nghiệp vụ và quan hệ giữa PROFESSOR và CLASS. 14
I.2.2.7. Mô tả quy tắc nghiệp vụ và quan hệ giữa STUDENT, ENROLL và CLASS. 15
I.2.2.8. Mô tả quy tắc nghiệp vụ và quan hệ giữa STUDENT và DEPARTMENT. 15
I.2.2.9. Mô tả quy tắc nghiệp vụ và quan hệ giữa STUDENT và DEPARTMENT. 16
I.2.2.10. Mô tả quy tắc nghiệp vụ và quan hệ giữa BUILDING, ROOM và CLASS. 17
I.2.2.11. Bảng tổng hợp quan hệ giữa các thực thể. 17
I.2.2.12. Sơ đồ thực thể quan hệ TINY COLLEGE. 18
I. ĐỀ TÀI TINY COLLEGE (ĐỀ TÀI 00).
I.1. Mô tả lĩnh vực hoạt động, đặc tả yêu cầu cơ bản.
I.1.1. Mô tả lĩnh vực hoạt động.
- TINY COLLEGE là một trung tâm đào tạo, nghiên cứu và chuyển giao tri thức và công
nghệ đa ngành, đa lĩnh vực.
- TINY COLLEGE bao gồm nhiều trường (SCHOOL) thành viên, mỗi trường
(SCHOOL) đào tạo các ngành nghề liên quan đến một lĩnh vực chuyên sâu như Tài
chính, Kinh doanh, Nghệ thuật, Kĩ thuật, Công nghệ …
- TINY COLLEGE đào tạo dưới hình thức cung cấp đến sinh viên (STUDENT) các khóa
học (COURSE) về các môn học trong trong từ kỳ học (SEMESTER) ở các trường
(SCHOOL) thành viên. Đồng thời là cung cấp cơ sở vật chất phục vụ học tập, nghiên
cứu dưới sự hướng dẫn của các giảng viên (PROFESSOR).
I.1.2. Viết đặc tả yêu cầu cơ bản.
I.1.2.1. Đối với người dùng cuối.
- Đơn giản dễ hiểu, diễn đạt bằng ngôn ngữ tự nhiên. lOMoAR cPSD| 58950985
- Hệ thống thể hiện một cách rõ ràng các tình năng.
- Có một cơ chế truy cập thông tin rõ ràng.
- Các chức năng được ra đáp ứng hiệu quả nhu cầu của người dùng.
- Người dùng có thể tìm kiếm thông tin theo các tiêu chí sau đó tạo được các thống kê và báo cáo.
- Người dùng có thể thực hiện các tính năng như: Truy cập thông tin. Thêm thông tin. Cập nhật dữ liệu. Sửa, xóa thông tin.
Tìm kiếm thông tin theo các tiêu chí khác nhau. Thống kê các dữ liệu
I.1.2.2. Đối với hệ thống.
Yêu cầu sử dụng hệ quản trị cơ sở dữ liệu Microsoft SQL server để quản lý hệ cơ sở dữ liệu của TINY COLLEGE.
Hệ thống quản lý hệ cơ sở dữ liệu của TINY COLLEGE phải cung cấp các chức năng cơ bản bảo gồm:
- Biểu diễn các thông tin về cơ cấu tổ chức và hoạt động của Tiny College dưới dạng các thực thể.
- Lưu trữ thông tin và thuộc tính của các thực thể dưới dạng bảng hoặc biểu mẫu.
- Có thể thực hiện các thao tác xem, thêm, sửa, xóa, truy xuất dữ liệu từ các bảng biểu
mẫu trong cơ sở dữ liệu về Tiny College. - Yêu cầu đối với từng thực thể:
I.1.2.2.1. Giảng viên (PROFESSOR).
- Tạo lập bảng quản lý danh sách các giảng viên trong trường.
- Quản lý và truy xuất được thông tin cá nhân của các giảng viên.
- Quản lý và truy xuất được thông tin về các hoạt động giảng dạy và nghiên cứu của các giảng viên.
- Xem, thêm, sửa, xóa, cập nhật về danh sách, thông tin cá nhân, hoạt động của các giảng viên.
- Tạo lập được quan hệ và truy xuất được các thông tin có liên quan đến giảng viên
như trường trực thuộc, khoa trực thuộc, sinh viên hướng dẫn, các lớp giảng dạy. lOMoAR cPSD| 58950985
- Thông kê và lập được các biểu đồ theo thời gian định kỳ giữa các giảng viên về số
lớp giảng dạy trong một kỳ học, một năm, số lượng sinh viên hướng dẫn, số tiết học giảng dạy,…
I.1.2.2.2. Trường học (SCHOOL).
- Tạo lập bảng, biểu mẫu quản lý danh sách các trường.
- Quản lý và truy xuất được thông tin về tên trường, mã số của trường.
- Xem thêm, sửa, xóa, cập nhật về danh sách, thông tin của các trường.
- Tạo lập được quan hệ, truy xuất được thông tin về các giảng viên, sinh trong trường, các khoa trong trường.
- Truy xuất được số lượng giảng viên trong trường, số lượng sinh viên trong trường, …
- Truy xuất, kiểm tra được thông tin về các lớp học, khóa học trong trường.
- Truy xuất kiểm tra đ01B0ợc thông tin về các cơ sở vật chất của trường bao gồm phòng học và tòa nhà. lOMoAR cPSD| 58950985 -
Thống kê, lập được biểu đồ giữa các trường về số lượng sinh viên, số lượng giảng
viên, số lượng khóa học, số lượng lớp học, trong một khoảng thời gian cụ thể.
I.1.2.2.3. Khoa trong trường (DEPARTMENT).
- Tạo lập bảng, biểu mẫu quản lý danh sách các khoa.
- Quản lý và truy xuất được thông tin về tên khoa, mã số của khoa, trường trực thuộc.
- Xem thêm, sửa, xóa, cập nhật về danh sách, thông tin của các khoa.
- Tạo lập được quan hệ, truy xuất được thông tin về các giảng viên, sinh trong trường.
- Truy xuất được số lượng giảng viên trong khoa, số lượng sinh viên trong khoa,…
- Truy xuất, kiểm tra được thông tin về các trưởng khoa, lớp học, khóa học trong khoa.
- Thống kê, lập được biểu đồ giữa các khoa về số lượng sinh viên, số lượng giảng
viên, số lượng khóa học, số lượng lớp học, trong một khoảng thời gian cụ thể.
I.1.2.2.4. Sinh viên (STUDENT).
- Tạo lập bảng, biểu mẫu quản lý danh sách tất cả sinh viên.
- Quản lý và truy xuất được thông tin về họ tên sinh viên, mã số sinh viên, email sinh viên.
- Xem thêm, sửa, xóa, cập nhật về danh sách, thông tin của các sinh viên.
- Tạo lập được quan hệ, truy xuất được thông tin về các giảng viên hướng dẫn, danh
sách lớp học tham gia, trường theo học, khoa theo học,…
- Truy xuất được số lượng môn học đã tham gia, số lượng kì học đã tham gia,…
- Thống kê, lập được biểu đồ giữa các sinh viên về số lớp học tham gia, số lượng kì
học tham gia, số lượng khóa học, điểm số trong từng môn, từng kỳ học trong một
khoảng thời gian cụ thể.
- Đưa ra được sinh viên có điểm cao nhất, điểm thấp nhất, điểm trung bình của từng sinh viên.
I.1.2.2.5. Học kỳ (SEMESTER).
- Tạo lập bảng, biểu mẫu quản lý danh sách các kỳ học đã diễn ra.
- Quản lý và truy xuất được thông tin về lớp học, khóa học trong từng kỳ.
- Quản lý được thông tin về năm học, thời gian bắt đầu và kết thúc của từng kỳ.
Xem thêm, sửa, xóa, cập nhật về danh sách, thông tin của các kỳ học. lOMoAR cPSD| 58950985 -
- Tạo lập được quan hệ, truy xuất được thông tin về các giảng viên, sinh viên, các
khoa trong trường trong từng kỳ.
- Thống kê, lập được biểu đồ giữa các kỳ về số lượng sinh viên, số lượng giảng viên,
số lượng khóa học, số lượng lớp học, trong một khoảng thời gian cụ thể.
I.1.2.2.6. Khóa học (COURSE).
- Tạo lập bảng, biểu mẫu quản lý danh sách các khóa học đã diễn ra.
- Quản lý và truy xuất được thông tin về lớp học, sinh viên, học kỳ, giảng viên, khoa
cung cấp của từng khóa học.
- Quản lý được thông tin về mã khóa học, số lượng lớp học của khóa học, tên và mô tả về khóa học.
- Xem thêm, sửa, xóa, cập nhật về danh sách, thông tin của các khóa học.
- Tạo lập được quan hệ, truy xuất được thông tin về các giảng viên, sinh viên, các
khoa trong trường trong từng khóa học.
- Thống kê, lập được biểu đồ giữa các khóa về số lượng sinh viên, số lượng giảng
viên, số lượng lớp học trong một khoảng thời gian cụ thể.
I.1.2.2.6. Lớp học (CLASS).
- Tạo lập bảng, biểu mẫu quản lý danh sách các lớp học đã và đamg diễn ra.
- Quản lý và truy xuất được thông tin về khóa học, sinh viên, học kỳ, giảng viên, khoa
cung cấp của từng lớp học.
- Quản lý được thông tin về mã lớp học, số lượng sinh viên của lớp học, tên và mô tả về lớp học.
- Xem thêm, sửa, xóa, cập nhật về danh sách, thông tin của các lớp học.
- Tạo lập được quan hệ, truy xuất được thông tin về các giảng viên, sinh viên, các
khoa trong trường trong từng khóa học.
- Thống kê, lập được biểu đồ giữa các lớp về số lượng sinh viên, số lượng tiết học,
điểm số của sinh viên trong lớp học trong một khoảng thời gian cụ thể.
I.1.2.2.7. Đăng ký (ENROLL).
- Tạo lập bảng, biểu mẫu quản lý danh sách và số lượng các lớp học đã và số lượng sinh viên đăng ký. lOMoAR cPSD| 58950985 -
- Quản lý và truy xuất được thông tin về thời gian đăng ký và bậc đăng ký
Quản lý được thông tin về mã lớp học, số lượng sinh viên của lớp học, tên và mô tả về lớp học.
- Xem thêm, sửa, xóa, cập nhật về danh sách, thông tin của các đăng ký.
- Tạo lập được quan hệ, truy xuất được thông tin về các giảng viên, sinh viên, các khoa trong đăng ký.
I.1.2.2.8. Phòng học (ROOM).
- Tạo lập bảng, biểu mẫu quản lý danh sách và số lượng các phòng học đã và mã số phòng học.
- Quản lý và truy xuất được thông tin về loại phòng học và tòa nhà trực thuộc.
- Quản lý được thông tin về lớp học, sinh viên tại phòng học, giảng viên tại phòng học.
- Xem thêm, sửa, xóa, cập nhật về danh sách, thông tin của các phòng học.
- Tạo lập được quan hệ, truy xuất được thông tin, biểu diễn trên biểu đồ về tần suất
sử dụng của các phòng học.
I.1.2.2.9. Tòa nhà (BUILDING).
- Tạo lập bảng, biểu mẫu quản lý danh sách và số lượng các tòa nhà và mã số của toàn nhà.
- Quản lý và truy xuất được tên tòa nhà và vị trí của tòa nhà.
- Quản lý được thông tin về lớp học, sinh viên tại phòng học, giảng viên tại tòa nhà -
Xem thêm, sửa, xóa, cập nhật về danh sách, thông tin của các tòa nhà.
- Tạo lập được quan hệ, truy xuất được thông tin, biểu diễn trên biểu đồ về tần suất
sử dụng của các tòa nhà.
I.2. Mô tả quy tắc nghiệp vụ và quan hệ của các thành phần trong TINY COLLEGE.
I.2.1. Các thực thể và thuộc tính trong Tiny College.
I.2.1.1. Giảng viên (PROFESSOR).
- Mã số của giảng viên (PROF_NUM).
- Mã số của khoa trực thuộc (DEPT_CODE). lOMoAR cPSD| 58950985 -
- Số định danh công dân của giảng viên (PROF_SPECIALTY).
- Trình độ của giảng viên (PROF_RANK). lOMoAR cPSD| 58950985
- Họ tên của giảng viên (PROF_LNAME, PROF_FNAME, PROF_INITIAL).
- Thư điện tử của giảng viên (PROF_EMAIL).
I.2.1.2. Trường trực thuộc (SCHOOL).
- Mã số của trường (SCHOOL_CODE).
- Tên trường (SCHOOL_NAME).
- Mã số hiện trưởng trường (PROF_NUM).
I.2.1.3. Khoa trong trường (DEPARTMENT). - Mã số khoa (DEPT_CODE). - Tên khoa (DEPT_NAME).
- Mã trường trực thuộc (SCHOOL_CODE). - Mã số trưởng khoa (PROF_NUM).
I.2.1.4. Học kỳ trong năm (SEMESTER).
- Mã số học kỳ (SEMESTER_CODE).
- Năm của học kỳ (SEMESTER_YEAR).
- Tên học kỳ (SEMESTER_TERM).
- Ngày bắt đầu học kỳ (SEMESTER_START_DATE).
- Ngày kết thúc học kỳ (SEMESTER_END_DATE).
I.2.1.5. Khoá học (COURSE).
- Mã số của khóa học (CRS_CODE).
- Mã số khoa (DEPARTMENT) cung cấp khóa học (DEPT_CODE).
- Tên của khóa học (CRS_TITLE).
- Mô tả về khóa học (CRS_DESCRIPTION).
- Thời hạn của khóa học (CRS_CREDIT).
I.2.1.6. Đăng ký (ENROLL).
- Mã số lớp đăng kí (CLASS_CODE).
- Mã số sinh viên đăng ký học (STU_NUM).
- Ngày đăng ký (ENROLL_DATE).
- Cấp đăng ký (ENROLL_GRADE).
I.2.1.7. Phòng học (ROOM).
- Mã phòng học (ROOM_CODE). lOMoAR cPSD| 58950985
- Loại phòng học (ROOM_TYPE). - Mã số tòa nhà (BLDG_CODE).
I.2.1.8. Sinh viên (STUDENT).
- Mã số sinh viên (STU_NUM).
- Mã số khoa trực thuộc (DEPT_CODE).
- Họ tên sinh viên (STU_FNAME, STU_LNAME, STU_INITIAL).
- Thư điện tử của sinh viên (STU_EMAIL).
- Mã số giảng viên hướng dẫn (PROF_NUM).
I.2.1.9. Tòa nhà (BUILDING).
- Mã số tòa nhà (BLDG_CODE). - Tên tòa nhà (BLDG_NAME).
- Vị trí tòa nhà (BLDG_LOCATION).
I.2.1.10. Lớp học (CLASS).
- Mã lớp học (CLASS_CODE).
- Tiết học (CLASS_SECTION).
- Thời gian của lớp học (CLASS_TIME).
- Mã số của khóa học (CRS_CODE).
- Mã số giảng viên giảng dạy (PROF_NUM).
- Mã số phòng học (ROOM_CODE).
- Mã số kỳ học (SEMESTER_CODE).
I.2.2. Mô tả các quy tắc nghiệp vụ và quan hệ trong Tiny College.
I.2.2.1. Mô tả quy tắc nghiệp vụ và quan hệ giữa PROFESSOR và SCHOOL.
Tiny College (TC) được phân chia thành các trường (SCHOOL): kinh doanh, nghệ thuật
và khoa (DEPARTMENT) học, giáo dục, khoa (DEPARTMENT) học ứng dụng. Mỗi
trường (SCHOOL) được quản lý bởi một hiệu trưởng là giảng viên (PROFESSOR). Mỗi
giảng viên (PROFESSOR) chỉ có thể là hiệu trưởng của một trường (SCHOOL), và một
giảng viên (PROFESSOR) không được yêu cần là hiệu trưởng của một trường
(SCHOOL) nào khác. Do vậy, đó là mối quan hệ 1:1 giữa giảng viên (PROFESSOR) và
trường học (SCHOOL). Lưu ý rằng quan hệ thể hiện bởi cách viết (1:1) về phía
PROFESSOR và (0,1) về phía SCHOOL. lOMoAR cPSD| 58950985
I.2.2.2. Mô tả quy tắc nghiệp vụ và quan hệ giữa DEPARTMENT và SCHOOL.
Mỗi trường (SCHOOL) bao gồm một số khoa (DEPARTMENT). Ví dụ như trường kinh
doanh có khoa (DEPARTMENT) kế toán, khoa (DEPARTMENT) quản trị kinh doanh,
khoa (DEPARTMENT) kinh tế tài chính và khoa (DEPARTMENT) hệ thống thông tin máy
tính. Nhớ rằng những quy luật về quan hệ bao gồm: Số lượng nhỏ nhất của các khoa
(DEPARTMENT) mà trường (SCHOOL) điều hành là một, và số lượng khoa
(DEPARTMENT) lớn nhất là không xác định (N). Mặt khác, mỗi khoa (DEPARTMENT)
chỉ thuộc về một trường (SCHOOL) duy nhất. Do đó, quan hệ được thể hiện là (1:1). Do
đó, số lượng trường (SCHOOL) tối thiểu mà một khoa (DEPARTMENT) trực thuộc cũng
là một, cũng như số lượng tối đa. Hình I.1 minh họa hai quy tắc nghiệp vụ này.
Một lần nữa, đó là sự phù hợp về việc đánh giá lý do duy trì mốn quan hệ 1:1 giũa
PROFESSOR và SCHOOL trong mối quan hệ “PROFESSOR là hiệu trưởng của
SCHOOL”. Cần nhắc lại rằng sự tồn tại của mốn quan hệ 1:1 thường cho thấy sự xác định
không đúng các thuộc tính là thực thể. Trong trường hợp này, quan hệ 1:1 cũng dễ dàng bị
loại bỏ bởi việc tích trữ các thuộc tính của hiệu trưởng trong thực thể SCHOOL. Giải pháp
này cũng sẽ tạo ra sự dễ dàng để trả lời câu hỏi “Hiệu trưởng lài ai?” và “Thông tin xác
thực của hiệu trưởng là gì?”. Nhược điểm của giải pháp này là nó yêu cầu sao chép gấp đôi
thông tin mà đã được lưu trữ trong bảng PROFESSOR, do đó nó tạo nên một phần bất
thường . Tuy nhiên bởi vì mỗi trường (SCHOOL) chỉ được điều hành bởi duy nhất một
hiệu trưởng (PROFESSOR), vì vậy vấn đề trùng lặp thông tin là khá nhỏ. Sự lựa chọn
phương pháp tiếp cận này hay phương pháp khác phụ thuộc vào yêu cầu thông tin, tốc độ
giao dịch, và sự đánh giá của người thiết kế cơ sở dữ liệu. Nói tóm lại, đừng sử dụng mối
quan hệ 1:1 một cách đơn giản, và phải chắc chắn rằng mỗi mối quan hệ 1:1 bên trong việc
thiết kế cơ sở dữ liệu phải được chỉ ra một cách rõ ràng. lOMoAR cPSD| 58950985 Hình I.1
I.2.2.3. Mô tả quy tắc nghiệp vụ và quan hệ giữa DEPARTMENT và COURSE.
Mỗi khoa (DEPARTMENT) có thể cung cấp các môn học. Ví dụ, khoa
(DEPARTMENT) quản trị kinh doanh có có thể cung cấp môn học như Tiếp thị và quản
lý, Nguyên tắc của Marketing, Quản lý sản xuất. Các bộ phận của ERD cho trường hợp
này được thể hiện trong hình I.2. Lưu ý rằng mối quan hệ này dựa trên cách hoạt động của
Tiny College. Ví dụ, nếu như Tiny College có một số khoa (DEPARTMENT) được phân
loại “chỉ nghiên cứu” thì họ sẽ không được cung cấp các môn học. Do đó, thực thể
COURSE sẽ là tùy chọn đối với thực thể DEPARTMENT. Hình I.2 lOMoAR cPSD| 58950985
I.2.2.4. Mô tả quy tắc nghiệp vụ và quan hệ giữa CLASS, COURSE và SEMESTER.
Mối quan hệ giữa COURSE và CLASS được minh họa trong hình I.3. Tuy nhiên cần
nhắc lại rằng CLASS là 1 phần của COURSE. Nghĩa là một khoa (DEPARTMENT) có thể
cung cấp một số lớp học (CLASS) giống như khóa học cơ sở dữ liệu. Mỗi một lớp đó được
giảng dạy bở 1 giảng viên (PROFESSOR) trong một thời gian và địa điểm cụ thể. Trong
ngắn hạn, mối quan hệ 1:M được hình thành giữa COURSE và CLASS. Thêm vào đó, mỗi
lớp học (CLASS) được cung cấp trong khuôn khổ 1 kỳ học (SEMESTER). SEMESTER
xác định năm và điều kiện mà lớp học (CLASS) sẽ được cung cấp. Chú ý rằng thời gian
này khác với thời gian mà sinh viên (STUDENT) được đăng kí vào lớp học. Ví dụ sinh
viên (STUDENT) có thể đăng kí trong mùa hè và mùa thu theo nguyên tắc của lớp học
(CLASS) , gần với thời điểm cuối mùa xuân. Điều đó phụ thuộc vào việc Tiny College sắp
xếp học kỳ (SEMESTER) bắt đầu và kết thúc như thế nào trước khi tạo ra thời khóa biểu
của các lớp học (CLASS) trong một học kỳ (SEMESTER) .Vì vậy CLASS là một tùy chọn
của SEMESTER. Thiết kết này cũng giúp ích cho mục đích báo cáo. Ví dụ, bạn có thể trả
lời câu hỏi giống như: lớp học (CLASS) nào đã được cung cấp vào học kỳ (SEMESTER)
X? Hay lớp học (CLASS) nào mà sinh viên (STUDENT) Y đã học trong học kỳ
(SEMESTER) X? Bởi vì một môn học có thể tồn tại trong danh mục môn học của Tiny
College ngay cả khi nó không được đề xuất dưới dạng một lớp trong một học kỳ
(SEMESTER) nhất định. CLASS là một tùy chọn của COURSE. Do đó mối quan hệ giữa
SEMESTER, COURSE và CLASS sẽ giống như trong hình I.3. lOMoAR cPSD| 58950985 Hình I.3
I.2.2.5. Mô tả quy tắc nghiệp vụ và quan hệ giữa PROFESSOR và DEPARTMENT.
Mỗi khoa (DEPARTMENT) phải có một hoặc nhiều giảng viên (PROFESSOR) được
phân về đó. Một và chỉ một trong số những giảng viên (PROFESSOR) đó được quản lý
khoa (DEPARTMENT) đó, và không có giảng viên (PROFESSOR) nào bị yêu cầu phản
đảm nhiệm vị trí đó. Do đó, DEPARTMENT là một tùy chọn đối với PROFESSOR trong
mối quan hệ “ghế”. NhỮng mối quan hệ đó được tổng hợp lại trong các thành phần ER ở hình I.4. Hình I.4
I.2.2.6. Mô tả quy tắc nghiệp vụ và quan hệ giữa PROFESSOR và CLASS.
Mỗi giảng viên (PROFESSOR) có thể dạy tối đa 5 lớp học (CLASS) , mỗi lớp học
(CLASS) là một phần của môn học. Một giảng viên (PROFESSOR) cũng có thể nghiên
cứu hợp đồng và không dạy lớp học (CLASS) nào cả. Các thành phần ERD trong hình I.5
miêu tả những điều kiện này. lOMoAR cPSD| 58950985 Hình I.5
I.2.2.7. Mô tả quy tắc nghiệp vụ và quan hệ giữa STUDENT, ENROLL và CLASS.
Một học sinh có thế đăng kí một số lượng lớp học (CLASS) nhưng chỉ được được phép
đăng kí một lớp môn học trong thời gian đăng kí môn học. Ví dụ, trong thời gian đăng kí
môn học hiện tại, một sinh viên (STUDENT) có thể quyết định đăng kí 5 lớp học (CLASS)
gồm: Xác suất thống kê, Kế toán, Tiếng Anh, Cơ sở dữ liệu và Lịch sử - nhưng sinh viên
(STUDENT) đó không thể đăng kí cả 5 lớp Xác suất thống kê trong 1 thời điểm đăng kí
môn học. Mỗi học sinh có thể đăng kí tối đa 6 lớp môn học, và mỗi lớp có thể có đến 35
sinh viên (STUDENT), do đó tạo nên mối quan hệ M:N giữa STUDENT và CLASS. Bởi
vì 1 CLASS ban đầu có thể vẫn tồn tại dù cho không có học sinh nào đăng kí họ ccả,
STUDENT là một tùy chọn đối với CLASS trong mối quan hệ M:N. Mối quan hệ M:N này
phải được phân chia thành 2 mối quan hệ 1:M qua việc sử dụng thực thể ENROLL, thể
hiện trong hình I.6 về các thành phần của ERD. Tuy nhiên, lưu ý rằng biểu tượng tùy chọn
sẽ được thể hện bên cạnh ENROLL. Nếu một lớp học (CLASS) tồn tại nhưng không có
sinh viên (STUDENT) đăng kí vào nó, lớp học (CLASS) đó sẽ không xuất hiện trong bảng
ENROLL. Lưu ý rằng thực thể ENROLL này khá yếu: nó phụ thuộc vào sự tồn tại và (tổng
hợp ) PK bao gồm các PK của các thực thể STUDENT và CLASS. Bạn có thể them tỉ lệ
(0,6) và (0,35) bên cạnh thực thể ENROLL để phản ánh các ràng buộc về quy tắc nghiệp
vụ, giống như được thể hiện trong hình I.6. ( Gíao sư Visio không tự nhiên tạo ra có tỉ lệ
như vậy, nhưng bạn có thể sử dụng các văn bản có sẵn để hoàn thiện công việc đó.) lOMoAR cPSD| 58950985 Hình I.6
I.2.2.8. Mô tả quy tắc nghiệp vụ và quan hệ giữa STUDENT và DEPARTMENT.
Mỗi khoa (DEPARTMENT) có một số (hoặc nhiều) sinh viên (STUDENT), nhưng
người mà có chuyên ngành được xác định bởi khoa (DEPARTMENT) đó. Tuy nhiên mỗi
sinh viên (STUDENT) chỉ có duy nhất một chuyên ngành và là vì sự kết hợp một mình đối
với khoa (DEPARTMENT) đó. (Xem hình I.7). Tuy nhiên, trong môi trường (SCHOOL)
của Tiny College, điều đó là khả thi – ít nhất trong 1 thời điểm – để cho sinh viên
(STUDENT) có thể xác định đúng chuyên ngành mà họ muốn theo đuổi. Giống nhưng viêc
1 sinh viên (STUDENT) sẽ không được liên kết với một khoa. Vì đó, DEPARTMENT là
một lựa chọn đối với STUDENT. Nó có giá trị nhắc lại rằng mối quan hệ giữa các thực thể
và thực thể bản than chúng phản anh môi trường hoạt động của tố chức đó. Vì thế, quy tắc
nghiệp vụ định nghĩa lên các thành phần của ERD. Hình I.7
I.2.2.9. Mô tả quy tắc nghiệp vụ và quan hệ giữa STUDENT và PROFESSOR.
Mỗi sinh viên (STUDENT) có một người hướng dân trong khoa (DEPARTMENT) của
họ. Mỗi người hướng dẫn Mỗi người hướng dẫn sẽ đưa ra những lời khuyên cho một số
sinh viên (STUDENT). Vì đó, STUDENT là một tùy chọn đối với PROFESSOR trong mối
quan hệ “PROFESSOR hướng dẫn STUDENT”. (Xem hình I.8). lOMoAR cPSD| 58950985 Hình I.8
I.2.2.10. Mô tả quy tắc nghiệp vụ và quan hệ giữa BUILDING, ROOM và CLASS.
Như bạn thấy ở hình I.9, thực thể CLASS bao gồm thuộc tính ROOM_CODE. Đưa ra việc
nhắc đến trong hội thoại, nó rõ ràng rằng ROOM_CODE là một FK đối với thực thể khác.
Rõ ràng, bởi vì một lớp học (CLASS) chỉ được dạy tại 1 phòng học (ROOM) , nó là lí do
tại sao cho rằng ROOM_CODE trong CLASS là một FK đối với thực thể tên ROOM.
Trong trường hợp này, mỗi phòng được xác định vị trí trong tòa nhà (BUILDING) . Vì thế
ERD cuối cùng của Tiny College được tạo ra bởi sự tiếp nhận rằng BUILDING có thể bao
gồm nhiều ROOM, nhưng mỗi ROOM chỉ được tìm thấy một lần trong BUILDING, trong
thành phần ERD này, rõ ràng rằng một số tòa nhà (BUILDING) sẽ không bao gồm phòng
học (ROOM) nào cả. Ví dụ nhà kho sẽ không chứa bất kì một phòng nào được định danh cả. Hình I.9
Sử dụng tổng hợp trước đó, bạn có thể xác định những thực thể sau đây: lOMoAR cPSD| 58950985
I.2.2.11. Bảng tổng hợp quan hệ giữa các thực thể.
Mỗi khi bạn tìm ra các thực thể liên quan, bạn cần định nghĩa mối quan hệ thiết lập ban
đầu giữa chúng. Tiếp đó, bạn sẽ mô tả các thuộc tính của các thực thể. Xác định các thược
tính của các thực thế giúp bạn hiểu rõ hơn về mối quan hệ giữa các thực thể. Bảng I.1tổng
hợp lại các thành phần của ERM, và định danh các thực thể và mối quan hệ của chúng.
I.2.2.12. Sơ đồ thực thể quan hệ TINY COLLEGE.
Bạn cũng cần định nghĩa các kết nối và ràng buộc cho những mối quan hệ mới xác định
dựa trên các quy tắc nghiệp vụ. Tuy nhiên, đển tránh làm rối biểu đồ, các ràng buộc không
nên được thể hiện. Hình I.10 thể hiện Crow’s Foot ERD và hình I.11 thể hiện CHEN ERD
cho Tiny College. Lưu ý rằng đây là sự thực hiện-mô hình sẵn sàng, do đó nó thể các
ENROLL bao gồm các thực thể.
Dù vậy chúng ta cần chú trọng vào các kí hiệu Crow’s Foot để phát triển sơ đồ của
chúng ta, như đá đề cập ở phần đầu của chưng này, các kí hiệu UML cũng rất phổ biến cho
việc khái niện hóa và thực hiện mô hình hóa. Hình I.12 thể hiện khái niện lớp UML sơ đồ
cho Tiny College (lưu ý rằng các ENROOL này bao gồm các thực thể được thể hiện trong
sơ đồ của lớp này). Nếu bạn có tầm nhìn tốt, bạn sẽ biết được rằng sơ đồ lớp UML trong
minh họa I.13 và I.14 thể hiện tên thực thể và thuộc tính nhưng không xác định các thuộc
tính đơn giản chủ yếu. Lý do quay lại với nguồn gốc của UML. Sơ đồ lớp UML là một đối
tượng hướng đuọc mô hình hóa ngôn ngữ, và vì thế nó không hỗ trợ các khái niệm của
“khóa chính hoặc khóa ngoại” tìm thấy trong mối quan hệ chính của thế giới. do vậy, trong
thế giới của hướng đối tượng, đối tượng kế thừa độc nhất sự định dạnh đối tượng ở thời điểm tạo lập. lOMoAR cPSD| 58950985 Hình I.10 Hình I.11