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

Trong bối cảnh xã hội hiện đại với nhịp độ sinh hoạt và làm việc diễn ra nhanh chóng, nhu cầu tối ưu hóa thời gian, quản lý lịch trình cá nhân và kiểm soát công việc hàng ngày trở thành yếu tố thiết yếu đối với nhiều nhóm đối tượng, từ sinh viên đến người đi làm. Sự phát triển mạnh mẽ của cuộc Cách mạng Công nghiệp 4.0 cùng với sự phổ cập của các thiết bị di động thông minh đã thúc đẩy xu hướng chuyển dịch từ các phương thức ghi chép truyền thống sang sử dụng các phần mềm ứng dụng chuyên biệt. Hệ điều hành Android, với thị phần áp đảo toàn cầu (báo cáo dẫn chứng vào quý 3 năm 2012 Android chiếm 75% thị phần điện thoại thông minh với khoảng 500 triệu thiết bị kích hoạt và 1,3 triệu lượt kích hoạt mỗi ngày), được lựa chọn làm nền tảng triển khai nhằm tiếp cận số lượng lớn người dùng.

Xuất phát từ thực tiễn trên, nhóm sinh viên thuộc Lớp 21CN5, Khoa Công nghệ Thông tin, Trường Đại học Kiến trúc Hà Nội (gồm các thành viên Trương Thịnh Phát, Định Đại Nhân, Nguyễn Việt Anh, Phùng Tiến Đạt dưới sự hướng dẫn của ThS. Phạm Trọng Tuấn) đã thực hiện đồ án môn học Thực tập chuyên môn 1 với đề tài: "Nghiên cứu và xây dựng ứng dụng quản lý lịch sinh hoạt và làm việc trên nền tảng Android" (hoàn thành tháng 10/2024).

Đồ án xác định 05 mục tiêu nghiên cứu và phát triển cụ thể:

  1. Phát triển ứng dụng quản lý thời gian hiệu quả: Hỗ trợ người dùng tạo lập, sắp xếp và kích hoạt cơ chế nhắc nhở cho các lịch trình công việc, sự kiện và sinh hoạt cá nhân.
  2. Nâng cao trải nghiệm người dùng (UX/UI): Thiết kế giao diện thân thiện, trực quan, tuân thủ nguyên tắc thiết kế Material Design nhằm tối ưu hóa thao tác trên thiết bị di động.
  3. Cung cấp tính năng đồng bộ và nhắc nhở thông minh: Tích hợp hệ thống thông báo đẩy của Android và định hướng kết nối API với các dịch vụ lịch phổ biến như Google Calendar.
  4. Tạo nền tảng mở rộng tính năng: Thiết lập kiến trúc phần mềm linh hoạt, sẵn sàng tích hợp các mô-đun nâng cao như phân tích thói quen sử dụng, gợi ý lịch trình và công nghệ trí tuệ nhân tạo (AI).
  5. Nâng cao kỹ năng lập trình Android: Rèn luyện phương pháp xử lý dữ liệu, thiết kế kiến trúc phần mềm (MVVM), làm việc với hệ quản trị cơ sở dữ liệu nhúng và tối ưu hóa hiệu suất ứng dụng.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Quy trình phân tích, thiết kế và lập trình ứng dụng di động quản lý thời gian; các kỹ thuật xử lý cơ sở dữ liệu SQLite, thiết kế giao diện theo nguyên tắc UI/UX trên Android.
  • Phạm vi nghiên cứu: Nền tảng hệ điều hành Android; các chức năng quản lý tác vụ (thêm, sửa, xóa, theo dõi, đánh giá hoạt động); cơ chế lưu trữ dữ liệu nội bộ (offline) kết hợp định hướng đồng bộ hóa đám mây (Firebase/Google Calendar API); kiểm thử trên môi trường giả lập và thiết bị Android thực tế.

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

1. Khung lý thuyết và công nghệ nền tảng

Đồ án tổng hợp và áp dụng các cơ sở lý thuyết chuyên ngành công nghệ phần mềm và lập trình di động:

  • Hệ điều hành Android: Tìm hiểu kiến trúc nền tảng dựa trên nhân Linux, vòng đời ứng dụng, các thành phần giao diện (Activity, Fragment, Layout XML, Widget) và bộ công cụ phát triển phần mềm Android SDK.
  • Ngôn ngữ lập trình Java: Khai thác các đặc tính hướng đối tượng (Kế thừa, Đa hình, Đóng gói, Trừu tượng), cơ chế quản lý bộ nhớ tự động (Garbage Collection), hỗ trợ đa luồng (Multithreading) và cơ chế "Viết một lần, chạy mọi nơi" (WORA) thông qua máy ảo Java (JVM), bộ phát triển Java (JDK) và môi trường thực thi (JRE).
  • Mô hình kiến trúc Model-View-ViewModel (MVVM): Phân tách hệ thống thành 3 tầng độc lập:
    • Model: Đại diện cho cấu trúc dữ liệu và logic nghiệp vụ (Activity, TrackedActivity, Rating).
    • View: Giao diện người dùng thể hiện qua các tệp XML trong thư mục res/layout và điều khiển hiển thị qua Activity/Fragment.
    • ViewModel: Thành phần trung gian xử lý luồng dữ liệu, quản lý trạng thái và liên kết dữ liệu giữa Model và View.
  • Lý thuyết thiết kế giao diện và trải nghiệm người dùng (UI/UX): Áp dụng các nguyên tắc cốt lõi gồm tính đơn giản (Simplicity), tính nhất quán (Consistency), tính khả dụng (Usability), tính khả thi (Feasibility), cùng cơ chế phản hồi (Feedback) và các xu hướng hiện đại (Minimalism, Touch-friendly, Responsive, Dark mode).
  • Hệ quản trị cơ sở dữ liệu SQLite: Khai thác hệ thống lưu trữ dữ liệu quan hệ cục bộ nhỏ gọn, hỗ trợ xử lý offline và cung cấp đầy đủ các thao tác CRUD (Create, Read, Update, Delete) thông qua lớp quản lý dữ liệu Database.

2. Phương pháp nghiên cứu và quy trình triển khai

Tác giả áp dụng quy trình phát triển phần mềm chuẩn hóa qua 6 giai đoạn:

  1. Nghiên cứu lý thuyết: Khảo sát tài liệu kỹ thuật về Android, Java, SQLite, Android Studio và phân tích chức năng của các ứng dụng quản lý lịch biểu tiêu biểu (Google Calendar).
  2. Phân tích yêu cầu: Thu thập và đặc tả chi tiết yêu cầu chức năng và yêu cầu phi chức năng từ góc nhìn người dùng.
  3. Thiết kế hệ thống và UI/UX: Xây dựng sơ đồ luồng dữ liệu (DFD), sơ đồ hoạt động (Activity Diagram), thiết kế lược đồ cơ sở dữ liệu quan hệ và phác thảo giao diện (Wireframe, Prototype).
  4. Triển khai mã nguồn: Lập trình giao diện với XML và hiện thực hóa logic điều khiển bằng Java trên môi trường Android Studio; cấu hình công cụ tự động hóa bản dựng Gradle.
  5. Kiểm thử ứng dụng: Thực hiện kiểm thử chức năng, kiểm thử giao diện trên nhiều độ phân giải màn hình và kiểm thử hiệu năng vận hành.
  6. Đánh giá và cải tiến: Phân tích kết quả thực nghiệm, khắc phục lỗi phát sinh và xác định lộ trình phát triển.

3. Nguồn dữ liệu

Dữ liệu sử dụng trong đồ án là dữ liệu cục bộ được tạo lập trực tiếp từ các thao tác nhập liệu của người dùng trên ứng dụng, được tổ chức và lưu trữ trên cơ sở dữ liệu SQLite nhúng tại bộ nhớ của thiết bị.


Thiết kế và triển khai hệ thống

1. Phân tích yêu cầu hệ thống

Đồ án phân loại rõ ràng các tiêu chí kỹ thuật cần đạt được:

  • Yêu cầu chức năng: Quản lý lịch trình và sự kiện (thêm, sửa, xóa, phân loại lịch cá nhân/công việc, chế độ xem ngày/tuần/tháng); quản lý tác vụ (theo dõi tiến độ, ghi chú); nhắc nhở và thông báo sự kiện; đánh giá và thống kê hiệu suất sử dụng; tích hợp đồng bộ dữ liệu và bảo mật quyền riêng tư.
  • Yêu cầu phi chức năng:
    • Hiệu suất: Thời gian phản hồi cho các tác vụ CRUD dưới 2 giây; tối ưu mức tiêu thụ tài nguyên (RAM, CPU, pin).
    • Tính khả dụng: Giao diện trực quan, dễ thao tác, hỗ trợ đa ngôn ngữ.
    • Độ tin cậy: Hoạt động ổn định, có cơ chế khôi phục trạng thái khi gặp sự cố.
    • Tính tương thích & Mở rộng: Tương thích đa phiên bản Android và các kích thước màn hình khác nhau; cấu trúc mã nguồn module hóa theo MVVM giúp dễ dàng bảo trì và nâng cấp.

2. Thiết kế cơ sở dữ liệu

Hệ thống sử dụng cơ sở dữ liệu SQLite gồm 3 bảng dữ liệu chính với các trường thuộc tính và ràng buộc được đặc tả như sau:

Bảng 1: Bảng ACTIVITIES (Lưu trữ chi tiết các hoạt động/lịch trình)

STT Tên thuộc tính Kiểu dữ liệu Ràng buộc / Khóa Mô tả
1 ID INTEGER NOT NULL, PK Khóa chính, định danh duy nhất của hoạt động
2 From TEXT NOT NULL Thời gian/Điểm xuất phát của hoạt động
3 To TEXT NOT NULL Thời gian/Điểm kết thúc của hoạt động
4 Activity TEXT NOT NULL Tên hoặc nội dung mô tả hoạt động

Bảng 2: Bảng RATINGS (Lưu trữ đánh giá hiệu suất theo ngày)

STT Tên thuộc tính Kiểu dữ liệu Ràng buộc / Khóa Mô tả
1 Date TEXT NOT NULL, PK Khóa chính, ngày thực hiện đánh giá
2 Rating INTEGER NOT NULL Điểm số đánh giá cho ngày tương ứng

Bảng 3: Bảng TRACKEDACTIVITIES (Lưu trữ danh mục hoạt động được theo dõi)

STT Tên thuộc tính Kiểu dữ liệu Ràng buộc / Khóa Mô tả
1 ID INTEGER NOT NULL, PK Khóa chính, định danh hoạt động theo dõi
2 Title TEXT NOT NULL Tiêu đề của hoạt động theo dõi
3 Color TEXT NOT NULL Mã màu hiển thị của hoạt động
4 Tags TEXT NULL Chuỗi nhãn phân loại hoạt động

3. Thiết kế giao diện người dùng

Giao diện ứng dụng được thiết kế theo cấu trúc màn hình chuyên biệt tương ứng với từng nhóm nghiệp vụ:

  • Màn hình chính & Quản lý lịch sinh hoạt (Hình 3.5): Hiển thị danh sách lịch trình công việc và học tập theo ngày.
  • Màn hình quản lý thời gian (Hình 3.6): Cung cấp giao diện trực quan hiển thị dòng thời gian và các mốc nhắc nhở sự kiện.
  • Màn hình tạo lịch sinh hoạt và làm việc (Hình 3.7): Biểu mẫu nhập liệu thông tin hoạt động mới.
  • Màn hình thêm thời gian (Hình 3.8): Cho phép thiết lập khoảng thời gian bắt đầu (From) và thời gian kết thúc (To).

4. Triển khai kỹ thuật và mã nguồn

Hệ thống được xây dựng trên môi trường Android Studio, sử dụng hệ thống quản lý bản dựng Gradle (build.gradle và gradle-wrapper.properties). Tác giả đã hiện thực hóa các phương thức tương tác cơ sở dữ liệu thông qua các truy vấn SQL trực tiếp:

  • Chức năng thêm hoạt động (addActivity): Kiểm tra và tự động khởi tạo bảng theo ngày (checkTable(date)) nếu chưa tồn tại, sau đó thực thi lệnh chèn dữ liệu:
@RequiresApi(api = Build.VERSION_CODES.O)
public void addActivity(Activity act, String date) {
    checkTable(date);
    SQLiteDatabase db = this.getWritableDatabase();
    String insert = "INSERT INTO " + date + " (ID, From, To, Activity) VALUES " +
                    "('" + act.getID() + "', '" + act.getFromToString() + "', '" + 
                    act.getToToString() + "', '" + act.getActivity() + "');";
    db.execSQL(insert);
}
  • Chức năng sửa hoạt động (updateActivity): Cập nhật thông tin thời gian và nội dung hoạt động dựa trên khóa chính:
public void updateActivity(Activity activity, String date) {
    String update = "UPDATE " + date + " SET From = '" + activity.getFromToString() + 
                    "', To = '" + activity.getToToString() + 
                    "', Activity = '" + activity.getActivity() + 
                    "' WHERE ID = " + activity.getID() + " ;";
    SQLiteDatabase db = this.getWritableDatabase();
    db.execSQL(update);
}
  • Chức năng xóa hoạt động (deleteActivity): Loại bỏ bản ghi khỏi bảng dữ liệu theo ngày tương ứng:
public void deleteActivity(int ID, String date) {
    String delete = "DELETE FROM " + date + " WHERE ID = '" + ID + "';";
    SQLiteDatabase db = this.getWritableDatabase();
    db.execSQL(delete);
}

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

Bố cục của báo cáo đồ án được cấu trúc thành các chương mục chính như sau:

Lời nói đầu và Giới thiệu chung

Phần này làm rõ tính cấp thiết của đề tài trong bối cảnh nhịp sống hiện đại và thời đại công nghệ 4.0. Nhóm tác giả trình bày tổng quan về nhu cầu quản lý thời gian, xác định 05 mục tiêu trọng tâm, phạm vi nghiên cứu xoay quanh nền tảng Android, các phương pháp tiếp cận từ lý thuyết đến thực nghiệm kiểm thử và tổng quan cấu trúc toàn văn báo cáo đồ án.

Cơ sở lý thuyết và các công nghệ sử dụng

Chương này tập trung phân tích nền tảng lý thuyết và công nghệ phục vụ xây dựng ứng dụng:

  • Tổng quan hệ điều hành Android (nguồn gốc, kiến trúc mở dựa trên Linux, ưu điểm về tùy biến và nhược điểm liên quan đến tiến trình chạy ngầm và bảo mật).
  • Ngôn ngữ lập trình Java (đặc trưng đa nền tảng WORA, cấu trúc JDK/JVM/JRE, cơ chế Garbage Collection và lập trình đa luồng).
  • Môi trường phát triển Android Studio và hệ thống tự động hóa bản dựng Gradle.
  • Mô hình kiến trúc phần mềm MVVM (tách biệt Model, View, ViewModel).
  • Cơ chế quản lý dữ liệu offline thông qua hệ quản trị cơ sở dữ liệu SQLite.
  • Các nguyên tắc và xu hướng thiết kế giao diện/trải nghiệm người dùng (UX/UI) trên nền tảng di động.

Phân tích và thiết kế hệ thống

Chương này đi sâu vào kỹ thuật công nghệ phần mềm:

  • Đặc tả hệ thống yêu cầu chức năng (quản lý lịch, quản lý nhiệm vụ, nhắc nhở, đồng bộ, báo cáo, phân quyền, tìm kiếm) và yêu cầu phi chức năng (thời gian phản hồi < 2s, tính ổn định, bảo mật, khả năng mở rộng).
  • Thiết kế kiến trúc tổng thể của hệ thống và xây dựng Sơ đồ luồng dữ liệu (DFD).
  • Thiết kế chi tiết cơ sở dữ liệu quan hệ với 3 bảng: ACTIVITIES, RATINGS, và TRACKEDACTIVITIES.
  • Xây dựng mô hình hoạt động (Activity Diagram) và thiết kế hệ thống màn hình giao diện người dùng (Màn hình chính, Màn hình quản lý thời gian, Màn hình tạo lịch, Màn hình thêm thời gian).

Triển khai ứng dụng

Chương này trình bày quy trình xây dựng phần mềm thực tế:

  • Hướng dẫn thiết lập môi trường phát triển trên các hệ điều hành (Windows, macOS), cài đặt Android Studio, cấu hình Android SDK và đồng bộ tệp build.gradle.
  • Hiện thực hóa các mô-đun chức năng chính: Thêm hoạt động (addActivity), Sửa hoạt động (updateActivity), Xóa hoạt động (deleteActivity), Đánh giá hoạt động và Theo dõi hoạt động.
  • Trình bày giải pháp kết nối tầng dữ liệu SQLite với tầng giao diện ứng dụng.
  • Thiết lập quy trình kiểm thử chức năng, kiểm thử giao diện và xử lý các lỗi phát sinh nhằm cải thiện hiệu năng vận hành.

Đánh giá và kết luận

Tổng kết mức độ hoàn thành đồ án so với các mục tiêu đề ra; phân tích những khó khăn, hạn chế kỹ thuật gặp phải trong quá trình thực hiện và đề xuất các hướng mở rộng ứng dụng trong tương lai.


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

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

  • Hiện thực hóa phần mềm: Xây dựng thành công ứng dụng di động hoàn chỉnh trên nền tảng Android hỗ trợ các nghiệp vụ quản lý lịch trình cá nhân và công việc hàng ngày.
  • Vận hành dữ liệu ổn định: Xây dựng thành công cơ chế lưu trữ cục bộ với SQLite, cho phép thực hiện trơn tru các thao tác tạo mới, cập nhật, xóa và truy vấn lịch biểu theo từng ngày mà không phụ thuộc vào kết nối Internet.
  • Đáp ứng các tiêu chuẩn kỹ thuật: Đảm bảo thời gian phản hồi giao diện nhanh chóng (đáp ứng tiêu chí dưới 2 giây cho các thao tác CRUD cơ bản), giao diện được bố trí theo hướng dẫn thiết kế Material Design giúp thao tác cảm ứng thuận tiện.
  • Tích hợp tính năng theo dõi và đánh giá: Xây dựng được các bảng dữ liệu RATINGS và TRACKEDACTIVITIES, tạo tiền đề cho việc theo dõi tiến độ và đánh giá mức độ hoàn thành công việc theo từng mốc thời gian.

2. Giải pháp và kiến nghị của tác giả

  • Ứng dụng mô hình kiến trúc MVVM nhằm chuẩn hóa cấu trúc dự án Android, giúp việc phân tách logic nghiệp vụ và giao diện trở nên rõ ràng, thuận lợi cho quá trình kiểm thử đơn vị và bảo trì mã nguồn.
  • Đề xuất giải pháp lưu trữ bảng động theo ngày trong SQLite nhằm phục vụ việc phân loại dữ liệu nhật ký hoạt động theo từng mốc thời gian riêng biệt.

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

Đồ án đã hệ thống hóa toàn bộ quy trình phát triển một ứng dụng di động từ khâu khảo sát yêu cầu, thiết kế kiến trúc DFD, mô hình hóa dữ liệu quan hệ đến khâu hiện thực hóa mã nguồn Java và cấu hình Gradle. Đây là sản phẩm học thuật ứng dụng tốt các kiến thức chuyên ngành Công nghệ thông tin vào việc giải quyết bài toán quản lý thời gian thực tiễn.


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

1. Hạn chế kỹ thuật

  • Cơ chế lưu trữ CSDL: Việc khởi tạo động các bảng dữ liệu riêng biệt cho từng ngày (checkTable(date)) có thể gây phân mảnh và phức tạp hóa việc quản lý cấu trúc bảng khi số lượng ngày sử dụng tăng lên theo thời gian.
  • Phạm vi tính năng đồng bộ: Tính năng đồng bộ hóa thời gian thực qua đám mây (Firebase) và liên kết API với Google Calendar/Outlook Calendar mới chỉ dừng lại ở mức phân tích yêu cầu và định hướng kiến trúc, chưa được hiện thực hóa hoàn chỉnh trong mã nguồn báo cáo.
  • Yêu cầu môi trường phát triển: Bộ công cụ Android Studio và trình giả lập Android đòi hỏi cấu hình phần cứng tương đối cao (khuyến nghị tối thiểu 8 GB RAM), gây khó khăn nhất định trong quá trình biên dịch và gỡ lỗi trên các hệ thống máy tính cấu hình thấp.

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

  • Hoàn thiện tích hợp Firebase Authentication và Cloud Firestore/Realtime Database để hỗ trợ sao lưu dữ liệu đa thiết bị.
  • Kết nối trực tiếp với Google Calendar API để cho phép người dùng đồng bộ lịch trình hai chiều giữa ứng dụng và tài khoản Google.
  • Nghiên cứu áp dụng các thuật toán Trí tuệ nhân tạo (AI) và Học máy (Machine Learning) nhằm phân tích thói quen sinh hoạt của người dùng, từ đó đưa ra các đề xuất và sắp xếp lịch trình thông minh.
  • Phát triển thêm chế độ giao diện tối (Dark mode) hoàn chỉnh và hỗ trợ đa ngôn ngữ để mở rộng đối tượng sử dụng.

Giá trị tham khảo

Đồ án là tài liệu tham khảo hữu ích cho:

  • Sinh viên ngành Công nghệ Thông tin, Kỹ thuật Phần mềm: Phù hợp cho việc học tập, nghiên cứu môn học Thực tập chuyên môn, Lập trình ứng dụng di động Android cơ bản và nâng cao.
  • Người phát triển ứng dụng di động: Cung cấp tài liệu tham khảo thực tế về cách tổ chức mô hình MVVM, phương pháp viết mã nguồn Java để tương tác trực tiếp với cơ sở dữ liệu SQLite cục bộ, cũng như quy trình cấu hình tệp bản dựng Gradle trên Android Studio.
  • Các phần đáng tham khảo nhất trong tài liệu:
    1. Chương Phân tích và Thiết kế hệ thống: Tài liệu đặc tả yêu cầu chức năng/phi chức năng và lược đồ thiết kế 3 bảng dữ liệu SQLite (ACTIVITIES, RATINGS, TRACKEDACTIVITIES).
    2. Chương Triển khai ứng dụng: Các đoạn mã nguồn mẫu bằng Java thực hiện các thao tác thêm, sửa, xóa dữ liệu trên SQLite.

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

1. Đồ án lựa chọn mô hình kiến trúc nào để phát triển ứng dụng và cấu trúc ra sao?

Đồ án áp dụng mô hình kiến trúc Model-View-ViewModel (MVVM). Mô hình này phân tách ứng dụng thành 3 thành phần chính:

  • Model: Đại diện cho dữ liệu và quy tắc nghiệp vụ, bao gồm các lớp dữ liệu như Activity, TrackedActivity, Rating và lớp thao tác dữ liệu Database.
  • View: Giao diện người dùng được xây dựng bằng các tệp XML trong thư mục res/layout, liên kết với các lớp Activity hoặc Fragment để hiển thị.
  • ViewModel: Đóng vai trò cầu nối trung gian, tiếp nhận dữ liệu từ Model để cung cấp cho View và nhận các sự kiện từ View để cập nhật ngược lại Model mà không làm View và Model phụ thuộc trực tiếp vào nhau.

2. Cơ sở dữ liệu SQLite trong ứng dụng được thiết kế gồm những bảng nào?

Cơ sở dữ liệu của ứng dụng gồm 03 bảng chính:

  • ACTIVITIES: Gồm các trường ID (INTEGER, PK), From (TEXT), To (TEXT), Activity (TEXT) để lưu trữ thông tin lịch trình, mốc thời gian bắt đầu, kết thúc và tên hoạt động.
  • RATINGS: Gồm các trường Date (TEXT, PK), Rating (INTEGER) dùng để lưu điểm số tự đánh giá hiệu suất của người dùng theo từng ngày.
  • TRACKEDACTIVITIES: Gồm các trường ID (INTEGER, PK), Title (TEXT), Color (TEXT), Tags (TEXT) để quản lý danh mục các hoạt động cần theo dõi kèm mã màu và nhãn dán.

3. Các yêu cầu phi chức năng về hiệu năng và thời gian phản hồi được quy định thế nào?

Theo đặc tả của đồ án, hệ thống phải đáp ứng các chỉ số phi chức năng gồm:

  • Thời gian phản hồi: Đạt tốc độ xử lý dưới 2 giây đối với các hành động của người dùng như thêm, chỉnh sửa hoặc xóa sự kiện/công việc.
  • Tiêu thụ tài nguyên: Tối ưu hóa việc sử dụng CPU, RAM và pin, đảm bảo thiết bị di động không bị giật lag hoặc nóng máy trong quá trình vận hành.
  • Tính khả dụng và tương thích: Hỗ trợ nhiều phiên bản Android, tương thích với các kích thước màn hình khác nhau (smartphone, tablet).

4. Cơ chế thêm, sửa, xóa hoạt động trong mã nguồn được hiện thực bằng phương thức nào?

Các thao tác dữ liệu được cài đặt bằng ngôn ngữ Java trong lớp tương tác cơ sở dữ liệu:

  • addActivity(Activity act, String date): Gọi phương thức checkTable(date) để tạo bảng nếu chưa có, sau đó thực thi câu lệnh INSERT INTO chứa thông tin ID, thời gian bắt đầu, thời gian kết thúc và mô tả hoạt động.
  • updateActivity(Activity activity, String date): Thực thi câu lệnh UPDATE để sửa đổi các trường From, To, Activity theo ID của hoạt động trong bảng ngày tương ứng.
  • deleteActivity(int ID, String date): Thực thi câu lệnh DELETE FROM để xóa bản ghi có ID tương ứng.

5. Những định hướng công nghệ chính được đề xuất cho các phiên bản tiếp theo là gì?

Tác giả định hướng 3 nhóm công nghệ mở rộng:

  1. Tích hợp dịch vụ đám mây Firebase để sao lưu dữ liệu trực tuyến và xác thực tài khoản người dùng.
  2. Kết nối API với Google Calendar và Outlook Calendar nhằm hỗ trợ đồng bộ hóa lịch trình đa nền tảng.
  3. Tích hợp Trí tuệ nhân tạo (AI) để phân tích thói quen người dùng và tự động đưa ra các đề xuất lịch trình làm việc tối ưu.

Kết luận

Đồ án môn học "Nghiên cứu và xây dựng ứng dụng quản lý lịch sinh hoạt và làm việc trên nền tảng Android" của nhóm sinh viên Lớp 21CN5, Trường Đại học Kiến trúc Hà Nội đã hoàn thành toàn diện quy trình phát triển phần mềm di động theo chuẩn kỹ thuật. Nghiên cứu đã làm rõ cơ sở lý thuyết về lập trình Java, kiến trúc phần mềm MVVM, nguyên tắc thiết kế UI/UX và hệ quản trị cơ sở dữ liệu SQLite nhúng. Ứng dụng triển khai thành công các chức năng cốt lõi về quản lý, theo dõi và đánh giá lịch trình cá nhân với hiệu năng phản hồi nhanh, đồng thời cung cấp tài liệu tham khảo có giá trị thực tiễn cho sinh viên chuyên ngành công nghệ thông tin trong các học phần lập trình di động.