RESEARCH_SUMMARY_AND_COMPARISON_REPORT.md
⚡ Executive Intelligence Brief • Verified Standards

BÁO CÁO NGHIÊN CỨU HIỆU NĂNG, TỔNG HỢP NỘI DUNG VÀ SO SÁNH ĐỐI CHIẾU HỆ THỐNG MOE FINANCE

Synthesized technical briefing and verified architecture metrics.

Độ Trưởng Thành Verified
85%
Automated metric extraction
Tài Khoản Giáo Dục Verified
100%
Automated metric extraction
Online Verified
$60
Automated metric extraction
⚡

Core Executive Takeaways

  • ▸**Trụ cột 1 (Req 1 - Vòng đời Tài khoản):**
  • ▸**Trụ cột 2 (Req 3 - Quản trị Dữ liệu Trường & Biểu phí):**
  • ▸**Trụ cột 3 (Req 8 - Cổng Dịch vụ Phụ huynh & SingPass):**
Architecture Scope & Sprint Phasing combo-diagram vector
Sprint 1-2 Core vs Future Increments
flowchart LR subgraph SPRINT_1_2 ["Phạm vi Kiểm thử Sprint 1 & 2"] direction TB R1["Requirement 1
Vòng đời Tài khoản Giáo dục
(Tuổi 7 -> 16 & Nightly Batch)"] R3["Requirement 3
Quản trị Biểu phí & Trường học
(60.5k Cán bộ, Gán phí 40k em)"] R8["Requirement 8
Cổng e-Service Phụ huynh
(SingPass, Tra cứu, AI Chatbot)"] R9["Requirement 9
Thanh toán Phí Đa kênh
(Tài khoản GD, Online, 2PC Kết hợp)"] end R1 <--> R3 R3 --> R9 R8 <--> R9 subgraph FUTURE_SPRINTS ["Dự trù Tài nguyên (Sprint sau)"] direction TB R2["Req 2: Top-Up Ngân sách"] R4["Req 4: Trợ cấp FAS & ML Model"] R5["Req 5: Xử lý Hồ sơ Giấy Offline"] R6["Req 6: Quản lý Hạn mức Ngân sách"] R7["Req 7: Giả lập Góc nhìn (Impersonation)"] R10["Req 10: Nộp đơn FAS Hộ gia đình"] end SPRINT_1_2 -. Kiến trúc mở rộng .-> FUTURE_SPRINTS

BÁO CÁO NGHIÊN CỨU HIỆU NĂNG, TỔNG HỢP NỘI DUNG VÀ SO SÁNH ĐỐI CHIẾU HỆ THỐNG MOE FINANCE#

Tài liệu tham chiếu:

  • docs/01_inputs/Agile business requirement 1.xlsx (Yêu cầu nghiệp vụ thô từ Client)
  • docs/01_inputs/performance-requirements-v0.2.docx (Bản dự thảo đặc tả hiệu năng v0.2)
  • docs/02_specifications/performance-requirements-v1.0.docx / .md (Đặc tả yêu cầu hiệu năng v1.0 hoàn chỉnh)
  • docs/02_specifications/CLIENT_PERFORMANCE_ASSUMPTION_INTERVIEW_NOTE.txt (Biên bản phỏng vấn & xác nhận từ Client)
  • docs/02_specifications/Agile_Business_Requirements_Enterprise.xlsx (Làm rõ nghiệp vụ cấp doanh nghiệp)

MỤC LỤC TỔNG QUAN#

  1. PHẦN I: ĐÁNH GIÁ CHUYÊN SÂU QUÁ TRÌNH RESEARCH ("RESEARCH ĐÃ ỔN CHƯA?")
    • 1.1. Đánh giá tổng quan mức độ trưởng thành (Readiness Scorecard)
    • 1.2. Những điểm xuất sắc đã được củng cố vững chắc (Strengths & Validated Facts)
    • 1.3. Những điểm tồn tại rủi ro & Khoảng trống kỹ thuật cần tháo gỡ (Technical Gaps & Risks)
    • 1.4. Kết luận & Điều kiện tiên quyết để nghiệm thu Research
  2. PHẦN II: TÓM TẮT TOÀN DIỆN NỘI DUNG ĐẶC TẢ HIỆU NĂNG (3-TIER LOSSLESS SUMMARY)
    • 2.1. Tier 1: Tóm lược điều hành cấp cao (Executive Brief - TL;DR)
    • 2.2. Tier 2: Trụ cột kỹ thuật, Ma trận SLA & Giải pháp Ca biên (Technical Deep-Dive)
    • 2.3. Tier 3: Kế hoạch phân công (RACI), Thuật ngữ chuẩn hóa & FAQ Stakeholder
  3. PHẦN III: MA TRẬN SO SÁNH ĐỐI CHIẾU 3 CHIỀU (CROSS-COMPARISON MATRIX)
    • 3.1. Bảng ma trận đối chiếu 3 chiều chi tiết (Client Raw vs v0.2 vs v1.0)
    • 3.2. Phân tích sự chuyển dịch tư duy kiến trúc (Architectural Mindset Evolution)
  4. PHẦN IV: KHUYẾN NGHỊ THỰC THI & LỘ TRÌNH TRIỂN KHAI TIẾP THEO

PHẦN I: ĐÁNH GIÁ CHUYÊN SÂU QUÁ TRÌNH RESEARCH ("RESEARCH ĐÃ ỔN CHƯA?")#

1.1. Đánh giá tổng quan mức độ trưởng thành (Readiness Scorecard)#

Quá trình nghiên cứu và kỹ nghệ yêu cầu (Requirements Engineering) từ tài liệu thô ban đầu đến phiên bản v1.0 đã có một bước nhảy vọt vượt bậc về chất lượng. Nhóm kỹ thuật đã chuyển dịch thành công một tập yêu cầu nghiệp vụ cấp cao (High-Level Business Requirements) thành một bộ đặc tả kiểm thử hiệu năng cấp doanh nghiệp (Enterprise Performance Test Specification) có tính định lượng cao.

Data Comparison Matrix
Tiêu chí đánh giá Điểm số (1-10) Trạng thái Nhận định cốt lõi
Quy mô dữ liệu & Nhân khẩu học 9.5/10 ĐÃ RẤT ỔN Đã phỏng vấn và chốt số liệu nền tảng với MOE: 60.500 cán bộ, 2.000.000 phụ huynh, ~400.000 học sinh.
Mô hình tính toán tải đồng thời (VU) 9.0/10 ĐÃ RẤT ỔN Chuyển đổi khoa học từ User Pool sang Concurrency (5.000 VU đỉnh, 10.000 VU stress) theo benchmark Gov Singapore.
Bóc tách phạm vi theo Sprint (Scoping) 9.0/10 ĐÃ RẤT ỔN Phân ranh giới sắc bén: Sprint 1-2 tập trung Core Finance (Req 1, 3, 8, 9); hoãn FAS & Offline (Req 2, 4, 5, 6, 7, 10).
Giải pháp kiến trúc cho Ca biên (Edge Cases) 8.5/10 KHÁ ỔN Đã có giải thuật Optimistic Locking (HTTP 409), 2-Phase Commit thanh toán kết hợp, cờ CLOSING_PENDING.
Mô phỏng tích hợp bên thứ ba (Mocks) 6.5/10 CẦN BỔ SUNG SingPass, IRAS, Payment Gateway đều là Mock; chưa có mô hình độ trễ mạng thực tế (Network Jitter/Chaos).
Đặc tả hiệu năng AI / Machine Learning 6.0/10 CẦN BỔ SUNG Mới có chỉ số độ trễ cơ bản (TTFT <= 1.5s); thiếu chỉ số chi phí token, rate limit, quota API và tài nguyên GPU.
Phê duyệt chính thức từ Client (Formal Sign-off) 6.0/10 RỦI RO MỞ Toàn bộ các chỉ số SLA (P90, P95, Throughput, Error Rate) vẫn mang nhãn [Assumption] màu vàng, chờ ký duyệt C1.

KẾT LUẬN CHUNG VỀ ĐỘ SẴN SÀNG (OVERALL READINESS: 7.8/10): Nghiên cứu đã RẤT ỔN về mặt Kiến trúc và Thiết kế Kịch bản Tải (Test Design & Sizing), đủ điều kiện để triển khai chạy đo kiểm cơ sở (Round 1 Baseline). Tuy nhiên, CHƯA THỂ COI LÀ HOÀN TẤT TUYỆT ĐỐI nếu chưa thực hiện 3 điều kiện tiên quyết: (1) Trình Product Owner ký duyệt chính thức các Giả định [Assumption]; (2) Hiệu chỉnh Mock Server phản ánh đúng độ trễ biến thiên; và (3) Bổ sung NFR chuyên biệt cho AI Chatbot & ML Model.


1.2. Những điểm xuất sắc đã được củng cố vững chắc (Strengths & Validated Facts)#

  1. Thoát khỏi cái bẫy "Mô hình đồ chơi" (Toy Prototype Trap) của bản v0.2:
    • Trong bản v0.2, nhóm thiết kế giả định hệ thống là "training prototype" chỉ với 10 cán bộ, 20 phụ huynh đồng thời và tập dữ liệu mẫu $N$ không rõ kích thước.
    • Lên bản v1.0, qua buổi phỏng vấn trực tiếp với Client (CLIENT_PERFORMANCE_ASSUMPTION_INTERVIEW_NOTE.txt), hệ thống đã được xác định là nền tảng tài chính quốc gia phục vụ Bộ Giáo dục Singapore.
  2. Xác nhận được toàn bộ số liệu nhân khẩu học (Demographics Confirmed):
    • Đã chốt trực tiếp với Client các con số: 500 cán bộ MOE HQ, 60.000 giáo vụ tại 300 trường học (mỗi trường 200 user), 2.000.000 tài khoản phụ huynh đăng ký, khung giờ hoạt động chính thức (8:00 - 19:00 với cán bộ; 6:00 - 02:00 sáng hôm sau với phụ huynh).
  3. Mô hình suy diễn lưu lượng khoa học (Concurrency Derivation):
    • Khi Client từ chối đưa ra số VU đồng thời và ủy quyền cho nhóm kỹ thuật tự tính toán, nhóm đã áp dụng chuẩn e-Services của Chính phủ Singapore:
      • Tỷ lệ phụ huynh đồng thời cao điểm: $0.225% \times 2.000.000 = 4.500\text{ VU}$.
      • Tỷ lệ cán bộ giáo vụ đồng thời cao điểm: $\sim 0.83% \times 60.500 = 500\text{ VU}$.
      • Tổng lưu lượng chịu tải cao điểm chuẩn hóa: $5.000\text{ VU}$ (với tải thường nhật là $2.500\text{ VU}$, tải căng thẳng Stress là $7.500\text{ VU}$, và tải đột biến Spike là $10.000\text{ VU}$).
  4. Phân tách ranh giới rõ ràng (Explicit Scoping):
    • Phân biệt minh bạch giữa phần triển khai ngay trong Sprint 1-2 (Req 1: Tài khoản, Req 3: Biểu phí, Req 8: Cổng phụ huynh, Req 9: Thanh toán) và phần hoãn lại Sprint sau (Req 2: Top-Up ngân sách, Req 4: FAS/Trợ cấp, Req 5: Hồ sơ giấy, Req 6: Theo dõi ngân sách, Req 7: Giả lập góc nhìn, Req 10: Nộp FAS hộ gia đình). Kiến trúc dữ liệu vẫn được dự trù đủ chỗ cho quy mô toàn quốc.
  5. Thiết kế giải pháp ca biên có chiều sâu kỹ thuật:
    • Đưa ra cơ chế khóa lạc quan (Optimistic Locking) với mã phản hồi HTTP 409 Conflict khi 2 giáo vụ sửa cùng học sinh.
    • Cơ chế ủy thác 2 pha (Two-Phase Commit / Atomic Hold) cho thanh toán kết hợp (vừa trừ tài khoản vừa quẹt thẻ).
    • Cơ chế máy trạng thái CLOSING_PENDING chống xung đột tiền tệ khi tài khoản hết hạn đúng lúc đang thực hiện thanh toán.

1.3. Những điểm tồn tại rủi ro & Khoảng trống kỹ thuật cần tháo gỡ (Technical Gaps & Risks)#

⚠️ WARNING

Rủi ro 1: Toàn bộ tiêu chí nghiệm thu hiệu năng vẫn là [Assumption] (Chưa có chữ ký PO/PM) Toàn bộ 14 câu hỏi trong Bảng Open Questions và bảng SLA (P90 <= 1.5s, P95 <= 2.0s, P99 <= 3.0s, Tỷ lệ lỗi < 0.1%) mới chỉ là đề xuất đơn phương từ nhóm kỹ thuật. Nếu PO bác bỏ các con số này ở Vòng 2, toàn bộ công sức benchmark sẽ phải làm lại từ đầu.

🛑 CAUTION

Rủi ro 2: "Ảo giác hiệu năng" do Mock API bên thứ ba (Third-Party Fidelity Risk) Trong giai đoạn thử nghiệm, cả 4 API ngoại vi quan trọng đều chạy Mock:

  • Cổng định danh SingPass (Mock OIDC)
  • Cổng tra cứu thu nhập IRAS (Mock API)
  • Cổng thanh toán ngân hàng (Mock Payment Gateway)
  • Mô hình AI Chatbot / FAS ML Nếu các server Mock này trả lời siêu tốc với độ trễ tĩnh (static 50ms) mà không tái hiện độ trễ mạng thực tế (200ms - 800ms) kèm độ trễ dao động (jitter), hệ thống sẽ đạt điểm test rất cao trên phòng lab nhưng sẽ bị sập nghẽn cổ chai (thread exhaustion/connection pool starvation) khi kết nối mạng thật.

[!NOTE] Rủi ro 3: Khoảng trống đặc tả NFR cho Trí tuệ Nhân tạo (AI/LLM Non-Functional Gap) Tài liệu v1.0 mới chỉ đề cập Time-To-First-Token (TTFT <= 1.5s) và tổng thời gian phản hồi (<= 4.0s) cho 100 phiên chat đồng thời. Tuy nhiên, AI Client API phụ thuộc vào endpoint do khách hàng cấp với các ràng buộc khắt khe:

  • Giới hạn hạn mức (Rate limit/TPM/RPM) của API Key khách hàng cung cấp là bao nhiêu?
  • Khi 500 phụ huynh cùng hỏi Chatbot vào ngày thu học phí, cơ chế hàng đợi (Queue) hay từ chối tải (Degradation) sẽ hoạt động thế nào?
  • Chưa có chỉ số tài nguyên và độ trễ phân tán cho mô hình Machine Learning xếp hạng rủi ro tài chính (Req 4).

[!IMPORTANT] Rủi ro 4: Môi trường kiểm thử (Staging Parity) Kịch bản v1.0 yêu cầu tạo 400.000 tài khoản học sinh, 60.500 tài khoản cán bộ và đẩy tải lên tới 10.000 VU. Nếu môi trường Staging/Test không có cấu hình mạng, tài nguyên CPU/RAM, Database Read/Write Replica tương đương Production, kết quả kiểm thử sẽ hoàn toàn sai lệch.


1.4. Kết luận & Điều kiện tiên quyết để nghiệm thu Research#

ĐÁNH GIÁ CUỐI CÙNG: Quá trình Research ĐÃ ĐẠT 85% ĐỘ TRƯỞNG THÀNH cần thiết cho giai đoạn lập kế hoạch kiểm thử (Test Planning). Tài liệu v1.0 là một bản đặc tả chất lượng rất cao, chặt chẽ và bám sát thực tế hơn v0.2 nhiều lần.

4 ĐIỀU KIỆN TIÊN QUYẾT TRƯỚC KHI BẮT ĐẦU CHẠY LOAD TEST:

  1. Tổ chức buổi họp ký duyệt Gate C1: Trình bày bảng 5. Open Questions và bảng 2.6 Consolidated Thresholds cho PM/PO để chuyển đổi toàn bộ nhãn màu vàng [Assumption] thành nhãn màu xanh lá [Approved/Confirmed].
  2. Cấu hình Mock Server có biến thiên độ trễ (Latency Jitter & Fault Injection): Đảm bảo Mock Payment Gateway mô phỏng đúng $400\text{ms} - 800\text{ms}$ và có tỷ lệ trả về timeout/error ngẫu nhiên ($0.5%$).
  3. Thống nhất cấu hình môi trường Test: Xác định tài nguyên cụm Pod Kubernetes (bao nhiêu replicas, bao nhiêu vCPU, bao nhiêu worker thread cho Batch job).
  4. Chốt giới hạn API AI: Nhận hạn ngạch API chính thức từ khách hàng trước khi mở kịch bản kiểm thử tải AI Assistant.

PHẦN II: TÓM TẮT TOÀN DIỆN NỘI DUNG ĐẶC TẢ HIỆU NĂNG (3-TIER LOSSLESS SUMMARY)#

Tuân thủ nghiêm ngặt kỹ thuật tổng hợp không suy hao thông tin (Lossless 3-Tier Cognitive Synthesis), toàn bộ nội dung của đặc tả v1.0 được cấu trúc thành 3 tầng nhận thức:

+-------------------------------------------------------------------------+
|  TIER 1: EXECUTIVE BRIEF (TL;DR)                                        |
|  Bản chất hệ thống, Phân kỳ Sprint, Quy mô quốc gia & Tóm tắt kết luận |
+-------------------------------------------------------------------------+
                                     |
                                     v
+-------------------------------------------------------------------------+
|  TIER 2: TRỤ CỘT KỸ THUẬT, MA TRẬN SLA & GIẢI PHÁP CA BIÊN (DEEP-DIVE)   |
|  - 4 Phân hệ Core: Req 1 (Account/Batch), Req 3 (School/Fee),            |
|                    Req 8 (Parent/SingPass), Req 9 (Payment)             |
|  - Ma trận ngưỡng định lượng (P90/P95/P99, Batch, Error Rate)            |
|  - Mô hình 4 bài test: Load (5k), Stress (7.5k), Spike (10k), Soak (8h)  |
|  - Giải pháp ca biên: Optimistic Lock, 2PC, CLOSING_PENDING             |
|  - Sơ đồ tương tác kiến trúc (Mermaid State / Sequence / Flow)          |
+-------------------------------------------------------------------------+
                                     |
                                     v
+-------------------------------------------------------------------------+
|  TIER 3: KẾ HOẠCH HÀNH ĐỘNG, THUẬT NGỮ CHUẨN HÓA & FAQ STAKEHOLDER      |
|  Checklist RACI theo vai trò, Từ điển thuật ngữ & Giải đáp thắc mắc      |
+-------------------------------------------------------------------------+

2.1. Tier 1: Tóm lược điều hành cấp cao (Executive Brief - TL;DR)#

  1. Hệ thống là gì và phục vụ ai?
    • Hệ thống Quản lý Tài chính Bộ Giáo dục Singapore (MOE Finance System) là nền tảng số hóa quản lý tài khoản giáo dục cho toàn bộ công dân nhí Singapore từ 7 đến 16 tuổi, phục vụ thu - chi học phí, quản lý trợ cấp tài chính (FAS) và hỗ trợ thanh toán trực tuyến cho phụ huynh.
  2. Quy mô dân số & Nền tảng thiết kế:
    • Hệ thống được thiết kế theo quy mô cấp quốc gia: 60.500 cán bộ (500 MOE HQ + 60.000 giáo vụ tại 300 trường học), 2.000.000 tài khoản phụ huynh, và ~400.000 tài khoản học sinh đang hoạt động (~40.000 học sinh/lứa tuổi).
  3. Phân kỳ phạm vi chuyển giao (Sprint Scope):
    • Sprint 1 & Sprint 2: Tập trung 4 yêu cầu giao dịch cốt lõi: Tạo/đóng tài khoản giáo dục tự động (Req 1); Quản lý biểu phí nhà trường (Req 3); Cổng dịch vụ phụ huynh qua SingPass (Req 8); và Thanh toán học phí đa phương thức (Req 9).
    • Các Sprint tiếp theo: Mở rộng nạp tiền ngân sách (Req 2), quy trình trợ cấp tài chính FAS & Machine Learning chấm điểm (Req 4), hồ sơ giấy offline (Req 5), thống kê ngân sách (Req 6), giả lập góc nhìn (Req 7), nộp đơn FAS gia đình (Req 10).
  4. Lưu lượng tải đỉnh & Ngưỡng SLA then chốt:
    • Hệ thống thiết kế chịu tải cao điểm chuẩn 5.000 người dùng đồng thời (VU) (4.500 phụ huynh + 500 cán bộ).
    • SLA phản hồi giao dịch tra cứu: $P95 \le 1.5 - 2.0\text{ giây}$, $P99 \le 2.5 - 3.0\text{ giây}$.
    • SLA phản hồi ghi dữ liệu/thanh toán: $P95 \le 2.0 - 3.0\text{ giây}$, $P99 \le 3.0 - 5.0\text{ giây}$.
    • Tỷ lệ lỗi cho phép: $< 0.1%$ ở tải chuẩn, $\le 1.0%$ ở tải căng thẳng cực hạn.
    • Batch Job xử lý 40.000 học sinh hoàn tất trong $\le 15\text{ phút}$ (hoặc 400.000 tài khoản trong $\le 45\text{ phút}$).

2.2. Tier 2: Trụ cột kỹ thuật, Ma trận SLA & Giải pháp Ca biên (Technical Deep-Dive)#

A. Bóc tách 4 Trụ cột Nghiệp vụ trong Phạm vi Kiểm thử

Vòng đời Tài khoản

Req 1
  • ▸Tự động kích hoạt khi trẻ tròn 7 tuổi; tự động đóng khi trẻ tròn 16 tuổi (không phụ thuộc việc đang đi học hay nghỉ học).
  • ▸Số dư còn lại khi đóng tài khoản được tự động quét chuyển sang Quỹ Tiết kiệm Trung ương (CPF).
  • ▸Vận hành dưới dạng Batch Job ban đêm (02:00 sáng). Năng lực xử lý $\ge 150\text{ bản ghi/giây}$ với 8 luồng song song trên mỗi container pod.

Quản trị Dữ liệu Trường & Biểu phí

Req 3
  • ▸Quản trị 350 trường học, 50.000 lớp học, 400.000 hồ sơ học sinh.
  • ▸Phục vụ đồng thời 500 cán bộ cao điểm (300 cán bộ giờ hành chính bình thường).
  • ▸Tính năng gán phí hàng loạt (Bulk Fee Assignment) cho 40.000 học sinh của một khối/lứa tuổi phải chạy xong dưới 10 phút mà không làm nghẽn giao dịch trực tuyến của giáo vụ khác.

Cổng Dịch vụ Phụ huynh & SingPass

Req 8
  • ▸Phụ huynh đăng nhập bảo mật qua SingPass OIDC (Mô phỏng độ trễ stub 150-250ms).
  • ▸Tra cứu số dư tài khoản giáo dục, lịch sử giao dịch và cập nhật thông tin liên lạc (địa chỉ, số điện thoại).
  • ▸Tích hợp AI Chatbot hướng dẫn phụ huynh tra cứu chức năng cổng (SLA: TTFT $\le 1.5\text{s}$, phản hồi đầy đủ $\le 4.0\text{s}$ với 100 phiên đồng thời).

Thanh toán Học phí Đa kênh & Đối soát

Req 9
  • ▸Phụ huynh có thể thanh toán qua 3 hình thức: (1) Trừ 100% tài khoản giáo dục; (2) Trực tuyến 100% qua thẻ/ngân hàng; (3) Thanh toán kết hợp (Split Payment).
  • ▸Yêu cầu đối soát tuyệt đối $100\%$: Không được có giao dịch thất lạc, không được trừ tiền trùng lặp (Zero double-charging, Zero lost payments).

B. Ma trận Ngưỡng Chấp thuận Hiệu năng Định lượng (Consolidated SLA Matrix)

Data Comparison Matrix
Thao tác nghiệp vụ Req Tải kiểm thử (VUs / Quy mô) Ngưỡng P90 Ngưỡng P95 Ngưỡng P99 Tỷ lệ lỗi tối đa Tiêu chuẩn tính đúng đắn
Batch Job Mở/Đóng Tài khoản 1 40.000 (khối) / 400.000 (toàn quốc) — — — $0%$ lỗi hệ thống $\le 15\text{m}$ (40k), $\le 45\text{m}$ (400k). 0 thất lạc, 0 trùng lặp.
Gán học phí hàng loạt (Bulk Fee) 3 40.000 học sinh (cùng 50 staff thao tác) — — — $0%$ sai lệch Hoàn tất $\le 10\text{ phút}$. 100% số tiền gán chính xác.
Giao diện Cán bộ (Staff Tra cứu) 3 500 Cán bộ đồng thời (Peak) $\le 1.0\text{s}$ $\le 1.5\text{s}$ $\le 2.5\text{s}$ $< 0.1%$ Hiển thị đầy đủ cây trường, lớp, học sinh.
Giao diện Cán bộ (Staff Cập nhật) 3 50 Cán bộ ghi đồng thời $\le 1.5\text{s}$ $\le 2.0\text{s}$ $\le 3.0\text{s}$ $< 0.1%$ Bắt xung đột sửa trùng bằng mã HTTP 409.
Đăng nhập SingPass (Simulated) 8 4.500 Phụ huynh đồng thời $\le 1.0\text{s}$ $\le 1.5\text{s}$ $\le 2.5\text{s}$ $< 0.1%$ Định danh chính xác theo SingPass NRIC.
Phụ huynh xem số dư & lịch sử GD 8 4.500 Phụ huynh đọc đồng thời $\le 1.0\text{s}$ $\le 1.5\text{s}$ $\le 2.5\text{s}$ $< 0.1%$ Cách ly dữ liệu tuyệt đối giữa các gia đình.
Phụ huynh cập nhật thông tin cá nhân 8 500 Phụ huynh cập nhật đồng thời $\le 1.5\text{s}$ $\le 2.0\text{s}$ $\le 3.0\text{s}$ $< 0.1%$ Lưu ngay lập tức không cần duyệt tay.
Trò chuyện cùng AI Chatbot 8 100 Phiên chat tương tác đồng thời TTFT $\le 1.0\text{s}$ TTFT $\le 1.5\text{s}$ Full $\le 4.0\text{s}$ $< 1.0%$ Câu trả lời chuẩn nghiệp vụ, không ảo giác.
Phụ huynh xem biểu phí chưa đóng 9 4.500 Phụ huynh tra cứu hóa đơn $\le 1.0\text{s}$ $\le 1.5\text{s}$ $\le 2.5\text{s}$ $< 0.1%$ Số tiền khớp chính xác với cấu hình Req 3.
Thanh toán trừ Tài khoản Giáo dục 9 100 GD/giây $\le 1.5\text{s}$ $\le 2.0\text{s}$ $\le 3.0\text{s}$ $< 0.1%$ Trừ tiền nguyên tử (Atomic balance deduction).
Thanh toán Online (Thẻ/Ngân hàng) 9 100 GD/giây $\le 2.0\text{s}$ $\le 3.0\text{s}$ $\le 5.0\text{s}$ $< 0.1%$ Mock Payment độ trễ 400-800ms; đối soát 100%.
Thanh toán Kết hợp (Split Payment) 9 50 GD/giây $\le 2.0\text{s}$ $\le 3.0\text{s}$ $\le 5.0\text{s}$ $< 0.1%$ Tổng phần tài khoản + phần online = Tổng phí.

C. Thiết kế Kịch bản Tải Đa Tầng (Load Modeling Architecture)

Data Comparison Matrix
Kịch bản kiểm thử Lưu lượng phụ huynh Lưu lượng cán bộ Tổng VU Thời lượng đo Mục đích kiểm chứng
1. Baseline Performance 500 VUs 50 VUs 550 VUs 30 phút Đo đạc đường cơ sở hiệu năng ban đầu, phát hiện lỗi nghẽn code thô.
2. Peak Load (Tiêu chuẩn) 4.500 VUs 500 VUs 5.000 VUs 60 phút Kiểm chứng khả năng đáp ứng SLA trong điều kiện cao điểm ngày đóng học phí.
3. Stress Load (150% Tải) 6.750 VUs 750 VUs 7.500 VUs 60 phút Đánh giá hành vi suy hao mềm (Graceful degradation) khi hệ thống quá tải.
4. Spike Load (200% Đột biến) 9.000 VUs 1.000 VUs 10.000 VUs 15 phút Kiểm tra khả năng tự hồi phục sau khi lưu lượng tăng đột ngột rồi rút lui.
5. Soak / Endurance Test 2.250 VUs 250 VUs 2.500 VUs 8 – 12 giờ Phát hiện rò rỉ bộ nhớ (Memory Leak), cạn kiệt Connection Pool và nghẽn Disk I/O.

D. Giải pháp Kiến trúc Xử lý Các Ca Biên Kỹ thuật Hiểm hóc

1. Xung đột ghi đồng thời khi 2 giáo vụ sửa cùng một học sinh (Concurrent Staff Edit)
  • Vấn đề: Hai cán bộ ở cùng trường hoặc giữa trường và HQ cùng mở hồ sơ một học sinh và bấm Lưu chênh nhau vài mili-giây, dẫn tới mất mát dữ liệu (Lost Update).
  • Giải pháp v1.0: Áp dụng cơ chế Khóa lạc quan (Optimistic Locking) kèm trường version trong cơ sở dữ liệu.
    • Người dùng bấm Lưu trước: Thành công, version tăng lên $N+1$.
    • Người dùng bấm Lưu sau: Hệ thống phát hiện version gửi lên ($N$) cũ hơn DB ($N+1$), lập tức trả về mã lỗi HTTP 409 Conflict kèm thông báo trực quan, từ chối ghi đè và yêu cầu người dùng nạp lại dữ liệu mới nhất.
2. Ca biên thanh toán kết hợp (Split Payment Race Condition)
  • Vấn đề: Phụ huynh thanh toán hóa đơn 100$ bằng cách trừ 40$ từ tài khoản giáo dục và quẹt thẻ online 60$. Nếu phần online thất bại do mất mạng ngân hàng, 40$ tài khoản giáo dục sẽ bị "treo" hoặc bị mất.
  • Giải pháp v1.0: Áp dụng mô hình Giao dịch phân tán 2 pha (2-Phase Commit / Atomic Reservation):
Technical Workflow & State Transition Mermaid Vector
sequenceDiagram autonumber actor Parent as Phụ huynh participant Portal as Cổng e-Service participant EduAcc as Dịch vụ Tài khoản GD participant Bank as Cổng Ngân hàng (Mock) participant Ledger as Sổ cái Kế toán Parent->>Portal: Yêu cầu thanh toán kết hợp ($40 TKGD + $60 Online) Portal->>EduAcc: 1. HOLD_BALANCE: Khóa giữ $40 (Trạng thái PENDING_PAYMENT) EduAcc-->>Portal: Xác nhận giữ tiền thành công Portal->>Bank: 2. Gửi yêu cầu trừ $60 thẻ ngân hàng alt Thanh toán Ngân hàng Thành công Bank-->>Portal: Phản hồi Thành công (HTTP 200) Portal->>EduAcc: 3a. COMMIT_DEDUCT: Trừ dứt điểm $40 Portal->>Ledger: 3b. Ghi sổ cái hóa đơn đã thanh toán $100 Portal-->>Parent: Báo thành công, cấp biên lai else Thanh toán Ngân hàng Thất bại hoặc Timeout Bank-->>Portal: Lỗi thanh toán / Hết hạn kết nối Portal->>EduAcc: 3c. RELEASE_HOLD: Hoàn lại $40 vào số dư khả dụng Portal-->>Parent: Báo lỗi thanh toán online, không trừ tiền TKGD end
3. Đóng tài khoản khi đang có giao dịch thanh toán dở dang (Account Closure Conflict)
  • Vấn đề: Batch Job chạy lúc 02:00 sáng để đóng tài khoản của học sinh tròn 16 tuổi và chuyển tiền về CPF, đúng lúc phụ huynh đang thực hiện giao dịch thanh toán học phí lúc 01:59.
  • Giải pháp v1.0: Áp dụng máy trạng thái trung gian CLOSING_PENDING:
Technical Workflow & State Transition Mermaid Vector
stateDiagram-v2 [*] --> ACTIVE: Trẻ tròn 7 tuổi (Kích hoạt tự động) state ACTIVE { [*] --> IDLE IDLE --> TRANSACTION_IN_FLIGHT: Phụ huynh thực hiện thanh toán TRANSACTION_IN_FLIGHT --> IDLE: Thanh toán hoàn tất } ACTIVE --> CLOSING_PENDING: Tròn 16 tuổi NHƯNG có GD in-flight ACTIVE --> CLOSED: Tròn 16 tuổi VÀ số dư tĩnh (0 GD in-flight) CLOSING_PENDING --> CLOSED: Đợi GD in-flight kết thúc & Khóa tài khoản CLOSED --> CPF_TRANSFERRED: Quét sạch số dư còn lại chuyển sang CPF CPF_TRANSFERRED --> [*]

2.3. Tier 3: Kế hoạch phân công (RACI), Thuật ngữ chuẩn hóa & FAQ Stakeholder#

A. Ma trận Trách nhiệm Thực thi (RACI Matrix)

Data Comparison Matrix
Hạng mục công việc cần triển khai Product Owner (PO) Project Manager (PM) Dev Lead QA / Performance Lead DevOps / Infra
Ký duyệt văn bản Giả định & SLA (Exit Gate C1) A / R R C C I
Thiết lập Mock Service có biến thiên Jitter & Error I I R C A
Sinh dữ liệu kiểm thử (Seeding 400k học sinh, 60k staff) I I R A C
Xây dựng kịch bản kiểm thử JMeter / k6 (5k - 10k VU) I I C A / R C
Thiết lập giám sát hạ tầng (APM, Grafana, DB Slow Query) I I C C A / R
Chạy Round 1 Baseline & Ghi nhận bảng đo lường thực tế I I C A / R C
Sửa lỗi hiệu năng (Remediation) & Chạy Round 2 (Gate C2) I A R R C

(Ghi chú: R = Responsible - Người thực hiện; A = Accountable - Người phê duyệt/chịu trách nhiệm chính; C = Consulted - Người tham vấn; I = Informed - Người được thông báo).


B. Từ điển Thuật ngữ Chuẩn hóa (Glossary)

  • SingPass: Hệ thống định danh điện tử quốc gia của Chính phủ Singapore, đóng vai trò Cổng xác thực danh tính duy nhất cho phụ huynh.
  • CPF (Central Provident Fund): Quỹ Tiết kiệm Trung ương Singapore, nơi toàn bộ số dư còn lại của tài khoản giáo dục sẽ tự động chuyển về sau khi học sinh tròn 16 tuổi.
  • MOEFAS / SBFAS: MOEFAS là Chương trình Trợ cấp Tài chính tiêu chuẩn cấp quốc gia của Bộ Giáo dục; SBFAS là Quỹ Trợ cấp riêng do từng trường tự chủ duyệt ngân sách.
  • Virtual Users (VU): Số lượng người dùng ảo được sinh ra từ công cụ kiểm thử tải (như k6, JMeter) nhằm mô phỏng hành vi của người dùng thực.
  • Percentile (P90, P95, P99): Chỉ số bách phân vị đo độ trễ. Ví dụ: $P95 \le 2.0\text{s}$ nghĩa là $95%$ tổng số yêu cầu gửi lên máy chủ phản hồi trong vòng dưới $2.0$ giây, chỉ có tối đa $5%$ yêu cầu vượt quá con số này.
  • Optimistic Locking: Cơ chế khóa lạc quan không giam giữ tài nguyên DB, chỉ so sánh số hiệu phiên bản (version) lúc ghi để ngăn ngừa ghi đè dữ liệu xung đột.
  • Two-Phase Commit (2PC): Giao dịch phân tán 2 pha đảm bảo tính nguyên tử (Atomicity): hoặc là cả tài khoản nội bộ và cổng ngân hàng đều hoàn tất, hoặc là hủy bỏ và hoàn tiền toàn bộ.

C. Bảng Giải đáp Thắc mắc Thường gặp của Stakeholder (FAQ)

Q1: Tại sao hệ thống có 2 triệu phụ huynh mà kiểm thử tải cao điểm chỉ chạy 5.000 VU? Con số này có quá thấp không?

Trả lời: Không hề thấp. Có sự khác biệt cốt lõi giữa Tổng số tài khoản đăng ký (Registered Pool) và Số người cùng bấm nút tại một thời điểm (Concurrent Active Users). Theo số liệu vận hành thực tế của các dịch vụ công Chính phủ Singapore (như GovTech e-Services), tỷ lệ đồng thời của người dân thường dao động từ $0.1%$ đến $0.3%$. Với $2.000.000$ tài khoản phụ huynh, tỷ lệ $0.225%$ tương ứng $4.500\text{ VU}$. Khi cộng thêm $500$ cán bộ giáo vụ ($~1%$ của $60.500$ cán bộ), tổng tải đồng thời $5.000\text{ VU}$ sinh ra lưu lượng cực lớn (khoảng $1.000 - 2.500\text{ Requests/Giây}$ tùy thuộc think-time). Ngoài ra, tài liệu v1.0 đã dự phòng kịch bản Stress $7.500\text{ VU}$ và Spike $10.000\text{ VU}$ để thử thách sức chịu đựng tối đa của hệ thống.

Q2: Tại sao 6 yêu cầu (Req 2, 4, 5, 6, 7, 10) bị loại khỏi đợt test Sprint 1-2 này? Có phải bỏ quên không?

Trả lời: Hoàn toàn không bỏ quên. Trong mô hình phát triển phần mềm Agile/Scrum, các chức năng được phân phối theo từng phân kỳ tăng trưởng (Sprint Increments). Sprint 1 và 2 tập trung xây dựng nền móng giao dịch cốt lõi: tạo tài khoản, quản lý dữ liệu trường lớp, hiển thị hóa đơn và thanh toán (Req 1, 3, 8, 9). Các tính năng phức tạp như phê duyệt trợ cấp tài chính FAS kèm AI chấm điểm (Req 4) hay quy trình số hóa đơn giấy (Req 5) thuộc về các Sprint sau. Tuy nhiên, kiến trúc hạ tầng và cơ sở dữ liệu ở v1.0 đã được thiết kế sẵn sàng cho quy mô quốc gia 400.000 học sinh để khi lắp ghép các Sprint sau vào sẽ không bị vỡ hiệu năng.

Q3: Nếu Mock SingPass và Mock Ngân hàng phản hồi nhanh bất thường thì kết quả test có giá trị không?

Trả lời: Đó chính là lý do Tiêu chí kiểm thử v1.0 quy định rõ Mock không được chạy ở chế độ "tức thời" (instant stub 0ms). Nhóm phát triển bắt buộc phải gán độ trễ giả lập đúng chuẩn thực tế: SingPass là $150 - 250\text{ms}$, Cổng thanh toán là $400 - 800\text{ms}$. Nếu không cài đặt độ trễ này, các connection pool trên máy chủ backend sẽ giải phóng quá nhanh, dẫn tới kết quả kiểm thử không phản ánh đúng nguy cơ nghẽn mạng ngoài đời thực.


PHẦN III: MA TRẬN SO SÁNH ĐỐI CHIẾU 3 CHIỀU (CROSS-COMPARISON MATRIX)#

3.1. Bảng ma trận đối chiếu 3 chiều chi tiết#

Dưới đây là bảng đối chiếu chi tiết giữa (1) Tài liệu yêu cầu thô từ Client (Agile business requirement 1.xlsx), (2) Bản thảo sơ khai v0.2 (performance-requirements-v0.2.docx), và (3) Bản đặc tả hoàn thiện v1.0 (performance-requirements-v1.0.docx / .md):

Data Comparison Matrix
Tiêu chí so sánh (1) Client Raw Requirements
Agile business requirement 1.xlsx
(2) Bản thảo Sơ khai v0.2
performance-requirements-v0.2.docx
(3) Đặc tả Hoàn thiện v1.0
performance-requirements-v1.0.docx
Ý nghĩa kỹ thuật & Sự khác biệt mấu chốt
Bản chất tài liệu Danh mục yêu cầu chức năng nghiệp vụ (Functional Backlog) gồm đúng 10 dòng. Dự thảo yêu cầu hiệu năng đầu tiên dựa trên suy đoán kỹ thuật nội bộ. Đặc tả yêu cầu hiệu năng hoàn chỉnh cấp quốc gia sau phỏng vấn Client. Từ bài toán nghiệp vụ thuần túy -> Kỹ thuật hóa thô sơ -> Tiêu chuẩn kỹ thuật doanh nghiệp chuẩn hóa.
Phạm vi chức năng (Scope) Toàn diện 10 yêu cầu chức năng (Req 1 đến Req 10) không phân kỳ. Cắt giảm còn 4 yêu cầu (Req 1, 3, 8, 9). Không giải thích rõ số phận 6 yêu cầu còn lại. Xác lập rõ ràng: Req 1, 3, 8, 9 thuộc Sprint 1-2. Req 2, 4, 5, 6, 7, 10 hoãn sang Sprint sau nhưng đã dự trù tài nguyên. v1.0 áp dụng chuẩn quản trị Agile Scrum chuẩn mực, tránh phình phạm vi nhưng vẫn nhìn thấy bức tranh tổng thể.
Quy mô dân số & Dữ liệu N Không đề cập bất kỳ con số nào về số lượng người dùng hay kích thước dữ liệu. Xem hệ thống là "Training Prototype", kích thước $N$ bỏ trống dạng ẩn số (A-1). Đã xác nhận với Client: 60.500 cán bộ, 2 triệu phụ huynh, 400.000 tài khoản học sinh. Chấm dứt sự mơ hồ. Cơ sở dữ liệu và dung lượng bảng được định cỡ chính xác cho toàn quốc.
Mô hình tải người dùng (Concurrency) Hoàn toàn không có khái niệm tải đồng thời (NFRs = 0). Tải cực nhỏ (Mô hình đồ chơi): 10 cán bộ, 20 phụ huynh, 5 phụ huynh cập nhật (A-4). Quy mô thực tế: 5.000 VU tải đỉnh (500 cán bộ + 4.500 phụ huynh), 10.000 VU tải đột biến. Tăng tải kiểm thử lên 250 lần, phản ánh đúng bản chất hệ thống công dân quốc gia.
Các kịch bản kiểm thử tải Không có. Chỉ có tải kiểm thử thông thường (Load testing). Không có Stress, Spike, Soak. Đầy đủ 5 kịch bản tiêu chuẩn: Baseline (550 VU), Peak (5k VU), Stress (7.5k VU), Spike (10k VU), Soak (2.5k VU / 8h). v1.0 tuân thủ đầy đủ chuẩn kiểm thử hiệu năng quốc tế (ISTQB Performance Testing).
Tiêu chí độ trễ (Response Time SLA) Không có. P95 $\le 2\text{s}$ (đọc), $\le 3\text{s}$ (ghi); P99 $\le 4\text{s}$ (đọc), $\le 5\text{s}$ (ghi). Gán nhãn Assumption chung chung. Phân bổ chi tiết từng API: Bổ sung P90 ($\le 1.0 - 1.5\text{s}$), P95 ($\le 1.5 - 2.0\text{s}$), P99 ($\le 2.5 - 3.0\text{s}$). Bổ sung P90 giúp đánh giá chính xác trải nghiệm người dùng số đông, không bị phụ thuộc thái quá vào ngoại lai.
Chỉ số tỷ lệ lỗi (Error Rate) Không có. Cho phép lỗi tới $\le 1.0%$ ở tất cả các kịch bản (quá lỏng lẻo). Nghiêm ngặt hơn: Phải $< 0.1%$ ở tải bình thường; chỉ cho phép $\le 1.0%$ khi chịu tải căng thẳng cực hạn (Stress). Nâng chuẩn chất lượng lên gấp 10 lần ở điều kiện vận hành chuẩn.
Thời gian chạy Batch Job (Req 1 & 3) Chỉ ghi nghiệp vụ: tự động tạo lúc 7 tuổi, tự động đóng lúc 16 tuổi. Giả định chung chung: Job chạy dưới 10 phút trên tập dữ liệu mock không rõ quy mô (A-2). Định lượng chuẩn xác: Khối 40.000 học sinh xong $\le 15\text{m}$; Toàn quốc 400.000 em xong $\le 45\text{m}$. Gán phí 40k em $\le 10\text{m}$. Có chỉ tiêu thông lượng rõ ràng ($\ge 150\text{ bản ghi/s}$ với 8 worker threads).
Xử lý tính năng AI / Chatbot / ML Đòi hỏi 2 tính năng AI rất cao cấp: (1) ML dự đoán nguy cơ tài chính (Req 4); (2) Chatbot hỏi đáp & tự điền đơn FAS (Req 8). Req 4 bị bỏ qua; Req 8 ghi "Chưa có ngưỡng SLA cho AI Assistant, hoãn lại cần PM duyệt" (Table 19). Req 4 dự trù kiến trúc; Req 8 đưa ra SLA rõ ràng: TTFT $\le 1.5\text{s}$, phản hồi đầy đủ $\le 4.0\text{s}$ cho 100 phiên đồng thời. v1.0 biến một yêu cầu AI trừu tượng thành chỉ số đo lường công nghệ kỹ thuật số rõ ràng.
Cơ chế tích hợp bên thứ ba (Third-Party) Ghi nhận tích hợp SingPass và API Thu nhập của bên thứ ba qua API. Xác nhận dùng Mock SingPass và Mock Thanh toán nhưng không quy định độ trễ giả lập. Quy định độ trễ cụ thể của Stub: SingPass (150-250ms), IRAS (200-300ms), Payment (400-800ms). Đảm bảo tính trung thực (Fidelity) của môi trường test, tránh hiện tượng "kết quả đẹp giả tạo".
Xử lý xung đột & Ca biên (Edge Cases) Hoàn toàn không nhắc tới. Nằm ở dạng giả định ngầm. Nêu ra 14 câu hỏi để ngỏ trong Table 22 nhưng không có câu trả lời, không có giải pháp kỹ thuật. Trả lời toàn bộ 14 câu hỏi với giải pháp kỹ thuật cụ thể: Optimistic Lock (409), 2PC, CLOSING_PENDING. Chuyển giao trạng thái từ "nghi ngờ bỏ ngỏ" sang "định hình giải pháp kiến trúc".
Quản trị nghiệm thu (Governance & Exit) Không có. 6 tiêu chí nghiệm thu C1-C6 nhưng gắn với các giả định chưa được chứng minh. Quy định rõ Gate C1 (Phê duyệt trước vòng 2), Gate C2 (Chạy 2 vòng lặp), C3 (0 lỗi Critical/High), phân định rõ Confirmed vs Assumption. Thiết lập quy trình kiểm soát chất lượng chuẩn ISO/IEC 25010.

3.2. Phân tích sự chuyển dịch tư duy kiến trúc (Architectural Mindset Evolution)#

[BƯỚC 1: TƯ DUY NGHIỆP VỤ THÔ] 
Tài liệu Client: 'Agile business requirement 1.xlsx'
- Chỉ quan tâm tính năng: Có tạo được tài khoản không? Có trả được tiền không? Có AI không?
- Hoàn toàn không có khái niệm về tải, nghẽn mạng, độ trễ, hay xung đột đồng thời.
                   │
                   ▼
[BƯỚC 2: TƯ DUY NỘI SUY SƠ KHAI (MÔ HÌNH NHỎ)]
Bản thảo v0.2: 'performance-requirements-v0.2.docx'
- Thấy được sự cần thiết của kiểm thử tải nhưng tự ti về quy mô, coi là "training prototype".
- Đưa ra con số an toàn nhỏ bé (10 - 20 người dùng).
- Liệt kê hàng loạt bế tắc (14 câu hỏi không lời đáp, 11 giả định không ai kiểm chứng).
                   │
                   ▼
[BƯỚC 3: TƯ DUY HỆ THỐNG DOANH NGHIỆP CẤP QUỐC GIA]
Bản đặc tả v1.0: 'performance-requirements-v1.0.docx'
- Đối thoại trực tiếp với khách hàng để chốt quy mô thật (National Scale: 60.5k staff, 2M parents, 400k accounts).
- Sử dụng mô hình toán học và chuẩn quốc gia (Singapore e-Services benchmark) để nội suy 5.000 VU.
- Thiết kế kiến trúc chịu tải: Phân bổ tài nguyên, khóa lạc quan, 2-phase commit, máy trạng thái ca biên.
- Minh bạch rủi ro bằng cơ chế gắn nhãn màu: Xanh lá [Confirmed] vs Vàng [Assumption].

PHẦN IV: KHUYẾN NGHỊ THỰC THI & LỘ TRÌNH TRIỂN KHAI TIẾP THEO#

Để đưa bộ đặc tả v1.0 vào thực thi thực tế mà không gặp rủi ro pháp lý hay kỹ thuật, nhóm dự án cần thực hiện lộ trình 4 bước hành động cụ thể sau:

Technical Workflow & State Transition Mermaid Vector
flowchart TD Step1["BƯỚC 1: KÝ DUYỆT GATE C1
Trình PO/PM ký duyệt văn bản 14 Assumptions
và Ma trận Ngưỡng SLA"] Step2["BƯỚC 2: CHUẨN BỊ MÔI TRƯỜNG & DỮ LIỆU
Seed 400.000 tài khoản học sinh, 60.500 staff.
Cấu hình Stub Mock có Jitter (150-800ms)"] Step3["BƯỚC 3: CHẠY KIỂM THỬ ROUND 1 (BASELINE)
Đo đạc 550 VU -> 5.000 VU tiêu chuẩn.
Ghi nhận báo cáo, tìm lỗi Critical/High"] Step4["BƯỚC 4: TỐI ƯU HÓA & NGHIỆM THU ROUND 2
Dev fix lỗi nghẽn DB/Thread pool.
Tái kiểm thử và ký biên bản đóng Gate C2-C6"] Step1 --> Step2 --> Step3 --> Step4

1. Nhiệm vụ hành động ngay lập tức (Immediate Action Items)#

  1. Trình ký Biên bản Phê duyệt Giả định (Sign-off Meeting):
    • Lấy bảng 5. Open Questions trong tài liệu v1.0 làm nội dung họp chính với Product Owner và Project Manager.
    • Chốt chính thức bằng văn bản cho 3 câu hỏi sống còn: (1) Thời gian chạy Batch Job $\le 15\text{ phút}$ hay nới lỏng?; (2) Ngưỡng lỗi $< 0.1%$ có được chấp nhận?; (3) Tỷ lệ phụ huynh đồng thời $5.000\text{ VU}$ đã thỏa mãn yêu cầu nghiệp vụ chưa?
  2. Kỹ thuật hóa Mock Servers:
    • Không được dùng hardcoded response. Viết thêm logic delay ngẫu nhiên có phân phối chuẩn (Gaussian distribution) cho Mock SingPass ($150 - 250\text{ms}$) và Mock Cổng thanh toán ($400 - 800\text{ms}$).
    • Bổ sung kịch bản giả lập lỗi mạng ngân hàng ($1%$ trả về timeout hoặc mã từ chối giao dịch) để kiểm chứng cơ chế giải phóng tiền giữ chỗ (Release Hold) của tính năng Thanh toán kết hợp.
  3. Chiến lược sinh dữ liệu mẫu (Data Seeding Strategy):
    • Viết script tạo dữ liệu tự động đạt đủ các cột mốc: 350 trường, 50.000 lớp, 60.500 tài khoản giáo vụ, 2.000.000 tài khoản phụ huynh và 400.000 tài khoản học sinh có phân bổ độ tuổi đều từ 7 đến 16 tuổi.
    • Đảm bảo các chỉ mục (Indexes) trên cơ sở dữ liệu Postgres/MySQL được đánh đúng trước khi bơm dữ liệu tải.

Báo cáo được tổng hợp và xuất bản tự động theo tiêu chuẩn kỹ nghệ tài liệu Antigravity.