ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
TRẦN VĂN THIỆT - 20521956
TRẦN ĐÌNH KHƠI - 20520594
ĐỒ ÁN 1
ỨNG DỤNG XEM PHIM HỖ TRỢ GỢI Ý PHIM SỬ DỤNG HỆ
THỐNG KHUYẾN NGHỊ
Application that supports movie recommendations using a
recommendation system.
Lớp SE121.N21
GIẢNG VIÊN HƯỚNG DẪN
Th.S TRẦN ANH DŨNG
TP. HỒ CHÍ MINH, 2023
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
TRẦN VĂN THIỆT - 20521956
TRẦN ĐÌNH KHƠI - 20520594
ĐỒ ÁN 1
ỨNG DỤNG XEM PHIM HỖ TRỢ GỢI Ý PHIM SỬ DỤNG HỆ
THỐNG KHUYẾN NGHỊ
Application that supports movie recommendations using a
recommendation system.
Lớp: SE121.N21
GIẢNG VIÊN HƯỚNG DẪN
Th.S TRẦN ANH DŨNG
TP. HỒ CHÍ MINH, 2023
LỜI CẢM ƠN
Nhóm chúng em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc đến thầy
Trần Anh Dũng đã hướng dẫn, tạo điều kiện cho nhóm chúng em hồn thành đồ án
mơn Đồ án 1.
Trong vịng 16 tuần, qua các buổi học, nhờ sự chỉ dẫn nhiệt tình của thầy,
chúng em đã tiếp thu được những kiến thức quan trọng, bổ ích cùng những góp ý
chân thành để có thể làm được một đồ án hồn chỉnh. Trong khoảng thời gian
thực hiện đồ án, chúng em đã học hỏi thêm được nhiều kiến thức, kinh nghiệm,
biết được quy trình để tạo ra một sản phẩm phần mềm.
Bên cạnh đó, chúng em xin cảm ơn các bạn bè trong lớp đã động viên, thảo
luận và góp ý cho nhóm đồng thời đã khơi thêm nguồn động lực cho nhóm trong
suốt q trình đầy khó khăn.
Mặc dù đã cố gắng hoàn thành báo cáo với tất cả nỗ lực song báo cáo của nhóm
chúng em chắc chắn khơng tránh khỏi những thiếu sót, chúng em rất mong nhận
được sự thơng cảm và góp ý chân thành từ thầy.
Chúng em xin chân thành cảm ơn. Xin chúc những điều tốt đẹp nhất sẽ luôn
đồng hành cùng mọi người.
Thành phố Hồ Chí Minh, 30 tháng 06 năm 2023
Sinh viên
TRẦN ĐÌNH KHÔI
TRẦN VĂN THIỆT
MỤC LỤC
LỜI CẢM ƠN
1
MỤC LỤC
2
DANH MỤC HÌNH
7
DANH MỤC BẢNG
9
DANH MỤC TỪ VIẾT TẮT
12
TÓM TẮT ĐỒ ÁN
13
ĐỀ CƯƠNG CHI TIẾT
15
NỘI DUNG ĐỒ ÁN
21
CHƯƠNG 1: MỞ ĐẦU
21
1.1. Lý do chọn đề tài......................................................................................21
1.2. Mục đích nghiên cứu................................................................................22
1.2.1. Khách quan........................................................................................22
1.2.2. Chủ quan............................................................................................22
1.3. Đối tượng nghiên cứu...............................................................................22
1.3.1. Các công nghệ nghiên cứu:................................................................22
1.3.2. Đối tượng sử dụng đề tài hướng đến:.................................................23
1.4. Phạm vi nghiên cứu..................................................................................23
1.4.1. Phạm vi môi trường:..........................................................................23
1.4.2. Phạm vi chức năng:............................................................................23
1.5. Mục tiêu đề tài..........................................................................................23
1.5.1. Xây dựng mơ hình:............................................................................23
1.5.2. Xây dựng ứng dụng:..........................................................................23
CHƯƠNG 2: KIẾN THỨC NỀN TẢNG
25
2.1. Flutter.......................................................................................................25
2.2. Dart...........................................................................................................27
2.3. ASP.Net Core...........................................................................................29
2.4. C#.............................................................................................................30
2.5. MS SQL Server........................................................................................31
2.6. Microsoft-ML...........................................................................................33
CHƯƠNG 3: HỆ THỐNG GỢI Ý RECOMMENDER SYSTEM
35
3.1. Khái niệm.................................................................................................35
3.1.1. Recommendater System....................................................................35
3.1.2. Phương pháp Collaborative Filtering.................................................36
3.2. Các thành phần chính................................................................................38
3.2.1. Utility Matrix.....................................................................................38
3.2.2. Thuật tốn Matrix Factorization........................................................39
3.3. Áp dụng vào đề tài....................................................................................41
3.3.1. Luồng xử lý.......................................................................................41
3.3.2. Phân tích bộ dữ liệu...........................................................................41
3.3.3. Xây dựng Recommender System.......................................................42
3.3.4. Thử nghiệm và đánh giá....................................................................42
CHƯƠNG 4: XÂY DỰNG HỆ THỐNG
44
4.1. Kiến trúc hệ thống tổng quan:...................................................................44
4.2. Kiến trúc phía Client.................................................................................45
4.2.1. Kiến trúc hệ thống.............................................................................45
4.2.2. Chi tiết các thành phần trong hệ thống...............................................45
4.3. Kiến trúc phía Server................................................................................48
4.3.1. Kiến trúc hệ thống.............................................................................48
4.3.2. Chi tiết các thành phần trong hệ thống...............................................48
4.4. Sơ đồ Use case..........................................................................................52
4.4.1. Danh sách các tác nhân......................................................................53
4.4.2. Danh sách Use case...........................................................................53
4.4.3. Mô tả chi tiết Use case.......................................................................55
4.5. Sơ đồ hoạt động........................................................................................67
4.5.1. Sơ đồ hoạt động cho Xem thông tin phim..........................................67
4.5.2. Sơ đồ hoạt động cho Xem phim.........................................................68
4.5.3. Sơ đồ hoạt động cho Gợi ý phim.......................................................69
4.6. Thiết kế cơ sở dữ liệu...............................................................................70
4.6.1. Sơ đồ các bảng...................................................................................70
4.6.2. Danh sách các bảng dữ liệu................................................................70
4.6.3. Mô tả chi tiết các bảng dữ liệu...........................................................73
CHƯƠNG 5: THIẾT KẾ GIAO DIỆN NGƯỜI DÙNG
87
5.1. Sơ đồ liên kết màn hình............................................................................87
5.2. Danh sách các màn hình...........................................................................87
5.3. Mơ tả chi tiết các màn hình.......................................................................90
5.3.1. Màn hình Get Started.........................................................................90
5.3.2. Màn hình Login.................................................................................92
5.3.3. Màn hình Signup................................................................................93
5.3.4. Màn hình Verify Signup....................................................................95
5.3.5. Màn hình Forgot pass........................................................................97
5.3.6. Màn hình Verify forgot pass..............................................................98
5.3.7. Màn hình New pass..........................................................................100
5.3.8. Màn hình Congrats...........................................................................101
5.3.9. Màn hình Home...............................................................................103
5.3.10. Màn hình Movie list.......................................................................104
5.3.11. Màn hình Movie detail...................................................................106
5.3.12. Màn hình Actor detail....................................................................107
5.3.13. Màn hình Actor search...................................................................109
5.3.14. Màn hình Search filter...................................................................110
5.3.15. Màn hình Watching.......................................................................111
5.3.16. Màn hình Profile............................................................................112
5.3.17. Màn hình Saved.............................................................................112
5.3.18. Màn hình Review...........................................................................114
5.3.19. Màn hình History...........................................................................115
5.3.20. Màn hình Settings..........................................................................116
CHƯƠNG 6: CÀI ĐẶT VÀ KIỂM THỬ
118
6.1. Kiểm thử phía ứng dụng.........................................................................118
6.1.1. Mơi trường kiểm thử........................................................................118
6.1.2. Kết quả kiểm thử..............................................................................118
6.2. Kiểm thử hệ thống khyến nghị................................................................118
6.2.1. Môi trường kiểm thử........................................................................118
6.2.2. Kết quả kiểm thử..............................................................................119
CHƯƠNG 7: TỔNG KẾT
121
7.1. Kết quả đạt được.....................................................................................121
7.2. Hạn chế...................................................................................................121
7.3. Hướng phát triển.....................................................................................121
TÀI LIỆU THAM KHẢO
122
DANH MỤC HÌNH
Hình 2.1: Flutter
23
Hình 2.2: Ngơn ngữ lập trình Dart
25
Hình 2.3: ASP.Net Core
27
Hình 2.4: Ngơn ngữ lập trình C#
28
Hình 2.5: MS SQL Server
29
Hình 2.6: Microsoft-ML
31
Hình 3.1: Cách thức hoạt động của Collaborative filtering
35
Hình 3.2: Utility Matrix
36
Hình 3.3: Hình minh họa thuật tốn Matrix Factorization
37
Hình 3.4: Hình minh họa thuật tốn Matrix Factorization dưới dạng biểu thức
37
Hình 3.5: Hàm mất mát của thuật tốn Matrix Factorization
38
Hình 3.6: Hàm tối ưu W khi cố định X
38
Hình 3.7: Hàm tối ưu X khi cố định W
38
Hình 3.8: Hình minh họa bộ dữ liệu train
39
Hình 3.9: Đánh giá mơ hình và kết quả dự đốn của từng mã khóa học-thời gian 40
Hình 4.1: Sơ đồ kiến trúc hệ thống tổng quan
42
Hình 4.2: Sơ đồ kiến trúc hệ thống phía client
43
Hình 4.3: Sơ đồ kiến trúc hệ thống phía server
46
Hình 4.4: Sơ đồ Use case
50
Hình 4.5: Xem thơng tin phim Activity Diagram
65
Hình 4.6: Xem phim Activity Diagram
66
Hình 4.7: Gợi ý Activity Diagram
67
Hình 4.8: Sơ đồ liên kết các màn hình
68
Hình 5.1: Sơ đồ liên kết các màn hình
85
Hình 5.2: Màn hình Get Started
89
Hình 5.3: Màn hình Login
90
Hình 5.4: Màn hình Signup
92
Hình 5.5: Màn hình Verify Signup
94
Hình 5.6: Màn hình Forgot pass
95
Hình 5.7: Màn hình Verify forgot pass
97
Hình 5.8: Màn hình New pass
98
Hình 5.9: Màn hình Congrats
100
Hình 5.10: Màn hình Home
101
Hình 5.11: Màn hình Movie list
103
Hình 5.12: Màn hình Movie detail
104
Hình 5.13: Màn hình Actor detail
106
Hình 5.14: Màn hình Actor search
107
Hình 5.15: Màn hình Search filter
108
Hình 5.16: Màn hình Watching
109
Hình 5.17: Màn hình Profile
110
Hình 5.18: Màn hình Saved
111
Hình 5.19: Màn hình Review
112
Hình 5.20: Màn hình History
113
Hình 5.21: Màn hình Settings
114
Hình 6.1: Kết quả đánh giá mơ hình bằng đánh giá hồi quy (Regression Evaluation)
117
Hình 6.2: Tích hợp vào API
118
DANH MỤC BẢNG
Bảng 4.1: Các thành phần trong hệ thống phía client
45
Bảng 4.2: Các thành phần trong hệ thống phía server
49
Bảng 4.3: Danh sách các Use case
52
Bảng 4.4: Đặc tả use case dăng nhập
54
Bảng 4.5: Đặc tả use case quên mật khẩu
55
Bảng 4.6: Đặc tả use case đăng ký tài khoản
56
Bảng 4.7: Đặc tả use case tra cứu phim, diễn viên
56
Bảng 4.8: Đặc tả use case yêu thích phim
57
Bảng 4.9: Đặc tả use case đánh giá phim
58
Bảng 4.10: Đặc tả use case xem phim
58
Bảng 4.11: Đặc tả use case tải phim
59
Bảng 4.12: Đặc tả use case xem thông tin phim
60
Bảng 4.13: Đặc tả use case xem thông tin diễn viên
61
Bảng 4.14: Đặc tả use case đổi mật khẩu
61
Bảng 4.15: Đặc tả use case quản lý yêu thích
62
Bảng 4.16: Đặc tả use case quản lý lịch sử
63
Bảng 4.17: Đặc tả use case quản lý đánh giá
64
Bảng 4.18: Đặc tả use case cài đặt ứng dụng
64
Bảng 4.19: Danh sách các bảng
71
Bảng 4.20: Mô tả bảng USER
72
Bảng 4.21: Mô tả bảng COUNTRY
72
Bảng 4.22: Mô tả bảng REVIEW
73
Bảng 4.23: Mô tả bảng HISTORY
73
Bảng 4.24: Mô tả bảng FAVOURITE
74
Bảng 4.25: Mô tả bảng MOVIE_LANGUAGE
75
Bảng 4.26: Mô tả bảng MOVIE
76
Bảng 4.27: Mô tả bảng MOVIE_STATUS
76
Bảng 4.28: Mô tả bảng DEPARTMENT
76
Bảng 4.29: Mô tả bảng MOVIE_CREDIT
77
Bảng 4.30: Mô tả bảng MOVIE_EXTERNAL_IDS
78
Bảng 4.31: Mô tả bảng MOVIE_GENRES
78
Bảng 4.32: Mô tả bảng MOVIE_VIDEO
79
Bảng 4.33: Mô tả bảng MOVIE_IMAGE
79
Bảng 4.34: Mô tả bảng PERSON
80
Bảng 4.35: Mô tả bảng GENRES
81
Bảng 4.36: Mô tả bảng VIDEO
81
Bảng 4.37: Mô tả bảng IMAGE
82
Bảng 4.38: Mô tả bảng FILE
82
Bảng 4.39: Mô tả bảng MOVIE_VIDEO_TYPE
83
Bảng 4.40: Mô tả bảng MOVIE_IMAGE_TYPE
83
Bảng 4.41: Mô tả bảng TRAINING
83
Bảng 4.42: Mô tả bảng PARAMS
84
Bảng 5.1: Danh sách các màn hình
88
Bảng 5.2: Mơ tả đối tượng trên màn hình Get Started
89
Bảng 5.3: Biến cố và xử lý trên màn hình Get Started
89
Bảng 5.4: Mơ tả đối tượng trên màn hình Login
91
Bảng 5.5: Biến cố và xử lý trên màn hình Login
91
Bảng 5.6: Mơ tả đối tượng trên màn hình Signup
93
Bảng 5.7: Biến cố và xử lý trên màn hình Signup
93
Bảng 5.8: Mơ tả đối tượng trên màn hình Verify Signup
94
Bảng 5.9: Biến cố và xử lý trên màn hình Verify Signup
95
Bảng 5.10: Mơ tả đối tượng trên màn hình Forgot pass
96
Bảng 5.11: Biến cố và xử lý trên màn hình Forgot pass
96
Bảng 5.12: Mơ tả đối tượng trên màn hình Verify forgot pass
97
Bảng 5.13: Biến cố và xử lý trên màn hình Verify forgot pass
98
Bảng 5.14: Mơ tả đối tượng trên màn hình New pass
99
Bảng 5.15: Biến cố và xử lý trên màn hình New pass
99
Bảng 5.16: Mơ tả đối tượng trên màn hình Congrats
100
Bảng 5.17: Biến cố và xử lý trên màn hình Congrats
100
Bảng 5.18: Mơ tả đối tượng trên màn hình Home
101
Bảng 5.19: Biến cố và xử lý trên màn hình Home
102
Bảng 5.20: Mơ tả đối tượng trên màn hình Movie list
103
Bảng 5.21: Biến cố và xử lý trên màn hình Movie list
103
Bảng 5.22: Mơ tả đối tượng trên màn hình Movie detail
105
Bảng 5.23: Biến cố và xử lý trên màn hình Movie detail
105
Bảng 5.24: Mơ tả đối tượng trên màn hình Actor detail
106
Bảng 5.25: Biến cố và xử lý trên màn hình Actor detail
107
Bảng 5.26: Mơ tả đối tượng trên màn hình Actor search
108
Bảng 5.27: Biến cố và xử lý trên màn hình Actor search
108
Bảng 5.28: Mơ tả đối tượng trên màn hình Watching
109
Bảng 5.29: Biến cố và xử lý trên màn hình Watching
110
Bảng 5.30: Mơ tả đối tượng trên màn hình Saved
111
Bảng 5.31: Biến cố và xử lý trên màn hình Saved
111
Bảng 5.32: Mơ tả đối tượng trên màn hình Review
112
Bảng 5.33: Biến cố và xử lý trên màn hình Review
112
Bảng 5.34: Mơ tả đối tượng trên màn hình History
113
Bảng 5.35: Biến cố và xử lý trên màn hình History
114
Bảng 5.36: Mơ tả đối tượng trên màn hình Settings
115
Bảng 5.37: Biến cố và xử lý trên màn hình Settings
115
Bảng 6.1: Kết quả kiểm thử
116
DANH MỤC TỪ VIẾT TẮT
#
Từ viết tắt
1
CRUD
Từ đầy đủ
Ý nghĩa
Create/Read/Update/ Là tập hợp bốn chức năng cơ bản của
Delete
lưu trữ liên tục
Sai số bình phương là một chỉ số đánh
giá đo lường sự khác biệt trung bình
2
RMSE/RMS
Root mean square
giữa các giá trị dự đoán và giá trị thực
deviation
tế. Giá trị càng thấp, chứng tỏ mơ
hình gợi ý có độc chính xác và độ tin
cậy cao hơn.
Hệ số xác định là tỷ lệ sự thay đổi
trong biến phụ thuộc có thể dữ đoán
3
RSquared
R2
từ biến độc lập. Chỉ số cho biết mục
độ phù hợp (fit) của dữ liệu đối với
mơ hình.
4
5
IMDB
TMDB
Internet Movie
Database
The Movie Database
Là cơ sở dữ liệu trực tuyến về điện
ảnh thế giới. Cung cấp thông tin về
phim, đạo diễn, nhà làm phim,..v.v
Giống IMDB nhưng được do cộng
đồng tham gia đóng góp và miễn phí.
TÓM TẮT ĐỒ ÁN
Đồ án với đề tài “Xây dựng ứng dụng xem phim tích hợp gợi ý phim” tập trung vào
phân tích thực trạng và ứng dụng các cơng nghệ để từ đó xây dụng ứng dụng di
động có thể sử dụng mà không yêu cầu quá nhiều về phần cứng, phần mềm. Đáp
ứng được nhu cầu cơ bản về việc xem phim giải trí cá nhân.
Đề tài được bắt đầu từ việc tìm hiểu thực trạng, đưa ra các vấn đề cịn tồn đọng
hoặc có thể cải thiện. Xác định mục tiêu, phạm vi của đề tài cũng như các chức
năng cần có của hệ thống. Ngồi việc xử lý các nghiệp vụ cho hệ thống, nhóm cũng
đã tìm hiểu, so sánh và lựa chọn được các cơng nghệ mới và phù hợp giúp nâng
cao trải nghiệm người dùng, tối ưu chi phí phát triển và triển khai.
Nhờ việc phân tích các yêu cầu rõ ràng, thời gian phát triển ngắn và các yêu cầu,
tính năng ít thay đổi, trong quá trình phát triển đề tài đã sử dụng mơ hình Thác
nước cải tiến cho việc xây dựng hệ thống. Kết quả thu được trong giai đoạn thiết
kế như kiến trúc hệ thống, cơ sở dữ liệu, giao diện được thể hiện bằng sơ đồ người
dùng, sơ đồ tuần tự và bản thiết kế sử dụng công cụ Figma, Draw.io, StartUML.
Trong giai đoạn thực hiện, client và server được phát triển song song sử dụng
Framework Flutter cho client và ASP.NET Core MySQL cho server, công cụ phát
triển Visual Studio Code, Android Studio cùng công cụ quản lý công việc Notion.
Công việc kiểm thử unit test được thực hiện xun suốt q trình phát triển và
được kiểm thử tích hợp ở cuối giai đoạn. Trong giai đoạn vận hành, server đã được
triển khai lên máy chủ Azure, hoàn toàn có thể truy cập dữ liệu thơng qua api từ
bất cứ thiết bị nào gửi yêu cầu có chứa trường xác thực dữ liệu hợp lệ.
Phần cuối cùng của khoá luận là trình bày kết quả đã thực hiện lên cuốn báo cáo,
đưa ra kết luận và hướng phát triển cho hệ thống trong tương lai.
Nội dung khoá luận được trình bày trong 7 chương:
Chương 01: Mở đầu
Trình bày sơ bộ về thực trạng, nhu cầu thực tế. Xác định mục tiêu và phạm vi đề
tài.
Chương 02: Kiến thức nền tảng
Giới thiệu, trình bày các kiến thức kỹ thuật, cơng nghệ mà nhóm sử dụng.
Chương 03: Hệ thống gợi ý Recommend System
Trình bày, phân tích lý thuyết về hệ thống khuyến nghị mà nhóm sử dụng.
Chương 04: Xây dựng hệ thống
Trình bày kiến trúc hệ thống và danh sách các hình, bảng thiết kế hệ thống, mơ
hình hố và cơ sở dữ liệu.
Chương 5: Thiết kế giao diện người dùng
Trình bày chi tiết nội dung thiết kế giao diện ứng dụng.
-
Chương 6: Cài đặt và kiểm thử
Tổng quát kết quả kiểm thử của ứng dụng về cả hai phía client và server.
-
Chương 7: Tổng kết
Những kết quả đạt được sau khi kết thúc đồ án. Những hạn chế, khó khăn trong
q trình phát triển đồ án và nêu ra hướng phát triển trong tương lai.
ĐỀ CƯƠNG CHI TIẾT
TÊN ĐỀ TÀI: Xây dựng ứng dụng xem phim hỗ trợ gợi ý phim sử dụng hệ thống
khuyến nghị
Cán bộ hướng dẫn:
ThS. Trần Anh Dũng
Thời gian thực hiện: Từ ngày 3/3/2023 đến ngày 17/6/2023 (kết thúc Đồ án 1)
Sinh viên thực hiện:
Trần Đình Khơi – 20520594
Trần Văn Thiệt – 20521956
Nội dung đề tài
1. Lý do chọn đề tài:
Trong xã hội phát triển ngày nay, khi nhu cầu giải trí của con người ngày càng
tăng cao thì việc lựa chọn hình thức giải trí phù hợp với từng người cũng rất đa
dạng. Trong đó việc xem phim được xem như là lựa chọn phổ biến nhất để giải
stress sau những giờ làm việc căng thẳng. Tuy nhiên, không ít trong chúng ta đã
trải qua việc bỏ ra hàng giờ để tìm được bộ phim ưng ý nhưng kết quả lại là sự
chán nản và bỏ cuộc. Vì vậy, việc có cho mình một bộ sưu tập phim được cá
nhân hóa là vơ cùng thiết yếu, tăng chất lượng cuộc sống và tiết kiệm thời gian.
Để giải quyết vấn đề trên, nhóm em quyết định chọn đề tài Xây dựng ứng dụng
xem phim hỗ trợ gợi ý phim, mục đích để đề xuất nội dung phim phù hợp với
người dùng dựa trên lịch sử xem phim của họ, từ đó là tăng trải nghiệm người
dùng, tiết kiệm thời gian và phù hợp với thị hiếu xem phim của người dùng.
2. Mục tiêu: bao gồm 2 mục tiêu chính:
Xây dựng Model đề xuất phim dựa trên lịch sử những phim đã xem:
-
Đề xuất nhanh, phù hợp với sở thích của người xem.
Xây dựng ứng dụng:
-
Ứng dụng có thể chạy trên mobile với giao diện thân thiện
-
Chạy được đa nền tảng IOS và Android.
-
Xác thực người dùng
-
Tra cứu thông tin về phim, tiểu sử của các diễn viên.
-
Xem phim
-
Tìm kiếm phim theo thể loại, diễn viên, theo năm cơng chiếu, …
-
Tích hợp gợi ý phim
-
Thơng báo cho người dùng khi phù hợp sắp được công chiếu.
-
Lưu phim u thích
-
Chia sẻ phim (tìm hiểu thêm)
-
Tải phim
-
Đánh giá/review phim
3. Phạm vi:
Phạm vi môi trường: IOS, Android
Phạm vi chức năng:
Đối với Model:
-
Có khả năng đưa ra đề xuất dựa vào lịch sử phim đã xem, thể loại
phim mà người xem quan tâm.
Đối với ứng dụng:
-
Cung cấp giao diện thân thiện, tiện dụng người dùng, cung cấp đầy
đủ, hỗ trợ tìm kiếm thơng tin về phim, diễn viên, đạo diễn và cho phép
xem phim trên thiết bị.
-
Cung cấp chức năng đề xuất phim phim người dùng đang tìm phim
để xem hoặc kết thúc việc xem phim nào đó.
4. Đối tượng sử dụng:
Tất cả mọi người có nhu cầu xem phim với sự cá nhân hóa về sở thích.
5. Phương pháp thực hiện:
Phương pháp làm việc:
-
Làm việc nhóm 2 thành viên thơng qua cả 2 phương thức online và offline
dưới sự hướng dẫn của giảng viên hướng dẫn.
Phương pháp nghiên cứu:
-
Phân tích nhu cầu sử dụng của đối tượng người dùng.
-
Nghiên cứu tài liệu các cơng nghệ liên quan.
Phương pháp cơng nghệ:
-
Tìm hiểu tích hợp khuyến nghị trên ứng dụng mobile
-
Xây dựng giao diện mobile để người dùng có thể tương tác với ứng dụng
-
Tìm hiểu về hệ thống khuyến nghị
-
Quản lý source code thông qua Github
-
Sử dụng Google doc, Office 365 Word… để quản lý tiến trình và tài liệu
6. Nền tảng công nghệ:
-
Front-end: Flutter
-
Back-end: ASP.Net Core
-
Database: SQL Server
-
Visual Studio
-
Android Studio
-
SQL Server Management Studio
-
Microsoft.ML
7. Kết quả mong đợi:
-
Model có khả năng đề xuất nhanh, chính xác và phù hợp với từng cá nhân.
-
Ứng dụng di động hoạt động ổn định, có thể xử lý thơng tin nhanh
chóng…
8. Hướng phát triển của đề tài:
-
Thêm các tính năng chọn phim dựa vào cảm xúc hiện tại, sở thích của
người xem.
-
Mở rộng phạm vi, khơng chỉ phim mà cịn nhạc,..
9. Kế hoạch làm việc:
Thời gian thực hiện từ ngày 3/3/2023 đến ngày kết thúc mơn Đồ án 1.
Nhóm chia thành 2 giai đoạn cụ thể:
Giai đoạn 1: Tìm hiểu về các hướng tiếp cận Recommendation system và hoàn
thiện model. Xây dựng giao diện người dùng cơ bản. Gồm 3 sprint với thời gian
mỗi sprint kéo dài 2 tuần:
Thời gian: 3/3/2023 – 14/4/2023
Sprint 1: Đăng ký đề tài, soạn đề cương chi tiết
Sprint 2: Khâu chuẩn bị, chuẩn bị tài liệu, tìm hiểu cơng nghệ
Sprint 3: Xây dựng ứng dụng, tập trung vào các phần liên kết (liên kết Database,
liên kết model)
Sprint
Thời gian
Sprint 1
3/3/2023 – 17/3/2023
Công việc dự kiến
Đăng ký đề tài
Tìm hiểu và xác định phạm vi,
hướng phát triển của đề tài
Tìm hiểu và phân tích các u cầu
nghiệp vụ của đề tài
Sprint 2
17/3/2023 – 31/3/2023
Viết tài liệu, đề cương chi tiết
Tìm hiểu cơng nghệ.
Tìm hiểu về các loại khuyến nghị,
các thuật toán.
Sprint 3
31/3/2023 – 14/4/2023
Xây dựng codebase.
Xây dựng CSDL.
Xây dựng model dựa trên dataset
của Movielens.
Chuẩn bị báo cáo giữa kì
Giai đoạn 2: Hồn thiện các tính năng của ứng dụng, tích hợp khuyến nghị vào
ứng dụng, triển khai và kiểm thử ứng dụng, viết báo cáo.... Gồm 4 sprint với thời
gian mỗi sprint kéo dài 2 tuần:
Thời gian: 14/4/2023 – 26/5/2023 – kết thúc Đồ án 1
Sprint 4: Xây dựng tính năng và tích hợp khuyến nghị vào ứng dụng.
Sprint 5: Tiếp tục hoàn thiện và kiểm thử ứng dụng.
Sprint 6: Hồn thiện tính năng, kiểm thử và triển khai ứng dụng
Sprint 7: Tổng kiểm thử và viết báo cáo
Sprint
Thời gian
Công việc dự kiến
Sprint 4
14/4/2023 – 28/4/2023
Tích hợp khuyến nghị
vào trong ứng dụng.
Xây dựng tính năng cho
ứng dụng.
Sprint 5
28/4/2023 – 12/5/2023
Tiếp tục hồn thiện các
tính năng của ứng dụng
Kiểm thử ứng dụng
Sprint 6
12/5/2023 – 26/5/2023
Tiếp tục hồn thiện các
tính năng của ứng dụng
Kiểm thử ứng dụng
Triển khai ứng dụng
Sprint 7
26/5/2023 – kết thúc
Tổng kiểm thử ứng dụng
đã triển khai
Viết báo cáo
10. Phân công công việc: