Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 108 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
108
Dung lượng
6,87 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ THÔNG TIN PHÁT TRIỂN MẠNG XÃ HỘI VẬN CHUYỂN HÀNG ĐA NỀN TẢNG DỰA TRÊN FLUTTER GVHD: ThS DƯƠNG HỮU THÀNH SVTH: VÕ THÀNH ĐÔ DƯƠNG TRUNG BẢO S K L0 Tp Hồ Chí Minh, 2022 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA CƠNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM Võ Thành Đô – 18110270 Dương Trung Bảo – 18110250 Đề tài: PHÁT TRIỂN MẠNG XÃ HỘI VẬN CHUYỂN HÀNG ĐA NỀN TẢNG DỰA TRÊN FLUTTER KHÓA LUẬN TỐT NGHIỆP Giáo viên hướng dẫn ThS Dương Hữu Thành KHÓA 2018 – 2022 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA CƠNG NGHỆ THƠNG TIN BỘ MƠN CÔNG NGHỆ PHẦN MỀM Võ Thành Đô – 18110270 Dương Trung Bảo – 18110250 Đề tài: PHÁT TRIỂN MẠNG XÃ HỘI VẬN CHUYỂN HÀNG ĐA NỀN TẢNG DỰA TRÊN FLUTTER KHÓA LUẬN TỐT NGHIỆP Giáo viên hướng dẫn ThS Dương Hữu Thành KHÓA 2018 – 2022 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH Cộng hòa xã hội chủ nghĩa Việt nam Độc lập - Tự - Hạnh phúc NHẬN XÉT HƯỚNG DẪN KHÓA LUẬN TỐT NGHIỆP Đề tài: PHÁT TRIỂN MẠNG XÃ HỘI SHIPPER SỬ DỤNG FLUTTER Sinh viên thực hiện: VÕ THÀNH ĐÔ - MSSV: 18110270 DƯƠNG TRUNG BẢO – MSSV: 18110250 Giảng viên hướng dẫn: ThS Dương Hữu Thành NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN: Qua thời gian hướng dẫn sinh viên thực khóa luận tốt nghiệp, tơi có nhận xét sau: Về thái độ làm việc: - Sinh viên có thái độ làm khố luận tích cực, chủ động thực khố luận - Sinh viên có khả nghiên cứu độc lập, chủ động tìm hiểu cơng nghệ có kỹ lập trình tốt Về kết đạt được: - Đề tài phát triển hệ thống quản lý việc đặt hàng giao hàng, cho phép khách hàng chọn shipper giao hàng, đăng hàng shipper phù hợp nhận giao, khách hàng phép đánh giá shipper Đề tài nghiên cứu sử dụng flutter để phát triển ứng dụng đa tảng cho nghiệp vụ giao hàng - Cấu trúc báo cáo nội dung báo cáo ngắn gọn đầy đủ phần báo cáo khoá luận Về mặt hạn chế: - Vài trường hợp sinh viên khơng hồn thành kế hoạch tiến độ GVHD đưa - Phần báo cáo số nội dung sở lý thuyết chưa chi tiết nộp GVHD trễ Đánh giá giảng viên hướng dẫn: Giỏi – Điểm: 8,5 Ngày 14 tháng 07 năm 2022 Giảng viên hướng dẫn Dương Hữu Thành ĐH SƯ PHẠM KỸ THUẬT TP.HCM XÃ HỘI CHỦ NGHĨA VIỆT NAM KHOA CNTT Độc lập – Tự – Hạnh phúc ******* ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Họ tên sinh viên 1: Võ Thành Đô MSSV 1: 18110270 Họ tên sinh viên 2: Dương Trung Bảo MSSV 2: 18110250 Ngành: Công nghệ Thông tin Tên đề tài: “PHÁT TRIỂN MẠNG XÃ HỘI VẬN CHUYỂN HÀNG ĐA NỀN TẢNG DỰA TRÊN FLUTTER” Họ tên Giáo viên hướng dẫn: Huỳnh Xuân Phụng NHẬN XÉT Về nội dung đề tài khối lượng thực hiện: Ưu điểm: Khuyết điểm: Điểm: (Bằng chữ: ) Tp Hồ Chí Minh, ngày tháng 07 năm 2022 Giáo viên phản biện (Ký ghi rõ họ tên) LỜI CẢM ƠN Đầu tiên, chúng em xin gửi tới tồn thể thầy khoa Cơng Nghệ Thơng Tin tồn thể thầy trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh Chắc chắn sau dù có làm đâu, chúng em ghi nhớ công ơn thầy, cô, nhà giáo tận tâm với nghề, ln tận lực cho nghiệp trồng người Chính nhờ cơng sức q báu giúp chúng em vững bước đường học vấn sau trở thành người có ích cho Xã hội, tạo giá trị có ích cho đời Đặc biệt, chúng em xin bày tỏ lòng biết ơn sâu sắc tới Giáo Viên Hướng Dẫn đáng kính chúng em, thầy Dương Hữu Thành, người dìu dắt chúng em suốt khoảng thời gian thực Khóa Luận Tốt Nghiệp Những kiến thức, lời dạy kinh nghiệm quý báu thầy dành cho chúng em, chắn chúng em quên Ơng bà ta có câu: “Học Thầy khơng tày học bạn” Vì lẽ đó, lời cuối cùng, chúng em xin gửi lời cảm ơn chân thành sâu sắc đến bạn sinh viên lớp, bạn ln sẵn sàng chia sẻ giúp chúng em khó khăn học tập lẫn sống, bạn trao cho chúng em kiến thức vô bổ ích bên cạnh thầy cô Chính bạn phần thiếu bốn năm đại học – đời sinh viên đáng nhớ chúng em Bằng tất khả thân, chúng em cố gắng để hoàn thành đề tài cách tốt Tuy nhiên bỡ ngỡ với nhiều điều mẻ nên sai sót điều mà chúng em khó tránh khỏi, chúng em kính mong nhận thông cảm thầy cô bạn Chúng em ln sẵn sàng lắng nghe ý kiến để hồn thiện đề tài tương lai Tp Hồ Chí Minh, ngày tháng 07 năm 2022 Sinh viên thực Võ Thành Đô Dương Trung Bảo Trường ĐH Sư Phạm Kỹ Thuật TP.HCM Khoa: Công nghệ Thông tin Bộ mơn: Cơng nghệ Phần mềm ĐỀ CƯƠNG KHĨA LUẬN TỐT NGHIỆP Họ tên sinh viên 1: Võ Thành Đô MSSV 1: 18110270 Họ tên sinh viên 2: Dương Trung Bảo MSSV 2: 18110250 Thời gian làm luận văn: Từ: 01/03/2022 Đến: 10/07/2022 Tên đề tài: “PHÁT TRIỂN MẠNG XÃ HỘI VẬN CHUYỂN HÀNG ĐA NỀN TẢNG DỰA TRÊN FLUTTER” Họ tên Giáo viên hướng dẫn: ThS Dương Hữu Thành Nhiệm Vụ Của Đề Tài: CHƯƠNG Lý thuyết: Tìm hiểu kiến thức cần thiết để thực đề tài: Flutter, NodeJS, GraphQL, PostgreSQL, … CHƯƠNG Thực hiện: Nghiên cứu khảo sát thị trường, ứng dụng có sẵn đưa vào sử dụng cho mục đích thương mại thị trường Facebook, Grab, … Phân tích thiết kế hệ thống, sở liệu kết hợp bắt đầu viết báo cáo Bắt đầu triển khai dự án, xây dựng phần backend Tiếp tục xây dựng backend, xây dựng phần frontend Tiếp tục phát triển ứng dụng, kết nối backend – frontend module khác Kiểm thử sửa lỗi Thêm thông tin kết đạt vào báo cáo Đề cương viết luận văn: CHƯƠNG MỞ ĐẦU Lý chọn đề tài Mục tiêu đề tài Đối tượng phạm vi nghiên cứu CHƯƠNG CƠ SỞ LÝ THUYẾT Flutter NodeJS PostgreSQL GraphQL Và cơng nghệ khác có sử dụng CHƯƠNG PHÂN TÍCH THIẾT KẾ Phân tích hệ thống Thiết kế hệ thống CHƯƠNG KẾT LUẬN Kết đạt Khó khăn gặp phải Hướng phát triển Ý kiến giảng viên hướng dẫn Người viết đề cương Ths Dương Hữu Thành Dương Trung Bảo DANH SÁCH HÌNH ẢNH Cấu trúc lớp Flutter 21 Flutter doctor 23 Kết chương trình hello world 26 Lược đồ use case Admin 31 Lược đồ use case Member 33 Lược đồ use case Shipper 34 Các bảng liệu User 35 Bảng app_public.users 36 Bảng app_private.user_accounts 37 Bảng app_public.blocked_users 38 Bảng app_public.reported_users 39 Bảng app_public.unblock_requests 40 Bảng app_public.user_addresses 41 Bảng app_public.user_shippers 41 Diagram shipments 43 Bảng app_public.shipments 43 Bảng app_public.shipment_address_froms 44 Bảng app_public.shipment_address_tos 45 Bảng app_public.shipment_parcels 46 Bảng app_public.shipment_attachments 47 Bảng app_public.shipment_offers 48 Diagram posts 49 Bảng app_public.posts 50 Bảng app_public.post_addresses 50 Bảng app_public.post_attachments 51 Bảng app_public.post_emotes 52 Bảng app_public.post_comments 53 Bảng app_public.comment_attachments 54 Bảng app_public.comment_emotes 54 Bảng app_private.emote_codes 55 Diagram conversations 56 Bảng app_public.conversations 57 Bảng app_public.conversation_invitees 58 Bảng app_public.participants 59 Bảng app_public.deleted_conversations 60 Bảng app_public.messages 61 Bảng app_public.message_attachments 62 Bảng app_public.message_emotes 63 Diagram feedbacks 64 Bảng app_public.feedbacks 64 Bảng app_public.feedback_attachments 65 Bảng app_public.feedback_replies 66 Bảng app_public.reply_attachments 67 Các bảng phụ 68 Bảng app_private.account_roles 68 Bảng app_private.vehicle_types 68 Bảng app_private.shipper_statuses 68 Bảng app_private.attachment_types 69 Bảng app_private.emotes_codes 69 Bảng app_private.participant_roles 69 Bảng app_private.shipment_types 70 Bảng app_private.shipment_services 70 Bảng app_private.shipment_statuses 70 Bảng app_private.report_types 71 Bảng app_private.report_statuses 71 Welcome Page 72 Màn hình đăng nhập 73 Nhập email password 74 Màn hình 75 Màn hình đăng nhập 76 Đăng ký tài khoản 77 Danh sách hội thoại 93 Màn hình hội thoại 4.1.13 Tạo viết Nhấn vào phần Bạn nghĩ để tạo viết 94 Đăng viết 4.1.14 Tạo viết kèm yêu cầu vận chuyển Chỉ thực với tài khoản user thơng thường, vào phần Ship chọn dấu + Sau nhập đầy đủ thông tin bấm đăng 95 Đăng viết kèm yêu cầu vận chuyển 4.1.15 Tạo đề nghị cho yêu cầu vận chuyển Đối với tài khoản shipper, tạo đề nghị viết có yêu cầu ship 96 Tạo đề nghị vận chuyển 4.1.16 Tương tác với offer viết Ta xem offer, chấp nhận từ chối chúng 97 Tương tác với offer 4.1.17 Thay đổi giao diện Người dùng thay đổi loại giao diện sáng tối 98 Giao diện sáng 99 Giao diện tối 4.2 KẾT QUẢ ĐẠT ĐƯỢC 100 Sau thời gian nghiên cứu thực đề tài “Xây dựng mạng xã hội shipper” với công nghệ chủ yếu Flutter framework nhóm đạt kết sau đây: 4.2.1 Về phần kiến thức lý thuyết Hiểu ứng dụng kiến thức Flutter Hiểu ứng dụng kiến thức NodeJS Hiểu ứng dụng kiến thức PostgreSQL GraphQL Hiểu cách xây dựng ứng dụng di động hồn chỉnh Học cách phân tích vấn đề, từ ý tưởng đến phân tích, thiết kế thực sản phẩm Học cách phân phối thời gian, công việc Cải thiện khả làm việc nhóm Học trình bày tài liệu cho đề tài nghiên cứu khoa học 4.2.2 Về phần thực hành Hoàn thành ứng dụng di động hoàn chỉnh Hoàn thành chức hỗ trợ nghiệp vụ vận chuyển hàng hóa Hiện thực hóa ý tưởng xây dựng mạng xã hội dành cho shipper Vận dụng thực tế tất kiến thức lý thuyết tìm hiểu 4.2.3 Ưu điểm khuyết điểm 4.2.3.1 Ưu điểm Hệ thống có đầy đủ chức ứng dụng mạng xã hội Giao diện lấy ý tưởng từ Facebook nên thân thiện với người dùng Ứng dụng xây dựng Flutter, cơng nghệ mới, đảm bảo khả trì, nâng cấp mở rộng ứng dụng tương lai 4.2.3.2 Khuyết điểm Các chức cho người quản trị cịn tương đối Ứng dụng nặng, cần tối ưu thêm Giao diện app sơ xài chưa bắt mắt 101 Các phần đăng nhắn tin chưa thể gửi tệp đa phương tiện (hình ảnh, video) Chưa có nhiều tính phục vụ trình sau kết thúc Chưa sửa triệt để lỗi lặt vặt Nhiều chức phản hồi chậm thiếu phần loading chờ ứng dụng phản hồi 4.3 MỘT SỐ KHÓ KHĂN GẶP PHẢI 4.3.1 Về cơng nghệ Bảng 44 Khó khăn cơng nghệ STT Khó khăn Khắc phục Flutter cơng nghệ hồn tồn mới, Cố gắng tìm tịi học hỏi không giảng dạy học từ nguồn tài liệu mở phần trường Các thành viên Internet Trao đổi nhóm phải tự học hỏi làm quen với bạn bè biết Flutter Chưa có nhiều kinh nghiệm việc Tham khảo tài liệu thực hóa ý tưởng thành sản internet Nhờ đến phẩm thực tế trợ giúp từ giáo viên hướng dẫn từ bạn bè Gặp nhiều trở ngại khâu thực Tham khảo tài liệu từ phân tích thiết kế thành hệ thống, internet Nhờ đến chức trợ giúp từ giáo viên hướng dẫn từ bạn bè 102 4.3.2 Về quy trình thực Bảng 45 Khó khăn quy trình thực STT Khó khăn Khắc phục Tất cơng việc lẫn trao đổi Sử dụng nhiều công cụ mạng xã hội thành viên nhóm với giáo hỗ trợ Facebook, Zalo, Google viên hướng dẫn phải thực Meeting trực tuyến tình hình dịch bệnh căng thẳng Khiến cho việc truyền đạt ý tưởng có phần khó khăn 4.4 HƯỚNG PHÁT TRIỂN Tìm hiểu bổ sung thêm nhiều chức cho ứng dụng mạng xã hội như: live stream, gọi điện, facetime, … Khắc phục mặt hạn chế nêu phía Chuyển đổi giao diện để đạt mượt mà, tiện lợi có khác biệt so với ứng dụng mạng xã hội khác Thêm chức liên quan đến vận chuyển hàng hóa, cải thiện chức có sẵn Tăng cường độ bảo mật thông tin người dùng thơng tin q trình vận chuyển Thêm chức cho người quản trị kiểm soát tốt hệ thống Thêm chức thống kê phân tích giúp người quản trị nắm bắt tình trạng hệ thống, xu hướng người dùng Tích hợp mơ hình trí tuệ nhân tạo, học máy vào ứng dụng để phân tích hành vi người dùng, phân tích mức độ hài lịng người dùng thơng qua đánh giá 103 PHÂN CƠNG CƠNG VIỆC Bảng 46 Bảng phân cơng công việc Thành viên Công việc Võ Thành Đô - Đăng nhập Auth0 - Chỉnh sửa thông tin cá nhân - Tạo viết - Bình luận viết, Cảm xúc cho bình luận, Trả lời cho bình luận - Cảm xúc cho viết - Đăng chuyến ship - Trả giá đề nghị cho chuyến ship - Chấp nhận/từ chối đề nghị - Tin nhắn cá nhân, Tin nhắn nhóm - Thơng báo notification - Word Dương Trung - Thiết kế sở liệu Bảo - Tin nhắn cá nhân - Tin nhắn nhóm - Thơng báo notification - Đăng nhập Auth0 - Tạo sở liệu - Thêm liệu mẫu - Xây dựng backend - Tạo api CRUD bảng - Tạo Trigger cho kiện - Tạo ràng buộc cho trường hệ thống - Word - Slide - Demo 104 TIẾN DỘ THỰC HIỆN Bảng 47 Bảng tiến độ thực Thời gian Cơng việc 1/3 đến 15/3 Phân tích yêu cầu để tài, khảo sát, học hỏi từ ứng dụng có sẵn thị trường 16/3 đến 25/3 Phân tích thiết kế hệ thống, sở liệu kết hợp bắt đầu viết báo cáo 26/3 đến 10/4 Bắt đầu triển khai dự án, xây dựng phần backend 11/4 đến 28/4 Tiếp tục xây dựng backend, xây dựng phần frontend 29/3 đến 15/5 Tiếp tục phát triển ứng dụng, kết nối backend – frontend module khác 16/5 đến 28/5 Kiểm thử sửa lỗi 10/6 đến 30/6 Thêm thông tin kết đạt vào báo cáo 1/7 đến 10/7 Hoàn thành báo cáo 105 TÀI LIỆU THAM KHẢO [1] Flutter tutorial: https://www.tutorialspoint.com/flutter/index.htm [2] NodeJS docs: https://nodejs.org/en/docs/ [3] NodeJS gì? Tổng quan kiến thức Node.JS: https://vietnix.vn/nodejs-la-gi/ [4] GraphQL gì? Bắt đầu với GraphQL : https://viblo.asia/p/graphqlla-gi-bat-dau-voi-graphql-gDVK2nX0KLj [5] Postgresql gì? Tìm hiểu sở liệu mã nguồn mở tiên tiến giới: https://bizflycloud.vn/tin-tuc/postgresql-la-gi-tim-hieu-ve-co-sodu-lieu-ma-nguon-mo-tien-tien-nhat-the-gioi-20180919175924611.htm [6] Auth0 docs : https://auth0.com/docs/ [7] Heroku docs: https://devcenter.heroku.com/categories/nodejs-support [8] PostgreSQL docs : https://www.postgresql.org/docs/ 106