Giới thiệu dự án

Kỹ năng nghe (Listening Comprehension) trong kỳ thi chuẩn hóa quốc tế TOEIC luôn là rào cản lớn đối với sinh viên khối ngành kỹ thuật và người đi làm. Theo các khảo sát thị trường giáo dục tại Việt Nam (như số liệu nghiên cứu từ Q&Me), hơn 78% người học ngoại ngữ trong độ tuổi 18–44 ưu tiên sử dụng thiết bị di động để tự học nhờ tính linh hoạt. Tuy nhiên, phần lớn các ứng dụng hiện nay trên Google Play Store còn tồn tại nhiều nhược điểm: giao diện lỗi thời, lạm dụng quảng cáo gián đoạn trải nghiệm nghe, thiếu các phương pháp học bổ trợ chuyên sâu (như nghe chép chính tả/điền khuyết, học phát âm song ngữ) và phụ thuộc hoàn toàn vào kết nối mạng liên tục mà không có cơ chế lưu trữ cục bộ tối ưu.

Đồ án tốt nghiệp "Xây dựng ứng dụng luyện nghe TOEIC trên Android" được thực hiện bởi nhóm tác giả Phạm Nhật Duy và Nguyễn Đình Thái (Khoa Công nghệ Thông tin, Trường Đại học Sư phạm Kỹ thuật TP.HCM – HCMUTE) dưới sự hướng dẫn của ThS. Nguyễn Trần Thi Văn. Đề tài tập trung giải quyết triệt để bài toán tự học kỹ năng nghe TOEIC thông qua một kiến trúc phần mềm di động hiện đại, kết hợp quản trị nội dung linh hoạt qua Web Service.

flowchart LR
    A[Người dùng / Học viên] -->|Tương tác UI/UX| B[Android Client App]
    B -->|Local Storage| C[Room Database / SQLite]
    B -->|RESTful API / JSON| D[Web Service / PHP Backend]
    D -->|Quản trị dữ liệu đề thi| E[MySQL Database]
    F[Người quản trị] -->|CMS Web Interface| D

Mục tiêu của đề tài

  1. Thiết kế và phát triển ứng dụng di động Android chuyên sâu: Cung cấp đầy đủ các phần thi nghe TOEIC tiêu chuẩn (Part 1: Hình ảnh, Part 2: Hỏi – Đáp, Part 3: Đoạn hội thoại, Part 4: Bài nói ngắn).
  2. Tích hợp các module bổ trợ phản xạ ngôn ngữ: Xây dựng tính năng "Luyện nghe điền khuyết" (Dictation), học từ vựng song ngữ Anh – Việt và trắc nghiệm qua phát âm.
  3. Triển khai kiến trúc phần mềm chuẩn công nghiệp: Ứng dụng mô hình MVVM (Model-View-ViewModel), kết hợp thư viện Room Persistence Library để lưu trữ lịch sử kiểm tra offline và Retrofit để đồng bộ dữ liệu mạng.
  4. Xây dựng hệ thống quản trị nội dung (Web CMS): Phát triển website quản trị trên nền tảng PHP & MySQL, cho phép người quản trị thêm, sửa, xóa bộ đề, câu hỏi, file âm thanh và hình ảnh một cách linh hoạt.

Phạm vi và giới hạn

  • Phạm vi chức năng: Tập trung chuyên sâu vào kỹ năng Luyện nghe (Part 1 đến Part 4), quản lý lịch sử làm bài, học từ vựng và chia sẻ tài liệu ôn tập.
  • Môi trường vận hành: Thiết bị di động chạy hệ điều hành Android 6.0 (API Level 23) trở lên; hệ thống máy chủ lưu trữ Web Hosting hỗ trợ PHP 7.x và MySQL 5.7.
  • Giới hạn: Chưa bao gồm các phần thi Đọc hiểu (Part 5 – Part 7), Viết và Nói; chưa hỗ trợ nền tảng iOS.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Khảo sát các giải pháp luyện thi TOEIC phổ biến trên thị trường di động cho thấy rõ các khoảng trống kỹ thuật và trải nghiệm người dùng:

Tên ứng dụng Ưu điểm Nhược điểm Khoảng trống công nghệ (Gap)
TOEIC Số lượng đề đa dạng, UI trực quan Thiếu tính năng học từ vựng theo ngữ cảnh; bắt buộc trả phí để mở khóa đề và tắt quảng cáo Không có module nghe điền khuyết; phụ thuộc tải từng câu đơn lẻ gây trễ
TOEIC's Hỗ trợ chia cấp độ rõ ràng; cho phép tải đề offline Giao diện thô cứng; mật độ quảng cáo dày đặc gây gián đoạn luồng nghe Thiếu cơ chế cache đồng bộ dữ liệu thông minh; trải nghiệm UI/UX kém
TOEIC TEST Có bài tập đọc kết hợp; tích hợp mini-game nhắc nhở Giao diện phân mảnh; quảng cáo tràn màn hình (interstitial ads) thường xuyên Không tối ưu hóa kiến trúc đa luồng, dễ gây giật khung hình (frame drop) khi phát audio

Ma trận ưu tiên yêu cầu người dùng (MoSCoW)

  • Must have (Bắt buộc có): Làm bài kiểm tra nghe Part 1–4; bộ điều khiển phát audio luồng; tính năng luyện nghe điền khuyết có gợi ý; lưu kết quả làm bài offline bằng cơ sở dữ liệu nội bộ.
  • Should have (Nên có): Học từ vựng trắc nghiệm song ngữ Anh – Việt; trắc nghiệm qua phát âm; tra cứu mẹo làm bài thi; hệ thống quản trị Web CMS cho admin.
  • Could have (Có thể có): Tính năng chia sẻ tài liệu ôn tập qua email; thống kê phân tích điểm số theo thời gian.
  • Won't have (Chưa thực hiện): Chấm điểm phát âm tự động bằng AI; hỗ trợ làm bài thi trắc nghiệm phần Reading.

Thiết kế hệ thống

Hệ thống được thiết kế theo mô hình Client-Server chuẩn RESTful API, trong đó ứng dụng di động áp dụng kiến trúc MVVM (Model-View-ViewModel) nhằm phân tách độc lập tầng giao diện và logic xử lý dữ liệu.

+----------------------------------------------------------------+
|                        ANDROID CLIENT                          |
|  +----------------------------------------------------------+  |
|  |             View (Activities / Fragments / XML)          |  |
|  +-----------------------------+----------------------------+  |
|                                | Data Binding / Observers      |
|  +-----------------------------v----------------------------+  |
|  |                        ViewModel                         |  |
|  +-----------------------------+----------------------------+  |
|                                | Requests / LiveData Updates   |
|  +-----------------------------v----------------------------+  |
|  |                    Repository Pattern                    |  |
|  +----------------+--------------------------+--------------+  |
|                   |                          |                 |
|       Local Sync  |              Remote Sync |                 |
|  +----------------v---------+  +-------------v--------------+  |
|  | Room DB (SQLite Engine)  |  | Retrofit 2.5 + GSON Client |  |
|  | - HistoryDao             |  +-------------+--------------+  |
|  | - AppDatabase            |                |                 |
+--+--------------------------+----------------|-----------------+
                                               | HTTPS / JSON
                                 +-------------v--------------+
                                 |    Web Server (PHP/REST)   |
                                 +-------------+--------------+
                                               | SQL Queries
                                 +-------------v--------------+
                                 |     MySQL Database Host    |
                                 +----------------------------+

Technology Stack và phiên bản cụ thể

  • Android Client: Java 8, Android SDK 28 (Target Android 9.0, tương thích từ Android 6.0+), Android Studio 3.4+.
  • Data Persistence: Room Persistence Library v2.1.0, SQLite v3.22.
  • Network & Parsing: Retrofit v2.5.0, OkHttp v3.12.0, GSON v2.8.5.
  • Media & Image Loading: Glide v4.9.0, Android MediaPlayer API.
  • Backend & CMS: PHP v7.2, Apache 2.4, Bootstrap v4.3, MySQL v5.7.

Thiết kế cơ sở dữ liệu (Database Schema)

Hệ thống sử dụng cơ sở dữ liệu quan hệ trên MySQL Server gồm các bảng cốt lõi:

  1. TaiKhoan (id_user, username, password, email, role_id): Quản lý người dùng và quản trị viên.
  2. BoDe (id_bode, ten_bode, mo_ta): Chứa nhóm các bộ đề ôn luyện.
  3. DeThi (id_dethi, id_bode, ten_dethi, thoiluong): Danh sách bài thi cụ thể.
  4. PhanThi (id_phan, id_dethi, ten_phan, loai_part): Phân chia từ Part 1 đến Part 4.
  5. CauHoi (id_cauhoi, id_phan, noidung_cauhoi, audio_url, image_url, goiy_dienkhuyet): Lưu thông tin đa phương tiện và nội dung câu hỏi.
  6. CauTraLoi (id_dapan, id_cauhoi, noidung_dapan, is_correct): Danh sách 3-4 đáp án lựa chọn cho từng câu hỏi.

Trên Android Client, Room Database quản lý bảng LichSuLamBai:

  • id (INTEGER, Primary Key, AutoGenerate)
  • dethi_id (INTEGER)
  • ten_dethi (TEXT)
  • diem_so (INTEGER)
  • tong_cau_dung (INTEGER)
  • ngay_thuchien (TEXT/LONG)

Đặc tả API Endpoints (RESTful Service)

Method Endpoint URI Tham số Mô tả chức năng
GET /api/get_bode.php None Trả về danh sách tất cả các bộ đề thi dạng JSON
GET /api/get_dethi.php id_bode (int) Lấy danh sách đề thi thuộc về một bộ đề xác định
GET /api/get_chitiet_part.php id_dethi (int), part (int) Trích xuất toàn bộ câu hỏi, file audio, hình ảnh và đáp án theo Part
POST /api/login_admin.php username, password Xác thực người dùng quản trị vào hệ thống Web CMS
POST /api/insert_question.php FormData (Text + Audio + Image) Upload dữ liệu câu hỏi mới từ trang quản trị Web

Phương pháp luận (Methodology) và Kế hoạch thực hiện

Dự án được thực hiện theo quy trình phát triển phần mềm lặp (Iterative / Agile rút gọn) trong khung thời gian 15 tuần (từ ngày 18/03/2019 đến 30/06/2019):

  • Tuần 1 - 2: Nghiên cứu lý thuyết Android, Room Database, cấu trúc JSON, thiết lập môi trường Web Hosting và PHP Backend.
  • Tuần 3 - 5: Xây dựng kiến trúc Room ORM, cấu hình Retrofit, thiết kế schema MySQL, hoàn thiện module trắc nghiệm từ vựng song ngữ.
  • Tuần 6 - 8: Xây dựng giao diện Web CMS quản lý đề thi; nạp dữ liệu đa phương tiện (âm thanh chuẩn MP3, hình ảnh minh họa bài nghe).
  • Tuần 9 - 10: Lập trình module "Luyện nghe điền khuyết", xử lý thuật toán so khớp chuỗi gợi ý; tích hợp tính năng chia sẻ đề qua email.
  • Tuần 11 - 12: Hoàn thiện toàn diện Web CMS (CRUD đề thi, câu hỏi); tinh chỉnh giao diện Material Design trên Android.
  • Tuần 13 - 15: Kiểm thử tích hợp (Integration Test), tối ưu hiệu năng, sửa lỗi (Bug fixing) và hoàn thiện báo cáo khoa học.

Implementation và kết quả

Quy trình phát triển và Kỹ thuật cốt lõi

1. Định nghĩa Data Access Object (DAO) với Room Database

Hệ thống sử dụng Room Persistence Library để trừu tượng hóa các câu lệnh SQL thuần, đảm bảo kiểm tra cú pháp tại thời điểm biên dịch (compile-time verification):

@Dao
public interface HistoryDao {
    @Query("SELECT * FROM history_table ORDER BY ngay_thuchien DESC")
    List<HistoryEntity> getAllHistories();

    @Insert(onConflict = OnConflictStrategy.REPLACE)
    void insertHistory(HistoryEntity history);

    @Delete
    void deleteHistory(HistoryEntity history);

    @Query("DELETE FROM history_table")
    void clearAllHistories();
}

2. Xây dựng Network Service Interface với Retrofit

Giao tiếp bất đồng bộ qua mạng được tối ưu hóa bằng Retrofit, tự động chuyển đổi chuỗi JSON từ PHP Backend thành Java POJO thông qua GSON Converter:

public interface ApiService {
    @GET("get_bode.php")
    Call<List<BoDeModel>> getDanhSachBoDe();

    @FormUrlEncoded
    @POST("get_chitiet_part.php")
    Call<List<CauHoiModel>> getChiTietPhanThi(
        @Field("id_dethi") int idDeThi,
        @Field("part_number") int partNumber
    );
}

3. Thuật toán kiểm tra và gợi ý Luyện nghe điền khuyết

Module luyện nghe điền khuyết áp dụng cơ chế phân tích văn bản (Tokenization & String Normalization) để đối soát từ người dùng nhập với từ khóa gốc:

public class DictationEvaluator {
    public static boolean evaluateAnswer(String userInput, String correctAnswer) {
        if (userInput == null || correctAnswer == null) return false;
        String cleanInput = userInput.trim().toLowerCase().replaceAll("[^a-zA-Z0-9]", "");
        String cleanTarget = correctAnswer.trim().toLowerCase().replaceAll("[^a-zA-Z0-9]", "");
        return cleanInput.equals(cleanTarget);
    }

    public static String generateHint(String word, int revealedLettersCount) {
        StringBuilder hint = new StringBuilder();
        for (int i = 0; i < word.length(); i++) {
            if (i < revealedLettersCount) {
                hint.append(word.charAt(i)).append(" ");
            } else {
                hint.append("_ ");
            }
        }
        return hint.toString().trim();
    }
}

Kiểm thử và Đánh giá hiệu năng

Hệ thống đã trải qua 56 testcase chi tiết, bao quát toàn bộ các luồng nghiệp vụ: khởi tạo Activity, tải dữ liệu mạng, quản lý bộ nhớ đệm audio, tính điểm trắc nghiệm và thao tác CRUD trên Web CMS.

+---------------------------------------------------------------------+
|                      KẾT QUẢ THỰC THI KIỂM THỬ                      |
+--------------------------+---------------+---------------+----------+
| Hạng mục kiểm thử        | Số testcase   | Đạt (Passed)  | Tỷ lệ    |
+--------------------------+---------------+---------------+----------+
| Giao diện & Navigation   | 14            | 14            | 100%     |
| Kết nối API & Parse JSON | 12            | 12            | 100%     |
| Media Player & Dictation | 15            | 15            | 100%     |
| Room Database (Offline)  | 8             | 8             | 100%     |
| Web CMS Admin Functions  | 7             | 7             | 100%     |
+--------------------------+---------------+---------------+----------+
| TỔNG CỘNG                | 56            | 56            | 100%     |
+--------------------------+---------------+---------------+----------+

Thông số kỹ thuật đo lường (Performance Benchmarks)

  • Thời gian phản hồi API trung bình: 185ms trên mạng Wi-Fi và 240ms trên kết nối 4G LTE.
  • Độ trễ khởi tạo và phát Audio (Buffering Latency): Dưới 150ms đối với các đoạn hội thoại Part 3 và Part 4 (chuẩn bit rate 128 kbps).
  • Tốc độ truy xuất dữ liệu cục bộ từ Room DB: ~8ms cho tác vụ đọc 100 bản ghi lịch sử thi.
  • Mức độ tiêu thụ bộ nhớ RAM ứng dụng: Giao động ổn định từ 42MB đến 68MB trong suốt quá trình phát audio và render ảnh chất lượng cao nhờ cơ chế bộ nhớ đệm đa tầng của thư viện Glide.

Đổi mới và đóng góp

  1. Tích hợp module Dictation (Nghe điền khuyết) tương tác cao: Thay vì chỉ cung cấp hình thức chọn đáp án A-B-C-D đơn thuần, ứng dụng cung cấp chế độ gõ từ trực tiếp theo từng phân đoạn âm thanh kết hợp gợi ý ký tự, giúp tăng cường khả năng nhận diện âm thanh thực tế của người học lên 35% so với cách học thụ động.
  2. Kiến trúc dữ liệu Hybrid (Kết hợp Cloud REST API & Local Room ORM): Tách biệt hoàn toàn việc phân phối nội dung đề thi từ máy chủ đám mây và việc lưu vết tiến độ học tập trên máy người dùng, đảm bảo ứng dụng hoạt động mượt mà, không giật lag ngay cả khi mạng chập chờn.
  3. Giảm thiểu độ trễ tải nội dung bằng GSON Stream & Asynchronous Task: Tối ưu hóa thời gian phân tích cú pháp chuỗi JSON và nạp dữ liệu bộ đề nhanh hơn 42% so với phương pháp parse JSONObject thủ công truyền thống.
  4. Hệ thống quản trị nội dung mở (Open-ended CMS): Giúp người quản trị dễ dàng cập nhật ngân hàng câu hỏi mới mà không cần phải phát hành bản cập nhật APK mới lên kho ứng dụng.

Ứng dụng thực tế và triển khai

Kịch bản sử dụng thực tế (Real-world Scenarios)

  • Tự ôn tập di động cho sinh viên: Người học có thể tận dụng thời gian di chuyển trên xe buýt hoặc các khoảng thời gian rảnh rỗi để luyện nhanh 1 phần nghe Part 1 (6 câu) hoặc Part 2 (25 câu) với giao diện trực quan, tai nghe và phản hồi kết quả tức thì kèm giải thích đáp án.
  • Công cụ bổ trợ giảng dạy cho giảng viên/trung tâm: Giảng viên sử dụng trang quản trị Web CMS để biên soạn các bài test mini theo từng tuần, học viên mở ứng dụng Android để tải đề về làm và kiểm tra kết quả ngay tại lớp học.
sequenceDiagram
    autonumber
    actor User as Học viên
    participant App as Android App (View/VM)
    participant Room as Local Room DB
    participant API as Retrofit / REST API
    participant Server as Web Server & MySQL

    User->>App: Mở ứng dụng & chọn Đề thi Part 1-4
    App->>API: Gửi request lấy nội dung đề thi
    API->>Server: Query câu hỏi, audio URL, image URL
    Server-->>API: Trả về chuỗi JSON dữ liệu
    API-->>App: Parse thành Model Objects & hiển thị
    User->>App: Nghe Audio & chọn đáp án / Điền từ
    User->>App: Nhấn "Submit" nộp bài
    App->>App: Tính điểm & hiển thị chi tiết câu đúng/sai
    App->>Room: Lưu lịch sử làm bài (Điểm, ngày giờ)
    Room-->>App: Xác nhận ghi thành công

Chiến lược triển khai và Yêu cầu hạ tầng

  • Môi trường Server: Máy chủ Linux (Ubuntu Server 18.04 LTS / CentOS 7), cài đặt ngăn xếp LAMP (Linux, Apache, MySQL, PHP) với dung lượng lưu trữ tối thiểu 20GB để lưu trữ tệp âm thanh MP3 và hình ảnh đề thi.
  • Triển khai Client: Đóng gói tệp tin APK đã ký chữ ký số (Signed APK), tối ưu hóa ProGuard để làm rối mã nguồn và giảm kích thước tệp cài đặt xuống dưới 20MB.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Ứng dụng hiện chỉ hỗ trợ các thiết bị chạy hệ điều hành Android, chưa có phiên bản chạy trên nền tảng iOS.
  • Tính năng nghe điền khuyết yêu cầu kết nối mạng để stream các đoạn audio chất lượng cao, chưa hỗ trợ chế độ tải trọn gói toàn bộ âm thanh về bộ nhớ trong (Full Offline Audio Sync).
  • Ngân hàng câu hỏi trong cơ sở dữ liệu ban đầu còn giới hạn ở các bộ đề mẫu cơ bản.

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

  • Ứng dụng Trí tuệ nhân tạo (AI & NLP): Tích hợp công nghệ nhận dạng giọng nói (Speech-to-Text) và công nghệ chấm phát âm trực tiếp để người học luyện kỹ năng nói (TOEIC Speaking).
  • Thuật toán lặp lại ngắt quãng (Spaced Repetition System - SRS): Tự động nhắc nhở ôn luyện các từ vựng người học thường xuyên trả lời sai theo chu kỳ khoa học.
  • Chuyển đổi đa nền tảng: Phát triển lại ứng dụng trên nền tảng Flutter hoặc Kotlin Multiplatform (KMP) để hỗ trợ đồng thời cả Android và iOS từ một mã nguồn duy nhất.

Đối tượng hưởng lợi

  • Học viên và Sinh viên: Tiếp cận công cụ tự luyện nghe hoàn toàn miễn phí, bám sát cấu trúc đề thi thực tế, cải thiện phản xạ phát âm và vốn từ vựng chuyên ngành mà không phải chịu chi phí đắt đỏ tại các trung tâm.
  • Lập trình viên di động (Android Developers): Cung cấp mã nguồn tham khảo mẫu mực về việc triển khai kiến trúc MVVM, kỹ thuật kết hợp Room Database và Retrofit, cũng như cách thiết kế giao diện theo chuẩn Material Design trên Android Studio.
  • Trung tâm đào tạo và Doanh nghiệp: Nắm bắt mô hình triển khai hệ thống E-learning gọn nhẹ, chi phí vận hành thấp thông qua mô hình Web Service điều khiển ứng dụng di động.
  • Nhà nghiên cứu giáo dục công nghệ: Tài liệu đối sánh thực nghiệm về hiệu quả của phương pháp nghe điền khuyết (Dictation) đối với việc nâng cao điểm số chuẩn hóa TOEIC.

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

1. Yêu cầu kỹ thuật tối thiểu của thiết bị di động để cài đặt ứng dụng là gì?

Thiết bị cần chạy hệ điều hành Android phiên bản 6.0 (Marshmallow - API Level 23) trở lên, bộ nhớ RAM tối thiểu 1.5GB và còn trống ít nhất 50MB dung lượng bộ nhớ trong để cài đặt ứng dụng và lưu trữ dữ liệu cache.

2. Hệ thống có khả năng mở rộng (Scalability) như thế nào khi lượng người dùng tăng đột biến?

Phần backend xây dựng trên chuẩn RESTful API không lưu trạng thái (Stateless), cho phép dễ dàng mở rộng theo chiều ngang (Horizontal Scaling) bằng cách đặt máy chủ phía sau bộ cân bằng tải Nginx (Load Balancer). Tệp tĩnh (audio MP3, hình ảnh) có thể được chuyển sang lưu trữ trên các dịch vụ đám mây chuyên dụng như Amazon S3 hoặc Cloudflare R2 kết hợp mạng phân phối nội dung CDN để giảm 90% tải cho máy chủ chính.

3. Làm thế nào để đồng bộ dữ liệu giữa Web CMS và ứng dụng Android?

Mọi thay đổi trên Web CMS (thêm đề mới, sửa câu hỏi) được ghi trực tiếp vào cơ sở dữ liệu MySQL. Khi người dùng mở ứng dụng Android, thư viện Retrofit sẽ tự động gửi yêu cầu HTTP GET để truy xuất dữ liệu mới nhất dưới định dạng JSON. Dữ liệu sau đó được parse và cập nhật trực tiếp lên giao diện người dùng.

4. Hệ thống cần bảo trì định kỳ những hạng mục nào?

Cần theo dõi dung lượng lưu trữ trên Web Hosting định kỳ, tối ưu hóa các chỉ mục (Indexes) trong cơ sở dữ liệu MySQL để duy trì tốc độ truy vấn dưới 50ms, đồng thời cập nhật chứng chỉ bảo mật SSL/TLS (HTTPS) cho domain API nhằm bảo đảm an toàn truyền tải dữ liệu.

5. Chi phí triển khai và thời gian hoàn vốn (ROI) ước tính?

Chi phí triển khai hệ thống ban đầu rất tiết kiệm: tên miền (~250.000 VNĐ/năm), gói Web Hosting cơ bản (~1.200.000 VNĐ/năm) và tài khoản Google Play Developer (phí 1 lần 25 USD). Đối với các trung tâm Anh ngữ, hệ thống giúp tiết kiệm hàng chục triệu đồng chi phí in ấn tài liệu và bản quyền phần mềm thương mại mỗi năm, mang lại điểm hòa vốn và sinh lời ngay trong 3-6 tháng đầu vận hành.


Kết luận

Đồ án tốt nghiệp "Xây dựng ứng dụng luyện nghe TOEIC trên Android" của sinh viên Phạm Nhật Duy và Nguyễn Đình Thái đã hoàn thành xuất sắc các mục tiêu đề ra, mang lại một giải pháp công nghệ toàn diện cho bài toán nâng cao năng lực ngoại ngữ của người học. Bằng việc kết hợp chặt chẽ giữa kiến trúc phần mềm di động hiện đại (MVVM, Room ORM, Retrofit) và hệ thống quản trị Web CMS linh hoạt, đề tài không chỉ khẳng định giá trị ứng dụng thực tiễn cao mà còn thể hiện tư duy kỹ thuật chuẩn mực trong quy trình phát triển phần mềm doanh nghiệp. Đây là nền tảng vững chắc để tiếp tục mở rộng thành một hệ sinh thái học tập thông minh đa nền tảng trong tương lai.