Công nghệ thông tin đã và đang ngày càng phát triển mạnh mẽ trong mọi lĩnh vực của đời sống, kinh tế, xã hội. Đặc biệt trong cơ chế thị trường sự phát triển của các quan hệ kinh tế cũng như sự mở rộng ngày càng lớn về quy mô của các doanh nghiệp, xí nghiệp, cơ quan đã làm tăng các luồng và khối lượng thông tin, làm cho công tác quản lý trở nên phức tạp hơn. Với việc làm công tác quản lý thủ công bằng sổ sách (như trước kia) thì không thể đáp ứng được với sự phát triển như hiện nay. Trong xu thế ấy, việc quản lý dựa vào máy tính là một nhu cầu thiết yếu của hầu hết mọi ngành, mọi doanh nghiệp, việc tin học hóa từng bước trong công tác quản lý, khai thác, điều hành sản xuất kinh doanh và quản lý hoạt động là một đòi hỏi ngày càng cấp thiết. Trong môi trường giáo dục hiện nay, việc trao đổi thông tin, hỏi đáp giữa sinh viên và các giảng viên là điều rất cần thiết bởi thắc mắc của sinh viên là không có giới hạn. Nếu như tầm chục năm trước, khi một sinh viên có một thắc mắc với nhà trường, sinh viên đó phải lên tận phòng tư vấn sinh viên để hỏi, và không phải lúc nào cũng có người đủ chuyên môn trả lời thắc mắc có mặt ngay lúc đó để trả lời, và việc di chuyển như vậy cũng rất mất thời gian. Còn bây giờ, nếu có một thắc mắc nào đó thì sinh viên Sư phạm kỹ thuật có thể lên trang web tuvansinhvien.hcmute.edu.vn để được các tư vấn viên tư vấn, giải đáp tận tình. Nhưng vấn đề đặt ra là, muốn đặt câu hỏi thì sinh viên phải truy cập website của nhà trường, và các tư vấn viên cũng phải trực website liên tục để việc tư vấn diễn ra nhanh chóng nhất. Vậy nên nhóm em nghĩ đến việc tạo ra một ứng dụng mobile dựa trên ý tưởng và chức năng của website trên để sinh viên có thể đặt câu hỏi ngay trên điện thoại di động, các tư vấn viên có thể nhận được thông báo trên điện thoại của mình, giúp việc tư vấn diễn ra dễ dàng hơn. Xuất phát từ ý tưởng đó, nhóm em xin thực hiện đề tài Xây dựng ứng dụng mobile tư vấn sinh viên.
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 XÂY DỰNG APP MOBILE TƯ VẤN SINH VIÊN KHÓA LUẬN TỐT NGHIỆP KỸ SƯ CNTT GIÁO VIÊN HƯỚNG DẪN ThS NGUYỄN HỮU TRUNG ĐH SƯ PHẠM KỸ THUẬT TP.HCM CỘNG HỊA XHCN VIỆT NAM KHOA CƠNG NGHỆ THƠNG TIN Độc lập – Tự – Hạnh phúc ****** ****** PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN Chuyên ngành: Công nghệ phần mềm Tên đề tài: Xây dựng App Tư vấn sinh viên Họ tên giảng viên hướng dẫn: ThS Nguyễn Hữu Trung 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: ………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Đề nghị cho bảo vệ hay không? ……………………………………………………… Đánh giá loại: ………………………………………………………………………… Điểm: ………………………………………………………………………………… ĐH SƯ PHẠM KỸ THUẬT TP.HCM CỘNG HỊA XHCN VIỆT NAM KHOA CƠNG NGHỆ THƠNG TIN Độc lập – Tự – Hạnh phúc ****** ****** PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN Chuyên ngành: Công nghệ phần mềm Tên đề tài: Xây dựng App Tư vấn sinh viên Họ tên giảng viên phản biện: ThS Nguyễn Minh Đạo 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: ………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Đề nghị cho bảo vệ hay không? ……………………………………………………… Đánh giá loại: ………………………………………………………………………… Điểm: ………………………………………………………………………………… LỜI CẢM ƠN Để hoàn thành tốt đề tài báo cáo này, chúng em xin gửi lời cảm ơn chân thành đến giảng viên, thầy Nguyễn Hữu Trung, người trực tiếp hỗ trợ chúng em suốt trình làm đề tài Chúng em cảm ơn thầy đưa lời khuyên từ kinh nghiệm thực tiễn để định hướng cho chúng em với yêu cầu đề tài chọn, ln giải đáp thắc mắc đưa góp ý, chỉnh sửa kịp thời giúp chúng em khắc phục nhược điểm hoàn thành tốt thời hạn đề Chúng em xin gửi lời cảm ơn chân thành quý thầy cô khoa nói chung ngành Cơng Nghệ Thơng Tin nói riêng tận tình truyền đạt kiến thức cần thiết giúp chúng em có tảng để làm nên đề tài này, tạo điều kiện để chúng em có thể tìm hiểu thực tốt đề tài Cùng với đó, chúng em xin gửi cảm ơn đến bạn khóa cung cấp nhiều thơng tin kiến thức hữu ích giúp chúng em có thể hồn thiện đề tài Đề tài báo cáo chúng em thực khoảng thời gian ngắn, với kiến thức hạn chế nhiều hạn chế khác mặt kĩ thuật kinh nghiệm việc thực dự án phần mềm Do đó, q trình làm nên đề tài có thiếu sót điều khơng thể tránh khỏi nên chúng em mong nhận ý kiến đóng góp q báu q thầy để kiến thức chúng em hoàn thiện chúng em có thể làm tốt lần sau Cuối lời, chúng em kính chúc thầy ln dồi sức khỏe thành công nghiệp trồng người Một lần chúng em xin chân thành cảm ơn 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 LUẬN VĂN Chuyên ngành: Công nghệ phần mềm Tên đề tài: Xây dựng App Tư vấn sinh viên Giáo viên hướng dẫn: Th.S Nguyễn Hữu Trung Nhiệm vụ luận văn: Lý thuyết: Dart, Flutter, Firebase Thực hành: Sử dụng Google Firebase để xác thực người dùng Sử dụng Google Firebase Authentication để đảm bảo độ bảo mật xác thực người dùng cho hệ thống Sử dụng Flutter Framework làm tảng để xây dựng sản phẩm đề tài Sử dụng Firebase Firestore để lưu trữ database Sử dụng ngôn ngữ Dart để xây dựng chức phần mềm Xây dựng chức sau cho sản phẩm: o Mobile Application: Đăng nhập, đăng ký, đăng xuất tài khoản Quản lý thông tin người dùng Quản lý câu hỏi, câu trả lời Quản lý đội ngũ tư vấn viên, trưởng nhóm, manager Hiển thị câu hỏi, câu trả lời cho người dùng Hiển thị danh sách đội ngũ tư vấn viên Cung cấp chức thống kê cho tư vấn viên, trưởng nhóm, manager Tìm kiếm tư vấn viên, đăng Trả lời tin nhắn riêng, thư viện câu hỏi o Administrator Website: Quản lý sở liệu Thống kế số liệu khoa, số lượng câu hỏi, câu trả lời, đội ngũ tư vấn viên, trưởng nhóm, manager Đề cương viết luận văn: Phần mở đầu: Tính cấp thiết đề tài Mục đích đề tài Cách tiếp cận phương pháp nghiên cứu o Đối tượng nghiên cứu o Phạm vi nghiên cứu Phần nội dung: Chương 1: Cơ sở lý thuyết Chương 2: Khảo sát, phân tích, thiết kế Chương 3: Mơ hình hóa u cầu Chương 4: Thiết kế phần mềm Thiết kế giao diện xử lý Cài đặt kiểm thử ứng dụng Phần kết luận: Những kết đạt Ưu điểm Nhược điểm Hướng phát triển Danh sách tài liệu tham khảo: Kế hoạch thực hiện: STT Thời gian Công việc Ghi Thảo luận, định tổng hợp lại chức hệ thống cần chỉnh sửa, bổ sung từ Tiểu luận chuyên ngành Chỉnh sửa lại toàn UI cho đối tượng người dùng, tư vấn viên trưởng nhóm, manager bao gồm hình đăng nhập, đăng ký, hình home, hình thơng tin cá nhân, hình câu hỏi, chi tiết câu hỏi câu trả lời, hình thơng tin tư vấn viên, hình quản lý tư vấn viên, trưởng nhóm, manager, hình thống kê Chỉnh sửa sở liệu, chỉnh sửa chức ứng dụng chưa xác, chưa phù hợp từ Tiểu luận chuyên ngành quản lý người dùng, trạng thái câu hỏi, router, quản lý thông tin cá nhân… Cập nhật, bổ sung chức cho ứng dụng tìm kiếm đăng, tìm kiếm tin nhắn, gửi tin nhắn riêng cho tư vấn viên, reset mật qua email, phân chia luồng tin nhắn câu hỏi chung cho đội ngũ tư vấn viên, trang web admin… Bổ sung chức tương tác người dùng trì trạng thái đăng nhập, lazy load, reload page, cải thiện UI, UX người dùng, kiểm tra ứng dụng trường hợp khơng có kết nối internet Tìm hiểu Elastic Search hỗ trợ tìm kiếm câu hỏi liên quan Hoàn thiện, gỡ lỗi chức cho ứng dụng Kiểm thử hệ thống, sửa chữa lỗi phát sinh, xuất file apk ipa Hoàn thành báo cáo Ý kiến giảng viên hướng dẫn Người viết đề cương MỤC LỤC LỜI CẢM ƠN DANH MỤC HÌNH ẢNH 18 DANH MỤC BẢNG 20 ĐỀ CƯƠNG LUẬN VĂN Nhiệm vụ luận văn: Đề cương viết luận văn: PHẦN MỞ ĐẦU 24 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 24 MỤC ĐÍCH CỦA ĐỀ TÀI 25 PHƯƠNG PHÁP THỰC HIỆN 25 CHƯƠNG CƠ SỞ LÝ THUYẾT 26 1.1 Flutter 26 1.1.1 Giới thiệu Flutter 26 1.1.2 Điều làm Flutter trở nên độc đáo 27 1.1.3 Các tính Flutter 27 1.1.4 So sánh Flutter đối thủ 29 1.2 Dart 30 1.2.1 Giới thiệu Dart 30 1.2.2 Ưu điểm 31 1.3 Google Firebase 31 1.3.1 Giới thiệu Google Firebase 31 10 1.3.2 Freebase Authentication 32 1.3.3 Ưu điểm 32 CHƯƠNG KHẢO SÁT, PHÂN TÍCH HIỆN TRẠNG 33 2.1 Phân tích trạng 33 2.2 Khảo sát số phần mềm 34 2.2.1 Trang tư vấn sinh viên Trường Đại học Sư Phạm Kỹ Thuật Thành phố Hồ Chí Minh 34 2.3 Phân tích yêu cầu dự án 36 2.4 Danh sách yêu cầu chức nghiệp vụ 38 2.5 Danh sách yêu cầu chức hệ thống 39 2.6 Danh sách yêu cầu phi chức 39 CHƯƠNG MƠ HÌNH HĨA U CẦU 40 3.1 Lược đồ Usecase 40 3.2 Phân hệ người dùng 41 3.2.1 Đăng nhập 41 3.2.2 Đăng kí 42 3.2.3 Đăng xuất 43 3.2.4 Xem thông tin cá nhân 44 3.2.5 Thay đổi thông tin cá nhân 44 3.2.6 Đổi ảnh đại diện 45 3.2.7 Xem giới thiệu trường 46 3.2.8 Xem đăng 47 3.2.9 Gửi thắc mắc đăng 48 3.2.10 Xem danh sách tư vấn viên 49 11 5.3.10 Thống kê Hình 5.23 Màn hình thống kê 154 Bảng 5.21 Mơ tả hình quản lý lĩnh vực STT Tên Bottom Bar Loại Ghi Bottom Khi nhấn vào chuyển đổi navigator bar hình thống kê số lượng câu hỏi, khoa, lĩnh vực, tư vấn viên 155 5.3.11 Tạo đăng Hình 5.24 Màn hình tạo đăng 156 Bảng 5.22 Mơ tả hình tạo đăng STT Tên Cancel Loại Button Ghi Khi nhấn vào đóng form tạo đăng Post Button Khi nhấn vào thực tạo đăng Content Text field Nhập nội dung đăng File pdf, hình ảnh Button Khi nhấn vào cho phép thêm hình ảnh file pdf vào đăng 157 5.4 Admin 5.4.1 Màn hình đăng nhập admin Hình 5.25 Màn hình đăng nhập admin 158 5.4.2 Màn hình trang chủ admin Hình 5.26 Màn hình trang chủ admin Hình 5.27 Màn hình thống kê admin 159 CHƯƠNG CÀI ĐẶT VÀ KIỂM THỬ ỨNG DỤNG 6.1 Cài đặt Truy cập đường dẫn https://drive.google.com/drive/folders/19o_G8mlZNe1B9qhUOn_X23LlZ3Kvrtm?usp=sharing Đối với hệ điều hành Android, lựa chọn download file có định dạng apk Đối với hệ điều hành IOS, lựa chọn download file có định dạng ipa Sau thực cài đặt file 6.2 Kiểm thử ứng dụng 6.2.1 Các chức thuộc phân hệ người dùng Bảng 6.1 Kiểm thử chức phân hệ người dùng Kết mong đợi STT Testcase Chức đăng Đăng nhập thành công, phân nhập quyền Chức đăng Đăng ký thành công người dùng ký nhập đầy đủ thông tin phù hợp Đổi mật Đổi mật thành công người Kết Pass Pass Pass dùng nhập mật cũ đũng, mật xác nhận mật trùng khớp với Đổi ảnh đại diện Đổi ảnh đại diện thành công Pass Thay đổi thông Thông tin cá nhân người dùng Pass tin cá nhân thay đổi thành công Gửi câu hỏi cho Câu hỏi gửi thành công người tư vấn viên cụ dùng chọn nhập đủ thông tin thể cần thiết Pass 160 Gửi câu hỏi Câu hỏi gửi thành công người Pass dùng chọn nhập đủ thông tin cần thiết Gửi thắc mắc Câu hỏi gửi thành công người đăng dùng chọn nhập đủ thông tin Pass cần thiết 6.2.2 Các chức thuộc phân hệ tư vấn viên Bảng 6.2 Kiểm thử chức phân hệ tư vấn viên Kết mong đợi STT Testcase Chức đăng Đăng nhập thành công, phân nhập quyền Đổi mật Đổi mật thành công người Kết Pass Pass dùng nhập mật cũ đũng, mật xác nhận mật trùng khớp với Đổi ảnh đại diện Đổi ảnh đại diện thành công Pass Thay đổi thông Thông tin cá nhân người dùng Pass tin cá nhân thay đổi thành công Thêm câu trả lời Thêm câu trả lời thành công Pass người dùng chọn nhập đủ thông tin cần thiết Chuyển câu hỏi Chuyển câu hỏi thành công người Pass dùng chọn đủ thông tin cần thiết 161 6.2.3 Phân hệ trưởng nhóm Bảng 6.3 Kiểm thử chức phân hệ trưởng nhóm Kết mong đợi STT Testcase Chức đăng Đăng nhập thành công, phân nhập quyền Đổi mật Đổi mật thành công người Kết Pass Pass dùng nhập mật cũ đũng, mật xác nhận mật trùng khớp với Đổi ảnh đại diện Đổi ảnh đại diện thành công Pass Thay đổi thông Thông tin cá nhân người dùng Pass tin cá nhân thay đổi thành công Thêm câu trả lời Thêm câu trả lời thành công Pass người dùng chọn nhập đủ thông tin cần thiết Chuyển câu hỏi Chuyển câu hỏi thành công người Pass dùng chọn đủ thông tin cần thiết Vơ hiệu hóa tài Người dùng vơ hiệu hóa tài khoản khoản thành cơng Kích hoạt tài Người dùng kích hoạt tài khoản khoản thành công Chuyển lĩnh vực Chuyển lĩnh vực thành công cho tư Pass Pass Pass vấn viên người dùng chọn thông tin cần thiết 162 10 Reset mật Reset mật thành công người Pass dùng nhập mật phù hợp 11 Thêm tư vấn Thêm tư vấn viên thành công viên người dùng chọn nhập đủ Pass thông tin cần thiết 12 Thêm lĩnh vực Thêm lĩnh vực thành công người dùng nhập đủ thông tin cần Pass thiết 13 Chỉnh sửa lĩnh Chỉnh sửa lĩnh vực thành công Pass Thêm đăng Thêm đăng thành công Pass người dùng chọn nhập đủ vực 14 thông tin cần thiết 6.2.4 Phân hệ Manager Bảng 6.4 Kiểm thử chức phân hệ manager Kết mong đợi STT Testcase Chức đăng Đăng nhập thành công, phân nhập quyền Đổi mật Đổi mật thành công người Kết Pass Pass dùng nhập mật cũ đũng, mật xác nhận mật trùng khớp với Đổi ảnh đại diện Đổi ảnh đại diện thành công Pass 163 Thay đổi thông Thông tin cá nhân người dùng tin cá nhân thay đổi thành công Thay đổi trưởng Thay đổi trưởng khoa thành công khoa người dùng chọn thông tin phù hợp Chỉnh sửa thông Chỉnh sửa thông tin khoa thành công tin khoa người dùng nhập đủ thông tin Pass Pass Pass phù hợp 164 PHẦN KẾT LUẬN NHỮNG KẾT QUẢ ĐẠT ĐƯỢC 1.1 Về kiến thức Về kiến thức, thành viên nhóm học hỏi trau dồi thêm nhiều cho thân Về chuyên môn: o Phát triển phần mềm Flutter, Dart để viết native apps tương thích với platform khác o Học hỏi debug để tìm lỗi giải lỗi xảy trình phát triển phần mềm o Học tiếp thu nhiều kiến thức o Hiểu cách quản lý sở liệu, cách làm việc với google firebase Về kỹ o Rèn luyện kỹ làm việc nhóm, giải vấn đề chung o Tư phản biện, kỹ giao tiếp thành viên nhóm o Kỹ đọc tài liệu tiếng anh, tự học, tự nghiên cứu để giải khó khăn o Kỹ quản lý thời gian để thực tiến độ mà không bị ảnh hưởng nhiều yếu tố khác 1.2 Về đề tài Sau thực đề tài nhóm đạt được: Ứng dụng di động dành cho người dùng hệ thống Tư vấn sinh viên Ứng dụng di động dành cho tư vấn viên hệ thống Tư vấn sinh viên Ứng dụng di động dành cho trưởng nhóm hệ thống Tư vấn sinh viên Ứng dụng di động dành cho quản lý hệ thống Tư vấn sinh viên Website dành cho admin hệ thống Tư vấn sinh viên Sơ đồ, lược đồ báo cáo cho hệ thống Tư vấn sinh viên Các tài liệu báo cáo cho hệ thống Tư vấn sinh viên 165 Về ứng dụng, website tất đề triển khai cập nhật Với ứng dụng di động, người dùng có thể cài đặt file apk cung cấp email cho nhóm thực đề tài để mời vào hệ thống Firebase Distribution đề sử dụng ứng dụng Còn với website, người dùng có thể truy cập đường dẫn truy cập 1.3 Về kinh nghiệm Kinh nghiệm lập trình ứng dụng di động Kinh nghiệm lập trình website Ruby on Rails Kinh nghiệm phát triển, triển khai ứng dụng kiểm thử phần mềm Kinh nghiệm làm việc với Google Firebase, Cloud FireStore ƯU ĐIỂM VÀ NHƯỢC ĐIỂM 2.1 Ưu điểm Các hệ thống triển khai giúp người dùng có thể dễ dàng sử dụng mà không cần phải cài đặt phức tạp Hệ thống viết source code nhờ có hỗ trợ Flutter khiến cho việc cài đặt dễ dàng Hệ thống bao gồm tính cần có hoạt động ổn định Ý tưởng thực đề tài độc đáo, không bị trùng lặp với dự án quy mơ khác 2.2 Nhược điểm Vẫn cịn chưa đầy đủ tính để tăng trải nghiệm người dùng Giao diện UI/UX chưa thật mượt mà Vì kinh nghiệm kiến thức cịn nhiều hạn chế, số chức xử lý chưa thật tối ưu THUẬN LỢI Nhờ có hướng dẫn nhiệt tình thầy Nguyễn Hữu Trung thầy cô Khoa Công nghệ thông tin Trường Đại học Sư Phạm Kỹ 166 Thuật Thành phố Hồ Chí Minh giúp đỡ nhóm thời gian thực đề tài KHÓ KHĂN Flutter cơng nghệ nên việc tìm kiếm giải pháp lời giải cho tốn phát sinh q trình phát triển phần mềm cịn gây nhiều trở ngại cho nhóm Việc tương tác với Google Firebase để xác thực, quản lý người dùng lưu trữ liệu, hình ảnh đem lại nhiều mặt thuận lợi khiến cho nhóm gặp khơng khó khăn để quản lý tùy biến phần hệ thống liên quan đến tiện ích Kinh nghiệm kỹ nhóm cịn nhiều thiếu sót non trẻ dẫn đến khơng khó khăn để giải vấn đề HƯỚNG PHÁT TRIỂN Trong trình thực đề tài, mặt thời gian kiến thức khiến cho nhóm có nhiều trở ngại việc thực hóa nhiều tính cho hệ thống, nhóm đề hướng phát triển cho hệ thống sau: Phát triển hệ thống thông báo nhận câu hỏi, câu trả lời, câu hỏi chuyển, có đăng mới… Phát triển luồng hỏi trả lời theo thời gian thực để cải thiện việc tương tác người dùng nhân viên hệ thống Phát triển tính mà nhóm nghĩ tương lai Cải thiện hiệu suất, sửa lỗi ứng dụng công nghệ vào đề tài 167 TÀI LIỆU THAM KHẢO [1] Tìm hiểu Flutter ứng dụng, Đỗ Thế Hiệp, https://lib.hpu.edu.vn/bitstream/handle/123456789/34453/Do-The-HiepCT2101C.pdf?sequence=1&fbclid=IwAR207d1oHFljULpIhEqNeZZ-0JsWW4wyrJOGUxbMPruIr2I12_br2-8PPg [2] Dart overview, Dart Team, https://dart.dev/overview [3] Firebase App Distribution, Firebase, https://firebase.google.com/docs/app-distribution [4] Firebase, Wikipedia, https://en.wikipedia.org/wiki/Firebase [5] Flutter Document, Flutter team, https://docs.flutter.dev/ [6] UI Food Delivery Flutter, Trần Tâm Nguyên, https://www.youtube.com/watch?v=uHxGhTAuQ1w&list=PLclUEECd6XzsMA7FGYMng9VxOE3g2L ow-&ab_channel=Tr%E1%BA%A7nT%C3%A2mNguy%C3%AAn [7] Flutter bản, Nguyễn Đức Hoàng https://www.youtube.com/watch?v=GkuKMSnERPE&list=PLWBrqglnjNl3DzS2RHds5KlanGqQ1uLN Q&ab_channel=NguyenDucHoang [8] Báo Cáo Mẫu, Nguyễn Trường An – Gian Thiệu Quân https://docs.google.com/document/d/1oc1vsIUwo7cDvZgSDYI2h0B3T511E6iI/edit?usp=sharing&ouid= 106910716433953849962&rtpof=true&sd=true [9] Flutter login and registration using firebase, Freecode sport, https://www.freecodespot.com/blog/flutter-login-and-registration-using-firebase/ [10] Using Firebase Authentication, Firebase, https://firebase.flutter.dev/docs/auth/usage [11] Flutter (software), Wikipedia, https://en.wikipedia.org/wiki/Flutter_(software) [12] Trang tư vấn sinh viên trường Đại học Sư phạm Kỹ thuật TP Hồ Chí Minh http://tuvansinhvien.hcmute.edu.vn/ 168