Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 112 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
112
Dung lượng
3,7 MB
Nội dung
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM ĐỒ ÁN ỨNG DỤNG ĐẶT XE CHO SINH VIÊN ĐHQG-HCM Giảng viên hướng dẫn: Ths.Lê Thanh Trọng Sinh viên thực hiện: Huỳnh Thế Vĩ MSSV: 20520857 Lê Đặng Phương Uyên MSSV: 20520853 TP Hồ Chí Minh, tháng năm 2023 LỜI CẢM ƠN Nhóm chúng em xin gửi lời cảm ơn chân thành tri ân sâu sắc đến thầy Lê Thanh Trọng hướng dẫn, tạo điều kiện cho nhóm chúng em hồn thành Đồ án Trong học kỳ vừa qua, nhờ dẫn nhiệt tình thầy, chúng em tiếp thu kiến thức quan trọng, bổ ích góp ý chân thành để làm đồ án hoàn chỉnh Trong khoảng thời gian thực đồ án, chúng em học hỏi thêm nhiều kiến thức, kinh nghiệm, biết quy trình để tạo sản phẩm phần mềm Bên cạnh đó, chúng em xin cảm ơn bạn bè lớp động viên, thảo luận góp ý cho nhóm đồng thời khơi thêm nguồn động lực cho nhóm 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 nỗ lực song báo cáo nhóm chúng em chắn khơng tránh khỏi thiếu sót, chúng em mong nhận thơng cảm góp ý chân thành từ thầy Nhóm em xin chân thành cảm ơn Thành phố Hồ Chí Minh, tháng 07 năm 2023 Huỳnh Thế Vĩ Lê Đặng Phương Uyên MỤC LỤC TÓM TẮT ĐỒ ÁN Chương MỞ ĐẦU 1.1 Lý chọn đề tài: 1.2 Kế hoạch thực hiện: 1.2.1 Quy trình thực hiện: 1.2.2 Kế hoạch chi tiết - áp dụng quy trình phát triển phần mềm 1.3 Mục đích: 1.4 Đối tượng: 1.5 Phạm vi nghiên cứu: Chương 2.1 TỔNG QUAN CÔNG NGHỆ Công nghệ sử dụng: 2.1.1 Ngôn ngữ lập trình: 2.1.2 Thư viện: 11 2.1.3 Cơ sở liệu: 13 Chương KHẢO SÁT HIỆN TRẠNG 15 3.1 Hiện trạng tổ chức: 15 3.2 Hiện trạng tin học: 15 3.3 Hiện trạng nghiệp vụ: 15 Chương 4.1 THIẾT KẾ HỆ THỐNG 18 Use-case Diagram: 18 4.1.1 Sơ đồ Use-case: 18 4.1.2 Danh sách tác nhân: 18 4.1.3 Danh sách Use-case: 18 4.1.4 Đặc tả Use-case: 19 4.2 Sequence Diagram: 35 4.2.1 Sơ đồ đăng nhập: 35 4.2.2 Sơ đồ đăng kí: 35 4.2.3 Sơ đồ lưu địa điểm: 35 4.2.4 Sơ đồ chọn dịch vụ: 36 4.2.5 Sơ đồ đặt chuyến xe: 36 4.2.6 Sơ đồ xác minh thông tin: 37 4.2.7 Sơ đồ khoá tài khoản: 37 4.3 Class Diagram: 38 4.3.1 Sơ đồ lớp: 38 4.3.2 Danh sách lớp đối tượng quan hệ: 39 4.3.3 Mô tả chi tiết lớp đối tượng: 40 4.4 Thiết kế sở liệu: 47 4.4.1 Entity Diagram: 47 4.4.2 Mô tả chi tiết: 48 Chương THIẾT KẾ GIAO DIỆN 56 5.1 Danh sách hình: 56 5.2 Sơ đồ liên kết hình: 57 5.3 Mô tả chi tiết hình: 58 5.3.1 Màn hình OnBoarding: 58 5.3.2 Màn hình Login: 60 5.3.3 Màn hình Sign Up: 62 5.3.4 Màn hình Pending: 64 5.3.5 Màn hình Verify: 66 5.3.6 Màn hình Passenger: 67 5.3.7 Màn hình Rider: 68 5.3.8 Màn hình StudentOffice: 70 5.3.9 Màn hình Profile: 71 5.3.10 Màn hình Promotion: 72 5.3.11 Màn hình PromotionDetail: 73 5.3.12 Màn hình Activity: 75 5.3.13 Màn hình ActivityDetail: 76 5.3.14 Màn hình Booking: 77 5.3.15 Màn hình Address: 85 5.3.16 Màn hình AddLocation: 86 5.3.17 Màn hình ConfirmLocation: 87 5.3.18 Màn hình Scheduled: 89 5.3.19 Màn hình Income: 90 5.3.20 Màn hình TripDetail: 92 5.3.21 Màn hình Restriction: 93 5.3.22 Màn hình Students: 95 5.3.23 Màn hình StudentDetail: 96 Chương KẾT LUẬN 99 6.1 Kết đạt được: 99 6.2 Hạn chế: 99 6.2.1 Về việc tổ chức quản lí nhóm: 99 6.2.2 Về sản phẩm phần mềm: 100 6.3 Hướng phát triển: 100 TÀI LIỆU THAM KHẢO 102 DANH MỤC HÌNH ẢNH Hình 3.1: Hiện trạng tổ chức 15 Hình 3.2: Quy trình nghiệp vụ 17 Hình 4.1: Sơ đồ Use-case 18 Hình 4.2: Sơ đồ đăng nhập 35 Hình 4.3: Sơ đồ đăng kí 35 Hình 4.4: Sơ đồ lưu địa điểm 36 Hình 4.5: Sơ đồ chọn dịch vụ 36 Hình 4.6: Sơ đồ đặt chuyến xe 37 Hình 4.7: Sơ đồ xác minh thông tin 37 Hình 4.8: Sơ đồ khố tài khoản 38 Hình 4.9: Sơ đồ lớp 39 Hình 4.10: Entity diagram 48 Hình 5.1: Sơ đồ liên kết hình 58 Hình 5.2: Giao diện hình OnBoarding 59 Hình 5.3: Giao diện hình Login 61 Hình 5.4: Giao diện hình Sign up 63 Hình 5.5: Giao diện hình Sign up 63 Hình 5.6: Giao diện hình Pending 65 Hình 5.7: Giao diện hình Verify 66 Hình 5.8: Giao diện hình Passenger 67 Hình 5.9: Giao diện hình Rider 69 Hình 5.10: Giao diện hình StudentOffice 70 Hình 5.11: Giao diện hình Profile 71 Hình 5.12: Giao diện hình Profile 72 Hình 5.13: Giao diện hình Promotion 73 Hình 5.14: Giao diện hình PromotionDetail 75 Hình 5.15: Giao diện hình Activity 75 Hình 5.16: Màn hình ActivityDetail 76 Hình 5.17: Màn hình ActivityDetail 77 Hình 5.18: Màn hình Booking 78 Hình 5.19: Màn hình Booking 79 Hình 5.20: Màn hình Booking 80 Hình 5.21: Màn hình Booking 81 Hình 5.22: Màn hình Booking 82 Hình 5.23: Màn hình Booking 83 Hình 5.24: Giao diện hình AddLocation 86 Hình 5.25: Giao diện hình ConfirmLocation 88 Hình 5.26: Giao diện hình Scheduled 89 Hình 5.27: Giao diện hình Income 91 Hình 5.28: Giao diện hình TripDetail 92 Hình 5.29: Giao diện hình TripDetail 93 Hình 5.30: Giao diện hình Restriction 94 Hình 5.31: Giao diện hình Students 95 Hình 5.32: Giao diện hình StudentDetail 96 Hình 5.33: Giao diện hình StudentDetail 97 Hình 5.34: Giao diện hình StudentDetail 98 DANH MỤC BẢNG Bảng 1.1: Danh mục người sử dụng Bảng 1.2: Bảng kế hoạch dự kiến Bảng 4.1: Danh sách tác nhân 18 Bảng 4.2: Danh sách Use-case 19 Bảng 4.3: Đặc tả Use-case đăng nhập 21 Bảng 4.4: Đặc tả Use-case đăng kí 22 Bảng 4.5: Đặc tả Use-case xác người dùng 23 Bảng 4.6: Đặc tả Use-case lưu địa điểm 24 Bảng 4.7: Đặc tả Use-case khuyến 26 Bảng 4.8: Đặc tả Use-case thông tin người dùng 27 Bảng 4.9: Đặc tả Use-case lịch sử chuyến 28 Bảng 4.10: Đặc tả Use-case đánh giá 29 Bảng 4.11: Đặc tả Use-case chọn dịch vụ 30 Bảng 4.12: Đặc tả Use-case đặt xe 31 Bảng 4.13: Đặc tả Use-case xem danh sách người dùng 32 Bảng 4.14: Đặc tả Use-case khoá tài khoản 34 Bảng 4.15: Danh sách lớp đối tượng quan hệ 40 Bảng 4.16: Mô tả chi tiết lớp User 40 Bảng 4.17: Mô tả chi tiết lớp Rider 41 Bảng 4.18: Mô tả chi tiết lớp Customer 42 Bảng 4.19: Mô tả chi tiết lớp StudentOffice 43 Bảng 4.20: Mô tả chi tiết lớp SavedLocation 43 Bảng 4.21: Mô tả chi tiết lớp Trip 45 Bảng 4.22: Mô tả chi tiết lớp Promotion 45 Bảng 4.23: Mô tả chi tiết lớp PaymentMethod 46 Bảng 4.24: Mô tả chi tiết lớp Rating 46 Bảng 4.25: Mô tả chi tiết lớp RatingOption 46 Bảng 4.26: Mô tả chi tiết lớp Reject 47 Bảng 4.27: Mô tả chi tiết bảng Rider 49 Bảng 4.28: Mô tả chi tiết bảng Customer 50 Bảng 4.29: Mô tả chi tiết bảng StudentOffice 51 Bảng 4.30: Mô tả chi tiết bảng SavedLoction 51 Bảng 4.31: Mô tả chi tiết bảng Trip 53 Bảng 4.32: Mô tả chi tiết bảng Promotion 53 Bảng 4.33: Mô tả chi tiết bảng RatingList 54 Bảng 4.34: Mô tả chi tiết bảng Reject 55 Bảng 5.1: Danh sách hình 57 Bảng 5.2: Danh sách thành phần giao diện hình OnBoarding 59 Bảng 5.3: Danh sách biến cố hình OnBoarding 60 Bảng 5.4: Danh sách thành phần hình Login 62 Bảng 5.5: Danh sách biến cố hình Login 62 Bảng 5.6: Danh sách thành phần hình Sign up 64 Bảng 5.7: Danh sách biến cố hình Sign up 64 Bảng 5.8: Danh sách thành phần hình Pending 65 Bảng 5.9: Danh sách biến cố hình Pending 66 Bảng 5.10: Danh sách thành phần hình Verify 66 Bảng 5.11: Danh sách biến cố hình Verify 67 Bảng 5.12: Danh sách thành phần hình Passenger 68 Bảng 5.13: Danh sách biến cố hình Passenger 68 Bảng 5.14: Danh sách thành phần hình Rider 69 Bảng 5.15: Danh sách biến cố hình Rider 70 Bảng 5.16: Danh sách thành phần hình StudentOffice 71 Bảng 5.17: Danh sách biến cố hình StudentOffice 71 Bảng 5.18: Danh sách thành phần hình Profile 72 Bảng 5.19: Danh sách biến cố hình Profile 72 Bảng 5.20: Danh sách thành phần hình Promotion 73 Bảng 5.21: Danh sách biến cố hình Promotion 73 Bảng 5.22: Danh sách thành phần hình Activity 75 Bảng 5.23: Danh sách biến cố hình Activity 76 Bảng 5.24: Danh sách thành phần hình ActivityDetail 77 Bảng 5.25: Danh sách biến cố hình ActivityDetail 77 Bảng 5.26: Danh sách thành phần hình Booking 84 Bảng 5.27: Danh sách biến cố hình Booking 84 Bảng 5.28: Danh sách thành phần hình Address 85 Bảng 5.29: Danh sách biến cố hình Address 86 Bảng 5.30: Danh sách thành phần hình AddLocation 87 Bảng 5.31: Danh sách biến cố hình AddLocation 87 Bảng 5.32: Danh sách thành phần hình ConfirmLocation 88 Bảng 5.33: Danh sách biến cố hình ConfirmLocation 89 Bảng 5.34: Danh sách thành phần hình Scheduled 90 Bảng 5.35: Danh sách biến cố hình Scheduled 90 Bảng 5.36: Danh sách thành phần hình Income 91 Bảng 5.37: Danh sách biến cố hình Income 92 Bảng 5.38: Danh sách thành phần hình TripDetail 93 Bảng 5.39: Danh sách biến cố hình TripDetail 93 Bảng 5.40: Danh sách thành phần hình Restriction 94 Bảng 5.41: Danh sách biến cố hình Restriction 95 Bảng 5.42: Danh sách thành phần hình StudentDetail 98 Bảng 5.43: Danh sách biến cố hình StudentDetail 98 Hình 5.25: Giao diện hình ConfirmLocation • Các thành phần: STT Kiểu Ràng buộc Input not null Button Ý nghĩa Ô nhập tên gợi nhớ cho địa Nút chọn xác nhận lưu địa Bảng 5.32: Danh sách thành phần hình ConfirmLocation • Các biến cố: 88 STT Biến cố Xử lí Nhấp vào Button Lưu địa điểm vào CSDL Bảng 5.33: Danh sách biến cố hình ConfirmLocation 5.3.18.Màn hình Scheduled: • Giao diện: Hình 5.26: Giao diện hình Scheduled • Các thành phần: STT Kiểu Ràng buộc 89 Ý nghĩa Hiển thị thơng tin tóm tắt Card Button chuyến xe Nút chọn chấp nhận chuyến xe Bảng 5.34: Danh sách thành phần hình Scheduled • Các biến cố: STT Biến cố Xử lí Nhấp vào Card Hiển thị thông tin chi tiết chuyến xe Nhấp vào Button Xác nhận nhận chuyến xe Bảng 5.35: Danh sách biến cố hình Scheduled 5.3.19.Màn hình Income: • Giao diện: 90 Hình 5.27: Giao diện hình Income • Các thành phần: STT Kiểu Ràng buộc Menu DatePicker Ý nghĩa Menu chọn hiển thị thông tin theo ngày, tháng, năm Chọn thời điểm hiển thị thông tin Bảng 5.36: Danh sách thành phần hình Income • Các biến cố: STT Biến cố Xử lí 91 Nhấp vào Menu Nhấp vào DatePicker Hiển thị thông tin theo trạng thái chọn Hiển thị lịch chọn thời điểm xem thông tin Bảng 5.37: Danh sách biến cố hình Income 5.3.20.Màn hình TripDetail: • Giao diện: Hình 5.28: Giao diện hình TripDetail 92 Hình 5.29: Giao diện hình TripDetail • Các thành phần: STT Kiểu Ràng buộc Button Ý nghĩa Nút chọn đặt lại chuyến xe với địa điểm tương tự Bảng 5.38: Danh sách thành phần hình TripDetail • Các biến cố: STT Biến cố Nhấp vào Button Xử lí Hiển thị hình đặt xe với địa điểm tương tự Bảng 5.39: Danh sách biến cố hình TripDetail 5.3.21.Màn hình Restriction: • Giao diện: 93 Hình 5.30: Giao diện hình Restriction • Các thành phần: STT Kiểu Menu Card Ý nghĩa Ràng buộc Menu chọn trạng thái Hiển thị thông tin tóm tắt tài khoản Bảng 5.40: Danh sách thành phần hình Restriction 94 • Các biến cố: STT Biến cố Nhấp vào Menu Nhấp vào Card Xử lí Hiển thị danh sách theo trạng thái chọn Hiển thị thông tin chi tiết tài khoản Bảng 5.41: Danh sách biến cố hình Restriction 5.3.22.Màn hình Students: • Giao diện: Hình 5.31: Giao diện hình Students 95 5.3.23.Màn hình StudentDetail: • Giao diện: Hình 5.32: Giao diện hình StudentDetail 96 Hình 5.33: Giao diện hình StudentDetail 97 Hình 5.34: Giao diện hình StudentDetail • Các thành phần: STT Kiểu Ràng buộc Button Ý nghĩa Nút chọn khoá tài khoản Bảng 5.42: Danh sách thành phần hình StudentDetail • Các biến cố: STT Biến cố Nhấp vào Button Xử lí Khố quyền truy cập ứng dụng tài khoản Bảng 5.43: Danh sách biến cố hình StudentDetail 98 Chương KẾT LUẬN Kết đạt được: 6.1 Thông qua việc nghiên cứu tìm hiểu cơng nghệ, đặc biệt cơng nghệ mới, nhóm phát triển ứng dụng đặt xe cho sinh viên Đại học Quốc gia Thành phố Hồ Chí Mình Ứng dụng cài đặt điện thoại thông qua file APK Ứng dụng truy cập với tài khoản truy cập sau: Vai trò Số điện thoại đăng nhập StudentOffice 0848867679 Password Bảng 6.1 Bảng danh sách tài khoản truy cập Về việc tổ chức quản lý nhóm: - Hiểu vận dụng tốt kiến thức học lớp quy trình phát triển phần mềm để tăng tính hiệu việc làm teamwork - Sử dụng quản lý source code GitHub, giúp việc giao tiếp, phát triển phần thành viên nhóm tốt - Các thành viên chịu học hỏi kiến thức trao đổi kiến thức cho Về mặt kỹ thuật, nhóm em đạt kết sau: - Cách xây dựng ứng dụng động - Tìm hiểu biết cách triển khai máy chủ lên tảng đám mây để sử dụng khơng mạng cục Về mặt thực tiễn nhóm đạt được: - Nâng cao khả tìm hiểu nghiên cứu công nghệ, đặc biệt công nghệ - Hiểu quy trình phát triển ứng dụng hồn chỉnh - Cải thiện kỹ lên kế hoạch điều phối công việc 6.2 Hạn chế: 6.2.1 Về việc tổ chức quản lí nhóm: 99 - Có số cơng việc khơng hồn thành đặt Phải thay đổi linh hoạt sát để theo kịp tiến độ 6.2.2 Về sản phẩm phần mềm: - Vị trí hiển thị có độ xác khơng cao - Chưa chọn nhiều tuyến đường khác - Chưa dự tính số trường hợp 6.3 Hướng phát triển: Đề tài cịn mở rộng phát triển thêm nhiều tính hữu ích cho người dùng như: - Tích hợp AI qt khn mặt shipper bật nhận đơn - Tích hợp hệ thống chat cho phép khách hàng liên lạc trực tiếp với tài xế ứng dụng - Hỗ trợ chế độ sáng tối (dark mode/light mode) - Hoàn thiện hệ thống tốn - Hỗ trợ dịch vụ giao hàng - Hồn thiện hệ thống định vị, đồ - Thêm tính đặt lịch cho nhiều ngày 100 BẢNG PHÂN CÔNG CÔNG VIỆC MSSV 20520857 Họ tên Huỳnh Thế Vĩ Nhiệm vụ - Lên kế hoạch, phân chia % đóng góp 50% cơng việc 20520853 Lê Đặng Phương Un - Tạo project - Code đồ án - Thiết kế giao diện - Lên ý tưởng đồ án - Kiểm thử - Thiết kế sở liệu - Đặc tả - Code đồ án - Đóng góp ý tưởng - Kiểm thử 101 50% TÀI LIỆU THAM KHẢO [1] FPT Cloud, “Javascript gì? Kiến thức tổng quan Javascript từ A – Z”, https://fptcloud.com/javascript/ (accessed June 28, 2023) [2] FPT Cloud, “React Native gì? Kiến thức cần biết mã nguồn mở React Native”, https://fptcloud.com/react-native-la-gi/ (accessed June 28, 2023) [3] Chibuike “What Nwachukwu, is Nativebase?”, https://www.educative.io/answers/what-is-nativebase (accessed June 28, 2023) [4] MongoDB, “What is NoSQL?”, https://www.mongodb.com/nosql-explained (accessed June 28, 2023) [5] "Ứng dụng Grab," Grab.com [Online] [Accessed 12 04/ 2023] [6] "BAEMIN - Food delivery app," WOOWA BROTHERS VIETNAM COMPANY LIMITED, [Online] Available: https://apps.apple.com/us/app/baemin-food-deliveryapp/id1458845623 [Accessed 12/ 04/ 2022] [7] Dribbble - Discover the World's Top Designers & Creative," [Online] Available: https://dribbble.com/ [Accessed 01/ 04/ 2023] 102