Đồ Án Xây Dựng Ứng Dụng Xem Phim Tích Hợp Hệ Thống Khuyến Nghị

Khám phá đồ án xây dựng web và app xem phim với hệ thống khuyến nghị thông minh, nâng cao trải nghiệm người dùng và tối ưu hóa nội dung.

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Đồ án

2023

96
5
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. NHẬN XÉT CỦA GIẢNG VIÊN

2. MỤC LỤC

2.1. MỤC LỤC BẢNG

2.2. MỤC LỤC HÌNH ẢNH

2.3. GIỚI THIỆU ĐỀ TÀI

2.3.1. Lý do chọn đề tài

2.3.2. Mục đích và phạm vi của đề tài

2.3.2.1. Mục đích
2.3.2.2. Phạm vi đề tài
2.3.2.3. Phạm vi môi trường
2.3.2.4. Phạm vi chức năng
2.3.2.5. Đối tượng

2.3.3. Phương pháp nghiên cứu

2.3.4. Công nghệ sử dụng

2.3.5. Khảo sát hiện trạng

2.3.5.1. Khảo sát các phần mềm hiện nay

2.3.6. Những vấn đề còn tồn tại

2.3.7. Vấn đề đề tài tập trung

2.4. NGHIÊN CỨU THỰC NGHIỆM – LÝ THUYẾT

2.4.1. Tổng quan về Flutter

2.4.2. Tổng quan về Supabase

2.4.3. Mô hình khuyến nghị

2.4.3.1. Mô hình xếp hạng
2.4.3.2. Xác suất hậu nghiệm

2.4.4. Nghiên cứu thực nghiệm

2.4.4.1. Bộ dữ liệu
2.4.4.2. Phương pháp huấn luyện
2.4.4.3. Dữ liệu đầu vào

2.5. PHÂN TÍCH THIẾT KẾ HỆ THỐNG

2.5.1. Yêu cầu chức năng

2.5.2. Yêu cầu phi chức năng

2.5.3. Mô tả tổng thể

2.5.3.1. Mô hình Use Case
2.5.3.2. Danh sách các Use Case
2.5.3.3. Mô hình Activity
2.5.3.3.1. Activity Diagram cho Đăng nhập
2.5.3.3.2. Activity Diagram cho Quên mật khẩu
2.5.3.3.3. Activity Diagram cho Đăng ký
2.5.3.3.4. Activity Diagram cho Tìm kiếm phim
2.5.3.3.5. Activity Diagram cho Xem phim
2.5.3.3.6. Activity Diagram cho Điều chỉnh phim xem
2.5.3.3.7. Activity Diagram cho Chọn tập phim
2.5.3.3.8. Activity Diagram cho Thêm phim vào danh sách của tôi
2.5.3.3.9. Activity Diagram cho Tải phim
2.5.3.3.10. Activity Diagram cho Chỉnh sửa thông tin hồ sơ
2.5.3.3.11. Activity Diagram cho Đánh giá phim
2.5.3.3.12. Activity Diagram cho Đổi mật khẩu
2.5.3.3.13. Activity Diagram cho Đăng xuất
2.5.3.3.14. Activity Diagram cho Xoá tài khoản

2.5.4. Đặc tả yêu cầu

2.5.4.1. Quên mật khẩu
2.5.4.2. Chọn tập phim
2.5.4.3. Chỉnh sửa thông tin hồ sơ
2.5.4.4. Thêm phim vào danh sách của tôi
2.5.4.5. Đánh giá phim
2.5.4.6. Đổi mật khẩu
2.5.4.7. Xoá tài khoản

2.5.5. Thiết kế mô hình dữ liệu quan hệ

2.5.5.1. Danh sách bảng dữ liệu
2.5.5.2. Mô tả chi tiết từng bảng
2.5.5.2.1. Bảng Film_Gerne

2.6. XÂY DỰNG PHẦN MỀM

2.6.1. Thiết bị di động (Mobile)

2.6.1.1. Màn hình Chờ
2.6.1.2. Màn hình Đăng nhập
2.6.1.3. Màn hình Đăng ký
2.6.1.4. Màn hình Trang chủ
2.6.1.5. Hộp thoại Thể loại
2.6.1.6. Màn hình Chi tiết Thể loại
2.6.1.7. Màn hình Mới và Hot
2.6.1.8. Màn hình Tải xuống
2.6.1.9. Màn hình Danh sách các phim tải xuống
2.6.1.10. Màn hình Danh sách các tập phim tải xuống
2.6.1.11. Màn hình Hồ sơ
2.6.1.12. Màn hình Đổi mật khẩu
2.6.1.13. Màn hình Danh sách của tôi
2.6.1.14. Màn hình Chi tiết phim
2.6.1.15. Màn hình Đề xuất phim
2.6.1.16. Màn hình Diễn viên phim
2.6.1.17. Màn hình Đội ngũ phim
2.6.1.18. Màn hình Danh sách tập phim
2.6.1.19. Màn hình Tải phim
2.6.1.20. Hộp thoại phim đã tải
2.6.1.21. Hộp thoại Đánh giá phim
2.6.1.22. Màn hình Tìm kiếm phim
2.6.1.23. Màn hình Kết quả tìm kiếm phim
2.6.1.24. Hộp thoại Đăng xuất
2.6.1.25. Màn hình Xem phim
2.6.1.26. Trang Mở đầu
2.6.1.27. Trang Chi tiết phim

2.6.2. Kết quả đạt được

2.6.3. Về việc tổ chức quản lý nhóm

2.6.4. Về sản phẩm

2.6.5. Hướng phát triển

2.6.6. Bảng phân công công việc

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Giới thiệu về ứng dụng xem phim tích hợp hệ thống khuyến nghị

Ứng dụng xem phim tích hợp hệ thống khuyến nghị đang trở thành xu hướng trong ngành công nghiệp giải trí. Việc phát triển ứng dụng này không chỉ giúp người dùng dễ dàng tìm kiếm và xem phim mà còn mang lại trải nghiệm cá nhân hóa thông qua các gợi ý phim phù hợp. Theo thống kê, hơn 70% người dùng hiện nay thường xuyên xem phim trực tuyến, cho thấy nhu cầu ngày càng cao về các ứng dụng này.

1.1. Tại sao cần xây dựng ứng dụng xem phim

Việc xây dựng ứng dụng xem phim giúp người dùng tiết kiệm thời gian tìm kiếm và nâng cao trải nghiệm xem phim. Hệ thống khuyến nghị sẽ giúp người dùng tìm thấy những bộ phim phù hợp với sở thích của họ.

1.2. Lợi ích của hệ thống khuyến nghị trong ứng dụng

Hệ thống khuyến nghị không chỉ giúp người dùng tìm kiếm phim dễ dàng hơn mà còn tạo ra sự kết nối giữa người dùng và nội dung, từ đó tăng cường sự hài lòng và giữ chân khách hàng.

II. Những thách thức trong việc phát triển ứng dụng xem phim

Mặc dù có nhiều lợi ích, việc phát triển ứng dụng xem phim tích hợp hệ thống khuyến nghị cũng gặp phải nhiều thách thức. Các vấn đề như chất lượng video, hiệu suất và tính tương thích giữa các thiết bị cần được giải quyết để đảm bảo trải nghiệm người dùng tốt nhất.

2.1. Chất lượng video và hiệu suất

Chất lượng video có thể bị ảnh hưởng bởi tốc độ internet và khả năng xử lý của thiết bị. Đảm bảo video mượt mà và không bị gián đoạn là một trong những thách thức lớn nhất.

2.2. Tính tương thích giữa các nền tảng

Việc đảm bảo ứng dụng hoạt động tốt trên nhiều nền tảng khác nhau như iOS, Android và web là rất quan trọng. Sự không tương thích có thể làm giảm trải nghiệm người dùng.

III. Phương pháp phát triển ứng dụng xem phim hiệu quả

Để phát triển ứng dụng xem phim tích hợp hệ thống khuyến nghị, cần áp dụng các phương pháp hiện đại và công nghệ tiên tiến. Việc sử dụng Flutter và Supabase sẽ giúp tối ưu hóa quy trình phát triển và nâng cao hiệu suất ứng dụng.

3.1. Sử dụng Flutter trong phát triển ứng dụng

Flutter là một công cụ mạnh mẽ giúp phát triển ứng dụng đa nền tảng với giao diện người dùng đẹp mắt. Việc sử dụng Flutter giúp tiết kiệm thời gian và chi phí phát triển.

3.2. Tích hợp Supabase cho backend

Supabase cung cấp các dịch vụ backend mạnh mẽ như cơ sở dữ liệu và xác thực người dùng, giúp giảm thiểu thời gian phát triển và tăng cường bảo mật cho ứng dụng.

IV. Ứng dụng thực tiễn của hệ thống khuyến nghị trong xem phim

Hệ thống khuyến nghị đã được áp dụng thành công trong nhiều ứng dụng xem phim hiện nay. Các thuật toán máy học giúp phân tích dữ liệu người dùng và đưa ra các gợi ý phim phù hợp, từ đó nâng cao trải nghiệm người dùng.

4.1. Phân tích dữ liệu người dùng

Việc phân tích dữ liệu người dùng giúp hệ thống khuyến nghị hiểu rõ hơn về sở thích và thói quen xem phim của người dùng, từ đó đưa ra các gợi ý chính xác hơn.

4.2. Tăng cường trải nghiệm người dùng

Hệ thống khuyến nghị không chỉ giúp người dùng tìm kiếm phim dễ dàng mà còn tạo ra sự kết nối giữa người dùng và nội dung, từ đó tăng cường sự hài lòng và giữ chân khách hàng.

V. Kết luận và tương lai của ứng dụng xem phim

Ứng dụng xem phim tích hợp hệ thống khuyến nghị đang mở ra nhiều cơ hội mới cho ngành công nghiệp giải trí. Với sự phát triển của công nghệ, tương lai của ứng dụng này hứa hẹn sẽ mang lại nhiều trải nghiệm thú vị cho người dùng.

5.1. Xu hướng phát triển ứng dụng xem phim

Xu hướng phát triển ứng dụng xem phim sẽ tiếp tục gia tăng với sự xuất hiện của các công nghệ mới và nhu cầu ngày càng cao từ người dùng.

5.2. Tương lai của hệ thống khuyến nghị

Hệ thống khuyến nghị sẽ ngày càng trở nên thông minh hơn nhờ vào sự phát triển của machine learning, giúp người dùng có những trải nghiệm cá nhân hóa tốt nhất.

10/07/2025
Đồ án 1 xây dựng web và app xem phim tích hợp hệ thống khuyến nghị

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

Đặt vấn đề Việc xem phim đóng vai trò quan trọng trong đời sống của con người, mang lại những lợi ích đa dạng. Nó không chỉ là một hình thức giải trí và giảm stress hiệu quả mà còn tạo nguồn năng lượng tích cực và động lực. Xem phim cung cấp cơ hội học hỏi và mở rộng kiến thức, giúp người xem hiểu biết về văn hóa, lịch sử và nhiều lĩnh vực khác. Thông qua trải nghiệm xã hội, nó còn tạo ra những kỷ niệm đặc biệt và tăng cường kết nối xã hội.

Ngoài ra, xem phim thúc đẩy sự phát triển tư duy và trí tưởng tượng, giúp người xem thách thức bản thân và khám phá những ý tưởng mới. Nó cũng đóng vai trò trong việc thiết lập giá trị và triết lý cá nhân, đồng thời là một phương tiện giao tiếp nghệ thuật, mang lại trải nghiệm thị giác và sáng tạo. Việc có ứng dụng di động và trang web xem phim không chỉ mang lại sự thuận tiện và linh hoạt cao cho người xem mà còn cung cấp trải nghiệm người dùng tối ưu hóa. Giao diện hiện đại và thân thiện của các ứng dụng giúp tăng cường trải nghiệm người dùng, đi kèm với các chức năng tìm kiếm thông minh và khả năng tương tác với người xem.

Hiện nay theo thống kê từ movieguide.org [1], tổng số người xem phim trực tuyến trên thường xuyên lên tới hơn 70% dân số đều xem phim. Trong đó, theo kết quả nghiên cứu từ GMO-Z.com RUNSYSTEM [2] cho thấy có đến hơn 67% người tham gia khảo sát có sử dụng nền tảng xem phim có bản quyền, trong đó chiếm tỉ lệ nhiều nhất là Netflix với 41.9%, và thiết bị chủ yếu khảo sát viên sử dụng rơi vào Laptop và SmartPhone. Biểu đồ tỉ lệ người xem ở các nền tảng xem phim trực tuyến 1. Lý do chọn đề tài Xuất phát từ nhu cầu thực tế trong đời sống, việc xây dựng một phần mềm xem phim, cũng như xây dựng một hệ thống khuyến nghị sẽ giúp người dùng có thể tìm thấy những bộ phim mới, phù hợp với sở thích của họ.

Việc sử dụng hệ thống khuyến nghị có thể giúp cho người dùng tiết kiệm thời gian tìm kiếm, đồng thời cũng giúp tăng trải nghiệm xem phim cho người dùng. Để giải quyết vấn đề trên, nhóm em quyết định chọn đề tài Xây dựng app và web xem phim tích hợp hệ thống khuyến nghị nhằm phát triển một ứng dụng cung cấp một lựa chọn phù hợp với người sử dụng nhất giúp cải thiện trải nghiệm người dùng và tăng khả năng giữ chân khách hàng. Mục đích và phạm vi của đề tài 1. Mục đích - Xây dựng hệ thống quản lý các bộ phim.

- Lên danh sách và cập nhật các bộ phim, sắp xếp các bộ phim theo danh mục, diễn viên, đạo diễn. Từ đó người dùng có thể tìm kiếm phim hiệu quả. 14 - Xây dựng hệ thống gợi ý phim dựa thể loại phim đang coi của người dùng và cung cấp các bộ phim phù hợp nhất cho họ. Phạm vi đề tài Đề tài tập trung xây dựng ứng dụng hỗ trợ người dùng coi phim.

Đối với admin sẽ tương tác trực tiếp trên Database. Phạm vi môi trường Triển khai sản phẩm đề tài trên Mobile và phát triển sang cả môi trường Web. Phạm vi chức năng - Chức năng coi phim, tìm phim. - Thêm/Bỏ danh sách phim.

- Quản lý danh sách xem phim. - Chức năng xem thông tin phim. - Chức năng xem thông tin diễn viên và đạo diễn và những bộ phim liên quan. - Quản lý hồ sơ cá nhân người dùng.

- Thông báo về các bộ phim sắp ra mắt và các thông báo về tài khoản người dùng. - Đánh giá phim. - Hệ thống khuyến nghị phim theo bộ phim đang xem. - Chức năng tìm kiếm phim theo keyword.

Đối tượng Đồ án này tập trung nghiên cứu: - Các công nghệ: - Flutter. - Hệ thống khuyến nghị. - Mô hình hoạt động của ứng dụng xem phim. Phương pháp nghiên cứu - Tìm hiểu công nghệ: Dart, Flutter, Supabase - PostgreSQL, Microsoft Azure.

15 - Phân tích các giải pháp của các ứng dụng tương tự trên thị trường. - Thực hiện khảo sát nhu cầu, tình trạng thực tế của người dùng. - Phân tích và xác định yêu cầu. - Lên kế hoạch.

- Thiết kế: - Thiết kế cơ sở dữ liệu. - Thiết kế đối tượng. - Hoàn thiện sản phẩm. Công nghệ sử dụng - Nền tảng phát triển: Supabase - PostgreSQL.

- Ngôn ngữ: Dart. - Công cụ xây dựng ứng dụng: Visual Studio Code. Khảo sát hiện trạng 1. Khảo sát các phần mềm hiện nay Sau khi tìm hiểu các công nghệ và phần mềm tương tự có mặt tại Việt Nam, dưới đây là bảng so sánh của một số phần mềm tiêu biểu.

Bảng khảo sát các phần mềm hiện nay Chức năng Amazon Prime Netflix Bilibili Video Bắt buộc đăng nhập để sử dụng Có Có Không Cho phép đăng nhập từ bên thứ 3 Không Không Có Cho phép bình luận Không Không Có Cho phép Tải xuống Có Có Có (giới hạn 10 lượt/ngày) Đề xuất phim Không Có Không Lưu thông tin diễn viên Có Không Không Theo dõi thời lượng đã xem mỗi Có Có Không tập phim Đa dạng thể loại Có Có Không Có thể xem miễn phí Không Có Có Hầu hết các phần mềm đều quản lý số lượng lớn các bộ phim với đa dạng thể loại. Trong đó vấn đề bảo mật và mức độ linh hoạt cũng được coi trọng. Dưới đây là bảng phân tích chi tiết phần mềm xem phim được đánh giá khá cao, Netflix. Bảng phân tích các khía cạnh Netflix Khía Cạnh Phân Tích Netflix sử dụng một kiến trúc phân tán để đảm bảo mức độ linh hoạt và mở rộng.

Cơ sở dữ liệu phải xử lý hàng triệu dữ Kiến Trúc Hệ liệu về người dùng, lịch sử xem phim, và thông tin phim. Sự Thống mở rộng đồng thời và cân nhắc kỹ thuật là quan trọng để đảm bảo trải nghiệm người dùng liền mạch. Giao diện người dùng của Netflix được thiết kế để đáp ứng tốt trên nhiều thiết bị và kích thích việc tương tác. Kỹ sư phần Trải Nghiệm mềm phải liên tục tối ưu hóa trải nghiệm người dùng, đồng Người Dùng thời sử dụng thuật toán máy học để đề xuất nội dung cá nhân hóa dựa trên lịch sử xem phim và sở thích cá nhân của người dùng.

Hệ thống quản lý nội dung phải xử lý hàng nghìn, thậm chí hàng triệu tiêu đề phim, đồng thời quản lý các biến thể chất Quản Lý Nội lượng video và phụ đề. Công nghệ mã hóa và lưu trữ phải Dung được tối ưu hóa để đảm bảo tải nhanh và chất lượng video cao. Bảo mật là mối quan tâm hàng đầu với Netflix vì thông tin Bảo Mật và người dùng, đặc biệt là thông tin thanh toán, phải được bảo Quyền Riêng vệ chặt chẽ. Kỹ sư phần mềm cần triển khai các biện pháp Tư bảo mật như mã hóa mạnh mẽ, kiểm soát truy cập và giám sát hệ thống liên tục.

Việc tối ưu hóa hiệu suất là quan trọng để đảm bảo việc xem Tối Ưu Hóa phim mượt mà và không gặp gián đoạn. Kỹ sư phần mềm cần Hiệu Suất theo dõi hiệu suất hệ thống, tối ưu hóa mã nguồn và áp dụng các kỹ thuật caching để giảm thiểu thời gian tải. Những vấn đề còn tồn tại Mặc dù các ứng dụng và trang web xem phim đã phát triển rất nhanh chóng và mang lại nhiều lợi ích cho người dùng, nhưng vẫn còn một số vấn đề cần đối mặt. - Chất lượng Video và hiệu suất: Mặc dù nhiều dịch vụ cung cấp chất lượng video cao, nhưng tùy thuộc vào kết nối internet, người dùng có thể gặp vấn đề với độ giữ kết nối và chất lượng hình ảnh.

- Tương thích và Đa nền tảng: - Tính tương thích giữa các thiết bị và hệ điều hành khác nhau có thể là một thách thức, đặc biệt là khi cập nhật hệ điều hành mới. - Tích hợp không đồng đều giữa các ứng dụng di động và trang web cũng có thể làm giảm trải nghiệm người dùng. - Chất lượng Nội dung và Sự đa dạng: Mặc dù có nhiều nội dung khổng lồ, nhưng chất lượng và sự đa dạng của nội dung vẫn là một vấn đề, đặc biệt là đối với các thể loại phim và chương trình không phổ biến. Vấn đề đề tài tập trung Để giải quyết một số vấn đề còn tồn đọng cũng như duy trì những thế mạnh của nền công nghiệp xem phim hiện nay, nhóm tập trung nghiên cứu: - Vấn đề hiệu suất: đảm bảo việc xem phim được diễn ra một cách mượt mà, duy trì kết nối ổn định, đem lại trải nghiệm có thể làm hài lòng người dùng.

- Tính tương thích phần mềm: Xây dựng phần mềm có thể hoạt động trên nhiều nền tảng nhất có thể và tăng tính trải nghiệm người dùng. - Cải thiện chất lượng xem phim: Có thể xây dựng hệ thống khuyến nghị các bộ phim tương tự dựa trên thể loại phim của người dùng đang xem, góp phần làm người dùng hứng thú hơn khi sử dụn0g phần mềm. NGHIÊN CỨU THỰC NGHIỆM – LÝ THUYẾT 2. Tổng quan về Flutter 2.

Giới thiệu Flutter [3] là một khung nguồn mở do Google phát triển và hỗ trợ. Các nhà phát triển frontend và fullstack sử dụng Flutter để xây dựng giao diện người dùng (UI) của ứng dụng cho nhiều nền tảng chỉ với một nền mã duy nhất. Tại thời điểm ra mắt vào năm 2018, Flutter chủ yếu hỗ trợ phát triển ứng dụng di động. Hiện nay, Flutter hỗ trợ phát triển ứng dụng trên sáu nền tảng: iOS, Android, web, Windows, MacOS và Linux.

Giới thiệu Flutter Flutter sử dụng Ngôn ngữ Dart. Dart là ngôn ngữ thuần OOP, nó được sử dụng để xây dựng các ứng dụng web, server, máy tính để bàn và thiết bị di động. Sự hình thành và phát triển của Flutter có thể giải quyết cho vấn đề thường gặp ở trên di động là Fast Development – phát triển nhanh và Native Performance – hiệu suất gốc. Sử dụng Flutter hoàn toàn không mất phí và dùng với mã nguồn mở.

Flutter thường bao gồm 2 thành phần chính quan trọng như sau: 20 - Một SDK (Software Development Kit): Đây là một bộ sưu tập bao gồm các công cụ có thể hỗ trợ cho người dùng có thể phát triển được các ứng dụng nền của mình. Những điều này thường bao gồm các công cụ có trình để biên dịch mã thành các mã gốc dành riêng cho hệ điều hành iOS và Android. - Một Framework (UI Library based on widgets): Mỗi một tập hợp những thành phần giao diện của người dùng đều có thể thực hiện tái sử dụng vô cùng dễ dàng nên người sử dụng có thể cá nhân hóa tùy theo nhu cầu riêng của bản thân mình.

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

Tài liệu có tiêu đề Xây Dựng Ứng Dụng Xem Phim Tích Hợp Hệ Thống Khuyến Nghị cung cấp cái nhìn sâu sắc về cách phát triển một ứng dụng xem phim với tính năng khuyến nghị thông minh. Nội dung chính của tài liệu tập trung vào việc sử dụng các thuật toán học máy để phân tích sở thích của người dùng, từ đó đưa ra những gợi ý phim phù hợp nhất. Điều này không chỉ nâng cao trải nghiệm người dùng mà còn giúp tăng cường mức độ tương tác và giữ chân người dùng lâu hơn.

Để mở rộng kiến thức của bạn về các ứng dụng và hệ thống tương tự, bạn có thể tham khảo tài liệu Đề tài xây dựng trang web trao đổi mặt hàng thời trang, nơi bạn sẽ tìm thấy những phương pháp xây dựng nền tảng trực tuyến cho việc trao đổi sản phẩm. Ngoài ra, tài liệu Building an ecommerce website sẽ giúp bạn hiểu rõ hơn về cách thiết kế và phát triển một trang web thương mại điện tử hiệu quả. Cuối cùng, tài liệu Đồ án 1 xây dựng hệ thống hỗ trợ tìm kiếm đội nhóm dự án cung cấp cái nhìn về việc xây dựng hệ thống hỗ trợ tìm kiếm, có thể áp dụng cho nhiều lĩnh vực khác nhau.

Những tài liệu này không chỉ bổ sung cho kiến thức của bạn về phát triển ứng dụng mà còn mở ra nhiều cơ hội để khám phá các khía cạnh khác nhau trong lĩnh vực công nghệ thông tin.