Đồ án: Xây dựng hệ thống quản lí bán vé xem phim tích hợp khuyến nghị

Đồ án xây dựng website quản lí bán vé xem phim online, tích hợp hệ thống gợi ý phim thông minh và chatbot hỗ trợ khách hàng trên nền tảng ReactJS.

Trường đại học

Đại học Công nghệ Thông tin

Chuyên ngành

Công nghệ Phần mềm

Người đăng

Ẩn danh

Thể loại

Đồ án

2022

134
1
0

Phí lưu trữ

35 Point

Tóm tắt

I. Tổng quan về hệ thống bán vé xem phim tích hợp gợi ý thông minh

Hệ thống bán vé xem phim tích hợp gợi ý thông minh là một ứng dụng web hiện đại được xây dựng nhằm cải thiện trải nghiệm của khách hàng khi đặt vé xem phim trực tuyến. Đồ án này kết hợp các công nghệ tiên tiến như ReactJS, ExpressJSJWT để tạo ra một nền tảng an toàn, hiệu quả và thân thiện với người dùng. Hệ thống không chỉ cung cấp chức năng đặt vé cơ bản mà còn tích hợp Chatbot hỗ trợ khách hàngRecommend system để gợi ý phim phù hợp với sở thích của từng người dùng. Mục tiêu chính của đồ án là xây dựng một ứng dụng hoàn chỉnh với giao diện thân thiện, bố cục hợp lí và bảo mật cao, đồng thời hỗ trợ mở rộng trong tương lai.

1.1. Mục tiêu và phạm vi của đồ án

Đồ án hướng tới việc xây dựng website quản lí bán vé xem phim với các tính năng cốt lõi bao gồm xem thông tin phim, đặt vé, thanh toán, bình luận và đánh giá. Phạm vi của hệ thống bao gồm ba nhóm người dùng chính: Admin quản lí toàn bộ dữ liệu, Manager quản lí phim và rạp chiếu, Censor kiểm duyệt bình luận, và Customer sử dụng dịch vụ. Hệ thống tích hợp tìm kiếm nâng cao với nhiều bộ lọc và Recommend system để cá nhân hóa trải nghiệm người dùng.

1.2. Công nghệ và công cụ sử dụng

Đồ án sử dụng ReactJS cho phía frontend tạo giao diện động, ExpressJS cho backend xử lý logic ứng dụng, và JWT đảm bảo bảo mật xác thực. Chatbot được tích hợp để tư vấn và tra cứu thông tin trực tuyến, giúp khách hàng nhanh chóng tìm kiếm thông tin cần thiết. Recommend system sử dụng dữ liệu hành vi người dùng để gợi ý phim liên quan, nâng cao tỷ lệ chuyển đổi.

II. Kiến trúc và các chức năng chính của hệ thống

Kiến trúc hệ thống được thiết kế theo mô hình client-server, với phía client là ứng dụng web ReactJS và phía server xử lý các yêu cầu qua ExpressJS. Hệ thống quản lí dữ liệu bao gồm quản lí thông tin phim, lịch chiếu, cụm rạp, nhân viên, bình luận và đơn hàng. Mỗi nhóm người dùng có quyền hạn khác nhau được bảo vệ bằng JWT authentication. Chatbot tư vấn hoạt động 24/7 để giải đáp thắc mắc khách hàng, trong khi Recommend system phân tích hành vi người dùng để đưa ra gợi ý cá nhân hóa. Hệ thống còn cho phép khách hàng bình luận, đánh giá phim và các bình luận được kiểm duyệt trước khi công khai.

2.1. Phân quyền người dùng và quản lí dữ liệu

Hệ thống phân chia quyền hạn người dùng thành nhiều cấp độ: Admin có quyền cao nhất, quản lí toàn bộ hệ thống và nhân viên; Manager quản lí nội dung phim, lịch chiếu và rạp; Censor kiểm duyệt bình luận; Staff hỗ trợ khách hàng; Customer sử dụng dịch vụ. Quản lí dữ liệu bao gồm cơ sở dữ liệu phim, người dùng, đơn hàng, bình luận được bảo vệ bởi JWT token đảm bảo an toàn.

2.2. Chatbot và hệ thống gợi ý thông minh

Chatbot hỗ trợ khách hàng được tích hợp để trả lời các câu hỏi thường gặp, tra cứu thông tin phim, rạp chiếu và giá vé. Recommend system sử dụng thuật toán gợi ý dựa trên lịch sử xem phim, đánh giá và hành vi người dùng để đề xuất các phim phù hợp. Hệ thống này giúp tăng tỷ lệ chuyển đổicải thiện trải nghiệm khách hàng.

III. Đối tượng sử dụng và lợi ích của hệ thống

Đối tượng sử dụng hệ thống rất đa dạng, bao gồm khách hàng muốn xem thông tin phim và đặt vé, nhân viên quản lí rạp, kiểm duyệt bình luận, và các quản trị viên. Khách hàng có thể dễ dàng tìm kiếm phim, xem đánh giá, bình luận, đặt vé và thanh toán trực tuyến. Chatbot 24/7 cung cấp hỗ trợ tức thì, giải đáp thắc mắc mà không cần chờ đợi. Hệ thống gợi ý thông minh giúp khách hàng khám phá các bộ phim mới phù hợp với sở thích cá nhân, nâng cao sự hài lòngđộ trung thành khách hàng. Admin có công cụ mạnh mẽ để quản lí toàn bộ hoạt động, thống kê doanh thu và báo cáo hiệu suất, từ đó đưa ra quyết định kinh doanh tốt hơn.

3.1. Lợi ích cho khách hàng cuối cùng

Khách hàng được hưởng lợi từ giao diện thân thiện, tìm kiếm nhanh chóng, Chatbot tư vấn giải đáp mọi thắc mắc, và hệ thống gợi ý khám phá phim hay. Quy trình đặt vé và thanh toán đơn giản, an toàn với JWT bảo mật. Bình luận, đánh giá giúp cộng đồng chia sẻ trải nghiệm xem phim.

3.2. Giá trị cho doanh nghiệp quản lí rạp

Doanh nghiệp được lợi từ quản lí tập trung các rạp, phim, nhân viên, và thống kê doanh thu chi tiết. Hệ thống gợi ý tăng tỷ lệ bán vé, Chatbot giảm chi phí hỗ trợ khách hàng. Kiểm duyệt bình luận bảo vệ danh tiếng, còn khả năng mở rộng cho phép phát triển thêm tính năng mới trong tương lai.

IV. Phương pháp thực hiện và kết quả mong đợi

Phương pháp thực hiện của đồ án bao gồm nhiều bước: phân tích yêu cầu từ các ứng dụng tương tự, khảo sát ý kiến người dùng để hiểu nhu cầu thực tế. Thiết kế hệ thống tuân theo quy trình phát triển web hiện đại, sử dụng các công nghệ ReactJS, ExpressJS, JWTtích hợp Chatbot, Recommend system. Kết quả mong đợi của đồ án là một ứng dụng web hoàn chỉnh, đáp ứng đầy đủ chức năng về đặt vé, gợi ý phim và hỗ trợ khách hàng. Website có giao diện đẹp, hiệu suất cao, bảo mật tốt và quan trọng nhất là khả năng mở rộng để phát triển thêm các tính năng tiên tiến trong tương lai như thanh toán đa cách, tích hợp VR hay AI nâng cao.

4.1. Quy trình phân tích và thiết kế hệ thống

Nhóm thực hiện phân tích các ứng dụng tương tự như Tix, CGV Online để rút kinh nghiệm. Khảo sát ý kiến người dùng thực tế giúp hiểu rõ nhu cầu thị trường. Thiết kế hệ thống bao gồm ER diagram cho CSDL, use case diagram cho chức năng, wireframe cho giao diện. Kiến trúc được chọn là client-server với ReactJSExpressJS đảm bảo scalability.

4.2. Kết quả và thành tựu của đồ án

Đồ án tạo ra một ứng dụng web chuyên nghiệp với đầy đủ tính năng đặt vé, gợi ý phim, Chatbot hỗ trợ. Giao diện thân thiện, màu sắc hài hòa, bố cục hợp lí dễ sử dụng. Bảo mật cao với JWT authentication. Hệ thống có thể mở rộng dễ dàng để thêm tính năng mới, là hành trang quý báu cho sự nghiệp phát triển phần mềm.

28/12/2025

Trích đoạn nội dung tài liệu

Chương 1 GIỚI THIỆU TỔNG QUAN ĐỀ TÀI 1.1 Lý do chọn đề tài Khách quan: Trong cuộc sống hiện đại ngày nay, các hoạt động giải trí ngày càng được trú trọng. Trong số đó, xem phim là một hoạt động không thể không đề cập đến. Khách hàng thường đến các rạp chiếu phim, chọn phim và tiến hành thanh toán. Nhưng trong thời đại phát triển, nhu cầu của họ ngày càng cao, họ cần các chức năng xem đánh giá, giới thiệu về bộ phim để lựa chọn được phim ưng ý nhất, thanh toán online để tiết kiệm thời gian nhất.

Vấn đề đó đòi hỏi các công ty phải có các hệ thống đáp ứng được nhu cầu khách hàng. Nắm bắt được vấn đề này, nhóm chúng em tiến hành xây dựng một website để người dùng có thể truy cập nhanh chóng mà không cần tải về điện thoại, họ có thể xem hình ảnh, trailer, đánh giá từ những người xem trước để có thể chọn được phim ưng ý nhất và thanh toán online một cách nhanh chóng. Hơn thế nữa, khách hàng cần được gợi ý những bộ phim được cho rằng phù hợp với cá nhân họ một cách tự động dựa vào những trải nghiệm cá nhân họ trên hệ thống và cả những người dùng tương tự. Ngoài ra, hệ thống cần gợi ý những phim liên quan đến những vấn đề đang nổi cộm trong xã hội.

Chủ quan: Trong suốt quá trình học tập, nhóm chúng em muốn được trải nghiệm các đề tài khác nhau và hoạt động trên nhiều nền tảng. Cảm thấy hứng thú với công nghệ web và sở thích xem phim, nhóm đã đề xuất ý tưởng xây dựng một website về sở thích của mình. Đây là trãi nghiệm lần đầu của nhóm về việc xây dựng một website hoàn chỉnh. Ngoài ra, nhóm ấp ủ một sản phẩm hoàn thiện hơn, với việc nghiên cứu và xây dựng các giải pháp cho một hệ thống tự động, không cần tốn nhiều thời gian và công sức của người sử dụng mà vẫn mang đến sự tiện lợi.2 Mục tiêu  Hoàn thiện thêm ứng dụng website với giao diện thân thiện, màu sắc hài hòa, bố cục hợp lí 16  Đáp ứng được các tính năng cần thiết với ngôn ngữ Javascript, công nghệ mới ReatcJS, ExpressJS và chuẩn bảo mật JWT  Giúp khách hàng có thể xem thông tin bộ phim, bình luận về phim cũng như thực hiện thao tác đặt vé, đánh giá phim.

 Hỗ trợ việc tìm kiếm theo nhiều bộ lọc khác nhau  Có hệ thống quản lí dữ liệu: quản lí phim, các cụm rạp, nhân viên, các bài  bình luận, các đơn hàng đã đặt, thông tin cá nhân.  Thực hiện kiểm duyệt đối với các bài bình luận phim.  Hỗ trợ quản lí thống kê doanh thu, báo cáo.  Nghiên cứu, phát triển các thuật toán, giải pháp với ngôn ngữ Python, công nghệ  Gợi ý khách hàng các bộ phim có nội dung tương tự với một bộ phim cụ thể  Đưa ra các phim khách hàng có thể thích dựa vào hành vi của các khách hàng tương tự  Đề xuất các bộ phim liên quan dựa vào những vấn đề nổi cộm trong đời sống – xã hội hiện nay.3 Phạm vi  Phát triển hệ thống khuyến nghị tích hợp với website quản lí với tính năng hỗ trợ khách hàng các bộ phim:  Có nội dung tương tự với một bộ phim cụ thể  Các phim khách hàng có thể thích dựa vào hành vi của các khách hàng tương tự  Dựa vào những vấn đề nổi cộm trong đời sống – xã hội hiện nay.4 Đối tượng  Người dùng muốn xem thông tin các bộ phim, các bài bình luận, có nhu cầu đặt vé xem phim.

 Admin quản lí các nhân viên, cụm rạp; thống kê, báo cáo doanh thu  Nhân viên kiểm tra đơn hàng, giải đáp thắc mắc của khách hàng  Người kiểm duyệt kiểm tra nội dung các bài bình luận phim theo quy định.5 Phương pháp thực hiện  Tìm hiểu, phân tích quy trình xây dựng một website bằng các công nghệ đã đề ra  Phân tính, đánh giá các ứng dụng tương tự  Tìm hiểu tổng quan về Recommend System và các thuật toán liên quan  Hiện thực hệ thống.6 Công nghệ sử dụng  Front-end: ReactJS  Back-end: GoogleAPI/NodeJS, ExpressJS, Mongoose connected MongoDB, Flask, NumPy, SciPy, Scikit-learn.  Security Standard: JWT  Database: MongoDB  Chatbot: Dialogflow, Kommunicate 1.7 Kết quả mong đợi  Biết được quy trình xây dựng một website cơ bản thông qua các công nghệ đã đề ra  Website có khả năng mở rộng trong tương lai  Có khả năng nghiên cứu, phân tích khi gặp một bài toán mới.8 Quy trình thực hiện Bảng 1 Phân công công việc Tuần Thành viên 1 Thành viên 2 Cả nhóm (Thức) (Linh) 1+2 Kiến trúc ứng dụng lại Đồ án 1 - Tìm hiểu tổng quan về Recommended System 18 3+4 Phân tích bài toán - Xây dựng cơ sở dữ liệu 5+6 - Tìm hiểu Content - Tìm hiểu - Soạn báo cáo based Collaborative recommender filtering systems recommender systems 7+8 Hiện thực hệ thống dựa vào lý thuyết đã tìm hiểu ở tuần 5 - 6 9 + 10 Hoàn thiện chatbot Gợi ý phim dựa vào Hiện thực hệ thống Trends 11 + 12 Hoàn thiện báo cáo Kiểm thử và đóng gói hệ thống 13 Báo cáo đồ án 19 Chương 2 CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ 2.1 Recomment System Recommender System là một trong những ứng dụng phổ biến nhất của khoa học dữ liệu ngày nay. Chúng được sử dụng để dự đoán "rating" hoặc "preference" mà người dùng sẽ dành cho một mặt hàng. Hầu hết mọi công ty công nghệ lớn đều đã áp dụng chúng dưới một số hình thức.

Amazon sử dụng nó để đề xuất sản phẩm cho khách hàng Netflix sử dụng gợi ý phim cho người dùng YouTube sử dụng nó để đề xuất các video và quyết định video sẽ phát tiếp theo trên chế độ tự động phát Facebook sử dụng nó để gợi ý kết bạn, đề xuất các trang để thích và mọi người theo dõi. Phân loại: Hình 1. Phân loại Recommend System Nhìn chung, hệ thống Recommender System có thể được chia thành 4 loại chính: 20 Simple Recommenders: Đưa ra các đề xuất tổng quát cho mọi người dùng, dựa trên mức độ phổ biến và/hoặc thể loại phim. Ý tưởng cơ bản đằng sau hệ thống này là những bộ phim nổi tiếng hơn và được giới phê bình đánh giá cao hơn sẽ có xác suất được khán giả bình thường thích cao hơn.

Content-based Recommenders: Đề xuất các mặt hàng/phim tương tự dựa trên một mặt hàng/phim cụ thể. Hệ thống này sử dụng siê dữ liệu mục, chẳng hạn như thể loại, đạo diễn, mô tả, diễn viên, v. cho phim, để đưa ra các đề xuất này. Ý tưởng chung đằng sau các hệ thống giới thiệu này là nếu một người thích một mặt hàng cụ thể, họ cũng sẽ thích một mặt hàng tương tự với nó.

Và để khuyến nghị điều đó, nó sẽ sử dụng siêu dữ liệu mục trước đây của người dùng. Một ví dụ điển hình có thể là YouTube, nơi dựa trên lịch sử của bạn, nó gợi ý cho bạn những video mới mà bạn có thể xem. Collaborative filtering Recommenders: Những hệ thống này được sử dụng rộng rãi và chúng cố gắng dự đoán “ratings” hoặc “preference” mà người dùng sẽ đưa ra một mặt hàng dựa trên xếp hạng trước đây và sở thích của những người dùng khác. Bộ lọc cộng tác không yêu cầu siêu dữ liệu mục giống như các bộ lọc dựa trên nội dung của nó.

Hybrid Recommenders: Hybrid Filtering là sự kết hợp của hai giải thuật Content-based Filtering và Collabrative Filtering: Hybrid Fitering được sử dụng mềm dẻo khi hệ thống Collabrative Filtering không có các hành vi (ratings), khi đó hệ thống sẽ sử dụng Content- based Filtering và ngược lại, khi Content-based Filtering không có các feature cần thiết trong việc đánh giá thì hệ thống sẽ sử dụng Collaborative Fitering để thay thế. Content-based Recommendation Systems Đối với phương pháp content-based, hệ thống sẽ đánh giá các đặc tính của items được recommended. Nó sẽ gợi ý các item dựa trên hồ sơ (profiles) của người dùng hoặc dựa vào nội dung, thuộc tính (attributes) của những item tương tự như item mà người dùng đã chọn trong quá khứ. Ví dụ: một người rất thích ăn cam, vậy thì hệ thống gợi ý một loại trái cây tương tự với cam, ở đây là bưởi để đề xuất.

Cách tiếp cận này yêu cầu việc sắp xếp các items vào từng nhóm hoặc đi tìm các đặc trưng của từng item. Mô tả thuật toán Neighborhood-based Collaborative Filtering Ý tưởng cơ bản của Neighborhood-Based Collaborative Filtering là xác định mức độ quan tâm của một user tới một item dựa trên các users khác gần giống với user này. Việc gần giống nhau giữa các users có thể được xác định thông qua mức độ quan tâm của các users này tới các items khác mà hệ thống đã biết. Ví dụ, A, B đều thích phim CCC, tức đều rate bộ phim này 5 sao.

Ta đã biết A cũng thích một phim AAA, vậy nhiều khả năng B cũng thích bộ phim này. Neighborhood-based Collaborative Filtering trả lời 2 câu hỏi: Làm thế nào xác định được sự giống nhau giữa hai users? Khi đã xác định được các users gần giống nhau (similar users) rồi, làm thế nào dự đoán được mức độ quan tâm của một user lên một item? 22 Việc xác định mức độ quan tâm của mỗi user tới một item dựa trên mức độ quan tâm của similar users tới item đó còn được gọi là User-user collaborative filtering. Có một hướng tiếp cận khác được cho là làm việc hiệu quả hơn là Item-item collaborative filtering. Trong hướng tiếp cận này, thay vì xác định user similarities, hệ thống sẽ xác định item similarities.

Từ đó, hệ thống gợi ý những items gần giống với những items mà user có mức độ quan tâm cao. Thuật toán Công việc quan trọng nhất phải làm trước tiên trong User-user Collaborative Filtering là phải xác định được sự giống nhau (similarity) giữa hai users. Dữ liệu duy nhất chúng ta có là Utility matrix Y , vậy nên sự giống nhau này phải được xác định dựa trên các cột tương ứng với hai users trong ma trận này. Xét ví dụ: Hình 3.

Ma trận dữ liệu Một cách trực quan, hành vi của u 0 giống với u 1 hơn là u 2, u 3, u 4 , u 5, u 6. Từ đó có thể dự đoán rằng u 0 sẽ quan tâm tới i 2 vì u 1 cũng quan tâm tới item này. Giả sử có các users từ u 0 đến u 6 và các items từ i 0 đến i 4 trong đó các số trong mỗi ô vuông thể hiện số sao mà mỗi user đã rated cho item với giá trị cao hơn thể hiện mức độ quan tâm cao hơn. Các dấu hỏi chấm là các giá trị mà hệ thống cần phải đi tìm.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ