Chuyển đến nội dung chính
Case Study tiêu biểu

Phát Triển Ứng Dụng Di Động Quản Lý Công Việc (Flutter & Firebase)

Thời gian
4 tuần
Phạm vi
Mobile App
Kiến trúc
MVVM / Clean
Công nghệ
Flutter, Firebase

1. Bài toán khách hàng & Yêu cầu đề tài

Các đề tài phát triển ứng dụng di động (Mobile App) đòi hỏi sinh viên giải quyết được bài toán về đồng bộ hóa dữ liệu thời gian thực (Real-time synchronization), quản lý trạng thái ứng dụng tốt và tích hợp các tính năng hệ thống như thông báo đẩy (Push Notifications) và bộ nhớ đệm offline.

  • Yêu cầu chức năng: Đăng nhập/Đăng ký xác thực người dùng, tạo và phân công công việc, bộ lọc danh mục theo trạng thái (To-Do, In-Progress, Done), tính năng nhắc hẹn thông qua Local Notification.
  • Yêu cầu phi chức năng: Trải nghiệm người dùng mượt mà, lưu trữ dữ liệu ngoại tuyến (Offline cache) khi không có mạng và tự động đồng bộ khi kết nối trở lại.

2. Giải pháp & Kiến trúc hệ thống

Ứng dụng di động được xây dựng bằng cấu trúc **MVVM (Model-View-ViewModel)** giúp tách biệt logic xử lý dữ liệu và phần hiển thị giao diện, giúp code sạch và dễ bảo trì:

Mô hình luồng MVVM:

[UI View (Flutter Screen)] <--- (Notify / Listen) ---> [ViewModel (Provider / State)]
|
v (Call Repository)
[Firebase SDK / Cloud Firestore] <---> [Local SQFlite / Cache Store]

Sử dụng thư viện **Provider** làm State Management chính để lắng nghe sự thay đổi của danh sách công việc mà không làm render lại toàn bộ màn hình, tối ưu hóa mức sử dụng RAM và hiệu năng pin trên thiết bị di động.

3. Công nghệ sử dụng

Mobile Stack

Flutter SDK (Dart), Material Design 3, Provider để quản lý trạng thái.

Backend Services

Firebase Authentication, Cloud Firestore (Real-time DB), Firebase Cloud Messaging (FCM).

Local Storage

Shared Preferences (cài đặt nhanh), SQFlite làm cơ sở dữ liệu cache ngoại tuyến.

4. Kết quả & Demo

Sản phẩm được tối ưu hóa mượt mà, sẵn sàng build ra tệp APK/IPA để cài đặt chạy demo thực tế trên thiết bị của hội đồng:

Giao diện di động

Bảng dashboard danh sách công việc trực quan, vuốt để xóa, nhấn giữ để kéo thả đổi trạng thái công việc.

  • Đồng bộ hóa dữ liệu thời gian thực tức thì với độ trễ tối thiểu nhờ Firebase listener.
  • Đã cấu hình chạy được trên cả trình giả lập Android/iOS và thiết bị thật.
  • Tài liệu đi kèm hướng dẫn chi tiết sơ đồ lớp (Class Diagram) và sơ đồ tuần tự (Sequence Diagram) chuẩn chỉ.

Bạn muốn tham khảo giải pháp kiến trúc hoặc cần mentor hỗ trợ đề tài tương tự?