ĐẠ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ƯƠNG BÁ CƯỜNG
TRƯƠNG HỮU MINH ĐỨC
KHÓA LUẬN TỐT NGHIỆP
XÂY DỰNG ỨNG DỤNG MẠNG XÃ HỘI CHIA SẺ
PHƯƠNG PHÁP NẤU ĂN DINH DƯỠNG
<Develop a social media to share nutritious cooking techniques>
KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM
TP. HỒ CHÍ MINH, 2022
ĐẠ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ƯƠNG BÁ CƯỜNG – 18520013
TRƯƠNG HỮU MINH ĐỨC - 18520626
KHÓA LUẬN TỐT NGHIỆP
XÂY DỰNG ỨNG DỤNG MẠNG XÃ HỘI CHIA SẺ
PHƯƠNG PHÁP NẤU ĂN DINH DƯỠNG
<Develop a social media to share nutritious cooking techniques>
KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM
GIẢNG VIÊN HƯỚNG DẪN
Ths. Lê Thanh Trọng
TP. HỒ CHÍ MINH, 2022
THƠNG TIN HỘI ĐỒNG CHẤM KHĨA LUẬN TỐT NGHIỆP
Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số ……………………
ngày ………………….. của Hiệu trưởng Trường Đại học Công nghệ Thông tin.
1. ………………………………………. – Chủ tịch
2. ………………………………………. – Thư ký
3. ………………………………………. – Ủy viên
4. ………………………………………. – Ủy viên
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC
Độc Lập - Tự Do - Hạnh Phúc
CÔNG NGHỆ THÔNG TIN
TP. HCM, ngày…..tháng…..năm……..
NHẬN XÉT KHĨA LUẬN TỐT NGHIỆP
(CỦA CÁN BỘ HƯỚNG DẪN)
Tên khóa luận:
XÂY DỰNG ỨNG DỤNG MẠNG XÃ HỘI CHIA SẺ
PHƯƠNG PHÁP NẤU ĂN DINH DƯỠNG
Cán bộ hướng dẫn:
Nhóm SV thực hiện:
Trương Bá Cường
18520013
Trương Hữu Minh Đức
18520626
ThS. Lê Thanh Trọng
Đánh giá Khóa luận
1. Về cuốn báo cáo:
Số trang
89 _____
Số chương
5 ______
Số bảng số liệu
34 _____
Số hình vẽ
65 _____
Số tài liệu tham khảo
7 ______
Sản phẩm
1 ______
Một số nhận xét về hình thức cuốn báo cáo:
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
2. Về nội dung nghiên cứu:
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
3. Về chương trình ứng dụng:
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
4. Về thái độ làm việc của sinh viên:
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
Đánh giá chung:Khóa luận đạt/khơng đạt u cầu của một khóa luận tốt nghiệp kỹ sư/ cử nhân,
xếp loại Giỏi/ Khá/ Trung bình
Điểm từng sinh viên:
Trương Bá Cường:………../10
Trương Hữu Minh Đức:………../10
Người nhận xét
(Ký tên và ghi rõ họ tên)
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC
Độc Lập - Tự Do - Hạnh Phúc
CÔNG NGHỆ THÔNG TIN
TP. HCM, ngày…..tháng…..năm……..
NHẬN XÉT KHĨA LUẬN TỐT NGHIỆP
(CỦA CÁN BỘ PHẢN BIỆN)
Tên khóa luận:
XÂY DỰNG ỨNG DỤNG MẠNG XÃ HỘI CHIA SẺ
PHƯƠNG PHÁP NẤU ĂN DINH DƯỠNG
Nhóm SV thực hiện:
Cán bộ phản biện:
Trương Bá Cường
18520013
Trương Hữu Minh Đức
18520626
ThS. Mai Trọng Khang
Đánh giá Khóa luận
5. Về cuốn báo cáo:
Số trang
89 _____
Số chương
5 ______
Số bảng số liệu
34 _____
Số hình vẽ
65 _____
Số tài liệu tham khảo
7 ______
Sản phẩm
1 ______
Một số nhận xét về hình thức cuốn báo cáo:
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
6. Về nội dung nghiên cứu:
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
7. Về chương trình ứng dụng:
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
8. Về thái độ làm việc của sinh viên:
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
………………………………………………………………………………………….
Đánh giá chung:Khóa luận đạt/khơng đạt u cầu của một khóa luận tốt nghiệp kỹ sư/ cử nhân,
xếp loại Giỏi/ Khá/ Trung bình
Điểm từng sinh viên:
Trương Bá Cường:………../10
Trương Hữu Minh Đức:………../10
Người nhận xét
(Ký tên và ghi rõ họ tên)
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC
Độc Lập - Tự Do - Hạnh Phúc
CÔNG NGHỆ THÔNG TIN
ĐỀ CƯƠNG CHI TIẾT
TÊN ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG MẠNG XÃ HỘI CHIA SẺ PHƯƠNG
PHÁP NẤU ĂN DINH DƯỠNG
Cán bộ hướng dẫn: Ths. Lê Thanh Trọng
Thời gian thực hiện: Từ ngày 21/02/2022 đến ngày 11/06/2022
Sinh viên thực hiện:
Trương Bá Cường - 18520013
Trương Hữu Minh Đức - 18520626
Nội dung đề tài:
Tên đề tài: Xây dựng ứng dụng mạng xã hội chia sẻ phương pháp nấu ăn dinh dưỡng
Mục tiêu
-
Xây dựng một ứng dụng mạng xã hội chia sẻ các
công thức nấu ăn và các khoảnh khắc ăn uống
trong đời sống
-
Kết nối những người có niềm đam mê nấu ăn
-
Giúp người dùng tiếp cận các món ăn đa dạng,
phong phú, tự xây dựng thực đơn cho bản thân
Phạm vi
-
Phạm vi môi trường: Mobile app dành cho người
dùng, web app dành cho người quản lý
-
Phạm vi chức năng:
o Đăng bài viết
o Bình luận bài đăng
o u thích bài đăng
o Xem hướng dẫn nấu ăn
o Tạo món ăn
o Theo dõi người dùng
o Chỉnh sửa thông tin cá nhân
o Chat bot gợi ý món ăn
Đối tượng
Người trung niên, người có gia đình, người có niềm
đam mê nấu ăn, người quan tâm đến bữa ăn dinh
dưỡng và các chuyên gia dinh dưỡng
Phương pháp thực hiện
1. Tìm hiểu
-
Tìm hiểu và khảo sát các ứng dụng di động
hướng dẫn nấu ăn trong và ngoài nước
2. Đối sánh
-
So sánh và rút ra các điểm mạnh, điểm cịn hạn
chế
3. Phân tích
-
Phân tích, lựa chọn những nghiệp vụ cần có của
1 ứng dụng mạng xã hội chia sẻ phương pháp
nấu ăn dinh dưỡng
4. Xây dựng
Kết quả mong đợi của đề tài
-
Mơ tả ứng dụng
-
Phân tích và thiết kế ứng dụng
-
Xây dựng được ứng dụng di động
-
Xây dựng web cho người quản lý
-
Đối với sinh viên:
Sinh viên rèn luyện thêm những kĩ năng mềm: giao
tiếp, trao đổi với giảng viên hướng dẫn
Rèn luyện tính: tự lập, chủ động khi tìm hiểu, làm
việc, thực hiện đề tài cùng giảng viên
Biết lên kế hoạch chi tiết, đặt mục tiêu cụ thể
Học hỏi thêm được những công nghệ mới, làm hành
trang chuẩn bị cho tương lai
-
Đối với đề tài:
Hiểu rõ nghiệp vụ của một ứng dụng mạng xã hội
chia sẻ phương pháp nấu ăn
Hoàn thành yêu cầu đặt ra ban đầu, có đầy đủ tính
năng cần thiết
Ứng dụng được tạo ra với mức độ hồn thiện, có thể
sử dụng được trong thực tế
Kiến trúc ứng dụng phải rõ ràng, hợp lý. Để sau này
ứng dụng dễ bảo trì, phát triển thêm các tính năng
Áp dụng Agile trong quy trình phát triển ứng dụng
Ứng dụng có độ chịu tải tốt, hiệu năng tốt
Kế hoạch thực hiện:
Nhóm sẽ tiến hành chia quy trình xây dựng ứng dụng thành các iterations với độ dài từ 2
đến 3 tuần và cuối mỗi iteration sẽ báo cáo và xin ý kiến của giảng viên hướng dẫn
Thời gian
Nội dung
21/02 – 06/03/2022
Xác định những chức năng cần bổ sung
Người thực hiện
Hoàn thiện mã nguồn của dự án trước Cả 2 thành viên
đó
07/03 – 20/03/2022
Tìm hiểu cơng nghệ thực hiện chat bot
Cả 2 thành viên
Huấn luyện chat bot
Trương Bá Cường
Cài đặt hệ thống truy vấn thông tin cho
chatbot
21/03 – 03/04/2022
Hồn thiện chatbot, tích hợp chatbot
vào hệ thống
04/04 – 17/04/2022
Trương Bá Cường
Tìm hiểu cơng nghệ Ably
Trương Hữu Minh Đức
báo
Xây dựng web người quản trị cho hệ
thống
02/05 – 22/05/2022
Cả 2 thành viên
Tìm hiểu cơng nghệ One Signal
Cài đặt tính năng chat, hệ thống thông
18/04 – 01/05/2022
Trương Hữu Minh Đức
Cả 2 thành viên
Trương Hữu Minh Đức
Triển khai hệ thống
Vận hành kiểm thử hệ thống
Cả 2 thành viên
Sửa các lỗi ứng dụng nếu có
Hồn thiện các tính năng cịn thiếu
23/05 – 11/06/2022
Hồn thiện ứng dụng
Cả 2 thành viên
Viết báo cáo khóa luận
Xác nhận của CBHD
TP. HCM, ngày 24 tháng 02 năm 2022
(Ký tên và ghi rõ họ tên)
Sinh viên
(Ký tên và ghi rõ họ tên)
LỜI CẢM ƠN
Khóa luận tốt nghiệp chuyên ngành Kỹ thuật phần mềm với Đề tài “Xây
dựng ứng dụng mạng xã hội chia sẻ phương pháp nấu ăn dinh dưỡng” là kết quả của
q trình tìm tịi, học hỏi, vận dụng những kiến thức đã được học vào giải quyết bài
toán thực tế của các thành viên trong nhóm và được sự giúp đỡ tận tình, động viên
khích lệ của thầy cơ. Qua đây, em xin thay mặt nhóm gửi lời cảm ơn chân thành đến
các quý thầy cô trường Đại học Cơng nghệ Thơng tin đã tận tình chỉ dạy, truyền đạt
kiến thức cho chúng em trong suốt 4 năm ngồi trên ghế giảng đường đại học.
Em xin gửi lời cảm ơn sâu sắc đến thầy ThS. Lê Thanh Trọng, người đã theo
sát, định hướng, chỉ bảo, đưa ra lời khun bổ ích cho nhóm chúng em trong suốt
q trình thực hiện khóa luận nhằm đảm bảo tiến độ thực hiện và đáp ứng đúng các
yêu cầu đề ra ban đầu.
Cảm ơn giảng viên phản biện và các thầy cô trong hội đồng chấm luận văn
với những lời khuyên, góp ý q báu và bổ ích. Từ đó bài luận văn của em được trở
nên hoàn thiện hơn.
Lời cuối cùng, em xin dành lời cảm ơn gửi tới gia đình, anh chị, bạn bè đã
luôn bên cạnh để động viên và đóng góp ý kiến trong q trình hồn thành khoá
luận này.
MỤC LỤC
Chương 1.
MỞ ĐẦU ............................................................................................. 3
1.1. Lí do chọn đề tài ............................................................................................3
1.2. Mục đích ........................................................................................................3
1.3. Đối tượng .......................................................................................................4
1.4. Phạm vi nghiên cứu .......................................................................................4
Chương 2.
TỔNG QUAN ĐỀ TÀI ....................................................................... 6
2.1. Thực trạng bài toán ........................................................................................6
2.2. Khảo sát ứng dụng .........................................................................................7
2.2.1.
Ứng dụng CookBook – Nấu ăn ngon mỗi ngày ..................................7
2.2.2.
Ứng dụng I’m hungry ..........................................................................9
2.3. Vấn đề tồn tại và hướng giải quyết..............................................................10
2.3.1.
Vấn đề tồn tại ....................................................................................10
2.3.2.
Hướng giải quyết ...............................................................................10
Chương 3.
CƠ SỞ LÝ THUYẾT ........................................................................ 11
3.1. Tổng quan về Flutter....................................................................................11
3.1.1.
Khái niệm ..........................................................................................11
3.1.2.
Kiến trúc ............................................................................................11
3.2. Tổng quan về Dart .......................................................................................12
3.2.1.
Khái niệm ..........................................................................................12
3.2.2.
Đặc điểm ............................................................................................12
3.3. Tổng quan về Firebase .................................................................................13
3.3.1.
Khái niệm ..........................................................................................13
3.3.2.
Lịch sử phát triển ...............................................................................13
3.3.3.
Cách thức hoạt động ..........................................................................13
3.3.3.1. Firebase Realtime Database ...........................................................13
3.3.3.2. Firebase Authentication .................................................................14
3.3.3.3. Firebase storage .............................................................................14
3.3.3.4. Firebase Cloud Messaging .............................................................15
3.3.4.
Tổng quan về NestJs..........................................................................15
3.3.5.
Tổng quan về Postgresql ...................................................................15
Chương 4.
HIỆN THỰC HỆ THỐNG ................................................................ 17
4.1. Phân tích yêu cầu hệ thống ..........................................................................17
4.1.1.
Yêu cầu chức năng ............................................................................17
4.1.1.1. Yêu cầu lưu trữ ..............................................................................17
4.1.1.2. Yêu cầu về tính năng .....................................................................17
4.1.2.
Phân tích yêu cầu phi chức năng .......................................................17
4.1.3.
Phân tích u cầu người dùng ...........................................................18
4.1.3.1. Mơ hình Use case toàn hệ thống ....................................................18
4.1.3.2. Danh sách các Actor ......................................................................19
4.1.3.3. Danh sách các Use case .................................................................19
4.2. Phân tích thiết kế hệ thống ..........................................................................23
4.2.1.
Thiết kế xử lý.....................................................................................23
4.2.1.1. Sơ đồ tuần tự Đăng ký ...................................................................23
4.2.1.2. Sơ đồ tuần tự Đăng nhập ...............................................................25
4.2.1.3. Sơ đồ tuần tự Đăng nhập với Google account ...............................26
4.2.1.4. Sơ đồ tuần tự Quên mật khẩu ........................................................27
4.2.1.5. Sơ đồ tuần tự Thay đổi mật khẩu ...................................................28
4.2.1.6. Sơ đồ tuần tự cập nhật thông tin ....................................................29
4.2.1.7. Sơ đồ tuần tự Upload file ...............................................................30
4.2.1.8. Sơ đồ tuần tự Tạo bài viết ..............................................................31
4.2.1.9. Sơ đồ tuần tự Cập nhật bài viết......................................................32
4.2.1.10. Sơ đồ tuần tự Lưu bài viết ...........................................................33
4.2.1.11. Sơ đồ tuần tự Tạo món ăn ............................................................34
4.2.1.12. Sơ đồ tuần tự Lưu món ăn ...........................................................35
4.2.1.13. Sơ đồ tuần tự Đánh giá món ăn ...................................................36
4.2.1.14. Sơ đồ tuần tự u thích bài viết ..................................................37
4.2.1.15. Sơ đồ tuần tự Bình luận cho bài viết, hướng dẫn nấu ăn .............38
4.2.1.16. Sơ đồ tuần tự Tạo album..............................................................39
4.2.1.17. Sơ đồ tuần tự Nhắn tin với người dùng .......................................40
4.2.1.18. Sơ đồ tuần tự Trò chuyện với chatbot .........................................41
4.2.1.19. Sơ đồ tuần tự Duyệt món ăn ........................................................42
4.2.1.20. Sơ đồ tuần tự Tạo mới đơn vị ......................................................43
4.2.1.21. Sơ đồ tuần tự Tạo mới nguyên liệu .............................................44
4.2.1.22. Sơ đồ tuần tự Tạo chủ đề mới ......................................................45
4.2.1.23. Sơ đồ tuần tự Gửi yêu cầu trở thành chuyên gia .........................46
4.2.1.24. Sơ đồ tuần tự Duyệt yêu cầu trở thành chuyên gia ......................47
4.2.2.
Thiết kế dữ liệu ..................................................................................49
4.2.2.1. Sơ đồ cơ sở dữ liệu ........................................................................49
4.2.2.2. Danh sách các bảng dữ liệu ...........................................................50
4.2.2.3. Chi tiết các bảng dữ liệu ................................................................51
4.2.3.
Thiết kế kiến trúc hệ thống ................................................................73
4.2.4.
Thiết kế giao diện ..............................................................................74
4.2.4.1. Danh sách màn hình.......................................................................74
4.2.4.2. Giao diện một số màn hình của ứng dụng .....................................76
4.3. Triển khai hệ thống ......................................................................................84
Chương 5.
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ........................................ 87
5.1. Đánh giá .......................................................................................................87
5.1.1.
Thuận lợi............................................................................................87
5.1.2.
Khó khăn ...........................................................................................87
5.2. Kết quả đạt được ..........................................................................................87
5.3. Hướng phát triển ..........................................................................................88
DANH MỤC HÌNH
Hình 2.1: Giao diện danh sách món ăn ứng dụng CookBook.....................................7
Hình 2.2: Giao diện thơng tin món ăn ứng dụng CookBook ......................................8
Hình 2.3: Giao diện ứng dụng I’m Hungry .................................................................9
Hình 3.1: Kiến trúc của Flutter .................................................................................11
Hình 4.1: Sơ đồ Use case hệ thống ...........................................................................18
Hình 4.2: Sơ đồ tuần tự Đăng ký ..............................................................................23
Hình 4.3: Sơ đồ tuần tự Đăng Nhập ..........................................................................25
Hình 4.4: Sơ đồ tuần tự Đăng nhập với Google Account .........................................26
Hình 4.5: Sơ đồ tuần tự Quên mật khẩu ....................................................................27
Hình 4.6: Sơ đồ tuần tự Thay đổi mật khẩu ..............................................................28
Hình 4.7: Sơ đồ tuần tự Cập nhật thơng tin ..............................................................29
Hình 4.8: Sơ đồ tuần tự Upload file ..........................................................................30
Hình 4.9: Sơ đồ tuần tự Tạo bài viết .........................................................................31
Hình 4.10: Sơ đồ tuần tự Cập nhật bài viết ...............................................................32
Hình 4.11: Sơ đồ tuần tự Lưu bài viết.......................................................................33
Hình 4.12: Sơ đồ tuần tự Tạo món ăn .......................................................................34
Hình 4.13: Sơ đồ tuần tự Lưu món ăn .......................................................................35
Hình 4.14: Sơ đồ tuần tự Đánh giá món ăn ...............................................................36
Hình 4.15: Sơ đồ tuần tự u thích bài viết..............................................................37
Hình 4.16: Sơ đồ tuần tự Bình luận cho bài viết, hướng dẫn nấu ăn ........................38
Hình 4.17: Sơ đồ tuần tự Tạo album .........................................................................39
Hình 4.18: Sơ đồ tuần tự Nhắn tin với người dùng...................................................40
Hình 4.19: Sơ đồ tuần tự Trị chuyện với chatbot .....................................................41
Hình 4.20: Sơ đồ tuần tự Duyệt món ăn ...................................................................42
Hình 4.21: Sơ đồ tuần tự Tạo mới đơn vị .................................................................43
Hình 4.22: Sơ đồ tuần tự Tạo mới nguyên liệu .........................................................44
Hình 4.23: Sơ đồ tuần tự Tạo chủ đề mới .................................................................45
Hình 4.24: Sơ đồ tuần tự Gửi yêu cầu trở thành chuyên gia .....................................46
Hình 4.25: Sơ đồ tuần tự Duyệt yêu cầu trở thành chuyên gia .................................47
Hình 4.26: Sơ đồ cơ sở dữ liệu..................................................................................49
Hình 4.27: Sơ đồ kiến trúc hệ thống .........................................................................73
Hình 4.28: Màn hình đăng nhập ................................................................................77
Hình 4.29: Màn hình đăng ký ...................................................................................77
Hình 4.30: Màn hình xác thực email .........................................................................77
Hình 4.31: Màn hình chọn chủ đề .............................................................................77
Hình 4.32: Màn hình bảng tin ...................................................................................78
Hình 4.33: Màn hình xem bài đăng theo chủ đề .......................................................78
Hình 4.34: Màn hình tìm kiếm người dùng ..............................................................78
Hình 4.35: Màn hình tạo bài đăng .............................................................................78
Hình 4.36: Màn hình tạo bài đăng kèm đường dẫn đến hướng dẫn nấu món ăn ......79
Hình 4.37: Màn hình tạo bài đăng gợi ý món ăn nên và khơng nên sử dụng ...........79
Hình 4.38: Màn hình bình luận .................................................................................79
Hình 4.39: Màn hình hiển thị danh sách các món ăn ................................................79
Hình 4.40: Màn hình hiển thị chi tiết hướng dẫn nấu ăn (1) .....................................80
Hình 4.41: Màn hình hiển thị chi tiết hướng dẫn nấu ăn (2) .....................................80
Hình 4.42: Màn hình đánh giá món ăn ......................................................................80
Hình 4.43: Màn hình hiển thị các đánh giá món ăn của người dùng ........................80
Hình 4.44: Màn hình tạo hướng dẫn nấu ăn ..............................................................81
Hình 4.45: Màn hình hiển thị danh sách bài đăng đã lưu .........................................81
Hình 4.46: Màn hình hiển thị danh sách món ăn nên sử dụng đã lưu.......................81
Hình 4.47: Màn hình hiển thị danh sách món ăn khơng nên sử dụng đã lưu............81
Hình 4.48: Màn hình hiển thị các thơng báo .............................................................82
Hình 4.49: Màn hình hiển thị danh sách các cuộc trị chuyện ..................................82
Hình 4.50: Màn hình nhắn tin ...................................................................................82
Hình 4.51: Màn hình trang cá nhân người dùng .......................................................82
Hình 4.52: Màn hình chỉnh sửa thơng tin cá nhân ....................................................83
Hình 4.53: Màn hình tạo album ................................................................................83
Hình 4.54: Màn hình xem album ..............................................................................83
Hình 4.55: Màn hình thay đổi mật khẩu ...................................................................83
Hình 4.56: Màn hình bật tắt tính năng nhận thơng báo.............................................84
Hình 4.57: Màn hình chỉnh sửa các chủ đề người dùng theo dõi .............................84
Hình 4.58: Sơ đồ triển khai hệ thống ........................................................................84
Hình 4.59: Thơng tin máy chủ đã triển khai .............................................................85
Hình 4.60: Thơng tin cơ sở dữ liệu đã triển khai ......................................................85
Hình 4.61: Thơng tin thiết lập của MongoDB Atlat .................................................85
DANH MỤC BẢNG
Bảng 4.1: Danh sách các Actor trong hệ thống.........................................................19
Bảng 4.2: Danh sách các Use case trong hệ thống....................................................22
Bảng 4.3: Danh sách các bảng dữ liệu ......................................................................51
Bảng 4.4: Danh sách thuộc tính bảng user ................................................................53
Bảng 4.5: Danh sách thuộc tính bảng accounts ........................................................54
Bảng 4.6: Danh sách thuộc tính bảng feeds ..............................................................54
Bảng 4.7: Danh sách thuộc tính bảng interactions ....................................................55
Bảng 4.8: Danh sách thuộc tính bảng posts ..............................................................56
Bảng 4.9: Danh sách thuộc tính bảng post_medias ..................................................56
Bảng 4.10: Danh sách thuộc tính bảng saved_posts .................................................57
Bảng 4.11: Danh sách thuộc tính bảng comments ....................................................58
Bảng 4.12: Danh sách thuộc tính bảng comment_medias ........................................59
Bảng 4.13: Danh sách thuộc tính bảng reactions ......................................................59
Bảng 4.14: Danh sách thuộc tính bảng albums .........................................................60
Bảng 4.15: Danh sách thuộc tính bảng album_medias .............................................60
Bảng 4.16: Danh sách thuộc tính bảng follows ........................................................61
Bảng 4.17: Danh sách thuộc tính bảng topics ...........................................................62
Bảng 4.18: Danh sách thuộc tính bảng interested_topic ...........................................62
Bảng 4.19: Danh sách thuộc tính bảng foods............................................................63
Bảng 4.20: Danh sách thuộc tính bảng food_medias ................................................64
Bảng 4.21: Danh sách thuộc tính bảng food_ingredients .........................................64
Bảng 4.22: Danh sách thuộc tính bảng recipe_steps .................................................65
Bảng 4.23: Danh sách thuộc tính bảng food_votes ...................................................66
Bảng 4.24: Danh sách thuộc tính bảng saved_foods ................................................66
Bảng 4.25: Danh sách thuộc tính bảng conversations ..............................................67
Bảng 4.26: Danh sách thuộc tính bảng conversation_members ...............................68
Bảng 4.27: Danh sách thuộc tính bảng messages .....................................................68
Bảng 4.28: Danh sách thuộc tính bảng ingredients ...................................................69
Bảng 4.29: Danh sách thuộc tính bảng units .............................................................70
Bảng 4.30: Danh sách thuộc tính bảng providers .....................................................70
Bảng 4.31: Danh sách thuộc tính bảng roles .............................................................71
Bảng 4.32: Danh sách thuộc tính bảng permissions .................................................72
Bảng 4.33: Danh sách thuộc tính bảng role_permissions .........................................72
Bảng 4.34: Danh sách màn hình ...............................................................................76
DANH MỤC TỪ VIẾT TẮT
STT
Từ viết tắt
1
STT
2
UI
3
SDK
Tên đầy đủ
Diễn giải
Số thứ tự
Số thứ tự trong bảng
User Interface
Giao diện của ứng dụng
Software Development
Là công cụ và phần mềm dùng để
Kit
phát triển ứng dụng thông qua
một nền tảng nhất định
4
API
Application
Là phương thức trung gian kết nối
Programing Interface
các ứng dụng và thư viện khác
nhau
5
UML
Unified Modeling
Language
Ngơn ngữ mơ hình hóa thống nhất
TĨM TẮT KHĨA LUẬN
Khố luận với đề tài “Xây dựng ứng dụng mạng xã hội chia sẻ phương pháp nấu ăn
dinh dưỡng” tập trung vào nghiên cứu, phân tích thực trạng và ứng dụng các cơng
nghệ mới để từ đó xây dựng thành một ứng dụng di động hoàn chỉnh, chạy nên nền
tảng Android. Đáp ứng nhu cầu tìm kiếm, chia sẻ những khoảnh khắc nấu ăn, công
thức nấu ăn của người dùng.
Đề tài được bắt đầu từ việc tìm hiểu các ứng dụng phổ biến hiện có trên thị trường.
Qua đó đưa ra những ưu điểm, hạn chế nhằm 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 ứng dụng. Ngồi việc xử lý các nghiệp vụ cho
hệ thống, nhóm đã 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.
Nhóm đã sử dụng phương pháp phát triển phần mềm Agile trong quá trình thực hiện
đề tài nhằm hình thành sớm sản phẩm và thích hợp với các thay đổi yêu cầu trong
quá trình phát triển ứng dụng. Kiến trúc hệ thống, cơ sở dữ liệu, giao diện được thể
hiện bằng sơ đồ use, sơ đồ tuần tự và bản thiết kế sử dụng công cụ Draw.io.
Trong giai đoạn thực hiện, client và server được phát triển song song. Server được
triển khai lên máy chủ Heroku, hồn tồ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 khố 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 khố
luận được trình bày trong 5 chương:
-
Chương 01: Mở đầu
Trình bày lý do chọn đề tài, mục đích, đối tượng, phạm vi nghiên cứu
-
Chương 02: Tổng quan đề tài
Trình bày thực trạng, khảo sát ứng dụng, xác định vấn đề và hướng giải quyết
-
Chương 03: Cơ sở lý thuyết
1
Giới thiệu tổng quan về những công nghệ sử dụng trong đề tài
-
Chương 04: Hiện thực hệ thống
Phân tích yêu cầu, thiết kế, hiện thực và triển khai ứng dụng.
-
Chương 05: Kết luận và hướng phát triển
Những thuận lợi, khó khăn trong quá trình phát triển đề tài và nêu ra hướng
phát triển trong tương lai.
2
Chương 1. MỞ ĐẦU
1.1. Lí do chọn đề tài
Trong xã hội phát triển ngày nay, nhu cầu về đời sống tinh thần và vật chất
của con người ngày càng tăng cao. Trong đó, nhu cầu về dinh dưỡng đang ngày
càng nhận nhiều sự quan tâm từ mọi người. Dinh dưỡng là quá trình cung cấp năng
lượng từ thức ăn giúp cơ thể phát triển và khỏe mạnh. Vì vậy, các món ăn ngày nay
khơng những đáp ứng nhu cầu ăn ngon mà còn đảm bảo cung cấp đầy đủ chất dinh
dưỡng cần thiết cho cơ thể. Những món ăn ngon dinh dưỡng ln giữ vai trị quan
trọng đối với con người. Bên cạnh gắn kết các thành viên trong mỗi bữa cơm gia
đình, nó cịn góp phần thúc đẩy các dịch vụ du lịch, duy trì và thể hiện nét văn hóa
ẩm thực độc đáo của mỗi dân tộc.
Với nhiều người, nấu những bữa ăn ngon không chỉ là một nghĩa vụ đối với
bản thân, với những người thân mà cịn là một niềm vui khơng thể thiếu hàng ngày.
Được thưởng thức những món ngon hợp khẩu vị, tốt cho sức khỏe tự tay mình làm
ra, chăm sóc người thân bằng những món ăn ngon mình chăm chút, đó chính là cảm
giác hạnh phúc của bất cứ ai đam mê nấu nướng.
Với mong muốn tạo ra một nơi kết nối những người có niềm đam mê nấu ăn
và đem lại những món ăn ngon, dinh dưỡng cho người dùng, nhóm chúng em đã tạo
ra ứng dụng “Mạng xã hội chia sẻ phương pháp nấu ăn dinh dưỡng”. Thông qua
ứng dụng, người dùng có thể chia sẻ những phương pháp, khoảnh khắc nấu ăn của
mình, nhắn tin với bot, xem hướng dẫn nấu ăn với danh sách món ăn đa dạng do
ứng dụng và người dùng khác chia sẻ. Từ đó khuyến khích mọi người tự tay vào
bếp nấu cho bạn bè, người thân, gia đình những món ăn ngon dinh dưỡng.
1.2. Mục đích
Ứng dụng được xây dựng với mục đích kết nối những người có đam mê nấu
ăn, đa dạng hóa bữa ăn của các gia đình người Việt Nam. Ngồi ra, ứng dụng cịn là
3