Chúng em cũng xin chân thành cảm ơn các thầy cô Khoa công nghệ thông tin trường Đại học Sư phạm Kỹ thuật TP.HCM đã dạy cho nhóm sinh viên báo cáo, những kỹ năng, kiến thức vô cùng quý bá
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ THÔNG TIN XÂY DỰNG WEBSITE GỢI Ý PHIM SỬ DỤNG CÔNG NGHỆ MERN STACK, PYTHON, NET GVHD: TS HUỲNH XUÂN PHỤNG SVTH: NGUYỄN THANH BẰNG TRẦN VĂN HÂN MINH ĐÍNH SKL009437 TP HỒ CHÍ MINH, tháng năm 2022 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM -o0o - NGUYỄN THANH BẰNG: 18110254 TRẦN VĂN HÂN MINH ĐÍNH: 18110269 Đề tài: XÂY DỰNG WEBSITE GỢI Ý PHIM SỬ DỤNG CÔNG NGHỆ MERN STACK, PYTHON, NET KHÓA LUẬN TỐT NGHIỆP KỸ SƯ CNTT GIẢNG VIÊN HƯỚNG DẪN TS HUỲNH XUÂN PHỤNG KHÓA 2018 – 2022 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Họ tên Sinh viên 1: Nguyễn Thanh Bằng MSSV: 18110254 Họ tên Sinh viên 2: Trần Văn Hân Minh Đính MSSV: 18110269 Ngành: Cơng nghệ Thông tin Tên đề tài: Xây dựng website gợi ý phim sử dụng công nghệ mern stack Họ tên Giáo viên hướng dẫn: TS HUỲNH XUÂN PHỤNG NHẬN XÉT Về nội dung đề tài khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: Tp Hồ Chí Minh, ngày 16 tháng 06 năm 2022 Giáo viên hướng dẫn (Ký & ghi rõ họ tên) CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Họ tên Sinh viên 1: Nguyễn Thanh Bằng MSSV: 18110254 Họ tên Sinh viên 2: Trần Văn Hân Minh Đính MSSV: 18110269 Ngành: Công nghệ Thông tin Tên đề tài: Xây dựng website gợi ý phim sử dụng công nghệ mern stack, python, net Họ tên Giáo viên phản biện: TS LÊ VĨNH THỊNH NHẬN XÉT Về nội dung đề tài khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: Tp Hồ Chí Minh, ngày 16 tháng 06 năm 2022 Giáo viên hướng dẫn (Ký & ghi rõ họ tên) LỜI CẢM ƠN Đầu tiên chúng em xin gửi lời cảm ơn chân thành đến TS Huỳnh Xuân Phụng người trực tiếp hướng dẫn chúng em hoàn thành đồ án này, hỗ trợ nhiệt tình, tỉ mỉ để đưa chúng em đường có tỉ lệ thành công cao nhất, dễ dàng truyền động lực cho chúng em trình chọn đề tài hướng dẫn nhận xét Nếu khơng có hướng dẫn kinh nghiệm thực tế thầy, nhóm chúng em nghĩ báo cáo khó hồn thành thời hạn mà đầy đủ chức đến Một lần chúng em xin cảm ơn thầy Chúng em xin chân thành cảm ơn thầy cô Khoa công nghệ thông tin trường Đại học Sư phạm Kỹ thuật TP.HCM dạy cho nhóm sinh viên báo cáo, kỹ năng, kiến thức vô quý báu người lập trình viên, để chúng em có đủ kiến thức hoàn thành đề tài chúng em hoàn thành ước mơ, mục tiêu lòng chúng em Do hạn chế thời gian kiến thức nhiều lo lắng khác nên không tránh khỏi việc mắc sai sót, mong nhận góp ý quý báu quý thầy cô để bổ sung kiến thức chúng em hoàn thiện cho sau Chúng em xin gửi cảm ơn chân thành kính trọng to lớn bậc sinh thành tới TS Huỳnh Xn Phụng nói riêng q thầy khoa nói chung TP.HCM, ngày 16 tháng 06 năm 2022 Nhóm sinh viên thực CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc ******* ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP Họ tên Sinh viên 1: Nguyễn Thanh Bằng MSSV: 18110254 Họ tên Sinh viên 2: Trần Văn Hân Minh Đính MSSV: 18110269 Chuyên ngành: Công nghệ phần mềm Tên đề tài: Xây dựng website gợi ý phim sử dụng công nghệ mern stack, python, net GV hướng dẫn: TS HUỲNH XUÂN PHỤNG Nhiệm vụ tiểu luận: Tìm hiểu cộng nghệ MERN Stack Tìm hiểu cơng nghệ RESTful API để xây dựng server API Tìm hiểu thuật tốn dự đốn phim theo phim Python Tìm hiểu thuật toán dự đoán phim cho người dùng C# Sử dụng MongoDB làm nơi lưu trữ sở liệu Sử dụng ExpressJS để làm giao tiếp API Sử dụng NodeJs làm backend cho hệ thống Sử dụng ReactJs làm frontend cho hệ thống Hướng dẫn cài đặt kiểm thử Đề cương viết luận văn : MỤC LỤC Chương 1: Tổng quan 1.1 Các vấn đề nghiên cứu 1.2 Các vấn đề phát sinh 1.3 Các phương pháp giải vấn đề 1.4 Đối tượng, phạm vi nghiên cứu phương pháp nghiên cứu 1.5 Kết đạt 1.6 Chưa đạt Chương 2: Khảo sát thực trạng xác định yêu cầu 2.1 Tính cấp thiết mục tiêu đề tài 2.2 Khảo sát thực trạng Chương 3: Cơ sở lý thuyết 3.1 Tổng quan Mern 3.2 Tổng quan MongoDB 3.3 Tổng quan ExpressJS 3.4 Tổng quan ReactJS 3.5 Tổng quan NodeJS 3.6 Thuật toán dự đoán phim liên quan 3.7 Thuật toán dự đoán phim cho người dùng Chương 4: Nguyên lý hoạt động 4.1 Sơ đồ hoạt động 4.2 Nguyên lý hoạt động Chương 5: Phân tích thiết kế hệ thống 5.1 Thiết kế chức 5.2 Thiết kế sở liệu 5.3 Thiết kế giao diện Chương 6: Cài đặt kiểm thử ứng dụng 6.1 Danh sách API 6.2 Kiểm thử Chương 7: Kết luận Tài liệu tham khảo KẾ HOẠCH THỰC HIỆN STT Thời gian Công việc Ghi 05/03/2022 – 17/03/2022 Thay đổi chức tìm kiếm 20/03/2022 – 10/04/2022 Thêm chức mua phim 13/04/2022 – 20/04/2022 Thay đổi phương thức toán 25/04/2022 – 05/05/2022 Chỉnh sửa giao diện Admin 07/05/2022 – 29/05/2022 Kiểm tra hệ thống 10/06/2022 – 22/06/2022 Viết báo cáo hoàn chỉnh đồ án Ngày 22 tháng 06 năm 2022 Người viết đề cương Ý kiến giáo viên hướng dẫn (ký ghi rõ họ tên) MỤC LỤC DANH MỤC CÁC TỪ VIẾT TẮT VIII CHƯƠNG 1: TỔNG QUAN 1 CÁC VẤN ĐỀ NGHIÊN CỨU CÁC VẤN ĐỀ PHÁT SINH CÁC PHƯƠNG PHÁP GIẢI QUYẾT VẤN ĐỀ ĐỐI TƯỢNG, PHẠM VI NGHIÊN CỨU VÀ PHƯƠNG PHÁP NGHIÊN CỨU KẾT QUẢ ĐẠT ĐƯỢC CHƯA ĐẠT ĐƯỢC CHƯƠNG 2: KHẢO SÁT THỰC TRẠNG VÀ XÁC ĐỊNH YÊU CẦU 2.1 KHẢO SÁT NHU CẦU XEM PHIM HIỆN NAY 2.2 CÁC TRANG WEB XEM PHIM KHẢO SÁT 2.3 TỔNG KẾT KHẢO SÁT CHƯƠNG 3: CƠ SỞ LÝ THUYẾT 11 3.1 TỔNG QUAN VỀ MERN STACK 11 3.2 TỔNG QUAN VỀ MONGODB 11 3.3 TỔNG QUAN VỀ EXPRESSJS 11 3.4 TỔNG QUAN VỀ REACTJS 11 3.5 TỔNG QUAN VỀ NODEJS 12 3.6 THUẬT TOÁN DỰ ĐOÁN PHIM LIÊN QUAN 12 3.7 THUẬT TOÁN DỰ ĐOÁN PHIM CHO NGƯỜI DÙNG 16 CHƯƠNG 4: MÔ TẢ YÊU CẦU 21 4.1 SƠ ĐỒ HOẠT ĐỘNG 21 4.2 NGUYÊN LÝ HOẠT ĐỘNG 21 4.3 SƠ ĐỒ NGHIỆP VỤ 21 CHƯƠNG 5: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 23 5.1 THIẾT KẾ CHỨC NĂNG 23 5.1.1 Thiết kế Usecase tổng quát 23 5.1.2 Thiết kế chức Đăng ký 23 5.1.3 Thiết kế chức Đăng nhập 27 5.1.4 Thiết kế chức Đăng xuất 30 5.1.5 Thiết kế chức Quên mật 32 5.1.6 Thiết kế chức Xem chi tiết phim 35 5.1.7 Thiết kế chức Xem phim 39 5.1.8 Thiết kế chức Xem trailer 43 5.1.9 Thiết kế chức Xem thông tin cá nhân 46 5.1.10 Thiết kế chức Xem hoạt động gần 49 5.1.11 Thiết kế chức Xem phim xem 53 5.1.12 Thiết kế chức Xem phim bình luận 55 5.1.13 Thiết kế chức Bình luận 57 5.1.14 Thiết kế chức Tìm kiếm 61 5.1.15 Thiết kế chức Nâng cấp gói cước xem phim 67 5.1.16 Thiết kế chức Quản lý người dùng 69 5.1.17 Thiết kế chức Thêm người dùng 71 5.1.18 Thiết kế chức Xóa người dùng 74 5.1.19 Thiết kế chức Quản lý phim 78 5.1.20 Thiết kế chức Thêm phim 79 5.1.21 Thiết kế chức Xóa phim 83