













Preview text:
  lOMoAR cPSD| 58950985
Đề tài 00: Tiny College 
1. Đặc tả yêu cầu  
Đặt vấn ề: Bài toán Tiny College yêu cầu xây dựng một hệ thống cơ sở dữ liệu cho một 
trường ại học tí hon với các chức năng liên quan ến quan lý thông tin sinh viên, giảng 
viên, phòng ban, khóa học và việc ăng ký học của sinh viên. 
Đối tượng người dùng hệ thống: Người quản lý hệ thống, giáo viên, giảng viên, sinh viên 
Yêu cầu cơ bản: Hệ thống cần áp ứng ược các chức năng sau: 
- Chức năng quản lý thông tin sinh viên 
- Chức năng quản lý thông tin giảng viên 
- Quản lý thông tin phòng ban 
- Quản lý thông tin khóa học  - Quản lý lớp học 
- Quản lý ăng ký học - Báo cáo và truy vấn 
- Quản lý người dùng Các yêu cầu cụ thể như sau 
Yêu cầu 01: Tạo CSDL Thư viện và nhập liệu cho các bảng  - Thiết kế CSDL 
- Tạo các bảng và nắm rõ mối quan hệ giữa chúng 
- Nhập liệu ể thực hiện các yêu cầu sau 
Yêu cầu 02: Đáp ứng ược các yêu cầu chức năng 
Y2.1: Quản lý thông tin sinh viên 
Hệ thống phải cho phép thêm sinh viên mới vào cơ sở dữ liệu với các thông tin 
của sinh viên như tên, ịa chỉ, ngày sinh, ngành,... Cập nhật thông tin cho sinh viên khi 
sinh viên có sự thay ổi về thông tin cá nhân. Xóa bỏ thông tin sinh viên khi cần thiết. 
Truy vấn ược thông tin sinh viên dựa trên mã sinh viên, tên.... 
Y2.2: Quản lý thông tin giảng viên 
Thêm ược thông tin giảng viên mới với các thông tin cơ bản. Cho phép chỉnh sửa 
thông tin giảng viên. Xóa thông tin giảng viên khi cần. Truy vấn thông tin giảng viên 
Y2.3: Quản lý thông tin phòng ban  
Thêm mới các thông tin cho phòng ban trên hệ thống. Chỉnh sửa thông tin phòng 
ban. Xóa thông tin phòng ban khi cần. Truy vấn thông tin phòng ban dễ dàng      lOMoAR cPSD| 58950985
Y2.4: Quản lý thông tin khóa học 
Đảm bảo ược các yếu tố thêm xem sửa xóa thông tin khóa học. Truy vấn ược khóa  học 
Y2.5: Quản lý thông tin lớp học 
Thêm lơp học mới với các thông tin mã lớp học, mã khóa học, mã giảng viên và 
thời gian học, phòng học. Cho phép chỉnh sửa các thông tin phòng học hoặc giảng viên 
giảng dạy. Xóa lớp học và truy vấn thông tin lớp học   
Y2.6: Quản lý ăng ký học 
 Hệ thống cho phép sinh viên ăng ký vào các lớp học với iều kiện sinh viên chưa ăng ký 
lớp ó và không có lịch học môn khác bị trùng. Cho phép sinh viên hủy ăng ký lớp học 
trong thời gian cho phép. Cập nhật iểm số cho sinh viên trong lớp học sau khi khóa học 
kết thúc. Truy vấn ược sinh viên ã ăng ký, lớp học ...   
Y2.7: Báo cáo và các truy vấn khác 
 Báo cáo các sinh viên theo khóa học bằng cách lấy danh sách tất cả các sinh viên ã ăng 
ký vào một khóa học cụ thể cùng với iểm số nếu có. Bác cáo khóa học theo giảng viên, 
xem ược các khóa học mà một giảng viên ang ảm nhiệm. Tính toán ược tổng tín chỉ của 
một sinh viên ã hoàn thành. Lấy ra danh sách lớp học thuộc một phòng ban cụ thể   
Y2.8: Phân chia quản lý quyền của các người dùng 
 Phân quyền các người dùng ví dụ như quản trị viên, giảng viên, sinh viên với các quyền 
hạn khác nhau. Quản trị viên có thể thêm sửa xóa bất kỳ thông tin nào trong khi giảng 
viên chỉ có thể cập nhật thông tin lớp học và iểm số còn sinh viên chỉ thể ăng ký học, 
hủy ăng ký và xem thông tin 
2. Quy tắc nghiệp vụ Mô 
tả các thực thể  
• SCHOOL: Một thực thể là một ngôi trường trực thuộc bởi Tiny  College.    SCHOOL  PK     SCHOOL_CODE       SCHOOL_NAME   FK1     PROF_NUM       lOMoAR cPSD| 58950985      
• PROFESSOR: Mỗi thực thể tượng trưng cho một giáo sư thuộc một  trong các trường học  PROF ESSOR  PK   PROF_NUM   FK1   DEPT_CODE   PROF_SPECIALTY   PROF_RANK   PROF_LNAME   PROF_FNAME   PROF_INITIAL  PROF_EMAIL    
• DEPARTMENT: Mỗi thực thể là một khoa và ược quản lí bởi một  trưởng khoa  DEP ARTMENT  PK   DEPT_CODE      DEPT_NAME   FK1  SCHOOL_CODE   FK2   PROF_NUM             lOMoAR cPSD| 58950985 • 
SEMESTER: Mỗi thực thể tượng trưng cho một học kì    SEMESTER  PK   SEMESTER_CODE     SEMESTER_YEAR   SEMESTER_TERM   SEMESTER_START_DATE   SEMESTER_END_DATE    
• COURSE: Một thực thể tượng trưng cho một môn học trong trường  C OURSE  PK   CRS_CODE   FK1   DEPT_CODE   CRS_TITLE   CRS_DESCRIPTION   CRS_CREDIT  
• STUDENT: Mỗi thực thể là một sinh viên trong Tiny College    STUDENT  PK   STU_NUM   FK1   DEPT_CODE     STU_LNAME      STU_FNAME      STU_INITIAL      STU_EMAIL  FK2   PROF_NUM       lOMoAR cPSD| 58950985 •   
ENROLL: Là thực thể tổng hợp giữa thực thể CLASS và STUDENT 
ặc trưng cho mối quan hệ Nhiều – Nhiều (M – N) giữa chúng    ENROLL  PK, FK2   CLASS_CODE   PK, FK1   STU_NUM     ENROLL_DATE   ENROLL_GRADE    
• CLASS: Mỗi thực thể tượng trưng cho lớp học ược giảng dạy bởi một 
giáo sư trong một khoảng thời gian  C LASS  PK   CLASS_CODE      CLASS_SECTION      CLASS_TIME   FK1   CRS_CODE   FK2  PROF_NUM   FK3  FK4   ROOM_CODE   SEMESTER_CODE    
• ROOM: Một thực thể là một phòng học trong Tiny College.    ROOM  PK   ROOM_CODE      ROOM_TYPE   FK1   BLDG_CODE       lOMoAR cPSD| 58950985 •   
BUILDING: Một thực thể tượng trưng cho một tòa nhà trong Tiny  College    BUILDING  PK   BLDG_CODE        BLDG_NAME   BLDG_LOCATION     Các mối quan hệ: 
- Mối quan hệ 1 – Nhiều (One to Many) 
• 1 SCHOOL có thể vận hành nhiều DEPARTMENT. Nhưng 1 
DEPARTMENT chỉ thuộc 1 SCHOOL 
• 1 DEPARTMENT có thể có nhiều STUDENT. Nhưng 1 STUDENT  chỉ thuộc 1 DEPARTMENT 
• 1 DEPARTMENT có thể có nhiều PROFESSOR. Nhưng 1 
PROFESSOR chỉ thuộc 1 DEPARTMENT 
• 1 DEPARTMENT có thể có nhiều COURSE .Nhưng 1 COURSE chỉ  thuộc 1 DEPARTMENT 
• 1 COURSE có thể có nhiều CLASS. Nhưng 1 CLASS chỉ có thể thuộc  1 COURSE 
• 1 SEMESTER có thể có nhiều CLASS. Nhưng 1 CLASS chỉ có thể  thuộc 1 SEMESTER 
• 1 PROFESSOR có thể dạy nhiều CLASS. Nhưng 1 CLASS chỉ có thể 
ược dạy bởi 1 PROFESSOR 
• 1 PROFESSOR có thể cố vấn cho nhiều STUDENT. Nhưng 1 
STUDENT chỉ có thể ược cố vấn bởi 1 PROFESSOR 
• 1 BUILDING có thể chứa nhiều ROOM. Nhưng 1 ROOM chỉ có thể 
ược chứa bởi 1 BUILDING      lOMoAR cPSD| 58950985 • 
• 1 ROOM có thể ược dùng cho nhiều CLASS. Nhưng 1 CLASS chỉ có  thể dùng bởi 1 BUILDING          lOMoAR cPSD| 58950985
- Mối quan hệ 1 – 1 (One to One) 
• 1 PROFESSOR có thể là hiệu trưởng của 1 SCHOOL. Và 1 SCHOOL 
chỉ có thể có hiệu trưởng là 1 PROFESSOR 
• 1 PROFESSOR có thể là trưởng khoa của 1 DEPARTMENT. Và 1 
DEPARTMENT chỉ có thể có trưởng khoa là 1 PROFESSOR 
- Mối quan hệ Nhiều – Nhiều (Many to Many) 
• 1 STUDENT có thể học ở nhiều CLASS. Và 1 CLASS có thể học bởi  nhiều STUDENT 
• 1 PROFESSOR có thể dạy nhiều CLASS. Và 1 CLASS có thể ược dạy 
bởi nhiều PROFESSOR (sai vì CLASS ở ây là lớp môn học/học phần 
chứ không phải lớp quản lý) 
• 1 STUDENT có thể học ở nhiều ROOM. Và 1 ROOM có thể học bởi  nhiều STUDENT 
• 1 PROFESSOR có thể dạy ở nhiều ROOM. Và 1 ROOM có thể ược  dạy bởi nhiều PROFESSOR 
• 1 PROFESSOR có thể dạy nhiều STUDENT. Và 1 STUDENT có thể 
ược dạy bởi nhiều PROFESSOR 
• 1 STUDENT có thể học nhiều COURSE. Và 1 COURSE có thể học  bởi nhiều STUDENT 
• 1 CLASS có thể học ở nhiều ROOM. Và 1 ROOM có thể học bởi nhiều  CLASS 
• 1 PROFESSOR có thể dạy nhiều COURSE. Và 1 COURSE có thể ược  dạy bởi nhiều PROFESSOR 
• 1 CLASS có thể ược tổ chức ở nhiều BUILDING. Và 1 BUILDING 
có thể tổ chức nhiều CLASS 
• 1 PROFESSOR có thể dạy ở nhiều BUILDING. Và 1 BUILDING có 
thể ược tổ chức ể dạy bởi nhiều PROFESSOR 
• 1 STUDENT có thể học ở nhiều BUILDING. Và 1 BUILDING có thể 
ược học bởi nhiều STUDENT          lOMoAR cPSD| 58950985 Đề tài 01: SaleCo 
1. Đặc tả yêu cầu  
Đặt vấn ề: Bạn là chủ của một công ty chuyên cung cấp giải pháp bán hàng và tiếp thị 
cho các doanh nghiệp. Có mục tiêu là tối ưu hóa quy trình bán hàng và tăng cường hiệu 
quả bán hàng thông qua công nghệ và dịch vụ hỗ trợ. Để quản lý yêu cầu này, bạn 
muốn xây dựng một ứng dụng ể quản lý quy trình bán hàng và tiếp thị. 
Đối tượng người dùng hệ thống: Chủ công ty, trưởng phòng kinh doanh, trưởng bộ phận 
bán hàng, nhân viên bán hàng, nhân viên tiếp thị 
Yêu cầu cơ bản: Hệ thống cần áp ứng ược các chức năng sau: 
- Quản lý thông tin người dùng 
- Quản lý thông tin ơn hàng 
- Quản lý thông tin sản phẩm và dịch vụ 
- Quản lý kênh bán hàng trực tiếp và trực tuyến 
- Thống kê và báo cáo dữ liệu bán hàng, tiếp thị 
Các yêu cầu cụ thể như sau 
Yêu cầu 01: Tạo CSDL Thư viện và nhập liệu cho các bảng  - Thiết kế CSDL 
- Tạo các bảng và nắm rõ mối quan hệ giữa chúng 
- Nhập liệu ể thực hiện các yêu cầu sau 
Yêu cầu 02: Đáp ứng ược các yêu cầu chức năng Y2.1: 
Quản lý thông tin người dùng  
- Cho phép khách hàng có thể cập nhật thông tin của bản thân 
- Cho phép nhân viên có thể cập nhật thông tin của bản thân   
Y2.2: Quản lý thông tin ơn hàng 
- Cho biết ơn hàng ang có sản phẩm gì, số lượng bao nhiêu 
- Cho biết ơn hàng ang ở trạng thái nào? (Chờ xác nhận, chờ lấy hàng, chờ  giao hàng, ã giao hàng) 
- Cho biết vị trí ơn hàng ang ở kho nào 
- Cho phép người dùng ánh giá chất lượng sau khi ã nhận hàng và thanh toán      lOMoAR cPSD| 58950985      
Y2.3: Quản lý thông tin sản phẩm 
- Cho biết sản phẩm còn hàng hay không, số lượng hàng còn ở kho là bao nhiêu 
- Cho biết sản phẩm có áp dụng ược mã giảm giá nào không 
- Cho biết sản phẩm có ang ược áp dụng chương trình giảm giá nào hay không     
Y2.4: Quản lý kênh bán hàng trực tiếp và trực tuyến  
- Cho biết doanh thu của các ơn bán hàng trực tiếp và trực tuyến   
Y2.5: Thống kê và báo cáo dữ liệu bán hàng, tiếp thị 
- Hệ thống cần cung cấp một số loại báo cáo ể các admin dễ dàng quản lí thông  tin 
- Hệ thống cần có một số báo cáo sau: 
• Báo cáo số lượng ơn hàng ã ược giao thành công 
• Báo cáo số lượng ơn hàng bị hủy bỏ 
• Báo cáo số lượng sản phẩm còn lại 
• Báo cáo danh sách những khách hàng mới 
• Báo cáo danh sách những khách hàng tiềm năng   
2. Quy tắc nghiệp vụ   Mô tả thực thể  
• CUSTOMER: Thực thể ại diện cho người mua sản phẩm.  CU STOMER  PK  CUSTOMER_ID     CUSTOMER_NAME  CUSTOMER_EMAIL    CUSTOMER_NUMBER  CUSTOMER_ADDRESS  CUSTOMER_GENDER  CUSTOMER_BANKID        lOMoAR cPSD| 58950985       lOMoAR cPSD| 58950985 • 
STAFF: Thực thể ại diện cho phía bán, cung cấp sản phẩm cho người  mua.  ST AFF  PK  STAFF_ID     STAFF_NAME  STAFF_EMAIL  STAFF_NUMBER  STORE_ID   
• PRODUCT: Thực thể ại diện cho sản phẩm hang hóa.  PR ODUCT  PK  PROD_ID        PROD_NAME  PROD_PRICE  PROD_IMP_DATE  PROD_EXP_DATE  PROD_MFG_DATE  STORE_ID  PROD_STATE       
ORDER: Thực thể tượng trưng cho các ơn hàng ược ặt bởi người mua.  O RDER  PK  ORDER_ID       lOMoAR cPSD| 58950985 •    ORDER_TIME  FK1  PROD_ID  FK2  STORE_ID  CUSTOMER_ID  STAFF_ID  ORDER_DATE 
• STORE: Thực thể tượng trưng cho các kho hang, nơi phân phối và  tiếp nhận hàng.  S TORE  PK  STORE_ID        STORE_ADDRESS  STAFF_ID  REGION_ID 
• INVOICE: Thực thể tượng trưng cho hóa ơn  IN VOICE  PK  INVOICE_ID        PROD_ID  STORE_ADDRESS  STAFF_ID  CUSTOMER_ID       
REGION: Thực thể tượng trưng cho ịa chỉ kho hàng  R EGION  PK  REGION_ID       lOMoAR cPSD| 58950985 •       PROD_ID  STORE_ID  STAFF_ID      Các mối quan hệ  
- Mối quan hệ 1 – 1 (One to One) 
• 1 REGION chỉ có 1 STORE. Và 1 STORE chỉ ứng với 1 REGION   
- Mối quan hệ 1 – Nhiều (One to Many)   
• 1 REGION có thể có nhiều STAFF. Nhưng 1 STAFF chỉ thuộc 1  REGION 
• 1 CUSTOMER có thể có nhiều INVOICE. Nhưng 1 INVOICE chỉ  ứng với 1 CUSTOMER 
• 1 STAFF có thể ưa ra nhiều INVOICE. Nhưng 1 INVOICE chỉ có ược  ưa ra bởi 1 STAFF   
- Mối quan hệ Nhiều – Nhiều (Many to Many) 
• 1 CUSTOMER có thể mua nhiều PRODUCT. Và 1 PRODUCT có thể 
ược mua bởi nhiều CUSTOMER 
• 1 STAFF có thể có nhiều CUSTOMER. Và 1 CUSTOMER có thể ược  tư vấn bởi nhiều STAFF 
• 1 STORE có nhiều PRODUCT. Và 1 PRODUCT có thể xuất hiện ở  nhiều STORE 
• 1 INVOICE có thể có nhiều PRODUT. Và 1 PRODUCT chỉ ứng với  1 INVOICE