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

Trong bối cảnh ngành dịch vụ ẩm thực và đồ ăn nhanh (F&B) đang chuyển dịch mạnh mẽ sang mô hình kinh doanh số, việc ứng dụng các giải pháp công nghệ di động để tối ưu hóa trải nghiệm khách hàng và quy trình vận hành trở thành nhu cầu cấp thiết. Đề tài "Ứng dụng bán đồ ăn Burger King" được thực hiện trong khuôn khổ học phần Lập trình trên thiết bị di động nâng cao tại Khoa Công nghệ Thông tin, Trường Đại học Ngoại ngữ - Tin học Thành phố Hồ Chí Minh dưới sự hướng dẫn của Th.S Lương Văn Minh.

Mục tiêu nghiên cứu và phát triển của đồ án bao gồm bốn nhiệm vụ trọng tâm:

  1. Xây dựng một ứng dụng di động thương mại điện tử hoàn chỉnh cho chuỗi cửa hàng Burger King, hỗ trợ người dùng tra cứu thực đơn, tùy chỉnh món ăn, quản lý giỏ hàng, áp dụng khuyến mãi và thanh toán trực tuyến.
  2. Tự thiết kế và triển khai hệ thống Backend RESTful API độc lập kết hợp cơ sở dữ liệu NoSQL MongoDB, đảm bảo khả năng mở rộng, bảo mật và toàn quyền kiểm soát dữ liệu mà không phụ thuộc vào các nền tảng Backend-as-a-Service (BaaS) đóng gói sẵn.
  3. Ứng dụng các kỹ thuật lập trình di động nâng cao trên nền tảng Flutter và ngôn ngữ Dart, bao gồm quản lý trạng thái phản ứng (reactive state management) với thư viện GetX, xử lý bất đồng bộ, lưu trữ cục bộ và đồng bộ dữ liệu thời gian thực.
  4. Tối ưu hóa giao diện người dùng thích ứng (responsive UI) trên nhiều phân khúc phần cứng Android và iOS, bao gồm màn hình tiêu chuẩn, màn hình lớn và các thiết bị đặc thù như điện thoại màn hình gập.

Đối tượng nghiên cứu của đề tài là quy trình số hóa dịch vụ đặt món, quản lý thực đơn, xử lý đơn hàng và tương tác khách hàng của chuỗi cửa hàng thức ăn nhanh. Phạm vi nghiên cứu tập trung vào việc thiết kế kiến trúc phần mềm client-server, xây dựng giao diện người dùng trên Flutter, phát triển API nội bộ kết nối cơ sở dữ liệu MongoDB và tích hợp các cổng dịch vụ bên thứ ba (Ví MoMo, Giao Hàng Nhanh - GHN). Công trình được hoàn thành vào tháng 7 năm 2025 tại TP. Hồ Chí Minh bởi nhóm tác giả: Nguyễn Hữu Đa, Nguyễn Ngọc Anh Hào và Dương Thị Thủy Tiên.

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

Về mặt lý thuyết, đề tài tiếp cận dựa trên các nguyên lý kiến trúc phần mềm hiện đại và công nghệ phát triển ứng dụng di động đa nền tảng:

  • Nền tảng Flutter và Ngôn ngữ Dart: Khai thác kiến trúc phân tầng của Flutter (Framework, Rendering Layer và Engine C++ sử dụng thư viện đồ họa Skia). Mã nguồn Dart được biên dịch trực tiếp sang mã máy native (ARM code) qua cơ chế Ahead-Of-Time (AOT) khi phát hành và Just-In-Time (JIT) trong quá trình phát triển (hỗ trợ Hot Reload/Hot Restart).
  • Mô hình kiến trúc phần mềm MVC và Quản lý trạng thái GetX: Phân tách rõ ràng giữa Model (dữ liệu), View (giao diện Flutter thuần và widget Obx) và Controller (GetxController). GetX được lựa chọn làm giải pháp tổng thể cho Reactive State Management thông qua các biến quan sát (.obs), Route Management không phụ thuộc BuildContext và Dependency Injection (Get.put()).
  • Cơ sở dữ liệu NoSQL MongoDB: Sử dụng mô hình lưu trữ tài liệu BSON (Binary JSON) phi cấu trúc/bán cấu trúc, cho phép cấu trúc schema linh hoạt, hỗ trợ tài liệu lồng nhau (nested documents) và tối ưu hóa truy vấn thông qua aggregation pipeline.
  • Lưu trữ dữ liệu cục bộ và xử lý bất đồng bộ: Ứng dụng kỹ thuật Future, async/await, thư viện http để xử lý REST API; sử dụng SharedPreferences cho việc lưu trữ cấu hình key-value và sqflite cho cơ sở dữ liệu quan hệ cục bộ SQLite trên thiết bị.

Phương pháp nghiên cứu và phát triển phần mềm được triển khai theo quy trình kỹ thuật hệ thống bài bản:

  • Phân tích yêu cầu và mô hình hóa hệ thống: Sử dụng biểu đồ Usecase tổng quát, các bảng đặc tả ca sử dụng chi tiết (Actor, Trigger, Pre-condition, Post-condition, Normal/Alternative flows), biểu đồ tuần tự (Sequence Diagram) cho từng luồng nghiệp vụ và biểu đồ lớp (Class Diagram).
  • Thiết kế và kiểm thử giao diện Responsive: Ứng dụng các widget bố cục linh hoạt (LayoutBuilder, MediaQuery, Flexible, Expanded) kết hợp nguyên tắc breakpoint layout để tương thích đa màn hình.
  • Kiểm thử hệ thống: Tiến hành kiểm thử đa kịch bản cho các luồng dữ liệu phức tạp (nhập mã giảm giá hết hạn, lỗi kết nối mạng, giỏ hàng động, đồng bộ dữ liệu) trên cả máy ảo (emulator) và thiết bị phần cứng vật lý.

Thiết kế và triển khai

Hệ thống được thiết kế theo mô hình Client - Server tách biệt, cho phép mở rộng độc lập giữa tầng giao diện di động và tầng xử lý nghiệp vụ backend.

+-------------------------------------------------------------------+
|                     FLUTTER MOBILE CLIENT                         |
|  [View: UI Widgets / Obx] <---> [Controller: GetxController]      |
|  [Local Data: SharedPreferences / SQLite (sqflite)]               |
+-------------------------------------------------------------------+
                                  |
                                  | (HTTPS / REST API - JSON)
                                  v
+-------------------------------------------------------------------+
|                     CUSTOM BACKEND SERVER                         |
|  [Node.js / Express - MVC Architecture - JWT Authentication]       |
+-------------------------------------------------------------------+
          |                                       |
          | (MongoDB Driver)                      | (Third-Party APIs)
          v                                       v
+-----------------------+               +---------------------------+
|   MONGODB DATABASE    |               |  EXTERNAL INTEGRATIONS    |
| (BSON / Collections)  |               |  - MoMo E-Wallet (TLS/QR) |
|                       |               |  - GHN (Shipping API)     |
+-----------------------+               +---------------------------+

Kiến trúc dữ liệu và so sánh giải pháp công nghệ

Nhóm tác giả đã tiến hành đối sánh kỹ thuật giữa các giải pháp công nghệ nhằm lựa chọn phương án tối ưu cho ứng dụng:

Tiêu chí Cơ sở dữ liệu quan hệ (SQL) Cơ sở dữ liệu MongoDB (NoSQL) trong đồ án
Cấu trúc dữ liệu Bảng cố định gồm hàng và cột, yêu cầu định nghĩa schema nghiêm ngặt Dạng tài liệu BSON linh hoạt (schema-less), hỗ trợ tài liệu lồng nhau
Mối quan hệ Sử dụng khóa ngoại (Foreign Key) và phép JOIN bảng phức tạp Nhúng trực tiếp dữ liệu (Embedding) hoặc liên kết ID đơn giản
Khả năng mở rộng Chủ yếu mở rộng theo chiều dọc (Vertical Scaling) Hỗ trợ mở rộng theo chiều ngang (Horizontal Scaling) qua Sharding
Phù hợp nghiệp vụ Giao dịch tài chính phức tạp yêu cầu chuẩn ACID truyền thống Ứng dụng thương mại điện tử di động với cấu trúc sản phẩm biến động

Bên cạnh đó, việc bố trí thành phần giao diện hiển thị danh sách cũng được tối ưu hóa dựa trên đặc thù nội dung:

Đặc điểm ListView GridView SingleChildScrollView
Bố cục Tuyến tính (dọc hoặc ngang) Dạng lưới 2 chiều (Grid) Cuộn một widget con duy nhất
Cơ chế tải Tốt (Lazy loading với .builder) Tốt (Lazy loading với .builder) Kém (Render toàn bộ nội dung cùng lúc)
Số lượng phần tử Tối ưu cho danh sách dài/vô hạn Tối ưu cho danh sách sản phẩm, hình ảnh Tối ưu cho nội dung cố định (Form, Profile)
Ứng dụng trong dự án Lịch sử đơn hàng, danh sách thông báo Danh mục món ăn, danh sách sản phẩm Chi tiết sản phẩm, màn hình đăng ký

Các phân hệ chức năng chính

  1. Phân hệ Khách hàng (User Client):
    • Xác thực & Bảo mật: Đăng ký, đăng nhập, quên mật khẩu, cập nhật hồ sơ cá nhân và xóa tài khoản.
    • Tra cứu & Duyệt thực đơn: Thanh phân loại món ăn (Type of Food Bar), tìm kiếm thời gian thực, bộ lọc sản phẩm, hiển thị chi tiết món ăn và quản lý sản phẩm yêu thích.
    • Giỏ hàng & Đặt hàng: Thao tác thêm/sửa/xóa sản phẩm trong giỏ hàng; áp dụng mã voucher khuyến mãi với bộ lọc kiểm tra điều kiện tự động (thời hạn, giá trị đơn tối thiểu, số lượt dùng).
    • Thanh toán & Vận chuyển: Hỗ trợ hình thức thanh toán khi nhận hàng (COD) và Ví điện tử MoMo qua mã QR/Token; tích hợp tính cước vận chuyển thông qua API Giao Hàng Nhanh (GHN).
  2. Phân hệ Quản trị (Admin Panel):
    • Dashboard theo dõi hệ thống, quản lý danh mục sản phẩm (thêm, cập nhật, xóa món ăn), quản lý trạng thái đơn hàng, quản trị người dùng và cấu hình thông báo hệ thống.

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

Chương 1. Giới thiệu chung về đề tài đồ án

Chương này thiết lập bối cảnh thực tiễn của ngành F&B và xác định mục tiêu phát triển ứng dụng di động chuyên biệt cho Burger King. Tác giả trình bày chuẩn đầu ra của học phần Lập trình di động nâng cao, tập trung vào việc làm chủ kiến trúc MVC/Clean Architecture, quản lý trạng thái, tích hợp REST API và tối ưu hiệu năng. Chương 1 luận giải chi tiết 5 lý do cốt lõi trong việc lựa chọn Flutter và Dart: khả năng phát triển đa nền tảng từ một cơ sở mã duy nhất, hiệu năng biên dịch native kết hợp engine đồ họa Skia, năng suất phát triển vượt trội nhờ Hot Reload/Hot Restart, hệ sinh thái phong phú từ Pub.dev và cú pháp hướng đối tượng chặt chẽ của Dart.

Chương 2. Tổng quan về Flutter và các công nghệ liên quan

Chương 2 trình bày toàn diện cơ sở lý thuyết công nghệ. Tác giả phân tích sâu kiến trúc ba lớp của Flutter gồm: Framework (Widgets, Rendering, Animation, Gestures), C++ Engine (Skia, Text Layout, Platform Channels) và Rendering Layer (cơ chế đồng bộ Widget Tree, Element Tree, Render Tree). Bốn thành phần cốt lõi Widget, Element, RenderObject, BuildContext được giải thích rõ về mặt vai trò trong chu trình render pixel. Chương này cũng phân tích chi tiết:

  • Cú pháp lập trình Dart và các đặc tính hướng đối tượng (Class, Object, Inheritance, Abstract, Mixin).
  • Vòng đời và sự khác biệt giữa StatelessWidget và StatefulWidget; các cơ chế điều hướng Navigator và Router API (GoRouter).
  • Bảng so sánh và hướng dẫn sử dụng các nhóm Layout Widget (Text, Button, Row, Column, Container, Stack, SizedBox, ListView, GridView, DrawerLayout, TabLayout, Bottom Navigation).
  • Kỹ thuật lập trình bất đồng bộ (Future, async/await), phân tích cú pháp JSON, quản lý dữ liệu cục bộ (SharedPreferences, sqflite, path_provider), kết nối RESTful API và tổng quan các dịch vụ Firebase.
  • Kiến trúc quản lý trạng thái GetX: cơ chế biến quan sát .obs, widget lắng nghe Obx, điều hướng không cần context và Dependency Injection.

Chương 3. Đặc tả chức năng

Chương 3 tập trung vào kỹ thuật mô hình hóa yêu cầu phần mềm. Tác giả xây dựng sơ đồ Usecase tổng quát toàn hệ thống và chuẩn hóa các bảng đặc tả ca sử dụng chi tiết cho các tác vụ trọng yếu:

  • UC01 (Tra cứu sản phẩm): Cho phép khách hàng tìm kiếm và xem thông tin chi tiết sản phẩm.
  • UC02 (Đăng ký tài khoản) & UC03 (Đăng nhập tài khoản): Quy trình xác thực thông tin người dùng và xử lý ngoại lệ sai thông tin/trùng tài khoản.
  • UC04 (Xóa tài khoản cá nhân): Luồng xác nhận xóa dữ liệu người dùng khỏi hệ thống.
  • Đặc tả Quản lý giỏ hàng & Lập hóa đơn bán hàng: Luồng thêm/bớt món, xử lý tình trạng hết hàng và luồng nghiệp vụ lập hóa đơn dành cho nhân viên.

Chương 4. Mô hình hóa yêu cầu và API

Chương này cung cấp các mô hình thiết kế kỹ thuật chi tiết:

  • Mô hình dữ liệu: Cơ sở lý thuyết NoSQL MongoDB, định dạng BSON, ưu nhược điểm và bảng so sánh chi tiết giữa MongoDB với SQL truyền thống.
  • Đặc tả giao diện: Mô tả chi tiết cấu trúc, thành phần và mục đích của 20 màn hình giao diện người dùng (Onboarding, Đăng nhập, Đăng ký, Quản lý tài khoản, Giỏ hàng, Thanh toán, Địa điểm, Cửa hàng...).
  • Biểu đồ tuần tự (Sequence Diagrams): Mô hình hóa tương tác giữa Client, Controller, API Service và Database cho 8 luồng nghiệp vụ: Tra cứu sản phẩm, Mua sản phẩm, Đăng ký, Chỉnh sửa hồ sơ, Thanh toán hóa đơn (phần 1 & 2), Xóa tài khoản và Chọn hình thức thanh toán.
  • Class Diagram & Đặc tả API: Sơ đồ lớp tổng thể của hệ thống và bảng đặc tả chi tiết các endpoint RESTful API của backend Node.js cùng API dịch vụ Giao Hàng Nhanh (GHN).

Chương 5. Hiện thực chương trình và Đánh giá kết quả

Chương cuối cùng ghi nhận quá trình hiện thực hóa mã nguồn và đánh giá sản phẩm:

  • Hiện thực thành công các module nghiệp vụ cốt lõi: Xác thực & Bảo mật, Duyệt/Tìm kiếm món ăn, Giỏ hàng động tích hợp kiểm tra mã giảm giá MongoDB, Thanh toán COD/MoMo, Quản lý tài khoản & phân tích hành vi.
  • Triển khai thành công kiến trúc backend độc lập trên Node.js/MongoDB và tích hợp mô hình GetX MVC trên client.
  • Tối ưu hóa hiển thị responsive trên nhiều định dạng phần cứng, bao gồm cả thiết bị màn hình gập (Samsung Galaxy Z Fold).
  • Tổng hợp hệ thống giao diện thực tế gồm 17 màn hình phía người dùng và 8 màn hình phân hệ quản trị Admin.
  • Đánh giá các công việc đã hoàn thành, chỉ ra những hạn chế kỹ thuật hiện hữu và đề xuất lộ trình phát triển trong tương lai.

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

Kết quả chính đạt được

  • Hoàn thiện hệ sinh thái ứng dụng di động: Xây dựng thành công ứng dụng đặt đồ ăn hoàn chỉnh với 17 màn hình chức năng phía khách hàng và 8 màn hình quản trị Admin trên nền tảng Flutter.
  • Làm chủ hạ tầng Backend độc lập: Thiết kế và vận hành hệ thống API RESTful tự xây dựng trên nền Node.js kết nối cơ sở dữ liệu MongoDB, xử lý toàn vẹn dữ liệu JSON/BSON mà không phụ thuộc vào các dịch vụ BaaS đóng sẵn.
  • Tích hợp giải pháp thanh toán và logistics: Tích hợp thành công cổng thanh toán Ví điện tử MoMo (bảo mật TLS, quét mã QR/Token) và tính năng vận chuyển với API Giao Hàng Nhanh (GHN).
  • Tối ưu hóa hiệu năng và kiến trúc: Ứng dụng thành công GetX MVC, loại bỏ hiện tượng rebuild widget không cần thiết, áp dụng lazy loading (ListView.builder, SliverList) và đảm bảo giao diện thích ứng mượt mà trên dải thiết bị đa dạng (bao gồm điện thoại màn hình gập).

Đóng góp của đề tài

  • Đóng góp một giải pháp tham khảo hoàn chỉnh về quy trình xây dựng ứng dụng thương mại điện tử F&B đa nền tảng kết hợp giữa Flutter, GetX và MongoDB.
  • Cung cấp tài liệu kỹ thuật chuẩn mực từ khâu phân tích yêu cầu (Usecase, Sequence Diagram, Class Diagram) đến đặc tả chi tiết API và hiện thực mã nguồn.

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

Hạn chế được ghi nhận

  1. Trải nghiệm người dùng và Cá nhân hóa: Chưa tích hợp hệ thống gợi ý sản phẩm thông minh (AI Recommendation System), thiếu tính năng đăng xuất đồng bộ khỏi tất cả thiết bị (log out all devices) và chưa có quy trình thanh toán một bước (One-step Checkout).
  2. Tính toán cước phí vận chuyển: Ứng dụng hiện mới tính phí giao hàng dựa trên cân nặng sản phẩm, chưa tự động ước tính cước phí chính xác theo khoảng cách địa lý thực tế đến địa chỉ nhận hàng.
  3. Dịch vụ hậu mãi: Chưa hỗ trợ các chức năng phản hồi sau bán hàng như đổi/trả món, đánh giá chất lượng sản phẩm, thiếu tính năng Live chat/Chatbot tự động và Trung tâm trợ giúp trực tuyến (FAQs).
  4. Khả năng tùy biến và Quốc tế hóa: Giao diện mới chỉ hỗ trợ tiếng Việt (chưa hỗ trợ đa ngôn ngữ) và chỉ có hai chế độ Dark/Light Mode cơ bản, chưa cho phép tùy biến theme linh hoạt.
  5. Hạ tầng và Kỹ thuật: Chưa hỗ trợ chế độ ngoại tuyến (Offline Mode) và cơ chế đồng bộ lại dữ liệu; chưa tích hợp công cụ giám sát hiệu năng tập trung (Performance Monitoring) và hệ thống ghi log bảo mật chuyên sâu.

Hướng phát triển trong tương lai

  • Hoàn thiện các chức năng cơ bản còn thiếu: One-step checkout, đăng xuất toàn bộ thiết bị, theo dõi đơn hàng thời gian thực (real-time tracking) và xử lý hoàn/hủy đơn.
  • Tích hợp công nghệ tiên tiến: Động cơ gợi ý sản phẩm dựa trên AI, công nghệ thực tế tăng cường (AR Shopping/Virtual Try-On), tính năng Livestream bán hàng và Chatbot tư vấn khách hàng tự động.
  • Mở rộng thị trường: Hỗ trợ giao diện đa ngôn ngữ (tiếng Anh, tiếng Trung, tiếng Hàn), triển khai khuyến mãi theo định vị địa lý (Geo-Promotion) và hệ thống tích điểm thưởng (Gamification & Loyalty System).
  • Nâng cấp hạ tầng kỹ thuật: Chuyển đổi kiến trúc backend sang mô hình Microservices, tích hợp xác thực chuẩn OAuth 2.0, bổ sung tầng lưu đệm Caching (Redis/Memcached) và triển khai hệ thống giám sát tải (Prometheus, Grafana).

Giá trị tham khảo

Báo cáo đồ án là tài liệu học thuật và kỹ thuật giá trị dành cho:

  • Sinh viên ngành Công nghệ Thông tin, Kỹ thuật Phần mềm: Tham khảo phương pháp phân tích thiết kế hệ thống phần mềm di động, cách lập tài liệu đặc tả usecase, sequence diagram và class diagram theo chuẩn mực học thuật.
  • Lập trình viên Flutter: Học hỏi giải pháp xây dựng kiến trúc ứng dụng kết hợp GetX State Management, mô hình MVC, tối ưu giao diện Responsive thích ứng với điện thoại màn hình gập và kỹ thuật xử lý REST API với backend MongoDB tùy chỉnh.
  • Các nhóm phát triển ứng dụng F&B/Thương mại điện tử: Tham khảo quy trình xây dựng giỏ hàng động, xử lý logic voucher khuyến mãi trên cơ sở dữ liệu NoSQL và tích hợp các dịch vụ bên thứ ba (Ví MoMo, GHN).

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

1. Đồ án sử dụng giải pháp nào để quản lý trạng thái (State Management) trong Flutter và ưu điểm chính là gì?
Đồ án sử dụng framework GetX theo mô hình MVC kết hợp Reactive Programming. GetX cho phép cập nhật giao diện tự động khi dữ liệu thay đổi thông qua các biến quan sát (.obs) và widget Obx mà không cần gọi hàm setState() hay truyền BuildContext. Giải pháp này giúp tách biệt hoàn toàn giữa logic nghiệp vụ (GetxController) và giao diện (View), giảm thiểu việc render lại toàn bộ cây widget, tiết kiệm bộ nhớ và tích hợp sẵn cơ chế điều hướng gọn gàng (Get.to(), Get.offAll()) cùng Dependency Injection (Get.put()).

2. Tại sao nhóm tác giả lựa chọn tự phát triển Backend API riêng và cơ sở dữ liệu MongoDB thay vì sử dụng các dịch vụ BaaS như Firebase?
Việc tự xây dựng hệ thống Backend API (trên nền Node.js) và cơ sở dữ liệu NoSQL MongoDB giúp nhóm phát triển toàn quyền kiểm soát cấu trúc hệ thống, luồng dữ liệu, chính sách bảo mật, quy tắc phân quyền và tối ưu hóa truy vấn dữ liệu dạng tài liệu BSON lồng nhau. Hướng đi này giúp hệ thống không bị giới hạn bởi các ràng buộc tính năng hoặc chi phí mở rộng của các nền tảng BaaS đóng gói sẵn, đồng thời tạo tiền đề kỹ thuật để sẵn sàng chuyển đổi sang kiến trúc Microservices và đóng gói Docker container trong tương lai.

3. Hệ thống hiện thực những phương thức thanh toán và tính cước vận chuyển nào?
Hệ thống hiện hỗ trợ hai phương thức thanh toán chính: Thanh toán tiền mặt khi nhận hàng (COD) và Thanh toán qua Ví điện tử MoMo (xác thực an toàn qua mã QR hoặc ứng dụng MoMo trên thiết bị bằng giao thức bảo mật TLS). Về mặt vận chuyển, ứng dụng liên kết với API của Giao Hàng Nhanh (GHN) và áp dụng mô hình tính cước phí giao hàng dựa trên trọng lượng hàng hóa.

4. Ứng dụng đã xử lý bài toán tối ưu giao diện trên các thiết bị phần cứng đặc thù như thế nào?
Nhóm tác giả đã áp dụng triết lý thiết kế responsive thông qua các widget LayoutBuilder, MediaQuery kết hợp nguyên tắc breakpoint layout và các widget co giãn tỷ lệ (Flexible, Expanded). Ứng dụng được kiểm thử trên cả máy ảo và thiết bị vật lý, đặc biệt hỗ trợ khả năng tái cấu trúc bố cục linh hoạt trên các dòng điện thoại gập (như Samsung Galaxy Z Fold) bằng cách tự động chuyển đổi từ danh sách đơn sang lưới hoặc hiển thị song song theo mô hình master-detail tùy theo trạng thái gập/mở của màn hình.

5. Những hạn chế lớn nhất về mặt trải nghiệm khách hàng và dịch vụ hậu mãi mà đồ án ghi nhận là gì?
Hệ thống hiện vẫn còn thiếu các chức năng hỗ trợ khách hàng sau bán hàng như: yêu cầu hoàn/đổi hàng, đánh giá chất lượng sản phẩm, trung tâm trợ giúp trực tuyến (FAQs/hướng dẫn đổi trả) và hệ thống Live chat/Chatbot tự động. Ngoài ra, ứng dụng chưa có hệ thống AI gợi ý món ăn theo hành vi người dùng, chưa hỗ trợ quy trình One-step Checkout và chưa có tính năng đăng xuất đồng bộ trên tất cả các thiết bị đang đăng nhập.

Kết luận

Đồ án "Ứng dụng bán đồ ăn Burger King với Flutter" của nhóm sinh viên Trường Đại học Ngoại ngữ - Tin học TP. Hồ Chí Minh đã hiện thực hóa thành công một hệ thống thương mại điện tử di động hoàn chỉnh từ giao diện người dùng đến bảng quản trị backend. Bằng việc làm chủ công nghệ đa nền tảng Flutter kết hợp GetX MVC và cơ sở dữ liệu NoSQL MongoDB tự xây dựng, công trình đã giải quyết hiệu quả bài toán đặt hàng, thanh toán và tối ưu hóa giao diện thích ứng đa thiết bị. Mặc dù vẫn còn một số hạn chế về dịch vụ hậu mãi và các tính năng AI nâng cao, đồ án là một tài liệu kỹ thuật có cấu trúc chặt chẽ, mang lại giá trị tham khảo thiết thực cho việc nghiên cứu và phát triển phần mềm di động hiện đại.