Tài liệu phân tích hệ thống

Hệ Thống CLS
Đánh Giá Năng Lực

Phân tích và thiết kế hệ thống đánh giá năng lực toàn diện cho học sinh THPT, hỗ trợ luyện thi và dự báo trúng tuyển đại học

📋 Đơn vị: Hương Việt Group 📅 Ngày: 10/03/2026 🔖 Phiên bản: 1.0 📌 Trạng thái: Draft
1

Phát Biểu Bài Toán

1.1 Bối cảnh

Kỳ thi Đánh giá năng lực (ĐGNL) của các Đại học Quốc gia (Hà Nội, TP.HCM), Đại học Bách Khoa... hiện là một trong những phương thức tuyển sinh uy tín nhất cả nước, với hơn 100 trường đại học sử dụng kết quả để xét tuyển.

Riêng năm 2025, hơn 300.000 thí sinh đã tham gia kỳ thi này, cho thấy nhu cầu đánh giá năng lực độc lập, khách quan ngày càng tăng mạnh.

1.2 Vấn đề hiện tại

📝

Thiếu công cụ luyện tập

Học sinh thiếu công cụ luyện tập sát chuẩn cấu trúc đề thi thật của các đại học

📊

Không có phân tích phổ điểm

Không có hệ thống so sánh để biết mình đang ở đâu so với các thí sinh khác

🎯

Không dự báo trúng tuyển

Không được dự báo xác suất trúng tuyển dựa trên dữ liệu thực tế các năm

🗺️

Thiếu lộ trình chiến lược

Không có lộ trình điều chỉnh chiến lược chọn trường, chọn ngành phù hợp năng lực

Tóm lại: Các em có điểm số, nhưng không có hệ thống phân tích đủ sâu để biến điểm số thành chiến lược. Chi phí thi thử từ 200.000 – 300.000 đồng/lần thi cũng tạo áp lực tài chính lớn.

1.3 Giải pháp đề xuất

Hương Việt Group xây dựng Hệ thống CLS – Đánh giá Năng lực với 4 trụ cột chính:

🆓

Đánh giá miễn phí

Tổ chức các đợt đánh giá miễn phí quy mô tỉnh/thành, tự động chấm và trả kết quả ngay

📈

Phân tích tổng quan

So sánh phổ điểm theo khu vực, đánh giá vị trí năng lực trong nhóm tham gia

🤖

AI phân tích chuyên sâu

Dự đoán trúng tuyển, gợi ý chiến lược chọn ngành/trường (Premium)

📅

Theo dõi tiến bộ

Lưu lịch sử, biểu đồ tiến bộ, phân tích xu hướng phát triển năng lực

2

Các Tác Nhân Hệ Thống

Tác nhân Mô tả Vai trò
👨‍🎓 Học sinh (Student) Học sinh THPT tham gia thi đánh giá năng lực Primary Actor
👨‍💼 Quản trị viên (Admin) Quản lý toàn bộ hệ thống, đợt thi, người dùng System Admin
👨‍🏫 Giáo viên / Chuyên gia (Teacher) Biên soạn đề thi, quản lý ngân hàng câu hỏi Content Creator
🤖 Hệ thống AI (AI Engine) Phân tích dữ liệu, dự đoán trúng tuyển, gợi ý chiến lược Automated Service
🏫 Đối tác Đại học (University Partner) Cung cấp dữ liệu điểm chuẩn, cấu trúc đề thi External Actor
3

Sơ Đồ Use Case

Use Case Diagram – Hệ thống ĐGNL CLS
graph TB subgraph Actors S["👨‍🎓 Học sinh"] A["👨‍💼 Admin"] T["👨‍🏫 Giáo viên"] AI["🤖 AI Engine"] end subgraph UC_Auth["🔐 Xác thực"] UC1["Đăng ký tài khoản"] UC2["Đăng nhập"] UC3["Quản lý hồ sơ"] end subgraph UC_Exam["📝 Thi & Đánh giá"] UC4["Xem danh sách đợt thi"] UC5["Đăng ký thi"] UC6["Làm bài thi"] UC7["Nộp bài"] UC8["Xem kết quả"] end subgraph UC_Analysis["📊 Phân tích"] UC9["Xem phổ điểm"] UC10["So sánh năng lực"] UC11["Dự đoán trúng tuyển"] UC12["Gợi ý chọn trường"] UC13["Xem tiến bộ"] end subgraph UC_Admin["⚙️ Quản trị"] UC14["Quản lý đề thi"] UC15["Quản lý đợt thi"] UC16["Quản lý người dùng"] UC17["Xem báo cáo thống kê"] UC18["Quản lý ngân hàng câu hỏi"] end S --> UC1 S --> UC2 S --> UC3 S --> UC4 S --> UC5 S --> UC6 S --> UC7 S --> UC8 S --> UC9 S --> UC10 S --> UC11 S --> UC12 S --> UC13 A --> UC2 A --> UC14 A --> UC15 A --> UC16 A --> UC17 T --> UC2 T --> UC18 T --> UC14 AI --> UC11 AI --> UC12 AI --> UC10 UC7 -.->|auto| UC8 UC8 -.->|includes| UC9

3.1 Chi tiết Use Cases chính

UC06 – Làm bài thi
Tác nhânHọc sinh
Tiền điều kiệnĐã đăng nhập, đã đăng ký đợt thi, đợt thi đang mở
Luồng chính1. Chọn đợt thi → 2. Hệ thống tạo đề ngẫu nhiên → 3. Bắt đầu tính giờ → 4. Trả lời từng câu → 5. Đánh dấu / bỏ qua → 6. Nộp bài
Luồng phụHết giờ → tự động nộp bài. Mất kết nối → lưu tạm, cho phép tiếp tục
Hậu điều kiệnBài thi được chấm tự động, kết quả lưu vào hệ thống
UC11 – Dự đoán trúng tuyển (AI Premium)
Tác nhânHọc sinh, AI Engine
Tiền điều kiệnĐã có kết quả thi, đã mở khóa gói Premium
Luồng chính1. Chọn trường/ngành quan tâm → 2. AI phân tích dữ liệu → 3. Tính xác suất trúng tuyển → 4. Hiển thị kết quả kèm gợi ý
Dữ liệu đầu vàoĐiểm thi ĐGNL, điểm chuẩn các năm, phổ điểm khu vực, chỉ tiêu tuyển sinh
Hậu điều kiệnBáo cáo xác suất trúng tuyển được lưu lại cho học sinh
4

Sơ Đồ ERD – Cơ Sở Dữ Liệu

Entity Relationship Diagram
erDiagram USERS { int user_id PK string full_name string email string phone string password_hash string role "student|teacher|admin" string province string school_name int graduation_year datetime created_at } EXAM_SESSIONS { int session_id PK string session_name string exam_format "DHQG_HN|DHQG_HCM|BACH_KHOA" datetime start_time datetime end_time int duration_minutes string region string status "upcoming|active|completed" boolean is_free } QUESTIONS { int question_id PK int bank_id FK string content_html string option_a string option_b string option_c string option_d string correct_answer string skill_group "tu_duy_logic|ngon_ngu|toan|khoa_hoc|xa_hoi" int difficulty_level "1-5" string exam_format } QUESTION_BANKS { int bank_id PK string bank_name string exam_format int created_by FK int total_questions datetime created_at } EXAM_PAPERS { int paper_id PK int session_id FK string paper_code int total_questions } PAPER_QUESTIONS { int paper_id FK int question_id FK int question_order } STUDENT_EXAMS { int student_exam_id PK int user_id FK int session_id FK int paper_id FK datetime start_time datetime submit_time float total_score string status "in_progress|submitted|graded" } STUDENT_ANSWERS { int answer_id PK int student_exam_id FK int question_id FK string selected_answer boolean is_correct int time_spent_seconds } SKILL_SCORES { int skill_score_id PK int student_exam_id FK string skill_group float score float max_score float percentile } AI_ANALYSES { int analysis_id PK int user_id FK int student_exam_id FK text strengths text weaknesses text recommendations datetime created_at } ADMISSION_PREDICTIONS { int prediction_id PK int analysis_id FK int university_id FK string major_name float predicted_probability float historical_cutoff string recommendation } UNIVERSITIES { int university_id PK string university_name string university_code string city } UNIVERSITY_CUTOFFS { int cutoff_id PK int university_id FK string major_name int year float cutoff_score string exam_format int enrollment_quota } USERS ||--o{ STUDENT_EXAMS : "takes" EXAM_SESSIONS ||--o{ STUDENT_EXAMS : "has" EXAM_SESSIONS ||--o{ EXAM_PAPERS : "contains" EXAM_PAPERS ||--o{ PAPER_QUESTIONS : "includes" QUESTIONS ||--o{ PAPER_QUESTIONS : "appears_in" QUESTION_BANKS ||--o{ QUESTIONS : "contains" STUDENT_EXAMS ||--o{ STUDENT_ANSWERS : "has" STUDENT_EXAMS ||--o{ SKILL_SCORES : "produces" STUDENT_EXAMS ||--o{ AI_ANALYSES : "analyzed_by" AI_ANALYSES ||--o{ ADMISSION_PREDICTIONS : "predicts" UNIVERSITIES ||--o{ ADMISSION_PREDICTIONS : "target" UNIVERSITIES ||--o{ UNIVERSITY_CUTOFFS : "has" EXAM_PAPERS ||--o{ STUDENT_EXAMS : "assigned"

4.1 Mô tả các bảng chính

Bảng Mô tả Số lượng ước tính
USERSThông tin người dùng (học sinh, giáo viên, admin)300,000+
EXAM_SESSIONSCác đợt thi đánh giá năng lực50-100/năm
QUESTIONSNgân hàng câu hỏi theo nhóm kỹ năng10,000+
STUDENT_EXAMSPhiên thi của mỗi học sinh500,000+/năm
STUDENT_ANSWERSĐáp án mỗi câu hỏi của học sinh50,000,000+/năm
SKILL_SCORESĐiểm theo từng nhóm kỹ năng2,500,000+/năm
AI_ANALYSESKết quả phân tích AI chuyên sâu100,000+/năm
UNIVERSITIESDanh sách trường đại học200+
UNIVERSITY_CUTOFFSĐiểm chuẩn tuyển sinh theo năm5,000+
5

Sơ Đồ Luồng Dữ Liệu

Data Flow Diagram – Luồng xử lý chính
flowchart LR subgraph Input["📥 ĐẦU VÀO"] A1["Học sinh đăng ký"] A2["Chọn đợt thi"] end subgraph Process1["⚙️ XỬ LÝ THI"] B1["Xác thực
tài khoản"] B2["Tạo đề thi
ngẫu nhiên"] B3["Giao diện
làm bài"] B4["Thu thập
đáp án"] end subgraph Process2["📊 CHẤM & PHÂN TÍCH"] C1["Chấm điểm
tự động"] C2["Tính điểm
nhóm kỹ năng"] C3["Tính percentile
& phổ điểm"] end subgraph Process3["🤖 AI ENGINE"] D1["Phân tích
điểm mạnh/yếu"] D2["So sánh với
điểm chuẩn"] D3["Dự đoán
trúng tuyển"] D4["Gợi ý
chiến lược"] end subgraph Output["📤 ĐẦU RA"] E1["Kết quả
tức thì"] E2["Báo cáo
phổ điểm"] E3["Báo cáo AI
Premium"] E4["Biểu đồ
tiến bộ"] end A1 --> B1 A2 --> B2 B1 --> B2 B2 --> B3 B3 --> B4 B4 --> C1 C1 --> C2 C2 --> C3 C1 --> E1 C3 --> E2 C2 --> D1 D1 --> D2 D2 --> D3 D3 --> D4 D4 --> E3 C3 --> E4
Sequence Diagram – Quy trình thi và nhận kết quả
sequenceDiagram actor HS as 👨‍🎓 Học sinh participant FE as 🖥️ Frontend participant API as ⚡ API Server participant DB as 🗄️ Database participant AI as 🤖 AI Engine HS->>FE: Đăng nhập FE->>API: POST /auth/login API->>DB: Verify credentials DB-->>API: User data API-->>FE: JWT Token FE-->>HS: Dashboard HS->>FE: Bắt đầu thi FE->>API: POST /exam/start API->>DB: Lấy câu hỏi ngẫu nhiên DB-->>API: Danh sách câu hỏi API-->>FE: Đề thi + Timer FE-->>HS: Giao diện làm bài loop Trả lời câu hỏi HS->>FE: Chọn đáp án FE->>API: PUT /exam/answer API->>DB: Lưu đáp án end HS->>FE: Nộp bài FE->>API: POST /exam/submit API->>DB: Chấm điểm tự động DB-->>API: Kết quả chi tiết API-->>FE: Điểm + Phân tích cơ bản FE-->>HS: Trang kết quả opt Mở khóa AI Premium HS->>FE: Thanh toán Premium FE->>API: POST /payment/unlock API->>AI: Yêu cầu phân tích AI->>DB: Truy vấn dữ liệu DB-->>AI: Dữ liệu lịch sử AI-->>API: Báo cáo AI API-->>FE: Phân tích chuyên sâu FE-->>HS: Trang AI Analysis end
6

Kiến Trúc Hệ Thống

System Architecture Overview
graph TB subgraph Client["🌐 Client Layer"] C1["Web App
(React/Next.js)"] C2["Mobile App
(React Native)"] C3["Admin Panel
(Web)"] end subgraph Gateway["🔀 API Gateway"] GW["API Gateway
Nginx + Rate Limiting
Load Balancer"] end subgraph Services["⚙️ Microservices"] S1["Auth Service
JWT + OAuth2"] S2["Exam Service
Tạo đề, quản lý thi"] S3["Scoring Service
Chấm điểm tự động"] S4["Analytics Service
Phổ điểm, thống kê"] S5["AI Service
Dự đoán, gợi ý"] S6["Payment Service
Thanh toán Premium"] S7["Notification Service
Email, SMS, Push"] end subgraph Data["🗄️ Data Layer"] D1[("PostgreSQL
Primary DB")] D2[("Redis
Cache + Sessions")] D3[("Elasticsearch
Search + Analytics")] D4["S3/MinIO
File Storage"] end subgraph AI_Layer["🤖 AI/ML Layer"] ML1["Prediction Model
XGBoost/LightGBM"] ML2["NLP Analysis
Skill Assessment"] ML3["Recommendation
Engine"] end C1 --> GW C2 --> GW C3 --> GW GW --> S1 GW --> S2 GW --> S3 GW --> S4 GW --> S5 GW --> S6 GW --> S7 S1 --> D1 S1 --> D2 S2 --> D1 S3 --> D1 S3 --> D2 S4 --> D3 S5 --> AI_Layer S6 --> D1 AI_Layer --> D1 AI_Layer --> D3

6.1 Mô tả các thành phần

🌐

Client Layer

Web App (React/Next.js) cho học sinh, Admin Panel riêng, và Mobile App cho trải nghiệm di động

🔀

API Gateway

Nginx làm reverse proxy, rate limiting bảo vệ hệ thống khi 300K+ thí sinh truy cập đồng thời

⚙️

Microservices

7 services độc lập: Auth, Exam, Scoring, Analytics, AI, Payment, Notification

🗄️

Data Layer

PostgreSQL (primary), Redis (cache/sessions), Elasticsearch (analytics), S3 (file storage)

🤖

AI/ML Layer

XGBoost dự đoán trúng tuyển, NLP phân tích kỹ năng, Recommendation Engine gợi ý chiến lược

🔒

Security

JWT + OAuth2, rate limiting, mã hóa dữ liệu, audit logging, GDPR compliance

7

Mô Hình Kinh Doanh

Freemium Business Model
graph LR subgraph Free["🆓 GÓI MIỄN PHÍ"] F1["✅ Thi đánh giá
không giới hạn"] F2["✅ Kết quả tức thì
điểm tổng + phần"] F3["✅ Phổ điểm
khu vực"] F4["✅ Xếp hạng
trong nhóm"] F5["✅ Biểu đồ
tiến bộ cơ bản"] end subgraph Premium["💎 GÓI PREMIUM"] P1["⭐ AI phân tích
chuyên sâu"] P2["⭐ Dự đoán
trúng tuyển"] P3["⭐ Gợi ý chiến lược
chọn trường/ngành"] P4["⭐ So sánh
nhóm kỹ năng"] P5["⭐ Báo cáo PDF
chi tiết"] end Free -.->|"Nâng cấp
~50.000 - 100.000đ"| Premium

Chiến lược: Thi miễn phí để thu hút lượng lớn người dùng → Dữ liệu phổ điểm chính xác hơn → Giá trị AI Premium cao hơn → Conversion rate tăng. Mức phí Premium chỉ bằng 25-50% so với phí thi thử trên thị trường.

7.1 Nguồn doanh thu bổ sung

Nguồn Mô tả Mô hình
Premium AI Report Phân tích chuyên sâu + dự đoán trúng tuyển Per-report
Gói luyện thi Truy cập toàn bộ ngân hàng đề + thi không giới hạn Subscription
B2B – Trường/Sở GD Bán giải pháp đánh giá cho trường THPT, Sở GD&ĐT License
Quảng cáo giáo dục Các trường ĐH quảng bá tuyển sinh trên nền tảng Ads
8

Công Nghệ Sử Dụng

Layer Công nghệ Lý do chọn
Frontend React / Next.js, Chart.js, TailwindCSS SEO, SSR, ecosystem mạnh
Mobile React Native / Flutter Cross-platform, codebase chung
Backend Node.js (NestJS) / Python (FastAPI) High performance, async support
Database PostgreSQL + Redis + Elasticsearch ACID, caching, full-text search
AI/ML Python, scikit-learn, XGBoost, Pandas Ecosystem ML mạnh nhất
Infrastructure Docker, Kubernetes, AWS/GCP Auto-scaling cho 300K+ users
CI/CD GitHub Actions, ArgoCD Automation, GitOps
Monitoring Prometheus, Grafana, Sentry Real-time monitoring, error tracking
9

Lộ Trình Phát Triển

Development Roadmap
gantt title Lộ trình phát triển hệ thống CLS - ĐGNL dateFormat YYYY-MM-DD axisFormat %m/%Y section Phase 1 - MVP Phân tích & Thiết kế :done, p1a, 2026-03-01, 30d UI/UX Design :active, p1b, 2026-03-15, 30d Backend Core :p1c, 2026-04-01, 45d Thi & Chấm điểm cơ bản :p1d, 2026-04-15, 45d Testing & Deploy MVP :p1e, 2026-05-15, 15d section Phase 2 - Analytics Phổ điểm & Thống kê :p2a, 2026-06-01, 30d Dashboard học sinh :p2b, 2026-06-15, 30d Biểu đồ tiến bộ :p2c, 2026-07-01, 20d section Phase 3 - AI Premium AI Prediction Model :p3a, 2026-07-15, 45d Gợi ý chọn trường :p3b, 2026-08-01, 30d Payment Integration :p3c, 2026-08-15, 20d section Phase 4 - Scale Mobile App :p4a, 2026-09-01, 60d B2B Features :p4b, 2026-09-15, 45d Performance Optimization :p4c, 2026-10-15, 30d