YÊU CẦU CHỨC NĂNG

Một phần của tài liệu Đồ án lập trình web đề tài xây dựng web xem phimonline (Trang 26)

Nhóm các chức năng thuộc phần quản trị:

11

Quản lí phim: Chức năng thêm, sửa, xoá các thông tin của bộ phim.  Quản lý thể loại: Chức năng thêm, sửa, xoá các thông tin thể loại của bộ phim.

Quản lý thẻ tag: Chức năng thêm, sửa, xoá các thẻ tag của bộ phim.  Quản lý quốc gia: Chức năng thêm, sửa, xoá các quốc gia sản xuất của bộ phim.

Quản lý ngôn ngữ: Chức năng thêm, sửa, xoá các ngôn ngữ gốc của bộ phim.

Quản lý đạo diễn: Chức năng thêm, sửa, xoá các đạo diễn của bộ phim.

Quản lý diễn viên: Chức năng thêm, sửa, xoá các diễn viện của bộ phim.

Nhóm các chức năng thuộc phần tài khoản:

Đăng nhập: Cho phép đăng nhập vào tài khoản người dùng, người quản trị, biên tập viên và điều hướng tới trang phù hợp.

Đăng xuất: Đăng xuất khỏi tài khoản, xóa phiên người dùng hiện tại.  Đăng ký: Đăng ký 1 tài khoản mới tài khoản người dùng mới

Xác minh tài khoản: Sau khi kích hoạt tài khoản thành công, người dùng có thể đăng nhập vào website.

Lấy lại mật khẩu: Hỗ trợ người dùng, người quản trị, biên tập viên có thể tạo mới mật khẩu nếu như quên mật khẩu hiện tại.

Nhóm các chức năng thuộc phần dành cho người dùng, khách truy cập:

Phim mới nhất: Lấy ra danh sách phim mới được thêm.

Phim theo thể loai: Lấy ra danh sách phim theo thể loại được yêu cầu.  Danh sách thể loại: Danh sách thể loại phim của trang web đang có.  Chi tiết phim: Lấy ra toàn bộ thông tin phim bao gồm: tên, mô tả, đạo diễn, diễn viên, ngôn ngữ, quốc gia,…

Trang xem phim: Trang có chức năng cho người dùng xem phim đã chọn.

Tìm kiếm phim: Tìm những bộ phim có tên chứa từ khóa được nhập vào.

12

CHƯƠNG 3. THIẾT KẾ HỆ THỐNG 1. LƯỢC ĐỒ DIAGRAM

Hình 7: Lược đồ Diagram

2. CÁC BẢNG TRONG CƠ SỞ DỮ LIỆU2.1. Bảng người dùng (User) 2.1. Bảng người dùng (User)

Bảng người dùng (User) là bảng lưu trữ thông tin tài khoản của người dùng và người quản trị. STT Tên trường (thuộc tính) 1 ID 2 userName 3 surName 13 download by : skknchat@gmail.com

4 middleName 5 name 6 email 7 phoneNumber 8 password 9 salt 10 description 11 activated 12 roleId 13 createAt 14 updateAt

Bảng 2: Cấu trúc dữ liệu bảng người dùng (User)

2.2. Bảng vai trò người dùng (Role)

Bảng vai trò của người dùng (Role) là bảng lưu trữ các mức quyền hạn của người dùng. STT Tên trường (thuộc tính) 1 ID 2 name 3 createAt 4 updateAt

Bảng 3: Cấu trúc dữ liệu bảng vai trò người dùng (Role)

2.3. Bảng phản ứng của người dùng (UserReaction)

Bảng phản ứng của người dùng (UserReaction) là bảng lưu trữ các thao tác thích, không thích phim của người dùng.

14

STT Tên trường (thuộc tính) 1 filmId 2 userId 3 upvoted 4 downvoted 5 createAt 6 updateAt

Bảng 4: Cấu trúc dữ liệu bảng phản ứng của người dùng (UserReaction)

2.4. Bảng phương thức thanh toán (PaymentMethod)

Bảng phương thức thanh toán (PaymentMethod) lưu trữ thông tin các phương thức thanh toán. STT Tên trường (thuộc tính) 1 ID 2 name 3 createAt 4 updateAt

Bảng 5: Cấu trúc dữ liệu bảng phương thức thanh toán (PaymentMethod)

2.5. Bảng thông tin thanh toán (PaymentInfo)

Bảng thông tin thanh toán (PaymentInfo) là bảng lưu trữ thông tin thanh toán của người dùng.

15

STT Tên trường (thuộc tính) 1 userId 2 paymentMethodId 3 cardNumber 4 cvv 5 owner 6 expirationDate 7 createAt 8 updateAt

Bảng 6: Cấu trúc dữ liệu bảng thông tin thanh toán (PaymentInfo)

2.6. Bảng thể loại (Category)

Bảng thể loại (Category) là bảng lưu trữ thông tin thể loại.

STT Tên trường (thuộc tính) 1 ID 2 name 3 description 4 createAt 5 updateAt

Bảng 7: Cấu trúc dữ liệu bảng thể loại (Category)

2.7. Bảng thẻ Tag (Tag)

Bảng thẻ Tag (Tag) là bảng lưu trữ thông tin thẻ tag.

1 6

STT Tên trường (thuộc tính) 1 ID 2 name 3 description 4 createAt 5 updateAt

Bảng 8: Cấu trúc dữ liệu bảng thẻ Tag (Tag)

2.8. Bảng quốc gia (Country)

Bảng quốc gia (Country) là bảng lưu trữ thông tin quốc gia của phim

STT Tên trường (thuộc tính) 1 ID 2 name 3 description 4 createAt 5 updateAt

Bảng 9: Cấu trúc dữ liệu bảng quốc gia (Country)

2.9. Bảng ngôn ngữ (Language)

Bảng ngôn ngữ (Language) là bảng lưu trữ thông tin ngôn ngữ của phim.

STT Tên trường (thuộc tính) 1 ID 2 name 3 description 4 createAt 17 download by : skknchat@gmail.com

5 updateAt

Bảng 10: Cấu trúc dữ liệu bảng ngôn ngữ (Language)

2.10. Bảng đạo diễn (Director)

Bảng đạo diễn (Director) là bảng lưu trữ thông tin đạo diễn.

STT Tên trường (thuộc tính) 1 ID 2 name 3 description 4 createAt 5 updateAt

Bảng 11: Cấu trúc dữ liệu bảng đạo diễn (Director)

2.11. Bảng diễn viên (Cast)

Bảng diễn viên (Cast) là bảng lưu trữ thông tin diễn viên.

STT Tên trường (thuộc tính) 1 ID 2 name 3 description 4 createAt 5 updateAt

Bảng 12: Cấu trúc dữ liệu bảng diễn viên (Cast)

2.12. Bảng phân phối thể loại (CategoryDistribution)

Bảng phân phối thể loại (CategoryDistribution) là bảng lưu trữ thông tin các thể loại của phim.

STT Tên trường

(thuộc tính)

Kiểu dữ liệu Mô tả

18

1 categoryId

2 filmId

3 createAt 4 updateAt

Bảng 13: Cấu trúc dữ liệu bảng phân phối thể loại (CategoryDistribution)

2.13. Bảng phân phối thẻ Tag (TagDistribution)

Bảng phân phối thẻ Tag (TagDistribution) là bảng lưu trữ thông tin các thẻ tag của phim. STT Tên trường (thuộc tính) 1 tagId 2 filmId 3 createAt 4 updateAt

Bảng 14: Cấu trúc dữ liệu bảng phân phối thẻ Tag (TagDistribution)

2.14. Bảng đạo điễn của phim (DirectorOfFilm)

Bảng đạo điễn của phim (DirectorOfFilm) là bảng lưu trữ các đạo diễn của phim.

STT Tên trường

(thuộc tính)

1 directorId

2 filmId

3 role 4 createAt 5 updateAt

Bảng 15: Cấu trúc dữ liệu bảng đạo diễn của phim (DirectorOfFilm)

2.15. Bảng diễn viên của phim (CastOfFilm)

Bảng diễn viên của phim (CastOfFilm) là bảng lưu trữ thông tin các diễn viên của phim. STT Tên trường (thuộc tính) 1 castId 2 filmId 3 role 4 createAt 5 updateAt

Bảng 16: Cấu trúc dữ liệu bảng diễn viên của phim (CastOfFilm)

2.16. Bảng phim (Film)

Bảng phim (Film) là bảng lưu trữ thông tin phim

STT

1 ID

2 name

20

3 description 4 countryId 5 productionCompany 6 languageId 7 releaseDate 8 upvote 9 downvote 10 views 11 duration 12 thumbnail 13 source 14 createAt 15 updateAt

Bảng 17: Cấu trúc dữ liệu bảng phim (Film)

21

CHƯƠNG 4. XÂY DỰNG CHƯƠNG TRÌNH

1. GIAO DIỆN PHẦN NGƯỜI DÙNG, KHÁCH TRUY CẬP1.1. Trang chủ 1.1. Trang chủ

Hiển thị các phim mới nhất, danh sách thể loại và danh sách phim theo từng thể loại.

Hình 8: Giao diện trang chủ

1.2. Trang phim theo thể loại

Hiển thị danh sách phim theo thể loại, kèm theo là thông tin số lượng phim của thể loại đó.

Hình 9: Giao diện trang phim theo thể loại

22

1.3. Trang danh sách thể loại

Hiển thị danh sách thể loại bao gồm các thông tin như sau: Tên thể loại, Số lượng phim và liên kết tới trang phim theo thể loại.

Hình 10: Giao diện trang danh sách thể loại

1.4. Trang kết quả tìm kiếm

Hiển thị danh sách các kết quả (phim) của từ khóa được tìm kiếm, kèm theo là thông tin số lượng kết quả tìm kiếm được.

Hình 11: Giao diện trang kết quả tìm kiếm

1.5. Trang lịch sử xem phim của phiên đăng nhập

Hiển thị các phim đã xem trong phiên đăng nhập, sau khi đăng xuất hoặc hết hạn phiên thì dữ liệu sẽ tự xóa.

23

Hình 12: Giao diện trang lịch sử xem phim của phiên đăng nhập

1.6. Trang chi tiết phim

Hiển thị gần như đầy đủ các thông tin của phim bao gồm: tên, mô tả, hình ảnh, thể loại, thẻ tag, quốc gia, ngôn ngữ, lượt xem, diễn viên, đạo diễn. Trang có các chức năng cho phép đánh giá thích hoặc không thích phim.

Hình 13: Giao diện trang chi tiết phim

1.7. Trang xem phim

Hiển thị khung video cho phép xem phim

24

Hình 14: Giao diện trang xem phim

2. GIAO DIỆN PHẦN NGƯỜI DÙNG, KHÁCH TRUY CẬP (PHIÊN BẢN RÚT GỌN) (PHIÊN BẢN RÚT GỌN)

2.1. Trang chủ

Hiển thị danh sách phim mới nhất.

Hình 15: Giao trang chủ rút gọn

2.2. Trang phim theo thể loại

Hiển thị danh sách phim theo thể loại.

25

Hình 16: Giao diện trang phim theo thể loại rút gọn

2.3. Trang xem chi tiết

Hiển thị thông tin của phim, đã được lược bỏ bớt một số thông tin.

Hình 17: Giao diện trang xem chi tiết rút gọn

2.4. Trang xem phim

Hiển thị khung video cho phép xem phim

26

Hình 18: Giao diện trang xem phim rút gọn

3. GIAO DIỆN PHẦN TÀI KHOẢN

3.1. Trang đăng ký

Cho phép khách truy cập, người dùng tạo một tài khoản mới.

Hình 19: Giao diện trang đăng ký tài khoản

3.2. Trang đăng nhập

Đăng nhập vào trang web, với tài khoản có quyền User thì sẽ được chuyển hướng về trang chủ, đối với tài khoản có quyền Admin hoặc Editor thì sẽ chuyển hướng tới phần quản trị.

27

Hình 20: Giao diện trang đăng nhập tài khoản

3.3. Trang lấy lại mật khẩu

Cho phép người dùng nhập email của tài khoản để tiến hành lấy lại mật khẩu.

Hình 21: Giao diện trang lấy lại mật khẩu

3.4. Trang nhập mã xác nhận

Trang này cho phép người nhập mã xác nhận được gửi về địa chỉ email để thực hiện xác minh tài khoản cho các mục đích như kích hoạt tài khoản, lấy lại mật khẩu.

28

Hình 22: Giao diện trang nhập mã xác nhận

3.5. Trang nhập mật khẩu mới

Cho phép người dùng nhập mật khẩu mới để hoàn tất việc thay đổi mật khẩu.

Hình 23: Giao diện trang nhập mật khẩu mới

3.6. Trang đăng xuất

Đăng xuất, xóa phiên truy cập hiện tại

Hình 24: Giao diện trang đăng xuất

29

4. GIAO DIỆN PHẦN QUẢN TRỊ4.1. Trang tổng quan 4.1. Trang tổng quan

Cho phép người quản trị xem được tình trạng hệ thống, các thống kê cơ bản.

Hình 25: Giao diện trang tổng quan

4.2. Nhóm các trang xem danh sách

Hiển thị danh sách của các đối tượng như: Danh sách thể loại, thẻ tag, phim, ngôn ngữ, quốc gia,…

Hình 26: Giao diện một trang xem danh sách

4.3. Nhóm các trang xem chi tiết một đối tượng

Hiển thị chi tiết các đối tượng: Chi tiết thể loại, thẻ tag, phim, ngôn ngữ, quốc gia,…

30

Hình 27: Giao diện một trang xem chi tiết một đối tượng

4.4. Nhóm các trang tạo mới một đối tượng

Cho phép người quản trị có thể tạo mới một đối tượng: Tạo mới thể loại, thẻ tag, phim, ngôn ngữ, quốc gia,…

Hình 28: Giao diện một trang thêm mới một đối tượng

4.5. Nhóm các trang chỉnh sửa một đối tượng

Cho phép người quản trị có thể chỉnh sửa một đối tượng: Chỉnh sửa thể loại, thẻ tag, phim, ngôn ngữ, quốc gia,…

31

Hình 29: Giao diện một trang chỉnh sửa một đối tượng

4.6. Nhóm các trang xóa một đối tượng

Cho phép người quản trị có thể xóa một đối tượng: Xóa thể loại, thẻ tag, phim, ngôn ngữ, quốc gia,…

Hình 30: Giao diện một trang xóa một đối tượng

32

CHƯƠNG 5. KẾT LUẬN VÀ ĐỊNH HƯỚNG PHÁT TRIỂN 1. KẾT QUẢ ĐẠT ĐƯỢC

Sau một thời gian dài tìm hiểu, thực hiện các khảo sát đối với các website xem phim và nghiên cứu một số tài liệu về lập trình web bằng ASP.NET Web Forms. Từ đó, nhóm chúng em đã hoàn thành được cơ bản đề tài “Website xem phim online” với những kết quả đạt được như sau:

Về chức năng: Hệ thống website đã hoàn thiện được hầu hết chức năng cơ bản của một website xem phim như là:

 Người dùng có thể tạo tài khoản, đăng nhập, lấy lại mật khẩu và sử

dụng các chức năng như xem danh sách phim, tìm kiếm phim, xem chi tiết phim, xem phim,…

 Người quản trị có thể xem thống kê cơ bản như xem số lượng phim, thể

loại, thẻ tag, lượng người đang truy cập. Người quản trị sẽ được sử dụng các chức năng thêm, xóa, sửa, xem chi tiết phim, thể loại, ngôn ngữ, quốc gia,...

Về giao diện: Hệ thống đã phát triển được giao diện tương đối đẹp, bố cục gọn gàng. Hệ thống website có 4 phần giao diện bao gồm:

 Phần dành cho quản trị: Giao diện được thiết kế trên tông màu sáng, có

sidebar chứa những chức năng quản lý cần thiết. Các chức năng được thiết kế một cách tối ưu, đơn giản, không gây rối nhằm đáp ứng tốt cho người quản trị.

 Phần tài khoản: Giao diện được thiết kế trong tông màu tối, đáp ứng cơ

bản cho các chức năng đăng nhập, đăng ký và các thao tác khác liên quan đến tài khoản.

 Phần danh cho người dùng, khách truy cập: Giao diện được thiết kết

trên tông màu xanh tối, bố cục giao diện được sắp xếp hợp lý phù hợp nhằm mang tới những trải nghiệm tốt cho người dùng và khách truy cập.

 Phần danh cho người dùng, khách truy cập (phiên bản rút gọn): Giao

diện được rút gọn ở mức tối đa, loại bỏ các chức năng không cần thiết nhằm tăng tốc độ trong trường hợp tốc độ truy cập chậm.

33

Về hiệu năng: Hệ thống có hiệu năng ở mức chấp nhận được, khả năng đáp ứng của hệ thống tương đối nhanh. Hệ thống được kiểm tra tương đối kỹ, giảm thiểu được phần lớn các lỗi cố xảy ra.

Về kiến thức và kỹ năng: Thông qua đồ án này, nhóm em đã được tiếp cận thêm nhiều kiến thức mới về ngôn ngữ lập trình C#, cách sử dụng HTML, CSS, Javascript, thư viện Boostrap, Video.js,… để xây dựng giao diện. Bên cạnh đó, các kỹ năng tìm kiếm thông tin, phân tích nghiệp vụ, xử lý các vấn đề phát sinh trong quá trình làm đồ án được cải thiện lên rất nhiều.

2. KẾT QUẢ CHƯA ĐẠT ĐƯỢC

Song song với các kết quả đạt được bên trên thì hệ thống cũng còn nhiều thiếu sót về nhiều mặt như là:

Về chức năng: Hệ thống hiện tại vẫn còn thiếu những chức năng cần thiết và nâng cao như sau:

 Người dùng vẫn chưa có chức năng như bình luận, viết đánh giá phim,

thêm phim vào danh sách yêu thích, nhận thông báo khi có phim mới,… Chưa có các chức năng cập nhật thông tin cho tài khoản người dùng.

 Người quản trị chỉ có thể xem các thông kê cơ bản, các thống kê chi

tiết, công cụ phân tích vẫn chưa có. Các chức năng của phần quản trị được thiết kế chỉ đáp ứng được với lượng dữ liệu nhỏ.

Về giao diện: Phần lớn giao diện được thiết kế đẹp, tuy nhiên vẫn còn tại những vấn đề sau:

 Phần dành cho quản trị, phần tài khoản, phần danh cho người dùng,

khách truy cập (phiên bản rút gọn): Thiết kế chưa đáp ứng cho các thiết bị di động (chưa responsive).

 Phần danh cho người dùng, khách truy cập: Giao diện có nhiều thành

phần, kích thước lớn làm giảm hiệu năng cho hệ thống.

Về hiệu năng: Tại thời điểm hiện tại, hệ thống đáp ứng tốt các yêu cầu sử dụng. Tuy nhiên, trong tương lai khi quy mô của hệ thống thay đổi thì chắc chắn hệ thống sẽ không thể đáp ứng được các yêu cầu, lúc đó hệ thống phải được thiết kế lại.

Về bảo mật: Hệ thống vẫn tồn tại những lổ hổng tiềm ẩn. Những lổ hổng này nếu bị khai thác cho mục đích tấn công hệ thống thì sẽ gây ảnh hưởng lớn cho hệ thống.

3. ĐỊNH HƯỚNG PHÁT TRIỂN

Trong tương lai, nhóm chúng em sẽ tiếp tục phát triển các chức năng đang ở mức cơ bản của hệ thống. Bên cạnh đó, nhóm em sẽ phát triển thêm nhiều các chức năng mới cho hệ thống: Hỗ trợ thanh toán online, viết đánh giá phim, thông báo khi có phim mới, chức năng xử lý ảnh, lưu trữ video trên các nền tảng đám

34

mây,…

Việc cải thiện hiệu năng cũng vô cùng quan trọng trong tương lai khi mà lượng người dùng và dữ liệu ngày một nhiều lên. Giải pháp trong tương lai là tối ưu lại toàn bộ câu truy vấn cơ sở dữ liệu, thiết kế lại toàn bộ cơ sở dữ liệu, giao diện loại bỏ bớt hiệu ứng không cần thiết, chuyển hình ảnh và video lên nền tảng

Một phần của tài liệu Đồ án lập trình web đề tài xây dựng web xem phimonline (Trang 26)

w