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

Trong môi trường giáo dục đại học, công tác tổ chức thi và đánh giá kết quả học tập của sinh viên là hoạt động then chốt nhằm đảm bảo tính công bằng và chất lượng đào tạo. Tuy nhiên, trong quá trình chấm thi, các sai sót ngoài ý muốn vẫn có thể xảy ra, dẫn đến việc kết quả đánh giá chưa phản ánh chính xác bài làm của người học. Để bảo vệ quyền lợi chính đáng của sinh viên, quy trình phúc khảo bài thi được thiết lập. Mặc dù vậy, quy trình phúc khảo truyền thống tại nhiều cơ sở giáo dục đại học, bao gồm thực tiễn tại Trường Đại học Công nghệ Thông tin và Truyền thông Việt - Hàn (VKU), bộc lộ nhiều bất cập:

  • Thủ tục phức tạp và tốn thời gian: Sinh viên phải nộp đơn giấy trực tiếp hoặc gửi email đến đơn vị quản lý đào tạo/khảo thí, sau đó chờ đợi phản hồi qua nhiều khâu trung gian, làm gia tăng khối lượng công việc hành chính cho cán bộ quản lý.
  • Khó khăn trong công tác theo dõi và quản lý: Với quy mô sinh viên lớn, việc quản lý thủ công các đơn yêu cầu phúc khảo qua sổ sách hoặc bảng tính rời rạc dễ phát sinh sai sót trong quá trình xử lý, phân loại và tổng hợp số liệu.
  • Thiếu tính minh bạch và cập nhật thông tin: Người học không theo dõi được tiến trình xử lý đơn phúc khảo theo thời gian thực, gây ra tâm lý lo lắng và bị động.

Nhằm giải quyết các hạn chế nêu trên, đề tài khóa luận tốt nghiệp "Xây dựng hệ thống giám sát, thống kê, công bố kết quả phúc khảo thi" (Building a System of Monitoring, Statistics, and Announcement of Appeal Results) được thực hiện bởi nhóm sinh viên Thạch Cảnh Tú (mã sinh viên: 20IT632) và Vũ Thanh Tùng (mã sinh viên: 20IT635), lớp 20SE2, Khoa Khoa học Máy tính, dưới sự hướng dẫn của TS. Hồ Văn Phi (tháng 12/2024).

Mục tiêu nghiên cứu và phát triển của đề tài:

  1. Tự động hóa quy trình phúc khảo: Xây dựng hệ thống trực tuyến cho phép sinh viên đăng ký phúc khảo, theo dõi trạng thái đơn và nhận thông báo kết quả.
  2. Nâng cao hiệu quả quản lý: Hỗ trợ đơn vị chuyên trách tiếp nhận, xử lý đơn nhanh chóng, giảm thiểu sai sót do thao tác thủ công.
  3. Cải thiện trải nghiệm người dùng: Thiết kế giao diện thân thiện, dễ thao tác cho cả sinh viên và cán bộ khảo thí.
  4. Gia tăng tính minh bạch: Cung cấp công cụ theo dõi trạng thái xử lý đơn công khai, cập nhật phản hồi và lý do phê duyệt/từ chối.
  5. Tích hợp báo cáo và thống kê: Hỗ trợ trích xuất dữ liệu tổng hợp phục vụ công tác thống kê định kỳ của nhà trường.

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

  • Đối tượng nghiên cứu: Quy trình đăng ký, tiếp nhận, xét duyệt, thống kê và công bố kết quả phúc khảo bài thi kết thúc học phần.
  • Phạm vi không gian: Phòng Khảo thí và Đảm bảo chất lượng giáo dục (P.KT&DBCLGD), Trường Đại học Công nghệ Thông tin và Truyền thông Việt - Hàn (Đại học Đà Nẵng).
  • Phạm vi thời gian và kế hoạch thực hiện: Đề tài được triển khai qua các giai đoạn: Khảo sát và phân tích yêu cầu (2 tuần); Thiết kế hệ thống (3 tuần); Phát triển tính năng hệ thống (5 tuần); Triển khai và đánh giá thử nghiệm (2 tuần); hoàn thành báo cáo vào tháng 12/2024.

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

Khung lý thuyết và mô hình kiến trúc

Khóa luận áp dụng mô hình kiến trúc phần mềm MVC (Model - View - Controller) để tách biệt các tầng xử lý nghiệp vụ, giao diện người dùng và truy xuất dữ liệu:

  • Model: Chứa toàn bộ logic nghiệp vụ, phương thức xử lý dữ liệu và định nghĩa cấu trúc tương tác với hệ quản trị cơ sở dữ liệu.
  • View: Đảm nhận nhiệm vụ hiển thị thông tin và tiếp nhận tương tác từ người dùng thông qua các thành phần giao diện.
  • Controller: Tiếp nhận yêu cầu điều hướng từ người dùng, gọi các hàm xử lý tương ứng từ Model và trả kết quả về View.

Cơ sở thực tiễn của đề tài gắn liền với chức năng, nhiệm vụ của Phòng Khảo thí và Đảm bảo chất lượng giáo dục - đơn vị được thành lập theo Quyết định số 1659/QĐ-ĐHĐN ngày 19/05/2020 của Giám đốc Đại học Đà Nẵng. Cơ cấu nhân sự và phân công nhiệm vụ tại đơn vị thực tập được tác giả ghi nhận gồm:

  • TS. Hồ Văn Phi: Phó Trưởng phòng phụ trách – Điều hành chung.
  • ThS. Vũ Thu Hà: Phó Trưởng phòng, phụ trách công tác khảo thí.
  • ThS. Hà Thị Minh Phương: Phó Trưởng phòng, phụ trách mảng ĐBCL.
  • ThS. Phan Thị Quỳnh Thy: Phụ trách mảng ĐBCL.
  • ThS. Nguyễn Thị Ngọc Thu: Phụ trách lịch thi.
  • ThS. Nguyễn Thị Thùy Giang: Phụ trách quản lý điểm.
  • ThS. Nguyễn Duy Thanh: Phụ trách hệ thống E-learning và thi trắc nghiệm máy tính.

Phương pháp nghiên cứu và phát triển

  • Phương pháp khảo sát và phân tích yêu cầu: Phân tích thực trạng quy trình xử lý đơn phúc khảo tại P.KT&DBCLGD để xác định yêu cầu người dùng, phân loại yêu cầu chức năng (Functional Requirements) và yêu cầu phi chức năng (Non-functional Requirements).
  • Phương pháp mô hình hóa hướng đối tượng: Sử dụng chuẩn UML để xây dựng các biểu đồ ca sử dụng (Use Case Diagram), biểu đồ tuần tự (Sequence Diagram), biểu đồ hoạt động (Activity Diagram) và biểu đồ phân tầng (Layer Chart).
  • Phương pháp thiết kế và chuẩn hóa cơ sở dữ liệu: Xây dựng mô hình quan hệ giữa các thực thể người dùng, lớp học, khoa/ngành, học phần, kỳ thi và thông báo.
  • Phương pháp phát triển phần mềm trên nền tảng Web: Hiện thực hóa các chức năng bằng ngôn ngữ lập trình mã nguồn mở, tích hợp công cụ quản lý thư viện và tối ưu hóa bộ nhớ đệm hệ thống.

Thiết kế và triển khai

Môi trường và công nghệ phát triển

Hệ thống được xây dựng dưới dạng ứng dụng Web đa nền tảng với các công nghệ và công cụ sau:

  • Môi trường phát triển tích hợp (IDE): Visual Studio Code (hỗ trợ gỡ lỗi, tích hợp Git, quản lý mã nguồn).
  • Môi trường máy chủ cục bộ: XAMPP (tích hợp Apache, MySQL, PHP).
  • Framework nền tảng: Laravel Framework (sử dụng ngôn ngữ PHP, kiến trúc MVC, công cụ Artisan CLI, Eloquent ORM, hệ thống Blade View, cơ chế phân quyền Authentication, Database Migrations).
  • Ngôn ngữ phía Client: HTML, CSS, JavaScript.
  • Hệ quản trị cơ sở dữ liệu: MySQL.
  • Quản lý gói phụ thuộc: Composer.

Yêu cầu cấu hình hệ thống và vận hành

Văn bản đưa ra khuyến nghị cấu hình máy chủ phục vụ triển khai nhằm đảm bảo tải trong các đợt cao điểm thi cử:

  • Cấu hình phần cứng tối thiểu: CPU 4 nhân trở lên; RAM từ 8GB trở lên; ổ cứng SSD dung lượng tối thiểu 256GB.
  • Yêu cầu hiệu năng: Thời gian phản hồi cho mỗi thao tác thông thường không vượt quá 2 giây.
  • Yêu cầu bảo mật: Mã hóa dữ liệu người dùng, kiểm soát truy cập, phòng chống các lỗ hổng SQL Injection, Cross-Site Request Forgery (CSRF), Cross-Site Scripting (XSS), triển khai giao thức SSL/TLS.
  • Cơ chế sao lưu: Định kỳ sao lưu dữ liệu hàng ngày hoặc hàng tuần để phục vụ khôi phục khi có sự cố.

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

Hệ thống thiết lập 6 bảng dữ liệu chính phục vụ lưu trữ thông tin nghiệp vụ:

Tên bảng Khóa chính Khóa ngoại Các trường dữ liệu chính Chức năng lưu trữ
users id (bigint) Không email (varchar), password (varchar), created_at, updated_at Thông tin tài khoản đăng nhập người dùng
departments id (bigint) Không name (varchar), created_at, updated_at Danh mục các khoa / chuyên ngành đào tạo
classes id (bigint) department_id -> departments(id) name (varchar), created_at, updated_at Danh sách các lớp sinh viên
courses id (bigint) department_id -> departments(id) name (varchar), created_at Danh mục học phần / môn học
exams id (bigint) course_id -> courses(id) exam_date (date), created_at, updated_at Thông tin kỳ thi và ngày thi của học phần
notifications id (bigint) user_id -> users(id) message (text), created_at, updated_at Nội dung thông báo hệ thống gửi đến người dùng

Tối ưu hóa và quản lý bộ nhớ đệm (Artisan Commands)

Trong quá trình triển khai hệ thống với Laravel, tác giả giải thích và sử dụng các câu lệnh Artisan phục vụ cấu hình và tăng tốc độ xử lý:

  • php artisan cache:clear / cache:cache: Xóa và tạo lại bộ nhớ đệm ứng dụng.
  • php artisan config:clear / config:cache: Xóa và biên dịch lại cấu hình vào bộ nhớ đệm.
  • php artisan route:clear / route:cache: Xóa và tối ưu hóa danh sách định tuyến đường dẫn.
  • php artisan view:clear / view:cache: Xóa và tiền biên dịch các tệp Blade View.
  • php artisan event:clear / event:cache: Xóa và nạp lại bộ nhớ đệm cho các sự kiện (Events) và bộ lắng nghe (Listeners).
  • php artisan serve: Khởi chạy máy chủ web cục bộ phục vụ việc kiểm thử ứng dụng.

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

Chương 1: Tổng quan đề tài (Topic Overview)

Chương 1 giới thiệu khái quát về cơ quan thực tập là Phòng Khảo thí và Đảm bảo chất lượng giáo dục thuộc Trường Đại học Công nghệ Thông tin và Truyền thông Việt - Hàn. Tác giả làm rõ chức năng của phòng trong công tác xây dựng chính sách thi, quản lý ngân hàng câu hỏi thi, in sao phân phối đề thi, tổ chức chấm thi, chấm phúc khảo, hậu kiểm và giải quyết khiếu nại điểm thi kết thúc học phần. Đồng thời, chương này phân tích tính cấp thiết, mục tiêu, phạm vi nghiên cứu của đề tài và giới thiệu các công cụ phát triển phần mềm gồm Visual Studio Code, bộ phần mềm giả lập máy chủ XAMPP và PHP Framework Laravel cùng mô hình MVC.

Chương 2: Phân tích và thiết kế hệ thống (System Analysis and Design)

Chương 2 trình bày chi tiết việc phân tích yêu cầu từ phía người dùng và thiết kế kỹ thuật cho hệ thống:

  • Phân tích yêu cầu người dùng:
    • Sinh viên: Đăng nhập tài khoản trường; chọn học phần đăng ký phúc khảo trong thời hạn quy định (không áp dụng phúc khảo đối với học phần hỏi đáp/vấn đáp); in đơn phúc khảo nộp về P.KT&DBCLGD; theo dõi trạng thái đơn và xem kết quả sau khi được chấm lại.
    • Cán bộ P.KT&DBCLGD: Nhận thông báo khi có đơn đăng ký mới; xem danh sách đơn theo đợt, học phần, khoa, khóa, lớp; thực hiện phê duyệt hoặc từ chối đơn kèm lý do phản hồi; xuất tệp Excel danh sách sinh viên phúc khảo định kỳ.
  • Đặc tả Use Case chi tiết: Xây dựng luồng sự kiện chính (Main event stream) và luồng rẽ nhánh (Alternative flow) cho 8 ca sử dụng: Đăng nhập (Login); Chọn học phần phúc khảo; In đơn phúc khảo; Xem kết quả phúc khảo; Nhận thông báo đăng ký; Xem thông tin phúc khảo; Phê duyệt/Không phê duyệt đơn; Xuất báo cáo Excel.
  • Biểu đồ động và thiết kế dữ liệu: Xây dựng biểu đồ phân tầng, các biểu đồ tuần tự cho quy trình của sinh viên và cán bộ phòng, biểu đồ hoạt động đăng nhập, xét duyệt và phác thảo giao diện wireframe cùng thiết kế chi tiết 6 bảng cơ sở dữ liệu.

Chương 3: Xây dựng hệ thống giám sát, thống kê và công bố kết quả phúc khảo (Build a System to Monitor, Compile Statistics and Publish Review Results)

Chương 3 trình bày các bước cài đặt công cụ quản lý gói Composer, giải thích chi tiết các lệnh quản trị bộ nhớ đệm và cấu hình trong Laravel Artisan, đồng thời công bố kết quả thử nghiệm thông qua 9 giao diện chức năng chính:

  1. Giao diện Đăng nhập (Login Interface): Tiếp nhận tài khoản email và mật khẩu do nhà trường cấp.
  2. Giao diện Trang quản lý (Management Page Interface): Bảng điều khiển dành cho cán bộ P.KT&DBCLGD, tích hợp thanh điều hướng quản lý giảng dạy (Lớp, Khoa/Ngành, Môn học, Kỳ thi) và quản lý phúc khảo.
  3. Giao diện Xem thông tin sinh viên đăng ký phúc khảo: Hiển thị bảng tổng hợp gồm Mã sinh viên, Họ tên, Học phần, Học kỳ, Ngày thi, Trạng thái, Ngày đăng ký và nút xuất dữ liệu ra tệp Excel.
  4. Giao diện Phản hồi phúc khảo (Review Feedback Interface): Cung cấp tùy chọn "Accept Review" (Chấp nhận) hoặc "Reject Review" (Từ chối) kèm khung nhập ghi chú lý do gửi tới sinh viên.
  5. Giao diện Thông báo (Notification Interface): Hiển thị cảnh báo tức thời khi có sinh viên nộp đơn đăng ký mới.
  6. Giao diện Trang sinh viên (Student Page Interface): Phân loại đơn theo các trạng thái: Đã nộp (Submitted Appeals), Đang chờ duyệt (Pending Applications), Đã chấp nhận (Accepted Applications) và Bị từ chối (Rejected Applications).
  7. Giao diện Danh sách học phần nộp phúc khảo: Quản lý các môn học sinh viên đã gửi yêu cầu.
  8. Giao diện Xem phản hồi từ P.KT&DBCLGD: Giúp sinh viên nắm bắt kết quả xét duyệt và lý do cụ thể nếu đơn bị từ chối.
  9. Giao diện Đăng ký phúc khảo (Review Registration Interface): Cho phép chọn học phần trong danh sách đã học, nhập lý do phúc khảo và kiểm tra thời hạn trước khi nhấn gửi đơn.

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

Kết quả đạt được

  • Xây dựng hoàn chỉnh ứng dụng web phục vụ quản lý quy trình phúc khảo điểm thi tại Trường Đại học Công nghệ Thông tin và Truyền thông Việt - Hàn.
  • Triển khai đầy đủ các phân hệ chức năng cho 2 đối tượng người dùng chính: Sinh viên (đăng ký, in đơn, theo dõi trạng thái, nhận kết quả) và Cán bộ Phòng Khảo thí & ĐBCLGD (quản trị dữ liệu học phần/kỳ thi, tiếp nhận đơn, phê duyệt/từ chối kèm lý do, nhận thông báo tự động).
  • Tích hợp tính năng trích xuất danh sách sinh viên đăng ký phúc khảo định kỳ ra tệp định dạng Excel, hỗ trợ công tác tổng hợp số liệu của phòng chuyên môn.
  • Thiết lập hệ thống cơ sở dữ liệu quan hệ đồng bộ và bước đầu áp dụng các biện pháp bảo mật tài khoản, phân quyền đăng nhập.

Đóng góp thực tiễn của đề tài

  • Chuyển đổi phương thức quản lý phúc khảo truyền thống (sử dụng đơn giấy, gửi email riêng lẻ, nhập bảng tính thủ công) sang quy trình trực tuyến tập trung.
  • Giảm thiểu khối lượng thao tác thủ công và sai sót hành chính cho cán bộ quản lý điểm thi, nâng cao độ chính xác trong công tác thống kê.
  • Tăng cường tính công khai, minh bạch đối với sinh viên thông qua việc cập nhật trạng thái đơn và lý do xử lý rõ ràng.

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

Hạn chế được tác giả tự ghi nhận

  • Mức độ hoàn thiện giao diện (UI/UX): Giao diện người dùng vẫn ở mức cơ bản, màu sắc và bố cục cần được cải thiện để đạt tính thẩm mỹ và hiện đại hơn.
  • Khả năng đáp ứng đa thiết bị (Responsiveness): Khả năng tương thích trên các thiết bị di động (smartphone, tablet) chưa được tối ưu hóa toàn diện.
  • Thiếu các tính năng nâng cao: Chưa hỗ trợ cập nhật dữ liệu theo thời gian thực (real-time dynamic content) một cách linh hoạt.
  • Hiệu năng xử lý tải cao: Hệ thống chưa được tối ưu hóa chuyên sâu để xử lý mượt mà khi lượng người dùng đồng thời tăng đột biến hoặc với tập dữ liệu quy mô lớn.
  • Thu thập phản hồi: Chưa tích hợp cơ chế tự động ghi nhận và phân tích phản hồi của người dùng để cải tiến liên tục.

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

  • Phát triển giao diện chuyên biệt cho nền tảng di động (Mobile Interface) nhằm tăng tính tiện lợi cho người dùng.
  • Tích hợp các công cụ hỗ trợ trực tuyến như Chatbot hoặc hệ thống hỗ trợ trực tiếp.
  • Nâng cấp trải nghiệm người dùng với các thành phần giao diện tương tác động và bảng điều khiển cá nhân hóa.
  • Tích hợp liên thông hệ thống với Hệ thống Quản lý Sinh viên (Student Management System) và Phần mềm Quản lý Văn bản của nhà trường để đồng bộ luồng dữ liệu.
  • Nghiên cứu kết nối các dịch vụ bên thứ ba (như cổng thanh toán lệ phí phúc khảo trực tuyến, dịch vụ lưu trữ đám mây).
  • Tối ưu hóa hiệu năng máy chủ, khả năng mở rộng (Scalability) và thiết lập vòng phản hồi người dùng (Feedback loop).

Giá trị tham khảo

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

  • Sinh viên ngành Kỹ thuật phần mềm, Công nghệ thông tin, Hệ thống thông tin: Có thể tham khảo phương pháp khảo sát nghiệp vụ thực tế, cách mô hình hóa các biểu đồ ca sử dụng, biểu đồ tuần tự, biểu đồ hoạt động và thiết kế cơ sở dữ liệu quan hệ cho một bài toán quản lý hành chính trong trường học.
  • Người phát triển ứng dụng Web với PHP/Laravel: Cung cấp tài liệu tham khảo về việc phân chia cấu trúc MVC, thiết kế cơ sở dữ liệu với Laravel Migrations, phương pháp tối ưu hóa bộ nhớ đệm hệ thống thông qua các câu lệnh Artisan (cache:clear, config:cache, route:cache, view:cache).
  • Cán bộ quản lý giáo dục và khảo thí: Cung cấp mô hình tham chiếu về luồng nghiệp vụ xử lý phúc khảo bài thi trực tuyến nhằm nâng cao tính minh bạch và giảm tải thủ tục giấy tờ tại các cơ sở đào tạo.

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

1. Đề tài này được thực hiện bởi ai, tại đơn vị nào và do ai hướng dẫn?

Đề tài khóa luận do nhóm sinh viên Thạch Cảnh Tú (mã SV: 20IT632) và Vũ Thanh Tùng (mã SV: 20IT635), lớp 20SE2, Khoa Khoa học Máy tính thuộc Trường Đại học Công nghệ Thông tin và Truyền thông Việt - Hàn (Đại học Đà Nẵng) thực hiện. Khóa luận được hoàn thành vào tháng 12/2024 dưới sự hướng dẫn chuyên môn của TS. Hồ Văn Phi - Phó Trưởng phòng phụ trách Phòng Khảo thí và Đảm bảo chất lượng giáo dục của trường.

2. Hệ thống phân quyền cho những đối tượng người dùng nào và gồm các chức năng cốt lõi gì?

Hệ thống thiết kế cho 2 nhóm đối tượng chính:

  • Sinh viên: Đăng nhập bằng tài khoản email trường, chọn học phần đăng ký phúc khảo (không áp dụng cho học phần vấn đáp/hỏi đáp), in mẫu đơn phúc khảo gửi về phòng chuyên môn, theo dõi trạng thái đơn và xem kết quả/phản hồi chi tiết.
  • Cán bộ Phòng Khảo thí & ĐBCLGD: Nhận thông báo khi có đơn mới, quản lý dữ liệu giảng dạy (khoa, lớp, môn học, kỳ thi), xem danh sách sinh viên đăng ký theo học kỳ, phê duyệt hoặc từ chối đơn kèm lý do phản hồi và xuất danh sách tổng hợp ra tệp Excel.

3. Công nghệ và cấu hình máy chủ nào được sử dụng và khuyến nghị cho hệ thống?

Hệ thống được phát triển bằng PHP (Laravel Framework), JavaScript, HTML, CSS trên môi trường XAMPP (Apache, MySQL) và Visual Studio Code, sử dụng Composer để quản lý gói thư viện. Cấu hình máy chủ khuyến nghị bao gồm CPU từ 4 nhân, RAM tối thiểu 8GB, ổ cứng SSD tối thiểu 256GB, đáp ứng thời gian phản hồi cho mỗi thao tác thông thường không quá 2 giây.

4. Nhóm tác giả tự nhận định những điểm hạn chế chính nào của sản phẩm?

Nhóm tác giả nêu rõ 5 hạn chế chính: giao diện người dùng còn đơn giản; khả năng tương thích trên thiết bị di động chưa tối ưu; thiếu các tính năng tương tác thời gian thực; hiệu năng chưa được tối ưu khi vận hành dưới tải trọng lớn; và hệ thống chưa có cơ chế tự động tiếp nhận, xử lý phản hồi từ người dùng.


Kết luận

Khóa luận tốt nghiệp "Xây dựng hệ thống giám sát, thống kê, công bố kết quả phúc khảo thi" đã giải quyết bài toán thực tế trong công tác quản lý điểm thi tại Phòng Khảo thí và Đảm bảo chất lượng giáo dục - Trường Đại học Công nghệ Thông tin và Truyền thông Việt - Hàn. Nhóm tác giả đã hoàn thành các mục tiêu đề ra thông qua việc phân tích yêu cầu, mô hình hóa quy trình nghiệp vụ bằng UML, thiết kế cơ sở dữ liệu MySQL và hiện thực hóa hệ thống web hoàn chỉnh trên nền tảng Laravel PHP. Kết quả thử nghiệm cho thấy hệ thống đáp ứng tốt các chức năng đăng ký, xét duyệt, thông báo và xuất báo cáo Excel, tạo tiền đề cho việc mở rộng tích hợp liên thông với hệ thống quản lý đào tạo chung của nhà trường trong các giai đoạn tiếp theo.