Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 72 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
72
Dung lượng
2,96 MB
Nội dung
ĐẠ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 ĐỒ ÁN Xây dựng ứng dụng di động hỗ trợ dinh dưỡng với chat real-time GIẢNG VIÊN HƯỚNG DẪN: TS Đỗ Thị Thanh Tuyền SINH VIÊN THỰC HIỆN: 20520259 – Trần Thành Nhân 20520674 – Phạm Minh Nhật TP HỒ CHÍ MINH, 2023 LỜI CẢM ƠN Chúng em xin gửi lời cảm ơn chân thành đến cô Đỗ Thị Thanh Tuyền - giảng viên hướng dẫn môn Đồ án trường Đại học Công nghệ Thông tin trang bị giúp chúng em kỹ kiến thức cần thiết để hoàn thành đồ án Tuy nhiên, trình làm đồ án kiến thức chuyên ngành chúng em hạn chế nên khơng thể tránh khỏi vài thiếu sót trình bày đánh giá vấn đề Rất mong nhận góp ý, đánh giá thầy mơn để đề tài chúng em thêm hồn thiện Nhóm sinh viên thực đồ án gồm Trần Thành Nhân – 20520259 Phạm Minh Nhật – 20520674 xin chân thành cảm ơn! TÓM TẮT NỘI DUNG BÁO CÁO Nhóm chúng em xếp phần trình bày bao gồm chương chính: - Chương 1: Tổng quan đề tài - Chương 2: Cơ sở lý thuyết & Cơng nghệ - Chương 3: Phân tích thiết kế hệ thống - Chương 4: Xây dựng ứng dụng Trong nội dung chương thể sau: - Chương 1: Chương bao gồm mục Lý chọn đề tài nhóm, mục tiêu mà đề tài hướng đến Cùng với phạm vi đối tượng đề tài - Chương 2: Chương giới thiệu công nghệ mà đề tài sử dụng lúc thực Bao gồm khái niệm, ưu điểm, nhược điểm công nghệ - Chương 3: Chương trình bày trình phân tích thiết kế tồn hệ thống đề tài bao gồm Mô tả yêu cầu, mô hình UML, kiến trúc phần mềm thiết kế sở liệu - Chương 4: Chương trình bày phần kết thực thông qua Chương cách sử dụng kết trình bày NỘI DUNG CHƯƠNG LỜI CẢM ƠN TÓM TẮT NỘI DUNG BÁO CÁO NỘI DUNG CHƯƠNG DANH SÁCH CÁC HÌNH DANH SÁCH CÁC BẢNG 10 Chương Tổng quan đề tài 1.1 Lý chọn đề tài 1.2 Mục tiêu đề tài 1.3 Phạm vi đề tài 1.3.1 Phạm vi môi trường 1.3.2 Phạm vi chức 1.4 Đối tượng sử dụng Chương Cơ sở lý thuyết & Công nghệ 2.1 Flutter [1] 2.2 getX [2] 2.3 Firebase – Cloud Firestore [3] 2.4 Rapid API & Open Food Facts [4] [5] Chương Phân tích thiết kế hệ thống 3.1 3.1.1 3.2 3.2.1 Mô tả yêu cầu Yêu cầu chức Mơ hình Use-case Sơ đồ Use-case 3.2.1.1 Use case tổng quát 3.2.1.2 Use case Đăng nhập 3.2.1.3 Use case Đăng xuất 3.2.1.4 Use case Quản lý nhật ký ăn 3.2.1.5 Use case Quản lý tập 3.2.1.6 Use case Chat 3.2.2 Danh sách Actors 3.2.3 Đặc tả Use-case 3.2.3.1 Use case Đăng nhập 3.2.3.2 Use case Quên mật 10 3.2.3.3 Use Case Đăng xuất 11 3.2.3.4 Use Case thêm ăn 11 3.2.3.5 Use case Xóa ăn 12 3.2.3.6 Use Case Thêm tập 13 3.2.3.7 Use case Xóa tập 13 3.2.3.8 Use Case chat 14 3.3 Mô hình hoạt động 15 3.3.1 Đăng nhập 15 3.3.2 Quên mật 15 3.3.3 Đăng xuất 16 3.3.4 Chat 16 3.3.5 Tìm kiếm ăn 17 3.3.6 Thêm ăn 17 3.3.7 Xóa ăn 19 3.3.8 Thêm tập thể dục 20 3.3.9 Xóa tập thể dục 21 3.3.10 Quản lý nhật ký ăn 22 3.4 Mơ hình 23 3.4.1 Đăng nhập 23 3.4.2 Quên mật 23 3.4.3 Chat 24 3.4.4 Tìm kiếm ăn 25 3.4.5 Thêm ăn 26 3.4.6 Xóa ăn 27 3.4.7 Thêm tập thể dục 28 3.4.8 Xóa tập thể dục 29 3.5 Kiến trúc phần mềm 29 3.6 Thiết kế sở liệu 31 Chương Xây dựng ứng dụng 32 4.1 Màn hình Giới thiệu 32 4.2 Màn hình Chọn mục tiêu 33 4.3 Màn hình Chọn giới tính 34 4.4 Màn hình Nhập tuổi 35 4.5 Màn hình Chọn chiều cao 36 4.6 Màn hình Chọn cân nặng 37 4.7 Màn hình Chọn mục tiêu cân nặng 38 4.8 Màn hình Chọn tần suất hoạt động 39 4.9 Màn hình Đăng nhập 40 4.10 Màn hình đăng ký 41 4.11 Màn hình Trang chủ 42 4.12 Màn hình Cập nhật cân nặng 43 4.13 Màn hình Thêm lượng nước ngày 44 4.14 Màn hình Nhật ký 45 4.15 Màn hình Các chức 46 4.16 Màn hình Lối tắt thêm ăn 47 4.17 Màn hình Thêm ăn khơng định lượng 48 4.18 Màn hình Tìm kiếm ăn 49 4.19 Màn hình Gợi ý ăn 50 4.20 Màn hình Kết tìm kiếm ăn 51 4.21 Màn hình Chi tiết ăn 52 4.22 Màn hình Chọn định lượng cho ăn 53 4.23 Màn hình Thêm tập 54 4.24 Màn hình Chọn thời lượng tập 55 4.25 Màn hình Tra cứu ăn barcode 56 4.26 Màn hình Các liên hệ 57 4.27 Màn hình Chat 58 KẾT LUẬN 59 KẾT QUẢ ĐẠT ĐƯỢC 59 PHƯƠNG HƯỚNG PHÁT TRIỂN 59 TÀI LIỆU THAM KHẢO 60 DANH SÁCH CÁC HÌNH Hình 3-1 Use case tổng qt Hình 3-2 Use case Đăng nhập Hình 3-3 Use case Đăng xuất Hình 3-4 Use case Quản lý nhật ký ăn Hình 3-5 Use case Quản lý tập Hình 3-6 Use case Chat Hình 3-7 Mơ hình hoạt động Đăng nhập 15 Hình 3-8 Mơ hình hoạt động Qn mật 15 Hình 3-9 Mơ hình hoạt động Đăng xuất 16 Hình 3-10 Mơ hình hoạt động Chat 16 Hình 3-11 Mơ hình hoạt động Tìm Kiếm ăn 17 Hình 3-12 Mơ hình hoạt động Thêm ăn 18 Hình 3-13 Mơ hình Hoạt động xóa ăn 19 Hình 3-14 Mơ hình hoạt động Thêm tập thể dục 20 Hình 3-15 Mơ hình hoạt động Xóa tập thể dục 21 Hình 3-16 Mơ hình hoạt động Quản lý nhật ký ăn 22 Hình 3-17 Mơ hình Đăng nhập 23 Hình 3-18 Mơ hình Quên mật 23 Hình 3-19 Mơ hình Chat 24 Hình 3-20 Mơ hình tìm kiếm ăn 25 Hình 3-21 Mơ hình thêm ăn 26 Hình 3-22 Mơ hình xóa ăn 27 Hình 3-23 Mơ hình thêm tập thể dục 28 Hình 3-24 Mơ hình xóa tập thể dục 29 Hình 3-25 Kiến trúc phần mềm 29 Hình 3-26 Sơ đồ thiết kế cho collection lưu trữ ăn 31 Hình 3-27 Sơ đồ thiết kế cho collection lưu trữ thông tin liệu người dùng 31 Hình 4-1 Màn hình Giới thiệu 32 Hình 4-2 Màn hình Chọn mục tiêu 33 Hình 4-3 Màn hình Chọn giới tính 34 Hình 4-4 Màn hình Nhập tuổi 35 Hình 4-5 Màn hình Chọn chiều cao 36 Hình 4-6 Màn hình Chọn cân nặng 37 Hình 4-7 Màn hình Chọn mục tiêu cân nặng 38 Hình 4-8 Màn hình Chọn tần suất hoạt động 39 Hình 4-9 Màn hình Đăng nhập 40 Hình 4-10 Màn hình Đăng ký 41 Hình 4-11 Màn hình Trang chủ 42 Hình 4-12 Màn hình Cập nhật cân nặng 43 Hình 4-13 Màn hình Thêm lượng nước 44 Hình 4-14 Màn hình Nhật ký 45 Hình 4-15 Màn hình Các chức 46 Hình 4-16 Màn hình Lối tắt thêm ăn 47 Hình 4-17 Màn hình Thêm ăn khơng định lượng 48 Hình 4-18 Màn hình Tìm kiếm ăn 49 Hình 4-19 Màn hình Gợi ý ăn 50 Hình 4-20 Màn hình Kết tìm kiếm ăn 51 Hình 4-21 Màn hình chi tiết ăn 52 Hình 4-22 Màn hình Chọn định lượng cho ăn 53 Hình 4-23 Màn hình Thêm tập 54 Hình 4-24 Màn hình Chọn thời lượng tập 55 Hình 4-25 Màn hình Tra cứu ăn Barcode 56 Hình 4-26 Màn hình Các liên hệ 57 Hình 4-27 Màn hình Chat 58 DANH SÁCH CÁC BẢNG Bảng 3-1 Yêu cầu chức Bảng 3-2 Danh sách Actors Bảng 4-1 Mô tả cách sử dụng Màn hình Giới thiệu 32 Bảng 4-2 Mô tả cách sử dụng hình Chọn mục tiêu 33 Bảng 4-3 Mô tả cách sử dụng hình Chọn giới tính 34 Bảng 4-4 Mô tả cách sử dụng hình Nhập tuổi 35 Bảng 4-5 Mô tả cách sử dụng hình Chọn chiều cao 36 Bảng 4-6 Mô tả cách sử dụng hình Chọn cân nặng 37 Bảng 4-7 Mơ tả cách sử dụng hình Chọn mục tiêu cân nặng 38 Bảng 4-8 Mơ tả cách sử dụng Màn hình Chọn tần suất hoạt động 39 Bảng 4-9 Mơ tả cách sử dụng Màn hình Đăng nhập 40 Bảng 4-10 Mô tả cách sử dụng Màn hình Đăng ký 41 Bảng 4-11 Mô tả cách sử dụng hình Trang chủ 42 Bảng 4-12 Mô tả hình cách sử dụng Màn hình Cập nhật cân nặng 43 Bảng 4-13 Mô tả cách sử dụng Màn hình Thêm lượng nước 44 Bảng 4-14 Mơ tả cách sử dụng Màn hình Nhật ký 45 Bảng 4-15 Mơ tả cách sử dụng Màn hình Các chức 46 Bảng 4-16 Mơ tả cách sử dụng Màn hình Lối tắt thêm ăn 47 Bảng 4-17 Mơ tả cách sử dụng Màn hình Thêm ăn không định lượng 48 Bảng 4-18 Mô tả cách sử dụng Màn hình Tìm kiếm ăn 49 Bảng 4-19 Mô tả cách sử dụng hình Gợi ý ăn 50 Bảng 4-20 Mô tả cách sử dụng Màn hình Kết tìm kiếm ăn 51 Bảng 4-21 Mô tả cách sử dụng Màn hình Chi tiết ăn 52 Bảng 4-22 Mô tả cách sử dụng Màn hình Chọn định lượng cho ăn 53 Bảng 4-23 Mô tả cách sử dụng Màn hình Thêm tập 54 Bảng 4-24 Mơ tả cách sử dụng Màn hình Chọn thời lượng tập 55 Bảng 4-25 Mơ tả cách sử dụng hình Tra cứu ăn Barcode 56 Bảng 4-26 Mơ tả cách sử dụng hình Các liên hệ 57 Bảng 4-27 Mơ tả cách sử dụng Màn hình Chat 58 4.15 Màn hình Các chức Hình 4-15 Màn hình Các chức Bảng 4-15 Mơ tả cách sử dụng Màn hình Các chức STT Biến cố Add Food Scan bar-code Add Exercise Xử lý Chuyển sang Màn hình thêm ăn Chuyển san Màn hình Scan bar-code Chuyển sang Màn hình thêm tập 46 4.16 Màn hình Lối tắt thêm ăn Hình 4-16 Màn hình Lối tắt thêm ăn Bảng 4-16 Mơ tả cách sử dụng Màn hình Lối tắt thêm ăn STT Biến cố Finding Food Quick shortcut Untracked Thơng tin ăn Nhập thức ăn Log Food Chọn buổi ăn khác Chọn định lượng Xử lý Chuyển sang Tab tìm kiếm ăn Chuyển sang Tab Lối tắt thêm ăn Chuyển sang Tab Untracked Calories Nhập số lượng, tên ăn Truy xuất theo yêu cầu Log thức ăn vào Nhật ký List buổi ăn như: Breakfast, Lunch, Dinner, Snack List định lượng như: lbs, kg, bowl, none 47 4.17 Màn hình Thêm ăn khơng định lượng Hình 4-17 Màn hình Thêm ăn khơng định lượng Bảng 4-17 Mô tả cách sử dụng Màn hình Thêm ăn khơng định lượng STT Biến cố Finding Food Quick shortcut Untracked Thơng tin ăn Nhập thức ăn Chọn lượng calories Confirm Xử lý Chuyển sang Tab tìm kiếm ăn Chuyển sang Tab Lối tắt thêm ăn Chuyển sang Tab Untracked Calories Nhập mơ tả tên ăn Chọn thêm ăn Lựa chọn calories phù hợp với ước lượng Log ăn vào Nhật ký 48 4.18 Màn hình Tìm kiếm ăn Hình 4-18 Màn hình Tìm kiếm ăn Bảng 4-18 Mơ tả cách sử dụng Màn hình Tìm kiếm ăn STT Biến cố Finding Food Quick shortcut Untracked Log Food Chọn buổi ăn khác Xóa ăn Tìm kiếm ăn Xử lý Chuyển sang Tab tìm kiếm ăn Chuyển sang Tab Lối tắt thêm ăn Chuyển sang Tab Untracked Calories Log thức ăn vào Nhật ký List buổi ăn như: Breakfast, Lunch, Dinner, Snack Vuốt ngang ăn để Xóa ăn Chuyển sang Màn hình tìm kiếm ăn 49 4.19 Màn hình Gợi ý ăn Hình 4-19 Màn hình Gợi ý ăn Bảng 4-19 Mơ tả cách sử dụng hình Gợi ý ăn STT Biến cố Back Delete Input text Chọn ăn gợi ý Enter ăn tìm kiếm Xử lý Chuyển sang Màn hình trước Xóa input nhập Đề gợi ý ăn Hiển thị danh sách ăn Hiển thị danh sách ăn 50 4.20 Màn hình Kết tìm kiếm ăn Hình 4-20 Màn hình Kết tìm kiếm ăn Bảng 4-20 Mơ tả cách sử dụng Màn hình Kết tìm kiếm ăn STT Biến cố Back Delete Input text Chọn ăn Xử lý Chuyển sang Màn hình trước Xóa input nhập Đề gợi ý ăn Chuyển sang Màn hình Chi tiết ăn 51 4.21 Màn hình Chi tiết ăn Hình 4-21 Màn hình chi tiết ăn Bảng 4-21 Mơ tả cách sử dụng Màn hình Chi tiết ăn STT Biến cố Back Log Food Xử lý Chuyển sang Màn hình trước Chuyển sang hình chọn định lượng 52 4.22 Màn hình Chọn định lượng cho ăn Hình 4-22 Màn hình Chọn định lượng cho ăn Bảng 4-22 Mơ tả cách sử dụng Màn hình Chọn định lượng cho ăn STT Biến cố Cancel Chọn định lượng Confirm Xử lý Chuyển sang Màn hình chi tiết ăn Lựa chọn định lượng theo mong muốn Xác nhận thêm ăn back Màn hình Tìm kiếm ăn 53 4.23 Màn hình Thêm tập Hình 4-23 Màn hình Thêm tập Bảng 4-23 Mơ tả cách sử dụng Màn hình Thêm tập STT Biến cố Back Log Exercise Add Exercise Untracked exercise Thông tin tập Xử lý Chuyển sang Màn hình trước Chuyển sang hình chọn thời gian Chuyển sang Tab Add Exercise Chuyển sang Tab Untracked Exercise Điền thơng tin tập 54 4.24 Màn hình Chọn thời lượng tập Hình 4-24 Màn hình Chọn thời lượng tập Bảng 4-24 Mô tả cách sử dụng Màn hình Chọn thời lượng tập STT Biến cố Cancel Chọn thời lượng Confirm Xử lý Chuyển sang Màn hình thêm tập Lựa chọn thời lượng theo mong muốn Xác nhận thêm tập back Màn hình thêm tập 55 4.25 Màn hình Tra cứu ăn barcode Hình 4-25 Màn hình Tra cứu ăn Barcode Bảng 4-25 Mơ tả cách sử dụng hình Tra cứu ăn Barcode STT Biến cố Cancel Chuyển đổi góc nhìn Qt Bar-code Xử lý Back hình trước Đổi cam điện thoại Đưa camera tới mã barcode ăn 56 4.26 Màn hình Các liên hệ Hình 4-26 Màn hình Các liên hệ Bảng 4-26 Mơ tả cách sử dụng hình Các liên hệ STT Biến cố Chọn người dùng Xử lý Chuyển sang hình tin nhắn 57 4.27 Màn hình Chat Hình 4-27 Màn hình Chat Bảng 4-27 Mơ tả cách sử dụng Màn hình Chat STT Biến cố Back Input message Image loader Send message Xử lý Back Màn hình trước Hiển thị tin nhắn nhập Hiển thị hình ảnh kho để thêm vào Gửi tin nhắn 58 KẾT LUẬN KẾT QUẢ ĐẠT ĐƯỢC - Tạo sản phẩm hoàn chỉnh - Áp dụng kiến thức quy trình phát triển phần mềm cách chun nghiệp - Tìm hiểu thêm cơng nghệ kiến trúc kĩ thuật RESTful API, JSON data, Cloud, … - Phân công task hợp lý, đồng phù hợp PHƯƠNG HƯỚNG PHÁT TRIỂN - Xây dựng Hệ thống khuyến nghị ăn, tập giúp đề xuất ăn tập phù hợp tới người dùng - Xây dựng tính cảnh bảo sức khỏe xuất thông báo thông số người dùng lại mục tiêu ban đầu - Xây dựng hệ thống đánh giá từ khách hàng ăn chuyên gia dinh dưỡng - Xây dựng tính Premium trả phí: Người dùng phải trả khoản phí để sử dụng ứng dụng lâu dài tham khảo chuyên gia dinh dưỡng 59 TÀI LIỆU THAM KHẢO [1] V N TUAN, "Viblo," [Online] Available: https://viblo.asia/p/gioi-thieu-veflutter-bWrZnNxrZxw [2] N M Duong, "viblo," [Online] Available: https://viblo.asia/p/getx-make-fluttereasy-part-1-eW65G1wJZDO [3] Unknown, "aptech," [Online] Available: https://aptech.fpt.edu.vn/firebase-lagi.html [4] Unknown, "openFoodFacts," [Online] Available: https://vn.openfoodfacts.org/ [5] Unknown, "Amazone," [Online] Available: https://aws.amazon.com/vi/whatis/api/ 60