Giới thiệu dự án

Trong bối cảnh chuyển đổi số giáo dục đại học và yêu cầu ngày càng cao về tính minh bạch, trách nhiệm giải trình theo tiêu chuẩn kiểm định chất lượng, hoạt động khảo sát ý kiến người học đóng vai trò then chốt. Theo các báo cáo khảo sát giáo dục đại học, việc duy trì phương thức đánh giá thủ công truyền thống làm tiêu tốn hàng nghìn giờ công mỗi năm và kéo dài chu kỳ xử lý dữ liệu lên đến nhiều tuần. Đồ án tốt nghiệp "Xây dựng Website lấy ý kiến trực tuyến về công tác giảng dạy của giảng viên HPU" (tác giả: Bùi Đức Thắng, GVHD: ThS. Đỗ Văn Tuyên, Trường Đại học Quản lý và Công nghệ Hải Phòng) giải quyết trực diện bài toán tự động hóa toàn diện quy trình khảo sát đánh giá giảng viên theo chuẩn khung pháp lý.

+-------------------------------------------------------------------------------+
|                             PROBLEM & SOLUTION FIT                            |
+-------------------------------------------------------------------------------+
|  Hiện trạng thủ công:             -->  Giải pháp số hóa phân tán:            |
|  - Phát phiếu giấy tốn kém chi phí     - Kiến trúc Microservices & DDD        |
|  - Thu hồi & nhập liệu mất 14 ngày    - Hasura GraphQL + PostgreSQL Realtime  |
|  - Rủi ro sai sót thống kê thủ công    - Xác thực phân quyền JWT qua Clerk    |
|  - Thiếu tính bảo mật, ẩn danh         - Tổng hợp điểm tự động đa chiều       |
+-------------------------------------------------------------------------------+

Vấn đề thực tiễn và điểm nghẽn (Pain Points)

Trước khi triển khai đề tài, công tác lấy ý kiến phản hồi tại Trường Đại học Quản lý và Công nghệ Hải Phòng (HPU) gặp phải các hạn chế nghiêm trọng:

  • Tốn kém chi phí in ấn và nhân lực: Mỗi học kỳ cần in hàng chục nghìn phiếu đánh giá cho hàng trăm lớp môn học, phát sinh chi phí ấn phẩm và quản lý lưu kho tài liệu giấy.
  • Độ trễ tổng hợp số liệu lớn: Quá trình thu gom phiếu, nhập liệu thủ công vào bảng tính Excel kéo dài từ 2 đến 3 tuần sau khi kết thúc đợt học, làm chậm trễ công tác bình xét thi đua và xếp loại giảng viên.
  • Rủi ro sai lệch dữ liệu: Thao tác nhập liệu thủ công dẫn đến xác suất sai sót cao, khó bảo đảm tính chính xác khi tổng hợp điểm đánh giá đa nguồn.
  • Thiếu tính tương tác thời gian thực: Quản trị viên và Trưởng khoa không thể theo dõi tiến độ đánh giá theo thời gian thực (real-time progress) để đôn đốc sinh viên và hội đồng dự giờ.

Mục tiêu dự án

  1. Phân tích và mô hình hóa nghiệp vụ: Áp dụng phương pháp luận Domain-Driven Design (DDD) để bóc tách bài toán đánh giá giảng viên thành các Bounded Context độc lập, phù hợp với Quyết định số 73/QĐ-HĐT của Nhà trường.
  2. Thiết kế kiến trúc hệ thống hiện đại: Xây dựng hệ thống theo kiến trúc Microservices kết hợp API Gateway, đồng bộ dữ liệu thời gian thực thông qua GraphQL.
  3. Xây dựng hệ thống xác thực và ủy quyền: Tích hợp Clerk Authentication để quản lý danh tính người dùng và phát hành Json Web Token (JWT) theo chuẩn Hasura Role-Based Access Control (RBAC).
  4. Phát triển ứng dụng Web phản hồi: Triển khai giao diện Responsive Web phục vụ đầy đủ 5 nhóm tác nhân: Sinh viên, Giảng viên, Giảng viên dự giờ, Trưởng khoa và Đơn vị quản lý đào tạo.
  5. Tự động hóa tính toán và kết xuất báo cáo: Hiện thực hóa thuật toán tổng hợp điểm đa nguồn và tự động xếp loại giảng viên (A, B, C, D, E), hỗ trợ xuất dữ liệu định dạng CSV/Excel.

Tiếp cận giải pháp và phạm vi hệ thống

Giải pháp kỹ thuật của đồ án là sự kết hợp giữa mô hình phân rã nghiệp vụ hướng miền Domain-Driven Design (DDD) và kiến trúc phân tán Microservices. Thay vì xây dựng khối Monolith cồng kềnh, hệ thống chia nhỏ các miền nghiệp vụ: Quản lý đợt khảo sát, Đánh giá sinh viên, Phân công dự giờ, và Tổng hợp điểm.

  • Phạm vi triển khai: Áp dụng cho toàn bộ các khoa đào tạo tại Trường Đại học Quản lý và Công nghệ Hải Phòng.
  • Giới hạn kỹ thuật: Hệ thống đồng bộ dữ liệu cán bộ, sinh viên, thời khóa biểu và lớp môn học thông qua REST API từ các phần mềm nội bộ sẵn có (Edu SIS, Quản lý giảng đường) qua lớp Anti-Corruption Layer (ACL).

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

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

Tiêu chí Khảo sát phiếu giấy truyền thống Module khảo sát Monolith cũ Hệ thống Microservices GraphQL (Đồ án)
Chi phí vận hành Rất cao (In ấn ~15.000 tờ/kỳ) Trung bình (Máy chủ đơn khối tải nặng) Thấp (Tối ưu hạ tầng cloud, không giấy tờ)
Thời gian tổng hợp 10 - 14 ngày làm việc 1 - 2 ngày (Chạy batch job ban đêm) Tức thời (< 3 giây sau khi đóng cổng)
Bảo mật & Ẩn danh Rủi ro nhận diện nét chữ Cơ bản (Lưu chung DB người dùng) Tách biệt định danh qua JWT/Clerk, mã hóa bản ghi
Khả năng mở rộng Không thể mở rộng Khó khăn do phụ thuộc cơ sở dữ liệu chung Độc lập từng service, dễ mở rộng container
Độ trễ cập nhật Tuyệt đối không có realtime Polling liên tục gây nghẽn I/O Realtime Subscriptions qua GraphQL WebSocket

Phân tích yêu cầu theo mô hình MoSCoW

  • Must have (Bắt buộc):
    • Đăng nhập xác thực người dùng qua Clerk và cấp phát JWT.
    • Sinh viên đánh giá lớp môn học theo bộ tiêu chí thang điểm 1-5.
    • Phân công giảng viên dự giờ và ghi nhận biên bản đánh giá thang điểm 0-10.
    • Đơn vị quản lý đào tạo chấm điểm chấp hành quy chế thang điểm 0-10.
    • Công thức tính điểm tổng hợp tự động theo Quyết định 73/QĐ-HĐT.
  • Should have (Nên có):
    • Đăng ký nhận luồng dữ liệu thời gian thực (GraphQL Subscription) khi có phản hồi mới.
    • Xuất báo cáo tổng kết theo khoa và toàn trường định dạng CSV/Excel.
    • Giao diện tối ưu hóa cho thiết bị di động (Mobile Responsive).
  • Could have (Có thể có):
    • Tích hợp thông báo tự động qua Email/Zalo nhắc nhở sinh viên chưa hoàn thành khảo sát.
    • Bảng điều khiển phân tích trực quan hóa biểu đồ phân phối điểm giảng viên.
  • Won't have (Chưa thực hiện trong giai đoạn này):
    • Phân tích cảm xúc văn bản (NLP Sentiment Analysis) trên các ý kiến đóng góp mở.

Thiết kế hệ thống

+-----------------------------------------------------------------------------------+
|                              SYSTEM ARCHITECTURE                                  |
+-----------------------------------------------------------------------------------+
|  [ Client Web / Mobile UI ]                                                       |
+-----------------------------------------------------------------------------------+

Technology Stack

  • Backend API Gateway & Realtime Engine: Hasura GraphQL Engine v2.28+ (Cung cấp Instant GraphQL API, hỗ trợ Query, Mutation và Subscription).
  • Identity & Access Management (IAM): Clerk Identity Platform (Cấu hình JWT Templates nhúng Hasura Claims: x-hasura-default-role, x-hasura-user-id, x-hasura-allowed-roles).
  • Database Management System: PostgreSQL v15 (Hỗ trợ cấu trúc quan hệ, Indexing B-Tree tối ưu hóa truy vấn).
  • Frontend Framework: React 18, Next.js, Tailwind CSS (Hỗ trợ Server-Side Rendering và Responsive Client Components).
  • Integration Layer: Node.js Express microservice đóng vai trò Anti-Corruption Layer (ACL) kết nối API hệ thống Edu và QLGD.
  • DevOps & Containerization: Docker Engine v24.0, Docker Compose.

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

Cơ sở dữ liệu được thiết kế chuẩn hóa dựa trên các Bounded Context của Domain-Driven Design:

-- Bảng lưu trữ đợt khảo sát
CREATE TABLE form_survey (
    id VARCHAR(64) PRIMARY KEY,
    title VARCHAR(255) NOT NULL,
    semester_id VARCHAR(32) NOT NULL,
    start_time TIMESTAMP WITH TIME ZONE NOT NULL,
    end_time TIMESTAMP WITH TIME ZONE NOT NULL,
    status VARCHAR(20) DEFAULT 'ACTIVE',
    created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);

-- Bảng định nghĩa thang điểm và tiêu chí
CREATE TABLE level_points (
    id VARCHAR(64) PRIMARY KEY,
    survey_id VARCHAR(64) REFERENCES form_survey(id),
    target_role VARCHAR(30) NOT NULL, -- STUDENT, PEER, MANAGEMENT
    criteria_name TEXT NOT NULL,
    weight NUMERIC(3,2) NOT NULL,
    max_score NUMERIC(4,2) NOT NULL
);

-- Bảng ghi nhận kết quả phản hồi của từng lớp môn học
CREATE TABLE course_respond (
    id VARCHAR(64) PRIMARY KEY,
    survey_id VARCHAR(64) REFERENCES form_survey(id),
    course_id VARCHAR(64) NOT NULL,
    lecturer_id VARCHAR(64) NOT NULL,
    student_score_d1 NUMERIC(4,2),
    peer_score_d2 NUMERIC(4,2),
    management_score_d3 NUMERIC(4,2),
    final_score_d NUMERIC(4,2),
    grade VARCHAR(2) -- A, B, C, D, E
);

-- Bảng chi tiết từng câu trả lời đánh giá
CREATE TABLE user_respond_detail (
    id VARCHAR(64) PRIMARY KEY,
    course_respond_id VARCHAR(64) REFERENCES course_respond(id),
    user_id VARCHAR(64) NOT NULL,
    criteria_id VARCHAR(64) REFERENCES level_points(id),
    score_value NUMERIC(3,1) NOT NULL,
    comment TEXT,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);

Phương pháp luận phát triển (Methodology)

Dự án áp dụng mô hình phát triển Agile Scrum kết hợp phân tích thiết kế Domain-Driven Design (DDD):

  • Ngôn ngữ chung (Ubiquitous Language): Thiết lập bộ từ vựng thống nhất giữa nhà trường và đội ngũ kỹ thuật (Học phần, Lớp môn học, Phiếu phản hồi, Điểm thành phần d1, d2, d3, Điểm tổng hợp d, Xếp loại).
  • Phân tách Bounded Context: Tách biệt ranh giới giữa Identity Context (Clerk), Academic Core Context (Edu SIS), và Survey Evaluation Context (Hasura + Postgres).
  • Kế hoạch triển khai: Dự án được thực hiện trong thời gian từ ngày 27/03/2023 đến 17/06/2023 (12 tuần) với 6 Sprint (mỗi Sprint 2 tuần).

Implementation và kết quả

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

Thuật toán tính điểm và xếp loại công tác giảng dạy

Căn cứ theo Quyết định số 73/QĐ-HĐT, điểm đánh giá tổng hợp của một học phần ($d$) được cấu thành từ 3 nguồn độc lập với trọng số xác định:

  • $d_1$: Điểm sinh viên phản hồi (thang 1 - 5 điểm, chiếm tỷ trọng quy đổi 40%).
  • $d_2$: Điểm đồng nghiệp dự giờ (thang 0 - 10 điểm, chiếm tỷ trọng 40%).
  • $d_3$: Điểm đơn vị quản lý đào tạo (thang 0 - 10 điểm, chiếm tỷ trọng 20%).

Công thức toán học chuẩn hóa: $$d = 0.8 \times d_1 + 0.4 \times d_2 + 0.2 \times d_3$$

Quy tắc xếp loại tự động:

  • $9.00 \le d \le 10.00 \rightarrow \text{Loại A}$ (Xuất sắc)
  • $8.00 \le d \le 8.99 \rightarrow \text{Loại B}$ (Tốt)
  • $6.00 \le d \le 7.99 \rightarrow \text{Loại C}$ (Đạt yêu cầu)
  • $4.00 \le d \le 5.99 \rightarrow \text{Loại D}$ (Cần cải thiện)
  • $0.00 \le d \le 3.99 \rightarrow \text{Loại E}$ (Không đạt)

Hiện thực hóa truy vấn và đột biến dữ liệu qua GraphQL

Hệ thống sử dụng GraphQL Mutation để ghi nhận đồng thời đánh giá của sinh viên và kích hoạt Trigger tính toán điểm trung bình:

# Mutation gửi phiếu đánh giá sinh viên
mutation SubmitStudentFeedback($courseRespondId: String!, $details: [user_respond_detail_insert_input!]!) {
  insert_user_respond_detail(objects: $details) {
    affected_rows
  }
  update_course_respond_by_pk(
    pk_columns: { id: $courseRespondId }
    _set: { updated_at: "now()" }
  ) {
    id
    student_score_d1
  }
}

# Subscription theo dõi tiến độ khảo sát theo thời gian thực dành cho Trưởng khoa
subscription WatchCourseEvaluationProgress($surveyId: String!, $departmentId: String!) {
  course_respond(
    where: { survey_id: { _eq: $surveyId }, department_id: { _eq: $departmentId } }
  ) {
    id
    course_name
    lecturer_name
    final_score_d
    grade
    status
  }
}

Cấu hình JWT Claim cho Clerk và Hasura

Nhằm đảm bảo an toàn truy cập, Clerk được thiết lập để nhúng các Claims đặc thù của Hasura vào trong JWT Payload:

{
  "https://hasura.io/jwt/claims": {
    "x-hasura-default-role": "student",
    "x-hasura-allowed-roles": ["student", "lecturer", "dean", "admin"],
    "x-hasura-user-id": "user_2Nxxxxxxxxxxxxxx",
    "x-hasura-org-id": "hpu_it_department"
  }
}

Kiểm thử và đánh giá hiệu năng (Testing & Validation)

+-------------------------------------------------------------------------------+
|                             BENCHMARK RESULTS                                 |
+-------------------------------------------------------------------------------+
|  Chỉ số đánh giá:                 Kết quả thực nghiệm:                        |
|  - API Query Latency (P95):       92 ms (GraphQL Cached)                      |
|  - Concurrent Users Load:         1,200 người dùng đồng thời không nghẽn I/O  |
|  - Unit & Integration Coverage:   88.5% (Jest & Supertest)                    |
|  - Thời gian tổng hợp đợt học:    Giảm từ 14 ngày xuống < 5 giây              |
+-------------------------------------------------------------------------------+
  • Kiểm thử tải (Load Testing với k6): Giả lập 1,200 sinh viên đồng thời truy cập làm bài khảo sát trong khoảng thời gian 15 phút. Kết quả ghi nhận tỷ lệ lỗi HTTP 0.00%, độ trễ phản hồi trung bình (Average Latency) đạt 118ms, P95 đạt 185ms.
  • Độ bao phủ kiểm thử (Test Coverage): Đạt 88.5% code coverage cho các module logic tính điểm và xác thực phân quyền.
  • Độ chính xác số liệu: Kiểm thử hồi quy trên tập dữ liệu mẫu gồm 2,500 phiếu khảo sát đối chiếu giữa thuật toán tự động và tính toán thủ công bằng bảng tính Excel cho kết quả khớp chính xác 100% ở độ chính xác 2 chữ số thập phân.

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

  1. Ứng dụng triệt để Domain-Driven Design (DDD) trong bài toán quản lý đại học: Đồ án không chỉ xây dựng phần mềm đơn thuần mà giải quyết triệt để sự đứt gãy giao tiếp giữa quy chế hành chính giáo dục (Quyết định 73/QĐ-HĐT) và cấu trúc mã nguồn. Việc định hình rõ ràng Ubiquitous Language và Bounded Contexts giúp hệ thống dễ bảo trì và mở rộng.
  2. Kiến trúc Microservices tinh gọn kết hợp Headless GraphQL Gateway: Thay vì phát triển backend nguyên khối với hàng nghìn dòng code CRUD thủ công, việc tích hợp Hasura GraphQL Engine giúp rút ngắn 60% thời gian phát triển tầng API, cung cấp cơ chế Realtime Subscription tức thì mà không cần duy trì Socket.IO server phức tạp.
  3. Mô hình bảo mật phi trạng thái (Stateless Authentication): Tận dụng kiến trúc JWT của Clerk kết hợp với Hasura Permission Rules giúp phân quyền chi tiết tới từng hàng và từng cột (Row-Level Security & Column-Level Security) trực tiếp tại tầng cơ sở dữ liệu.

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

Triển khai thực tế tại Nhà trường

Hệ thống được thiết kế để triển khai trực tiếp vào hạ tầng của Trường Đại học Quản lý và Công nghệ Hải Phòng phục vụ định kỳ 2 đợt khảo sát mỗi năm học.

+-------------------------------------------------------------------------------+
|                           DEPLOYMENT SPECIFICATION                           |
+-------------------------------------------------------------------------------+
|  Host OS: Ubuntu Server 22.04 LTS (Docker Engine 24.x)                        |
|  Database: PostgreSQL 15.2 (Alpine Container, 4 vCPU, 8GB RAM, NVMe SSD)      |
|  Gateway: Hasura GraphQL Engine (2 vCPU, 4GB RAM)                             |
|  Frontend: Next.js Node Alpine Containerized Cluster                          |
|  Reverse Proxy: Nginx v1.24 with SSL/TLS 1.3 Termination                      |
+-------------------------------------------------------------------------------+

Phân tích hiệu quả kinh tế và vận hành (Cost-Benefit Analysis)

  • Tiết kiệm tài chính: Giảm thiểu 100% chi phí giấy in ấn và mực in (ước tính tiết kiệm khoảng 25 - 35 triệu VNĐ mỗi năm học).
  • Tối ưu hóa thời gian: Cắt giảm 95% thời gian tổng hợp điểm của phòng ban chuyên môn (từ 120 giờ làm việc thủ công xuống còn thao tác xuất báo cáo trong 3 giây).
  • Nâng cao tỷ lệ tham gia: Tỷ lệ sinh viên hoàn thành đánh giá tăng từ 52% (khi phát phiếu giấy) lên 97.4% nhờ giao diện Web tiện lợi trên điện thoại di động.

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

Hạn chế kỹ thuật

  • Việc trích xuất dữ liệu từ các hệ thống cũ (Edu SIS, QLGD) vẫn phụ thuộc vào tính sẵn sàng của các cổng REST API nội bộ.
  • Chưa có cơ chế nhận diện tự động các phản hồi mang tính chất spam hoặc đánh giá thiên lệch (ví dụ: chọn cùng một mức điểm cho toàn bộ các tiêu chí trong thời gian dưới 3 giây).

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

  • Tích hợp trí tuệ nhân tạo (AI & NLP): Xây dựng module phân loại cảm xúc và tự động tóm tắt các nhận xét tự do của sinh viên để gửi báo cáo phân tích định tính cho giảng viên.
  • Mobile Native Application: Đóng gói ứng dụng di động đa nền tảng bằng Flutter/React Native để hỗ trợ tính năng Push Notification nhắc lịch đánh giá.
  • Mở rộng mô hình SaaS: Phát triển hệ thống thành nền tảng dịch vụ phần mềm (SaaS) cho phép nhiều trường đại học và cao đẳng cùng tùy biến bộ tiêu chí đánh giá độc lập.

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

+-------------------------------------------------------------------------------+
|                            STAKEHOLDER BENEFITS                               |
+-------------------------------------------------------------------------------+
|  Sinh viên              --> Đánh giá ẩn danh, bảo mật, thao tác tiện lợi     |
|  Giảng viên             --> Nhận phản hồi khách quan, cải tiến giảng dạy     |
|  Trưởng khoa            --> Phân công dự giờ minh bạch, theo dõi realtime    |
|  Ban Giám hiệu / QLĐT   --> Báo cáo tổng hợp tự động, chuẩn hóa dữ liệu      |
|  Lập trình viên         --> Tài liệu tham khảo kiến trúc DDD & Microservices |
+-------------------------------------------------------------------------------+
  • Sinh viên: Được bảo đảm quyền dân chủ và tính ẩn danh tuyệt đối khi đóng góp ý kiến; giao diện trực quan giúp hoàn thành khảo sát môn học chỉ trong 1-2 phút.
  • Giảng viên: Nắm bắt kịp thời các điểm mạnh và điểm cần cải thiện trong phương pháp giảng dạy thông qua bảng tổng hợp điểm chi tiết từng tiêu chí.
  • Trưởng khoa và Hội đồng dự giờ: Số hóa toàn bộ quy trình phân công dự giờ, chấm điểm biên bản giảng dạy không cần giấy tờ, trích xuất báo cáo khoa nhanh chóng.
  • Nhà trường & Đơn vị Quản lý đào tạo: Có nguồn dữ liệu số hóa tin cậy, tức thời để phục vụ công tác kiểm định chất lượng giáo dục, phân bổ lương năng suất và bình xét thi đua minh bạch.
  • Cộng đồng phát triển phần mềm: Cung cấp ca nghiên cứu thực tế (Case Study) hoàn chỉnh về cách áp dụng lý thuyết Domain-Driven Design kết hợp Hasura GraphQL và Clerk trong việc hiện đại hóa các phần mềm giáo dục cũ.

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

1. Yêu cầu kỹ thuật hạ tầng tối thiểu để triển khai hệ thống là gì?

Hệ thống yêu cầu máy chủ chạy hệ điều hành Linux (khuyến nghị Ubuntu 20.04/22.04 LTS), cài đặt sẵn Docker Engine 24.x và Docker Compose. Về phần cứng, cấu hình tối thiểu là 4 vCPU, 8GB RAM và 50GB ổ cứng SSD NVMe để đảm bảo phục vụ 1,500 người dùng truy cập đồng thời.

2. Hệ thống xử lý bài toán nghẽn tải vào các ngày cao điểm khảo sát như thế nào?

Nhờ kiến trúc phân tán tách rời giữa Hasura GraphQL Engine và Database PostgreSQL, hệ thống có thể mở rộng theo chiều ngang (Horizontal Scaling) cho các instance Hasura thông qua Docker Swarm hoặc Kubernetes. Kết hợp cơ chế Connection Pooling của PostgreSQL giúp duy trì hiệu năng ổn định mà không gây tràn kết nối.

3. Làm thế nào để tích hợp hệ thống với phần mềm Quản lý đào tạo sẵn có?

Hệ thống sử dụng tầng Anti-Corruption Layer (ACL) viết bằng Node.js để đóng vai trò chuyển đổi dữ liệu. ACL sẽ gọi các REST API từ phần mềm Edu SIS và QLGD của nhà trường, chuẩn hóa dữ liệu định dạng JSON và đẩy vào cơ sở dữ liệu của Website lấy ý kiến mà không làm thay đổi cấu trúc của hệ thống cũ.

4. Chi phí bản quyền phần mềm và phí bảo trì hàng năm được tính toán ra sao?

Toàn bộ lõi kỹ thuật gồm PostgreSQL, Hasura (Community Edition), Docker và Next.js đều là mã nguồn mở miễn phí. Dịch vụ Clerk cung cấp gói Free Tier hỗ trợ lên đến 10,000 người dùng hoạt động hàng tháng (MAU), hoàn toàn đáp ứng quy mô của trường đại học mà không phát sinh chi phí bản quyền hàng tháng.

5. Dữ liệu đánh giá của sinh viên có thực sự được bảo mật ẩn danh không?

Có. Hệ thống tách biệt hoàn toàn bảng định danh người dùng tại Clerk và bảng lưu trữ chi tiết phản hồi (user_respond_detail). Tại cơ sở dữ liệu nội bộ, thông tin người đánh giá được mã hóa hoặc lưu dưới dạng hash một chiều đối với các bảng tổng hợp công khai, đảm bảo không thể truy ngược danh tính sinh viên từ kết quả điểm số.


Kết luận

Đồ án "Xây dựng Website lấy ý kiến trực tuyến về công tác giảng dạy của giảng viên HPU" do sinh viên Bùi Đức Thắng thực hiện là một công trình nghiên cứu ứng dụng có giá trị thực tiễn cao và tính học thuật vững chắc. Bằng việc làm chủ và kết hợp sáng tạo các công nghệ tiên tiến như kiến trúc Microservices, phương pháp luận Domain-Driven Design (DDD), Hasura GraphQL Engine, và hệ thống xác thực Clerk, đồ án đã số hóa thành công một quy trình hành chính giáo dục phức tạp theo đúng Quyết định số 73/QĐ-HĐT.

Kết quả thực nghiệm minh chứng giải pháp đã loại bỏ hoàn toàn chi phí in ấn giấy tờ, rút ngắn thời gian xử lý dữ liệu từ 14 ngày xuống tức thời và nâng cao tỷ lệ tham gia của người học lên 97.4%. Đây không chỉ là bước tiến quan trọng trong công tác chuyển đổi số của Trường Đại học Quản lý và Công nghệ Hải Phòng mà còn là tài liệu tham khảo kỹ thuật chuẩn mực cho việc ứng dụng kiến trúc phần mềm phân tán vào khối giáo dục đại học.