Tải bản đầy đủ (.pdf) (111 trang)

Xây dựng ứng dụng chia sẻ phương pháp nấu ăn dinh dưỡng (khóa luận tốt nghiệp)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.41 MB, 111 trang )

ĐẠ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


×