Phạm vi của hệ thốngNhững người được sử dụng hệ thống và chức năng mỗi người được thực hiện khi vào hệ thống được quy định như sau: Người dùng:o Đăng nhậpo Đăng xuấto Chỉnh sửa thông ti
Mô tả hệ thống bằng ngôn ngữ tự nhiên
Hệ thống ứng dụng di động được phát triển trên nền tảng Android có mục đích chính là mang đến sự giải trí cho người dùng thông qua việc xem và tìm kiếm các bộ phim yêu thích Phạm vi của hệ thống này bao gồm việc cung cấp một nền tảng giải trí di động toàn diện, cho phép người dùng dễ dàng tìm kiếm, xem và trải nghiệm các bộ phim mà họ yêu thích.
Những người được sử dụng hệ thống và chức năng mỗi người được thực hiện khi vào hệ thống được quy định như sau:
Người dùng có thể thực hiện nhiều chức năng trên ứng dụng, bao gồm đăng nhập, đăng xuất, chỉnh sửa thông tin và xem thông tin thời tiết Họ cũng có thể đăng ký tài khoản VIP, xem lịch sử mua VIP và quản lý lịch sử các bộ phim đã xem hoặc thêm vào mục yêu thích Ngoài ra, người dùng có thể cài đặt chức năng hệ thống, tìm kiếm phim theo từ khóa và thực hiện các hành động như thích, không thích hoặc thêm phim vào mục yêu thích Khi người dùng truy cập vào ứng dụng và chọn chức năng đăng nhập, họ sẽ được yêu cầu nhập thông tin để truy cập vào tài khoản của mình.
Quá trình đăng nhập vào hệ thống diễn ra một cách đơn giản và tiện lợi thông qua tài khoản Google Khi người dùng nhấn nút đăng nhập, hệ thống sẽ hiển thị danh sách các tài khoản Google hiện có trên thiết bị để lựa chọn Sau khi chọn một tài khoản, hệ thống sẽ tiến hành đăng nhập và lưu trữ thông tin người dùng, đồng thời quay về giao diện chính Ngược lại, để đăng xuất, người dùng chỉ cần truy cập vào ứng dụng và chọn chức năng đăng xuất, giúp quản lý tài khoản một cách dễ dàng và bảo mật.
Khi người dùng đã đăng nhập trước đó, hệ thống sẽ tự động hiển thị giao diện đăng xuất Sau khi người dùng click vào nút đăng xuất, hệ thống sẽ tiến hành đăng xuất tài khoản và đồng thời xóa thông tin người dùng trên hệ thống Cuối cùng, hệ thống sẽ quay về giao diện chính, đảm bảo rằng thông tin người dùng đã được xóa bỏ hoàn toàn.
Khi truy cập vào ứng dụng, người dùng có thể dễ dàng chỉnh sửa thông tin cá nhân của mình bằng cách chọn chức năng sửa thông tin sau khi đăng nhập tài khoản Hệ thống sẽ hiển thị giao diện sửa thông tin bao gồm tên người dùng, địa chỉ, số điện thoại và giới tính, cho phép người dùng chọn các nội dung muốn sửa đổi và cập nhật thông tin một cách nhanh chóng Ngoài ra, người dùng cũng có thể đăng ký tài khoản VIP bằng cách chọn chức năng mua premium và lựa chọn gói tháng hoặc năm phù hợp với nhu cầu của mình Quá trình giao dịch sẽ được thực hiện thông qua giao diện thanh toán trên Zalopay, đảm bảo an toàn và bảo mật cho người dùng Sau khi giao dịch thành công, hệ thống sẽ lưu lịch sử giao dịch vào cơ sở dữ liệu và thông báo cho người dùng về kết quả giao dịch.
Để xem lịch sử mua VIP, người dùng có thể thực hiện các bước đơn giản sau: truy cập vào ứng dụng, chọn chức năng mua premium, sau đó hệ thống sẽ hiển thị giao diện mua VIP Tại đây, người dùng chỉ cần click vào chức năng "Xem lịch sử mua" để hệ thống hiển thị ra danh sách các lần mua VIP trước đó Danh sách này sẽ bao gồm thông tin chi tiết về trạng thái gói mua, chẳng hạn như còn hạn sử dụng hay đã hết hạn, cùng với ngày mua cụ thể.
Để xem hoặc xóa lịch sử các bộ phim đã xem, người dùng cần truy cập vào ứng dụng và chọn chức năng lịch sử xem sau khi đã đăng nhập tài khoản Hệ thống sẽ hiển thị danh sách các bộ phim đã xem trước đó, bao gồm tên phim và ngày xem Người dùng có thể nhấn giữ vào một bộ phim để hiển thị hộp thoại xác nhận xóa khỏi lịch sử xem Sau khi xác nhận, bộ phim sẽ bị xóa khỏi lịch sử xem, giúp người dùng quản lý thông tin xem phim của mình một cách dễ dàng và tiện lợi.
Để xem hoặc xóa danh sách các bộ phim đã thêm vào mục yêu thích, người dùng cần truy cập vào ứng dụng, chọn chức năng mục yêu thích sau khi đã đăng nhập tài khoản Hệ thống sẽ hiển thị danh sách các bộ phim đã được thêm vào mục yêu thích này Người dùng có thể nhấn giữ vào một bộ phim bất kỳ để hiển thị hộp thoại xác nhận xóa khỏi mục yêu thích Sau khi xác nhận, bộ phim sẽ được xóa khỏi danh sách mục yêu thích của người dùng.
Khi truy cập vào hệ thống, người dùng có thể cài đặt chức năng hệ thống bằng cách click vào mục cài đặt Tại đây, hệ thống sẽ hiển thị các tùy chọn bao gồm thông tin cá nhân và cài đặt phát Người dùng có thể chọn cài đặt phát để điều chỉnh các tùy chọn như tự động phát chiếu và tự động toàn màn hình khi phát phim Sau khi chọn tùy chọn mong muốn, hệ thống sẽ tiến hành xử lý và lưu thông tin cài đặt người dùng vào cơ sở dữ liệu.
Khi truy cập vào ứng dụng, người dùng có thể tìm kiếm phim theo từ khóa bằng cách nhập tên phim vào ô tìm kiếm, hệ thống sẽ hiển thị danh sách các bộ phim trùng tên cùng với thông tin chi tiết như thời lượng, thể loại, lượt xem, ngày ra mắt và trạng thái phim VIP Ngoài ra, ứng dụng cũng đề xuất các bộ phim theo từng chủ đề như hoạt hình, hành động, kinh dị, trinh thám, hài kịch, lãng mạn và phiêu lưu, với mỗi chủ đề có 5 bộ phim gợi ý hấp dẫn, giúp người dùng dễ dàng tìm thấy những bộ phim phù hợp với sở thích của mình.
Khi truy cập vào ứng dụng, người dùng có thể dễ dàng tìm kiếm các bộ phim yêu thích thông qua việc lựa chọn chủ đề phim phù hợp trên giao diện trang chủ Hệ thống sẽ nhanh chóng hiển thị danh sách các bộ phim liên quan đến chủ đề mà người dùng đã chọn, giúp họ tiết kiệm thời gian và tìm được nội dung mong muốn một cách nhanh chóng và tiện lợi.
Khi người dùng truy cập vào hệ thống và chọn một bộ phim bất kỳ, hệ thống sẽ chuyển đến giao diện phát phim và trình chiếu bộ phim đã chọn Đồng thời, hệ thống cũng hiển thị các thông tin bao gồm các bộ phim tương tự, nút like, dislike và thêm vào ưa thích, cũng như thông tin chi tiết về bộ phim Người dùng có thể tương tác với hệ thống bằng cách nhấn like, dislike hoặc thêm vào ưa thích, và hệ thống sẽ lưu lại thông tin này vào cơ sở dữ liệu.
Nhóm các thông tin liên quan đến con người:
Người dùng: tên người dùng, địa chỉ, số điện thoại, giới tính, là thành viên vip hay không vip.
Nhóm các thông tin liên quan đến phim:
Khi tìm kiếm thông tin về một bộ phim, người dùng thường quan tâm đến các chi tiết như tên phim, thời lượng, thể loại, lượt xem, ngày ra mắt, điểm đánh giá và nội dung phim Bên cạnh đó, việc xác định xem phim có phải là phim VIP hay không cũng là một yếu tố quan trọng Ngoài ra, số lượt thích và không thích cũng cung cấp thông tin hữu ích về mức độ phổ biến và sự yêu thích của bộ phim đó Tất cả những thông tin này đều được thống kê và trình bày một cách rõ ràng, giúp người dùng có cái nhìn tổng quan về bộ phim.
Thống kê danh sách các bộ phim đã xem.
Thống kê danh sách các bộ phim đã yêu thích.
Thống kê lịch sử mua VIP cho phép phân tích các đối tượng và thông tin quan trọng Một người dùng có thể xem nhiều bộ phim, trong khi một bộ phim có thể được nhiều người xem Ngoài ra, mỗi người dùng có thể có nhiều lịch sử xem, yêu thích nhiều bộ phim và thực hiện nhiều hành động like, dislike Tương tự, một bộ phim có thể được yêu thích, like hoặc dislike bởi nhiều người dùng khác nhau Hơn nữa, mỗi người dùng chỉ có thể đăng ký một gói VIP tại một thời điểm, nhưng một gói VIP có thể được đăng ký bởi nhiều người dùng.
Mô tả hệ thống bằng UML
a Biểu đồ use case tổng quan
Các actor có trong ứng dụng: người dùng
Chức năng của actor người dùng trong ứng dụng bao gồm nhiều tính năng quan trọng, giúp người dùng quản lý và trải nghiệm ứng dụng một cách hiệu quả Người dùng có thể đăng nhập vào ứng dụng bằng tài khoản Google thông qua chức năng đăng nhập, đồng thời có thể đăng xuất tài khoản khỏi thiết bị khi cần thiết Ngoài ra, người dùng cũng có thể cập nhật thông tin cá nhân của mình thông qua chức năng sửa thông tin người dùng.
Phát tri ể n ph ầ n mềm hướng…
Phát triển phần mềm… None 7
Introduction to Reliable and Secure…
Phát triển phần mềm… None 388
Phát triển phần mềm… None 69
B19DCCN391 Lê Thành Long Bao Ca…
Phát triển phần mềm… None 23
70 Đăng kí tài khoản vip: UC này cho phép người dùng đăng ký tài khoản vip để có thể xem được các bộ phim vip.
Xem lịch sử đăng ký vip: UC này cho phép người dùng xem lịch sử những lần đã đăng ký vip.
Xem/xóa lịch sử xem phim: UC này cho phép người dùng xem/xóa lịch sử các bộ phim đã xem trước đó
Xem/xóa các bộ phim đã yêu thích: UC này cho phép người dùng xem/xóa danh sách các bộ phim mà mình đã nhấn yêu thích.
Tìm kiếm phim: UC này cho phép người dùng tìm kiếm các bộ phim theo tên.
Cài đặt ứng dụng: UC này cho phép người dùng cài đặt các chức năng liên quan đến việc trình chiếu phim.
Xem phim: UC này cho phép người dùng xem nội dung của bộ phim mà họ nhấn vào.
Like, Dislike, Thêm phim vào mục yêu thích: các UC này cho phép người dùng tương tác với bộ phim. b Use case chi tiết
Để sửa thông tin người dùng, đăng nhập là yêu cầu bắt buộc không thể thiếu Do đó, việc sửa thông tin người dùng sẽ bao gồm cả quá trình đăng nhập.
+ Đăng ký tài khoản vip:
Phát triển phần mềm… None
Lê Đình Duy Anh BT06 - Example 5
Phát triển phần mềm… None38 Đăng nhập là yêu cầu bắt buộc => UC đăng ký tài khoản vip include UC đăng nhập, chọn gói đăng ký.
+ Xem lịch sử đăng ký vip:
+ Xem/xoá lịch sử xem phim:
+ Xem/xoá các bộ phim đã yêu thích:
Kịch bản cho các use case
Actor Người dùng điều kiện
Người dùng đăng nhập tài khoản thành công vào ứng dụng
1 Sau khi truy cập vào ứng dụng, người dùng chuyển sang màn hình hồ sơ và chọn chức năng đăng nhập.
2 Giao diện đăng nhập hiện lên bao gồm nút đăng nhập bằng tài khoản google
3 Người dùng nhấn nút đăng nhập
4 Một cửa sổ hệ thống hiện lên yêu cầu lựa chọn tài khoản đăng nhập.
5 Người dùng nhấn chọn một tài khoản.
6 Hệ thống tiến hành xử lý đăng nhập và quay trở về giao diện chính.
Ngoại lệ 6 đăng nhập tài khoản thất bại
Người dùng đã đăng nhập tài khoản vào ứng dụng
Người dùng đăng xuất thành công khỏi ứng dụng
1 Từ giao diện chính của ứng dụng, người dùng chuyển qua màn hình hồ sơ và chọn chức năng thông tin người dùng.
2 Hệ thống hiển thị lên giao diện thông tin người dùng và nút đăng xuất.
3 Người dùng chọn nút đăng xuất
4 Hệ thống tiến hành đăng xuất tài khoản khỏi thiết bị và quay trở về giao diện chính của ứng dụng.
Ngoại lệ 4 Đăng xuất tài khoản không thành công
Chức năng chỉnh sửa thông tin người dùng
Use case Sửa thông tin người dùng
Người dùng đã đăng nhập tài khoản Google vào ứng dụng
Người dùng cập nhập thông tin mới thành công
Kịch 1 Từ giao diện chính của ứng dụng, người dùng chuyển qua màn hình hồ sơ chính
Giao diện thông tin người dùng cung cấp các ô nhập dữ liệu quan trọng bao gồm Tên người dùng, Địa chỉ, Số điện thoại và Giới tính Ngoài ra, giao diện này còn tích hợp hai nút chức năng chính là Cập nhật và Đăng xuất, cho phép người dùng dễ dàng quản lý và chỉnh sửa thông tin cá nhân của mình.
3 Người dùng tiến hành nhập dữ liệu vào các trường nhập dữ liệu lần lượt là: Phạm Xuân trường; Đại Sơn, Tứ Kỳ, Hải Dương; 0382902511; chọn giới tính nam
4 Người dùng nhấn nút Cập nhập
5 Hệ thống tiến hành cập nhập thông tin người dùng vào csdl
Ngoại lệ 5 Hệ thống cập nhập thông tin người dùng thất bại
Chức năng đăng ký tài khoản vip
Use case Đăng ký tài khoản vip
Người dùng đã đăng nhập tài khoản google vào ứng dụng
Người dùng đăng ký thành công tài khoản vip kiện
1 Sau khi truy cập vào ứng dụng, người dùng chuyển qua màn hình hồ sơ và chọn chức năng mua premium
2 Hệ thống hiển thị giao diện chính gồm 2 gói mua premium tháng và năm, nút mua ngay.
3 Người dùng nhấn nút mua ngay
4 Hệ thống tiến hành xửa lý và điều hướng sang ứng dụng zalopay và tiến hành thanh toán
5 Người dùng nhấn nút xác nhận giao dịch
6 Hệ thống tiến hành thanh toán và điều hướng về màn hình tại bước 2 và hiển thị hộp thoại thông báo đăng ký thành công.
7 Người dùng nhấn nút ok để xác nhận.
Ngoại 4 Hệ thống tạo thanh toán không thành công lệ 5 Người dùng nhấn xác nhận giao dịch không thành công
6 Hệ thống hiển thị thanh toán thất bại
Xem lịch sử mua vip
Xem lịch sử đăng ký vip
Người dùng đã đăng nhập thành công tài khoản vao ứng dụng và đã đăng ký tài khoản vip
Xem lịch sử mua vip thành công
1 Từ giao diện chính của ứng dụng, người dùng chuyển qua màn hình hồ sơ
2 Hệ thống hiển thị lên giao diện hồ sơ
3 Người dùng nhấn chọn mua premium
4 Hệ thống hiển thị lên giao diện mua premium cùng với biểu tượng lịch sử mua premium
5 Người dùng click vào biểu tượng mua premium
6 Hệ thống hiển thị danh sách các gói mua premium bao gồm các thông tin: Trạng thái mua, ngày đăng ký
6 Hệ thống tải dữ liệu không thành công
Chức năng xem/xóa lịch sử các bộ phim đã xem
Xem lịch sử xem phim
Người dùng đã đăng nhập tài khoản Google vào ứng dụng và đã từng xem ít nhất một bộ phim
Người dùng xem/xóa lịch sử các bộ phim thành công
1 từ giao diện chính của ứng dụng, người dùng chuyển qua màn hình hồ sơ
2 Hệ thống hiển thị giao diện hồ sơ như sau:
3 Người dùng nhấn chọn lịch sử xem
4 Hệ thống điều hướng ra màn hình lịch sử xem và hiển thị danh sách các bộ phim đã xem với các thông tin: tên phim, ngày xem.
5 Người dùng nhấn dữ vào bộ phim đầu tiên
6 Hệ thống hiển thị một hộp thoại hiện ra với 2 nút: xóa và hủy
8 Hệ thống xóa bộ phim mà người dùng đã chọn khỏi lịch xử xem phim.
4 Không có bộ phim nào được hiển thị
8 Hệ thống xóa bộ phim khỏi lịch sử xem không thành công
Chức năng xem/xóa các bộ phim đã thêm vào mục yêu thích
Xem các bộ phim đã yêu thích
Người dùng đã đăng nhập tài khoản Google vào ứng dụng và đã nhấn yêu thích một bộ phim đã xem
Người dùng xem xem/xóa thành công các bộ phim từ mục yêu thích
1 Từ giao diện chính của ứng dụng, người dùng nhấn sang màn hình hồ sơ
2 Hệ thống hiển thị lên giao diện hồ sơ
3 Người dùng nhấn chọn mục yêu thích
4 Hệ thống hiển thị lên màn hình yêu thích cùng với các bộ phim mà người dùng đã thích.
5 Người dùng nhấn dữ vào bộ phim đầu tiên trên danh sách
6 Hệ thống hiển thị lên hộp thoại xác nhận xóa gồm 2 nút: xóa, hủy
7 Người dùng chọn nút xóa
8 Hệ thống xóa bộ phim đã chọn khỏi mục yêu thích
4 Hệ thống không có bất kỳ bộ phim nào để hiển thị
8 Hệ thống xóa bộ phim thất bại
Chức năng tìm kiếm phim theo từ khóa
Người dùng đã truy cập vào ứng dụng
Hệ thống đề xuất các bộ phim được tìm thấy có tên trùng với keyword mà người dùng nhập vào ô tìm kiếm
1 Từ giao diện chính của ứng dụng, người dùng nhấn sang màn hình khám phá.
2 Hệ thống hiển thị giao diện khám phá bao gồm một ô tìm kiếm.
3 Người dùng nhập vào ô tìm kiếm với từ khóa: love và nhấn tìm kiếm.
4 Hệ thống hiển thị ra danh sách các bộ phim được tìm thấy có tên phim chứa từ khóa mà người dùng đã nhập.
4 Không có bộ phim nào được tìm thấy.
Hậu điều kiện Người dùng có thể xem được nội dung phim.
Kịch bản 1 Người dùng truy cập vào ứng dụng.
Khi truy cập vào hệ thống, người dùng sẽ được chào đón bởi giao diện trang chủ thân thiện với các bộ phim được gợi ý theo nhiều chủ đề đa dạng, bao gồm hoạt hình, hành động, kinh dị, trinh thám, hài kịch, lãng mạn và phiêu lưu.
3 Người dùng nhấn chọn bộ phim OMG 2 (2023) thuộc thể loại hài kịch
Hệ thống hiển thị giao diện xem phim cung cấp một số tính năng quan trọng, bao gồm giao diện xem phim trực quan, thông tin chi tiết về tên phim, lượt xem và các nút tương tác như thích, không thích, yêu thích Ngoài ra, hệ thống cũng gợi ý danh sách các bộ phim có chủ đề liên quan đến bộ phim đang xem, giúp người dùng khám phá thêm nhiều nội dung hấp dẫn.
5 Người dùng nhấn vào tên bộ phim đang phát
Khi xem phim, hệ thống sẽ hiển thị thông tin chi tiết về bộ phim, bao gồm tên phim, thể loại, số tập, điểm đánh giá, ngày ra mắt và nội dung tóm tắt phim, giúp người dùng dễ dàng nắm bắt thông tin cần thiết.
Ngoại lệ 4.1 Tải dữ liệu phim không thành công
4.2 Không có bộ phim liên quan nào tới phim đang chiếu được hiển thị.
Lớp thực thể
a Mô tả hệ thống trong một đoạn văn
Hệ thống là một ứng dụng được phát triển trên nền tảng Android cho phép người sử dụng có thể xem các bộ phim giải trí trên đó.
Người dùng có thể thực hiện các chức năng như đăng nhập, đăng xuất, chỉnh sửa thông tin tài khoản và đăng ký tài khoản vip với các gói đăng ký khác nhau để xem phim vip Họ cũng có thể xem lịch sử mua vip, lịch sử các bộ phim đã xem, danh sách các bộ phim yêu thích và cài đặt chức năng ứng dụng Ngoài ra, người dùng có thể tìm kiếm phim theo tên, xem danh sách các bộ phim theo từng chủ đề, xem phim, xem thông tin về bộ phim và tương tác với bộ phim đang xem thông qua các chức năng như like, dislike, yêu thích.Danh từ xuất hiện trong đoạn văn: người dùng, chức năng, tài khoản, gói đăng ký, bộ phim, lịch sử, danh sách, ứng dụng, tên, chủ đề, thông tin, tương tác.
+ Các danh từ liên quan đến người: người dùng.
Khi nói đến quản lý thông tin, có một số yếu tố quan trọng cần được xem xét Thông tin tài khoản và lịch sử mua VIP là những dữ liệu quan trọng cần được lưu trữ và bảo mật Bên cạnh đó, lịch sử các bộ phim đã xem và danh sách các bộ phim đã nhấn yêu thích cũng cần được quản lý hiệu quả để mang lại trải nghiệm tốt nhất cho người dùng Ngoài ra, gói đăng ký và thông tin về bộ phim cũng cần được cập nhật và quản lý thường xuyên để đảm bảo tính chính xác và hữu ích.
+ Các danh từ liên quan đến vật: phim. c Đánh giá và lựa chọn các danh từ làm lớp thực thể hoặc thuộc tính
+ Các danh từ liên quan đến người: o Người dùng -> User (trừu tượng): avatar, tên người dùng, địa chỉ, số điện thoại, giới tính, tài khoản vip.
Các danh từ liên quan đến vật như phim được phân loại vào lớp Film, bao gồm các thuộc tính như tên phim, số tập, thể loại, lượt xem, ngày ra mắt, phân loại phim vip hay không, số lượt like/dislike, mô tả phim, điểm đánh giá và avatar phim.
Để xây dựng hệ thống đề xuất nội dung hiệu quả, chúng ta cần xác định các danh từ liên quan đến thông tin người dùng, bao gồm số lượt like, dislike, danh sách các bộ phim yêu thích, lịch sử mua vip, lịch sử các bộ phim đã xem và danh sách các bộ phim nhấn yêu thích Những thông tin này sẽ giúp chúng ta xác định quan hệ số lượng giữa các thực thể, từ đó đề xuất lớp phù hợp như LikeDislike, HistoryBuyVip, HistoryWatched và FavoriteFilm.
Một người dùng có thể thực hiện nhiều hành động khác nhau với một bộ phim, chẳng hạn như thích, không thích hoặc yêu thích, và ngược lại, một bộ phim cũng có thể nhận được nhiều lượt thích, không thích hoặc yêu thích từ người dùng Điều này cho thấy mối quan hệ giữa người dùng và bộ phim là quan hệ nhiều-nhiều (n-n), do đó cần có lớp trung gian để quản lý các tương tác này, được gọi là lớp UserFilm Ngoài ra, mối quan hệ giữa bộ phim và các phản ứng (reaction) là quan hệ một-nhiều (1-n), vì một bộ phim có thể nhận được nhiều lượt phản ứng khác nhau từ người dùng.
+ Một người có nhiều lịch sử xem phim -> quan hệ giữa User và
HistoryWatched là: 1-n e Xác định quan hệ đối tượng giữa các thực thể
Phân tích lớp Module
Khi truy cập vào ứng dụng, giao diện chính hiện ra và hiển thị danh sách các bộ phim được phân loại theo từng chủ đề Để đạt được điều này, cần xử lý dữ liệu dưới hệ thống và đề xuất lớp HomeView để hiển thị danh sách phim một cách hiệu quả.
Tìm danh sách các phim của từng chủ đề dựa theo mã chủ đề.
Output: danh sách các bộ phim theo từng chủ đề.
Đề xuất phương thức getListFilmByCategory(), gán cho lớp Film.
Để có thể xem một bộ phim, người dùng cần chọn một bộ phim mong muốn, sau đó chuyển sang giao diện xem phim Tại đây, nội dung phim sẽ được phát cùng với các thông tin liên quan đến phim, chẳng hạn như tóm tắt, diễn viên, đạo diễn, Để thực hiện điều này, cần có một lớp PlayerView để xử lý và hiển thị thông tin phim một cách hiệu quả Quá trình này đòi hỏi phải xử lý dữ liệu dưới hệ thống để cung cấp thông tin chính xác và đầy đủ về bộ phim đã chọn.
Tìm kiếm thông tin của bộ phim theo mã phim -> đề xuất phương thức getFilmById().
Input: mã id của bộ phim.
Output: thông tin bộ phim.
Bước 3: giao diện xem thông tin về bộ phim -> đề xuất lớp InfoView với đầu ra là: thông tin của bộ phim. b Module đăng ký tài khoản vip
Bước 1: truy cập vào app, giao diện chính của ứng dụng hiện ra -> đề xuất lớp HomeView gồm các thành phần: o Nút submit: subHoSo.
Bước 2: người dùng nhấn vào nút subHoSo, hệ thống chuyển qua giao diện hồ sơ -> đề xuất lớp PersonView gồm các thành phần: o Nút đăng nhập: subLogin.
Khi người dùng nhấn vào nút đăng nhập, hệ thống sẽ chuyển qua giao diện đăng nhập, tại đây chúng tôi đề xuất lớp LoginView bao gồm các thành phần quan trọng Trong đó, nút đăng nhập sử dụng tài khoản Google được gọi là subLoginGoogle, cho phép người dùng đăng nhập vào hệ thống một cách nhanh chóng và tiện lợi Để đảm bảo quá trình đăng nhập diễn ra an toàn và hiệu quả, cần xử lý dưới hệ thống để kiểm soát và quản lý thông tin người dùng.
Lấy thông tin tài khoản google của người dùng và tiến hành đăng nhập vào app và lưu thông tin người dùng.
Input: username tài khoản google của người dùng.
Output: thông tin đăng nhập.
Sau khi đăng nhập thành công vào hệ thống, người dùng sẽ được chuyển đến màn hình đăng ký VIP Tại đây, màn hình sẽ hiển thị đề xuất lớp BuyVipView, bao gồm các thành phần quan trọng như danh sách các gói đăng ký được hiển thị trong phần outListBuyVip, giúp người dùng dễ dàng lựa chọn gói đăng ký phù hợp với nhu cầu của mình.
Để lấy được danh sách các gói đăng ký, cần xử lý dưới hệ thống bằng cách đề xuất phương thức getListBuyVip() cho lớp BuyVip, giúp lấy các gói đăng ký một cách hiệu quả Ngoài ra, nút mua ngay cũng cần được tích hợp với phương thức này, có thể được đặt tên là subBuyNow để tạo sự tiện lợi cho người dùng.
Khi người dùng nhấp vào một gói đăng ký, hệ thống sẽ tự động chuyển sang giao diện thanh toán Để phục vụ quá trình này, chúng tôi đề xuất lớp PaymentView với các thành phần chính bao gồm: số tiền cần thanh toán (outPrice), mã giao dịch (code) và nút xác nhận thanh toán (subConfirm) để người dùng có thể dễ dàng hoàn tất giao dịch của mình.
Sau khi người dùng nhấn nút xác nhận thanh toán, hệ thống sẽ tự động cập nhật lại thông tin tài khoản người dùng, chuyển đổi lên tài khoản VIP Điều này cho phép người dùng tận hưởng các tính năng và quyền lợi đặc biệt của tài khoản VIP.
Bước 1: người dùng truy cập vào ứng dụng, giao diện chính của ứng dụng hiện ra -> đề xuất lớp HomeView bao gồm các thành phần: o Nút tìm kiếm: subDiscovery.
Khi người dùng nhấn vào nút tìm kiếm, hệ thống sẽ hiển thị giao diện tìm kiếm với các thành phần quan trọng bao gồm nút tìm kiếm và ô nhập dữ liệu tìm kiếm Để thực hiện chức năng tìm kiếm, hệ thống cần xử lý tìm kiếm các bộ phim có tên phim chứa ký tự trùng khớp với dữ liệu mà người dùng đã nhập Điều này có thể được thực hiện thông qua phương thức findFilmByName() được đề xuất cho lớp Film, cho phép người dùng tìm kiếm các bộ phim một cách hiệu quả và chính xác.
Input: dữ liệu người dùng nhập
Output: danh sách các bộ phim.
Phân tích hoạt động
1 khi truy cập vào ứng dụng, hệ thống sẽ gọi lớp HomeView.
2 lớp HomeView gọi lớp Film.
3 lớp Film gọi phương thức getListFilmByCategory() để lấy danh sách các bộ phim của mỗi chủ đề.
4 lớp Film trả kết quả cho lớp HomeView.
5 lớp HomeView hiển thị lên giao diện người dùng.
6 người dùng click vào một bộ phim bất kỳ.
7 lớp HomeView gọi lớp PlayerView.
8 lớp PlayerView gọi lớp Film.
9 lớp Film gọi phương thức getFilmDetail() để lấy dữ liệu Film.
10 lớp Film trả về kết quả cho lớp PlayerView.
11 lớp PlayerView hiển thị giao diện cho người dùng.
12 người dùng click xem thông tin phim.
13 lớp PlayerView gọi lớp InfoFilmView.
14.lớp InfoFilmView gọi lớp Film.
15 lớp Film gọi phương thức getInfoFilm() để lấy thông tin về bộ phim.
16 lớp Film trả kết quả về lớp InfoFilmView.
17 lớp InfoFilmView hiển thị thông tin cho người dùng. b Module đăng ký tài khoản vip
1 người dùng truy cập vào ứng dụng.
2 lớp HomeView xuất hiện với người dùng.
3 người dùng nhấn nút: hồ sơ.
4 lớp HomeView gọi lớp PersonView.
5 lớp PersonView hiển thị với người dùng.
6 người dùng click nút: đăng nhập.
7 lớp PersonView gọi lớp LoginView.
8 lớp LoginView hiển thị giao diện với người dùng.
9 người dùng click đăng nhập sử dụng tài khoản google.
10 lớp LoginView gọi lớp User.
11 lớp User gọi phương thức getInforUser().
12 phương thức getInforUser() trả về lớp Loginview.
13 lớp Loginview trả về lớp PersonView.
14 lớp PersonView hiển thị với người dùng.
15 người dùng click nút mua premium.
16 lớp PersonView gọi lớp BuyVipView.
17 lớp BuyVipView hiển thị với người dùng.
18 người dùng chọn gói vip và nhấn mua ngay.
19 lớp BuyVipView gọi lớp PaymentView.
20 lớp PaymentView hiển thị với người dùng.
22 lớp PaymentView gọi lớp User.
23 lớp User gọi lớp updateAccountVip() để cập nhập tài khoản vip.
24 lớp User trả về lớp BuyVipiew
25 lớp BuyVipView hiển thị thông báo mua vip thành công mới người dùng. c Module tìm kiếm
1 khi người dùng truy cập vào app, hệ thống sẽ gọi lớp HomeView.
2 lớp HomeView hiển thị giao diện với người dùng.
3 người dùng nhấn nút: tìm kiếm.
4 lớp HomeView gọi lớp SearchView.
5 lớp SearchView hiển thị giao diện với người dùng.
6 người dùng nhập tên phim và nhấn nút tìm kiếm.
7 lớp SearchView gọi lớp Film.
8 lớp Film gọi phương thức getListFilmByName() để lấy danh sách phim mà trong đó tên phim chứa ký tự mà người dùng nhập.
9 lớp Film trả về lớp SearchView.
10 lớp SearchView hiển thị thông tin lên người dùng.
Thiết kế lớp thực thể
Với đầu vào là biểu đồ lớp thực thể pha phân tích, tiến hành bổ sung các thông tin như sau:
Bổ sung id cho các lớp.
Bổ sung kiểu dữ liệu cho các thuộc tính sử dụng ngôn ngữ Kotlin
Quan hệ User – Film -> chuyển thành UserFilm chứa User và Film
Bổ sung các thuộc tính thành phần của quan hệ hợp thành/gắn chặt, ta thu được biểu đồ lớp thực thể pha thiết kế
Thiết kế CSDL
+ Mỗi lớp thực thể đề xuất một bảng tương ứng:
+ Đưa thuộc tính không phải đối tượng của lớp thực thể thành thuộc tính của bảng tương ứng:
+ Chuyển quan hệ số lượng giữa các lớp thực thể thành quan hệ số lượng giữa các bảng:
+ Bổ sung các thuộc tính khóa Khóa chính được thiết lập với thuộc tính id của các bảng tương ứng.
+ Khóa ngoại được thiết lập cho các bảng:
1 tblUser – n tblHistoryBuyVip => tblHistoryBuyVip có khóa ngoại tblUserId
1 tblUser – n tblFavorite => tblFavorite có khóa ngoại tblUserId
1 tblUser – n tblHistoryWatched => tblHistoryWatched có khóa ngoại tblUserId
1 tblUser – n tblLikeDislike => tblLikeDislike có khóa ngoại tblUserId
1 tblFilm – n tblLikeDislike => tblLikeDislike có khóa ngoại tblFilmId+ Loại bỏ các thuộc tính gây dư thừa dữ liệu: không có
Thiết kế
Thiết kế giao diện
Các giao diện xuất hiện trong biểu đồ:
Thiết kế động
Tầng giao diện có: HomeView, PlayerView, InfoView.
Tầng thao tác dữ liệu có: FilmDAO.
1 người dùng truy cập vào ứng dụng
2 lớp HomeView gọi lớp FilmDAO
3 lớp FilmDAO gọi phương thức getListFilmByCategory() để lấy danh sách các bộ phim theo các chủ đề khác nhau.
4 lớp FilmDAO gọi lớp Film để đóng gói thông tin.
5 lớp Film đóng gói thông tin thực thể.
6 lớp Film trả kết quả có phương thức getListFilmByCategory().
7 lớp FilmDAO trả về kết quả cho lớp HomeView.
8 lớp HomeView hiển thị ra danh sách các bộ phim cho người dùng.
9 người dùng click vào một bộ phim.
11 lớp PlayerView gọi lớp FilmDao
12 lớp FilmDao gọi phương thức getFilmDetail() để lấy nội dung phim.
13 phương thức getFilmDetail() gọi lớp Film để đóng gói thông tin.
14 lớp Film đóng gói thông tin thực thể.
15 lớp Film trả kết quả về cho phương thức getFilmDetail().
16 lớp FilmDao trả kết quả về cho lớp PlayerView.
17 lớp PlayerView hiển thị kết quả lên cho người dùng.
18 người dùng click xem thông tin phim.
19 lớp InfoFilmView gọi lớp FilmDao.
20 lớp FilmDao gọi phương thức getInfoFilm().
21 lớp getInfoFilm() gọi lớp Film để đóng gói thông tin.
22 lớp Film đóng gói thông tin thực thể.
23 lớp Film trả kết quả cho lớp FilmDap.
24 lớp FilmDao trả kết quả cho lớp InfoFilmView.
25 lớp InfoFilmView hiển thị thông tin lên người dùng.
+ Module đăng ký tài khoản vip
Tầng giao diện gồm: HomeView, PersonView, LoginView, BuyVipView, PaymentView.
Khi người dùng truy cập vào ứng dụng, lớp HomeView sẽ xuất hiện và hiển thị lên người dùng Sau đó, người dùng có thể click nút hồ sơ để chuyển đến lớp PersonView, nơi họ có thể đăng nhập vào tài khoản của mình Quá trình đăng nhập sẽ được thực hiện thông qua lớp LoginView, lớp này sẽ gọi lớp UserDao để lấy thông tin người dùng từ phương thức getInfoUser () Sau khi đăng nhập thành công, người dùng có thể click nút mua premium để chuyển đến lớp BuyVipView, nơi họ có thể chọn gói vip và thực hiện thanh toán thông qua lớp PaymentView Cuối cùng, lớp PaymentView sẽ gọi lớp UserDao để cập nhật tài khoản vip thông qua phương thức updateAccountVip(), và lớp BuyVipView sẽ hiển thị thông tin mua thành công đến người dùng.
Tầng giao diện gồm: HomeView, SearchView.
Tầng thao tác dữ liệu: FilmDao.
1 người dùng truy cập vào ứng dụng.
2 lớp HomeView xuất hiện và hiển thị lên giao diện người dùng.
3 người dùng nhấn nút khám phá.
4 lớp HomeView gọi lớp SearchView.
6 người dùng nhập tên phim muốn tìm và nhấn nút tìm kiếm.
7 lớp SearchView gọi lớp FilmDao.
8 lớp FilmDao gọi phương thức findFilmByName() đề tìm kiếm danh sách các bộ phim có tên chứa ký tự mà người dùng nhập.
9 phương thức findFilmBuName() gọi lớp Film đề đóng gói dữ liệu.
10 lớp Film đóng gói thông tin.
11 lớp Film trả về kết quả cho lớp FilmDao.
12 lớp FilmDao trả kết quả về cho lớp SearchView.
13 lớp SearchView hiển thị kết quả tìm kiếm cho người dùng.
STT Feature Test case description Test data Expected result Tester Date Result Note
1 Test UI Kiểm tra font chữ, chính tả Tất cả font chữ trong app đều cùng một loại và không có lỗi chính tả
2 Kiểm tra hiệu ứng khi nhấn các button
Tất cả các button đều có hiệu ứng khi click
3 Test chức năng đăng nhập
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
4 click chọn nút đăng nhập sử dụng tài khoản
Tài khoản đăng nhập: tp890098@gmail. com Đăng nhập thành công vào ứng dụng
4 Test chức năng cập nhập thông tin người dùng
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
3 click chỉnh sửa thông tin
4 nhập đầy đủ thông tin người dùng vào các trường
Phạm Xuân Trường Địa chỉ: Hải Dương
Cập nhập thông tin thành công
5 Test chức năng thông báo khi bỏ trống trường Tên người dùng khi cập nhập thông tin người dùng
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
3 click chỉnh sửa thông tin
4 nhập thông tin vào các trường ngoại trừ: tên người dùng
5 nhấn nút cập nhập Địa chỉ: Hải Dương
Hệ thống báo lỗi, yêu cầu nhập tên người dùng
6 Test bỏ trống các 1 truy cập vào ứng dụng Tên người dùng:
Phạm Xuân Hệ thống vẫn cho cập nhập Trường 29/11/2023 Passed thông tin người dùng ngoại trừ trường Tên người dùng
3 click chỉnh sửa thông tin
4 nhập thông tin vào trường
Tên người dùng, các trường còn lại bỏ trống
7 Test chức năng đăng xuất
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
3 click chỉnh sửa thông tin người dùng
Hệ thống đăng xuất tài khoản người dùng khỏi app và xoá thông tin người dùng
8 Test chức năng mua vip khi chưa đăng nhập tài khoản
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
Hệ thống hiển thị thông báo yêu cầu đăng nhập tài khoản
9 Test chức năng mua vip
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
6 nhấn nút Xác nhận thanh toán
Thanh toán thành công và tài khoản người dùng đã được nâng cấp lên vip
10 Test chức năng chọn gói vip cao hơn trong khi đã đăng ký gói vip thấp hơn
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
Hệ thống hiển thị thông báo người dùng đang sử dụng gói vip thấp.
(gói vip thấp hơn vẫn còn hạn sử dụng) premium năm
11 Test chức năng chọn đăng ký gói vip cao nhất trong khi người dùng đang sử dụng gói cao nhất
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
Hệ thống hiển thị thông báo người dùng đang sử dùng đang sử dụng gói vip cao nhất và không cho đăng ký nữa.
12 Test chức năng xem lịch sử đăng ký vip
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
4 nhấn nút xem lịch sử mua vip
Hệ thống hiển thị lên giao diện danh sách các gói vip đã mua
13 Test chức năng xem lịch sử các bộ phim đã xem (chưa xem bộ phim nào)
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
Hệ thống hiển thị giao diện trống
14 Test chức năng xem danh sách các bộ phim đã xem trước đó (đã xem phim)
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
Hệ thống hiển thị ra danh sách các bộ phim đã xem
15 Test chức năng xoá một bộ
1 truy cập vào ứng dụng
Hệ thống xoá bộ phim đã chọn khỏi
Trường 29/11/2023 Passed lịch sử xem xem
4 Nhấn dữ vào một bộ phim
16 Test chức năng xem tiếp nội dung phim tại thời điểm trước đo từ màn lịch sử xem
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
4 nhấn vào một bộ phim
Hệ thống phát tiếp nội dung phim kể từ thời điểm người dùng đã xem trước đó
17 Test chức năng xem danh sách các bộ phim đã thêm vào mục yêu thích
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
Hệ thống hiển thị ra danh sách các bộ phim đã thêm vào mục yêu thích
18 Test chức năng tìm kiếm phim theo tên
1 truy cập vào ứng dụng
2 chuyển qua giao diện khám phá
3 nhập tên phim muốn tìm trong ô nhập dữ liệu
4 nhấn nút tìm kiếm trên bàn phím điện thoại
Dữ liệu tìm kiếm: love
Hệ thống đưa ra danh sách các bộ phim có tên phim chứa ký tự love
19 Test chức năng tìm kiếm với dữ liệu nhập vào là ký tự đặc biệt
1 truy cập vào ứng dụng
2 chuyển qua giao diện khám phá3 nhập tên phim muốn tìm trong ô nhập dữ liệu
4 nhấn nút tìm kiếm trên bàn
Hệ thống không hiển thị ra dữ liệu
Trường 29/11/2023 Passed phím điện thoại
20 Test chức năng xem phim
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
Hệ thống chuyển qua màn hình phát phim và bắt đầu trình chiếu bộ phim
21 Test chức năng hiển thị danh sách các bộ phim liên quan đến phim đang phát
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
Hệ thống hiển thị ra danh sách các bộ phim có chủ đề tương tự như bộ phim đang chiếu
22 Test chức năng xem thông tin bộ phim đang chiếu
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
3 nhấn vào tên bộ phim đang chiếu
Hệ thống hiển thị ra thông tin chi tiết về bộ phim đang phát
23 Test chức năng Like 1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
Hệ thống cập nhập trạng thái like trên giao diện
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
Hệ thống cập nhập trạng thái Dislike trên giao diện
25 Test chức 1 truy cập vào Hệ thống xoá Trường 29/11/2023 Fail Hệ đã dislike phim bộ phim bất kỳ trên màn hình chính
3 nhấn nút like người dùng và cập nhập trạng thái like vẫn giữ của 2 trạng thái like, disli ke
26 Test chức năng dislike trong khi đã like phim
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
Hệ thống xoá trạng thái like của người dùng và cập nhập trạng thái dislike
Trường 29/11/2023 Fail Hệ thốn g vẫn giữ của 2 trạng thái like, disli ke
27 Test chức năng thêm phim vào mục yêu thích
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
Hệ thống cập cập trạng thái yêu thích bộ phim của người dùng
Yêu thích trong khi người dùng đã nhấn yêu thích
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
Hệ thống xoá trạng thái yêu thích trước đó của người dùng
29 Test chức năng điều chỉnh tốc độ phát phim
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
3 nhấn nút: điều chỉnh tốc
Hệ thống phát phim với tốc độ 2x
4 chọn tốc độ phát là 2
30 Test chức năng toàn màn hình khi phát phim
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
3 nhấn nút: toàn màn hình
Hệ thống phát phim trong chế độ toàn màn hình
31 Test chức năng phát bộ phim tại lục các bộ phim liên quan đến phim đang chiếu
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
3 chọn một bộ phim trong mục
Bạn cũng có thể thích
Hệ thống phát bộ phim đã chọn, cập nhập lại thông tin phim và load lại danh sách các bộ phim có chủ đề liên quan
32 Test chức năng thu nhỏ màn hình chiếu phim khi nhấn nút home trên điện thoại
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
3 nhấn nút home trên màn hình điện thoại
Hệ thống thu nhỏ màn hình phát phim vào một góc điện thoại
Trường 29/11/2023 Fail Hệ thốn g tạo ra bản sao của ứng dụng
33 Test chức năng khi lưu lịch sử xem phim khi người dùng kết thúc phim trong lúc thu nhỏ màn hình
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
3 nhấn nút home trên màn hình điện thoại
4 nhấn nút thoát trên cửa sổ
Hệ thống lưu lại lịch sử xem phim của phim đang phát
Trường 29/11/2023 Fail năng khôi phục lại màn hình xem phim sau khi nhấn nút toàn màn hình trong trình thu nhỏ ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
3 nhấn nút home trên màn hình điện thoại
4 nhấn nút toàn màn hình chuyển về màn hình phát phim ban đầu
35 Test chức năng nhấn vào bộ phim vip khi chưa đăng ký tài khoản vip
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim vip bất kỳ
Hệ thống chuyển qua giao diện phát phim và thông báo cần tài khoản vip để có thể xem bộ phim và không phát phim
36 Test chức năng phát phim khi nhấn vào một bộ phim víp từ danh sách các phim liên quan đến phim đang phát
(chưa đăng ký tài khoản vip)
1 truy cập vào ứng dụng
2 nhấn vào một bộ phim bất kỳ trên màn hình chính
3 nhấn vào một bộ phim vip
Hệ thống thông báo cần tài khoản vip để có thể xem bộ phim và không phát phim
Trường 29/11/2023 Fail Hệ thốn g vẫn phát bộ phim vip trong khi ngườ
I dùng chưa đăng ký tài khoả n vip
37 Test chức năng đăng nhập lại vào app sau
1 truy cập vào ứng dụng
2 nhấn vào mục hồ sơ
Hệ thống đăng nhập thành công tài khoản
Trường 29/11/2023 Fail Bị thiếu thôn g tin khi đã đăng xuất 3 nhấn nút đăng nhập
4 nhấn nút đăng nhập bằng tài khoản google
5 chọn tài khoản đã đăng nhập trước đó trước đó đã đăng xuất và lấy lại các thông tin người dùng tài khoả n vip trong khi trước đó ngườ i dùng đã đăng ký vip trước đó
38 Test chức năng xoá phim khỏi mục yêu thích trong màn hình hiển thị danh sách các phim đã thêm vào mục yêu thích
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
4 nhấn giữ vào một bộ phim hiển thị lên danh sách các phim
Hệ thống xoá bộ phim đã chọn khỏi mục yêu thích và cập nhập lại danh sách
39 Test chức năng xoá phim khỏi mục yêu thích từ màn hình xem phim
1 truy cập vào ứng dụng
2 chuyển qua giao diện hồ sơ
4 nhấn vào một bộ phim hiển thị lên danh sách các phim
5 nhấn nút Yêu thích trong màn hình phát phim
Hệ thống tự động xoá bộ phim đã nhấn khỏi mục yêu thích và cập nhập lại danh sách
Trường 29/11/2023 Fail Bộ phim đã xoá từ màn phát phim vẫn còn trong màn hình