Bối cảnh và vấn đề nghiên cứu

Khóa luận tốt nghiệp chuyên ngành Công nghệ phần mềm (ngành Công nghệ thông tin) của tác giả Nguyễn Đức Hảo và Nguyễn Thanh Hoàng, dưới sự hướng dẫn của ThS. Lê Thị Minh Châu tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh (thực hiện từ ngày 07/03/2022 đến ngày 18/06/2022), giải quyết bài toán ứng dụng công nghệ thông tin vào việc quản lý và hỗ trợ hoạt động du lịch sau bối cảnh dịch bệnh COVID-19.

Về bối cảnh thực tiễn, tác giả chỉ ra rằng sau khoảng thời gian dài cách ly do ảnh hưởng của đại dịch, nhu cầu đi lại, tham quan và trải nghiệm dịch vụ nghỉ dưỡng của người dân gia tăng đáng kể. Tuy nhiên, việc tự chuẩn bị và xây dựng lộ trình du lịch thủ công thường gặp nhiều khó khăn, tốn kém thời gian, dễ xảy ra sai sót trong khâu lưu trữ và cập nhật thông tin địa điểm. Điều này làm giảm chất lượng trải nghiệm của du khách. Đồng thời, các đơn vị cung cấp dịch vụ du lịch (như nhà hàng, khách sạn) cũng cần kênh tiếp cận thông tin trực tiếp để phục hồi hoạt động kinh doanh sau khủng hoảng.

Mục tiêu tổng quát của đề tài là nghiên cứu công nghệ và xây dựng một hệ thống hoàn chỉnh bao gồm ứng dụng di động cho khách du lịch và trang web quản trị thông tin dành cho quản trị viên. Các nhiệm vụ nghiên cứu cụ thể được tác giả phân định thành hai nhóm:

  1. Nhiệm vụ xây dựng ứng dụng di động hỗ trợ du lịch:
    • 1.1. Xem thông tin chi tiết về các địa điểm du lịch.
    • 1.2. Xem lịch trình du lịch được gợi ý theo từng khu vực, tỉnh thành.
    • 1.3. Đánh giá và bình luận về địa điểm du lịch.
    • 1.4. Tìm kiếm các địa điểm và dịch vụ xung quanh vị trí hiện tại trong bán kính 5km.
    • 1.5. Gửi thư góp ý và phản hồi tới ban quản trị.
  2. Nhiệm vụ xây dựng trang web quản trị hệ thống:
    • 2.1. Quản lý danh sách người dùng và trạng thái tài khoản.
    • 2.2. Quản lý danh mục địa điểm du lịch (thêm mới, chỉnh sửa, vô hiệu hóa).
    • 2.3. Quản lý lịch trình du lịch và lộ trình chi tiết.
    • 2.4. Quản lý các dịch vụ lưu trú, tiện ích và tiếp nhận ý kiến đóng góp của người dùng.
    • 2.5. Xây dựng hệ thống máy chủ dịch vụ giao diện lập trình ứng dụng (API Server) phục vụ đồng bộ dữ liệu.

Đối tượng nghiên cứu của khóa luận là các giải pháp công nghệ xây dựng hệ thống phần mềm phân tán (Web, Mobile, Backend API) ứng dụng trong nghiệp vụ quản lý thông tin du lịch. Phạm vi không gian của đề tài tập trung vào việc quản lý dữ liệu du lịch tại Việt Nam, triển khai tính năng định vị không gian địa lý hỗ trợ tìm kiếm trong bán kính 5km. Phạm vi thời gian nghiên cứu và thực nghiệm diễn ra trong học kỳ 2 năm học 2021–2022.


Cơ sở lý thuyết và phương pháp

Khóa luận thiết lập nền tảng công nghệ và lý thuyết dựa trên các giải pháp phát triển phần mềm đa nền tảng, kiến trúc dịch vụ mạng và hệ quản trị cơ sở dữ liệu quan hệ:

  • React Native: Framework mã nguồn mở do Facebook phát triển (công bố năm 2015), cho phép sử dụng JavaScript và React để xây dựng ứng dụng di động chạy đồng thời trên nền tảng Android và iOS. Tác giả lựa chọn React Native nhờ khả năng tái sử dụng thành phần giao diện (components), hỗ trợ cơ chế nạp lại trực tiếp (live reload / hot reload) và hỗ trợ quản lý điều hướng tuyến đường (route navigation). Tác giả cũng ghi nhận nhược điểm của công nghệ này là hiệu năng xử lý tác vụ tính toán thấp hơn ứng dụng thuần mã gốc (native code) và rủi ro bảo mật tiềm ẩn từ JavaScript.
  • Expo: Bộ công cụ mã nguồn mở hỗ trợ quy trình phát triển, kiểm thử và biên dịch ứng dụng React Native mà không cần can thiệp sâu vào cấu hình tệp gốc của từng hệ điều hành.
  • Node.js và Express Framework: Nền tảng thực thi JavaScript phía máy chủ được xây dựng trên V8 JavaScript Engine của Google Chrome, kết hợp cùng framework Express để xây dựng API theo kiến trúc RESTful API. Hệ thống xử lý các yêu cầu HTTP tiêu chuẩn gồm: GET (truy vấn tài nguyên), POST (tạo mới dữ liệu), PUT (cập nhật toàn bộ đối tượng), và DELETE (xóa tài nguyên).
  • Hệ sinh thái thư viện phụ trợ: Thư viện multer phục vụ tải lên và xử lý tệp tin hình ảnh; thư viện Bcrypt dùng để mã hóa mật khẩu người dùng trước khi lưu trữ; cơ chế jsonwebtoken (JWT) duy trì phiên làm việc và bảo mật xác thực tài khoản.
  • MySQL: Hệ quản trị cơ sở dữ liệu quan hệ mã nguồn mở được lựa chọn nhờ tính sẵn sàng cao, cú pháp truy vấn SQL phổ biến, chi phí vận hành thấp và tính năng phân lớp dữ liệu an toàn.

Về phương pháp nghiên cứu, tác giả áp dụng hai phương pháp chính:

  1. Phương pháp tổng hợp lý thuyết: Khai thác tài liệu chuyên ngành về React, React Native, Node.js từ tài liệu chính thức, các khóa đào tạo trực tuyến trên Udemy và các ấn phẩm học thuật trên Internet.
  2. Phương pháp chuyên gia: Tiếp thu ý kiến định hướng, phản biện từ giảng viên hướng dẫn (ThS. Lê Thị Minh Châu) và các chuyên gia, kỹ sư phần mềm có kinh nghiệm thực tế để hoàn thiện thiết kế kiến trúc và xử lý lỗi kỹ thuật.

Nguồn dữ liệu của đề tài bao gồm thông tin khảo sát hiện trạng từ ba ứng dụng thực tế (MeTrip, Tripadvisor, Dong Nai Guide), kết hợp cùng tập dữ liệu biểu mẫu về địa điểm, hình ảnh, tiện ích và phản hồi người dùng được lưu trữ thông qua phần mềm quản lý cơ sở dữ liệu Navicat và mô phỏng kiểm thử trên Visual Studio Code kết hợp Android Emulator.


Thiết kế và triển khai

Hệ thống được thiết kế theo mô hình kiến trúc máy khách - máy chủ (Client - Server) phân tách rõ ràng giữa giao diện người dùng và tầng cung cấp dịch vụ dữ liệu.

[Mobile App (React Native / Expo)]  \
                                      --> [RESTful API Server (Node.js / Express)] <--> [Cơ sở dữ liệu MySQL]
[Web Admin Dashboard (ReactJS)]     /

Mô hình hóa hệ thống phân định rõ ràng 3 tác nhân (Actors):

  1. Guest (Khách chưa đăng nhập): Chỉ có quyền truy cập vào chức năng đăng ký tài khoản mới (UC_01).
  2. User (Người dùng đã đăng nhập): Thực hiện các chức năng xem thông tin du lịch, tra cứu địa điểm xung quanh qua tọa độ định vị GPS, xem chi tiết lịch trình, gửi phản hồi, đăng và xóa bình luận của cá nhân, cập nhật hồ sơ cá nhân và đổi mật khẩu.
  3. Admin (Quản trị viên): Đăng nhập vào trang web quản lý, có toàn quyền quản lý tài khoản người dùng (tìm kiếm, vô hiệu hóa tài khoản vi phạm), quản lý danh mục địa điểm, quản lý dịch vụ nghỉ dưỡng/ăn uống, quản lý lịch trình và quản lý hộp thư phản hồi, quản lý thông báo hệ thống.
Nhóm chức năng Tác nhân thực hiện Mã Use Case và nội dung nghiệp vụ
Xác thực & Tài khoản Guest, User, Admin UC_01 (Đăng ký), UC_02 (Đăng nhập), UC_03 (Đăng xuất), UC_14 - UC_16 (Quản lý/vô hiệu hóa/tìm kiếm tài khoản), UC_41 - UC_44 (Xem/sửa thông tin cá nhân, đổi mật khẩu).
Quản lý Địa điểm User, Admin UC_09 - UC_13 (Tìm kiếm, xem, thêm, cập nhật, vô hiệu hóa thông tin địa điểm), UC_28 (Xem thông tin du lịch), UC_36 (Xem chi tiết địa điểm).
Quản lý Dịch vụ User, Admin UC_17 - UC_21 (Tìm kiếm, thêm, cập nhật, vô hiệu hóa dịch vụ), UC_33 - UC_34 (Tìm kiếm và xem chi tiết dịch vụ tiện ích).
Quản lý Lịch trình User, Admin UC_04 - UC_08 (Xem, thêm, xóa, cập nhật lịch trình), UC_45 (Người dùng tra cứu lịch trình theo tỉnh thành).
Tương tác & Định vị User, Admin UC_22 - UC_26 (Quản lý và xem thông báo), UC_27, UC_40 (Gửi và xem góp ý), UC_29 - UC_31, UC_35 (Đăng, xem, xóa bình luận), UC_37 - UC_38 (Tìm kiếm địa điểm, dịch vụ xung quanh bán kính 5km).

Quy trình cài đặt và kiểm thử được triển khai toàn diện tại Chương 5 thông qua việc xây dựng 13 kịch bản kiểm thử chức năng (test cases) cụ thể, gồm: kiểm thử chức năng đăng ký, kiểm thử đăng nhập, kiểm thử thêm địa điểm du lịch, kiểm thử tìm kiếm xung quanh, kiểm thử gửi góp ý, kiểm thử gửi thông báo, kiểm thử xem chi tiết địa điểm du lịch, kiểm thử xóa bình luận, kiểm thử vô hiệu hóa lịch trình, kiểm thử cập nhật thông tin dịch vụ, kiểm thử cập nhật thông tin địa điểm, kiểm thử đổi mật khẩu, và kiểm thử xem lịch trình. Toàn bộ các ca kiểm thử đều kiểm tra điều kiện dữ liệu nhập (hợp lệ / không hợp lệ) và thông điệp phản hồi từ máy chủ.


Nội dung chính theo từng chương

Chương 1: Tổng quan

Chương 1 giới thiệu lý do chọn đề tài xuất phát từ việc khôi phục hoạt động du lịch sau dịch COVID-19 và nhu cầu tự động hóa khâu lập kế hoạch hành trình của du khách. Tác giả xác định rõ mục tiêu áp dụng kiến thức chuyên ngành công nghệ phần mềm để tạo lập ứng dụng di động cho người dùng và trang web quản lý dữ liệu cho quản trị viên. Phần cuối chương liệt kê tóm tắt các công nghệ chủ chốt bao gồm: React, React Native, Node.js, Express, MySQL, Expo và JavaScript.

Chương 2: Cơ sở lý thuyết

Chương này cung cấp lịch sử hình thành, khái niệm, ưu điểm, nhược điểm và lý do lựa chọn từng công nghệ:

  • Trình bày cột mốc Jordan Walke tạo ra các thành phần giao diện bằng JavaScript năm 2013, tiền đề để Facebook ra mắt React Native năm 2015, phát triển mạnh mẽ trên GitHub với hơn 9.100 người đóng góp vào năm 2019.
  • Phân tích nền tảng Node.js do Ryan Dahl khởi xướng năm 2009 dưới sự bảo trợ của Joyent, trình diễn tại JSConf Châu Âu, kết hợp giữa Chrome V8 Engine, API I/O và kiến trúc vòng lặp sự kiện (event loop).
  • Phân tích cơ chế hoạt động của RESTful API với 4 phương thức HTTP cơ bản (GET, POST, PUT, DELETE), vai trò của công cụ Expo và hệ quản trị cơ sở dữ liệu quan hệ MySQL.

Chương 3: Khảo sát hiện trạng và xác định yêu cầu

Tác giả thực hiện khảo sát chi tiết ba ứng dụng đang lưu hành trên thị trường nhằm rút ra các yêu cầu hệ thống:

Tên ứng dụng Ưu điểm ghi nhận Nhược điểm còn tồn tại Bài học tiếp thu cho đề tài
MeTrip Giao diện đơn giản; bộ lọc và tìm kiếm thông minh; hỗ trợ ghi chú lộ trình chi tiết. Thỉnh thoảng lỗi đăng nhập qua Facebook; giao diện chưa phân tách rõ từng khối. Cần thiết kế bố cục rõ ràng, tối ưu hóa tính năng tìm kiếm và lên lịch trình.
Tripadvisor Hỗ trợ lập kế hoạch toàn diện; đánh giá phong phú; phân loại lịch trình theo địa điểm. Không có hộp thư thông báo hay kênh tiếp nhận phản hồi từ người dùng đến quản trị viên. Bổ sung module thông báo hệ thống và chức năng gửi thư góp ý cho quản trị viên.
Dong Nai Guide Đơn giản, dễ sử dụng; hỗ trợ định vị vị trí hiện tại của người dùng. Thiếu phần phản hồi, góp ý; thông tin địa điểm chưa đầy đủ; màn hình khám phá còn nhiều khoảng trống. Bổ sung đầy đủ thông tin dịch vụ, tận dụng không gian hiển thị và tích hợp kênh phản hồi.

Từ kết quả khảo sát, tác giả xác định các yêu cầu chức năng theo từng nhóm người dùng (Guest, User, Admin), xác định phương pháp nghiên cứu lý thuyết, phương pháp chuyên gia và môi trường triển khai thực tế.

Chương 4: Phân tích và thiết kế hệ thống

Chương 4 chiếm khối lượng nội dung kỹ thuật lớn nhất trong khóa luận:

  • Mô hình hóa hệ thống với 3 tác nhân và lược đồ Use Case tổng thể gồm 45 ca sử dụng (UC_01 đến UC_45).
  • Xây dựng 17 bảng đặc tả chi tiết cho các ca sử dụng chủ chốt, xác định rõ ràng: Mô tả, Đầu vào, Nguồn dữ liệu, Đầu ra, Mục đích, Nguyên lý hoạt động, Yêu cầu, Tiền điều kiện, Hậu điều kiện và Ảnh hưởng phụ.
  • Xây dựng 10 lược đồ tuần tự (Sequence Diagram) mô tả chi tiết tương tác thông điệp giữa các tầng đối tượng cho các chức năng: xem thông tin du lịch, vô hiệu hóa địa điểm, tìm kiếm địa điểm, thêm dịch vụ, thêm địa điểm, thêm lịch trình, quản lý tài khoản, tìm kiếm xung quanh, và xem lịch trình.
  • Thiết kế lược đồ cơ sở dữ liệu quan hệ và thiết lập danh mục 37 màn hình giao diện (bao gồm các màn hình của ứng dụng di động như: Đăng ký, Trang chủ, Nơi ở xung quanh, Tiện ích xung quanh, Chi tiết dịch vụ, Bản đồ tìm kiếm xung quanh 5km; và các giao diện web quản trị như: Quản lý địa điểm, Thêm mới lịch trình, Quản lý bình luận, Quản lý phản hồi).

Chương 5: Cài đặt và kiểm thử

Chương này mô tả trình tự cài đặt, vận hành hệ thống phần mềm và kết quả thực hiện 13 ca kiểm thử chức năng (test cases). Các bảng kiểm thử tập trung vào việc xác nhận tính đúng đắn của luồng dữ liệu, tính toàn vẹn khi nhập liệu thiếu trường bắt buộc, xử lý thông báo lỗi (như "Tài khoản đã tồn tại", "Vui lòng nhập đủ dữ liệu", "Thất bại") và xác thực quyền quản trị khi kích hoạt/vô hiệu hóa các thực thể dữ liệu trên hệ thống.

Chương 6: Kết luận

Chương kết luận tổng kết các kết quả đạt được của khóa luận trên ba phương diện: lý thuyết, hiện thực phần mềm và kỹ năng mềm, đồng thời đề xuất các định hướng phát triển tiếp theo của hệ thống.


Kết quả và đóng góp

Về kết quả đạt được, khóa luận đã hoàn thành các mục tiêu đề ra theo văn bản:

  • Về mặt lý thuyết: Nắm vững nguyên lý hoạt động của kiến trúc RESTful API, mô hình bất đồng bộ trong Node.js, cấu trúc thành phần và vòng đời điều hướng trong React Native, cũng như các kỹ thuật mã hóa dữ liệu với Bcrypt và xác thực phiên qua jsonwebtoken.
  • Về mặt hiện thực sản phẩm:
    • Xây dựng hoàn chỉnh ứng dụng di động React Native tích hợp chức năng hiển thị danh mục địa điểm, quản lý thông tin tài khoản cá nhân, xem và bình luận về địa điểm, xem gợi ý lịch trình theo tỉnh thành.
    • Hiện thực thành công tính năng định vị không gian địa lý, cho phép quét và hiển thị trên bản đồ các địa điểm du lịch và dịch vụ tiện ích lân cận trong phạm vi bán kính 5km tính từ tọa độ hiện tại của người dùng.
    • Xây dựng website quản trị trên nền tảng React với đầy đủ các phân hệ quản lý: quản lý tài khoản người dùng, quản lý địa điểm du lịch, quản lý thông tin dịch vụ, quản lý lịch trình, hệ thống thông báo và hộp thư tiếp nhận góp ý.
    • Xây dựng hệ thống máy chủ Node.js/Express cung cấp API đồng bộ với cơ sở dữ liệu MySQL, tích hợp tải tệp ảnh qua thư viện multer.

Về đóng góp và giải pháp đề xuất, tác giả đã khắc phục được các hạn chế của các phần mềm khảo sát trước đó:

  • Đã giải quyết được khiếm khuyết thiếu tương tác phản hồi của ứng dụng Dong Nai Guide và Tripadvisor bằng cách xây dựng module "Gửi góp ý" (UC_40) cho người dùng và "Quản lý phản hồi" (UC_27) cho quản trị viên.
  • Đưa ra cơ chế quản lý dữ liệu linh hoạt thông qua trạng thái "Vô hiệu hóa" (UC_13, UC_15, UC_21) thay vì xóa cứng dữ liệu, giúp đảm bảo tính toàn vẹn quan hệ trong cơ sở dữ liệu mà vẫn ngăn chặn được việc hiển thị các thông tin không phù hợp lên ứng dụng di động.

Hạn chế và hướng nghiên cứu tiếp

Khóa luận tự chỉ ra một số hạn chế gắn liền với phạm vi kỹ thuật của đề tài:

  • Hạn chế về nền tảng công nghệ: Tác giả ghi nhận ứng dụng phát triển trên framework React Native có hiệu năng vận hành thấp hơn so với các ứng dụng viết bằng mã gốc thuần túy (native code); tính bảo mật của mã nguồn phía máy khách còn phụ thuộc vào tính chất mở của JavaScript; nền tảng Node.js có sự suy giảm hiệu suất khi phải giải quyết các tác vụ tính toán chuyên sâu (CPU-intensive).
  • Hạn chế về tính năng: Chức năng quét địa điểm xung quanh hiện tại đang được ấn định cố định trong phạm vi bán kính 5km, chưa hỗ trợ người dùng tùy chỉnh mở rộng hoặc thu hẹp cự ly quét theo nhu cầu thực tế.

Về hướng nghiên cứu và phát triển tiếp theo, văn bản xác định:

  • Tiếp tục nâng cấp và tối ưu hóa hiệu năng xử lý của hệ thống máy chủ API.
  • Cải thiện cơ chế bảo mật và tối ưu giao diện người dùng trên nhiều kích thước màn hình thiết bị di động khác nhau.
  • Mở rộng kho dữ liệu số hóa về các địa điểm du lịch, danh mục dịch vụ nghỉ dưỡng, nhà hàng ăn uống trên quy mô toàn quốc nhằm gia tăng tiện ích cho người sử dụng.

Giá trị tham khảo

Báo cáo khóa luận tốt nghiệp này có giá trị tham khảo thiết thực cho các đối tượng sau:

  • Sinh viên ngành Công nghệ thông tin và Công nghệ phần mềm: Tài liệu cung cấp mẫu tham khảo tiêu chuẩn cho một đồ án tốt nghiệp phát triển ứng dụng di động và hệ thống web quản trị hoàn chỉnh từ đầu đến cuối (Full-stack Development).
  • Người phát triển ứng dụng di động với React Native và Node.js: Các lập trình viên có thể tham khảo trực tiếp cấu trúc phân tích nghiệp vụ, danh mục 45 Use Case và 17 bảng đặc tả use case mẫu, mô hình xử lý xác thực với JWT, mã hóa Bcrypt và cơ chế tải tệp ảnh với Multer.
  • Nhà nghiên cứu nghiệp vụ du lịch thông minh: Khóa luận cung cấp góc nhìn thực tiễn về việc khảo sát so sánh tính năng giữa các phần mềm thương mại (MeTrip, Tripadvisor, Dong Nai Guide) và phương pháp mô hình hóa các thực thể phục vụ việc lên lịch trình tham quan.

Câu hỏi thường gặp

1. Tính năng tìm kiếm địa điểm và dịch vụ xung quanh vị trí người dùng hỗ trợ trong phạm vi bán kính bao nhiêu?
Theo đặc tả Use Case UC_37, UC_38 và Bảng 15 trong khóa luận, hệ thống hỗ trợ người dùng tìm kiếm các địa điểm du lịch và dịch vụ tiện ích xung quanh vị trí hiện tại trong bán kính tối đa là 5km dựa trên dữ liệu định vị thiết bị.

2. Tác giả sử dụng những giải pháp công nghệ cụ thể nào để giải quyết vấn đề tải ảnh, bảo mật mật khẩu và duy trì phiên đăng nhập ở backend?
Tác giả sử dụng nền tảng Node.js kết hợp Express framework và tích hợp ba thư viện kỹ thuật chuyên trách: thư viện multer để xử lý upload tệp hình ảnh, thư viện Bcrypt để mã hóa mật khẩu người dùng lưu trữ trong cơ sở dữ liệu MySQL, và thư viện jsonwebtoken (JWT) để duy trì bảo mật đăng nhập cho các phiên giao dịch API.

3. Hệ thống phân chia người dùng thành các tác nhân (Actors) nào và quyền hạn khác nhau ra sao?
Hệ thống xác định 3 tác nhân chính:

  • Guest: Người chưa có tài khoản, chỉ được sử dụng chức năng đăng ký.
  • User: Người dùng đã đăng nhập, có quyền xem thông tin địa điểm, tra cứu lịch trình, tìm kiếm tiện ích xung quanh 5km, gửi góp ý, đánh giá và quản lý bình luận của bản thân.
  • Admin: Quản trị viên, quản lý toàn diện trang web quản trị bao gồm quản lý người dùng (vô hiệu hóa tài khoản), thêm/sửa/vô hiệu hóa địa điểm, dịch vụ, lịch trình, quản lý thông báo và xem thư phản hồi.

4. Khóa luận đã tiến hành khảo sát thực tế trên những ứng dụng nào và ghi nhận những nhược điểm gì ở chúng?
Tác giả đã khảo sát 3 ứng dụng: MeTrip (bị lỗi đăng nhập Facebook thỉnh thoảng xuất hiện, phân chia khối giao diện chưa rõ), Tripadvisor (thiếu hộp thư thông báo và kênh phản hồi trực tiếp tới quản trị viên), và Dong Nai Guide (chưa có phần góp ý, thông tin địa điểm chưa đầy đủ, mục khám phá còn nhiều khoảng trống trên màn hình di động).

5. Đề tài khóa luận do ai thực hiện, dưới sự hướng dẫn của ai và hoàn thành vào thời gian nào?
Đề tài do hai sinh viên Nguyễn Đức Hảo (MSSV: 18110104) và Nguyễn Thanh Hoàng (MSSV: 18110112) thuộc chuyên ngành Công nghệ phần mềm, Khoa Đào tạo Chất lượng cao, Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh thực hiện dưới sự hướng dẫn của ThS. Lê Thị Minh Châu và được bảo vệ vào tháng 6 năm 2022 (thời gian làm đề tài từ ngày 07/03/2022 đến ngày 18/06/2022).


Kết luận

Khóa luận tốt nghiệp của tác giả Nguyễn Đức Hảo và Nguyễn Thanh Hoàng đã thiết kế và hiện thực hóa thành công một hệ thống phần mềm quản lý và hỗ trợ du lịch hoàn chỉnh kết hợp giữa ứng dụng di động React Native và hệ thống quản trị nền web ReactJS trên nền tảng backend Node.js/Express và MySQL. Hệ thống đáp ứng các chức năng nghiệp vụ trọng tâm gồm tra cứu thông tin điểm đến, quản lý lịch trình tham quan, định vị tiện ích xung quanh trong bán kính 5km và thiết lập kênh tiếp nhận phản hồi hai chiều giữa du khách và quản trị viên. Nghiên cứu là tài liệu tham khảo có giá trị học thuật và ứng dụng thực tiễn rõ ràng cho các đề tài phát triển phần mềm phục vụ ngành du lịch địa phương.