Skip to content

PRD-005 - Journey Management & Activation Engine ​

Một câu: mỗi lúc, NEMO IELTS biết learner đang ở đâu, hành trình nào quan trọng nhất lúc này, và đưa ra một việc cụ thể để làm tiếp, kèm lý do. Admin trả lời được vì sao.

Nguồn: tài liệu PRD + SDD chủ dự án gửi ngày 27.09.2026 (SRC-1077), cùng câu trả lời cho 10 câu hỏi làm rõ (open-questions §Đợt 14, Q-158..Q-172). Bảng REQ nằm ở PRD-001 §5 REQ-JRN. Thiết kế: SDD-045.

0. Nguyên tắc cốt lõi ​

Journey Matrix định nghĩa những hành trình nào tồn tại. Journey Engine quyết hành trình nào quan trọng lúc này.

Learner không đi trên MỘT đường thẳng. Cùng lúc, một người có thể đang học mỗi ngày, vừa tới một mốc, và còn 20 ngày tới ngày thi. Hệ không ép họ vào một hành trình duy nhất; nó giữ một Journey Portfolio cho từng người, xếp ưu tiên, rồi chọn một Next Best Action.

1. Vấn đề ​

Khi số hành trình tăng, không có kiến trúc chung thì NEMO sẽ:

  1. có quá nhiều hành trình mà không ai chịu trách nhiệm;
  2. coi mọi hành trình quan trọng như nhau;
  3. đưa learner những gợi ý mâu thuẫn nhau;
  4. dựng UX quanh tính năng thay vì quanh nhu cầu của learner;
  5. mất mạch khi learner chuyển giữa việc ngắn hạn và dài hạn;
  6. quyết định tay, mỗi chỗ một kiểu;
  7. không giải thích được vì sao gợi ý một việc.

1.1 Thứ bị thay: hành trình năm bước ​

Trước SRC-1077, learner IELTS đi một đường thẳng năm bước (Mục tiêu, Chẩn đoán, Khoảng cách, Lộ trình, Sẵn sàng - SRC-726, SRC-738), hiện ở dải "Xong 2/5 bước" trong app và ở trang công khai nemo12.com/ielts/journey. Năm bước ấy đúng cho người MỚI vào, nhưng im lặng với mọi thứ sau đó: learner đã xong cả năm bước mà nghỉ một tuần, hay còn 20 ngày tới ngày thi, thì dải bước vẫn chỉ nói "đã xong".

Chủ dự án quyết (Q-158, 27.09.2026): thay hẳn năm bước, ở cả app lẫn trang công khai.

2. Người dùng ​

VaiCâu hỏi của họHọ thấy gì
LearnerBây giờ tôi nên làm gì, và vì sao?Thẻ Next up trên trang chủ /ielts: một việc, một câu vì sao, nút "Làm ngay" và "Để sau"
Admin / ProductVì sao hành trình này bật cho learner này, vì sao nó được ưu tiên?Tab Journeys ở admin.nemo12.com: registry và vết đánh giá từng learner
Phụ huynh(chưa chốt)Chưa có - chủ dự án quyết sau (Q-168)
Mentor(chưa chốt)Bàn mentor giữ năm bước cũ cho tới khi có quyết định (Q-169)
Khách trên nemo12.comNemo dẫn người học thế nào?Trang công khai mô tả tám hành trình, mỗi lúc một việc

3. Bốn câu hỏi NEMO luôn trả lời ​

  1. Learner đang ở đâu? - Learner State (dữ kiện đọc từ dữ liệu thật).
  2. Hành trình nào liên quan? - luật đủ điều kiện và luật kích hoạt.
  3. Hành trình nào cần chú ý lúc này? - ưu tiên và mức gấp.
  4. Learner nên làm gì tiếp? - việc tiếp theo của hành trình đứng trước.
text
Dữ liệu học -> Learner State -> Journey Detection -> Journey Portfolio
  -> Prioritization -> Next Best Action -> Trải nghiệm -> Bằng chứng -> Learner State (vòng lại)

4. Phạm vi ​

Trong phạm vi (MVP): Journey Registry · luật khai báo có phiên bản · trạng thái từng hành trình · Portfolio · ưu tiên · chọn hành trình đứng trước · Next Best Action · sổ chuyển trạng thái · ghi lại gợi ý learner bấm và lần "Để sau" · trang giải thích cho admin · thay năm bước ở app và trang công khai.

Ngoài phạm vi (MVP): tự sinh hành trình mới · thay Learner Model, Learning Plan Engine hay Assessment · sinh nội dung học · quyết cách chấm band IELTS · tối ưu mức quay lại học tách rời kết quả học · A/B test hành trình · AI chọn hành trình.

5. Khái niệm ​

Khái niệmNghĩa
JourneyMột quá trình có ý nghĩa của learner hướng tới một kết quả. Có mục đích, luật vào, luật kích hoạt, luật xong, việc gợi ý, chỉ số thành công
Journey Matrix / RegistryDanh mục định nghĩa hành trình. Là tầng ĐỊNH NGHĨA, không phải trạng thái của learner
Learner StateBảng dữ kiện engine đọc: có mục tiêu chưa, còn bao nhiêu ngày, nghỉ mấy ngày, kỹ năng nào xa mục tiêu nhất
Journey PortfolioMọi hành trình của MỘT learner cùng trạng thái của chúng. Nhiều hành trình cùng chạy
Foreground JourneyHành trình đứng trước: thứ NEMO tin là quan trọng nhất lúc này
Next Best ActionMột việc cụ thể ("Làm 15 phút Writing hôm nay"), không phải một lời chung chung ("hãy học tiếp")

Kích hoạt và gợi ý là hai việc khác nhau: một hành trình có thể ACTIVE mà không phải thứ đang được gợi ý.

6. Journey Matrix (tám hành trình MVP) ​

IDTênTầmBật khiXong khiViệc gợi ý
onboardingOnboardinglifecycleluôn luôncó mục tiêu + đã trả lời hồ sơ họcĐặt band mục tiêu và ngày thi · Trả lời vài câu về cách bạn học
diagnosisDiagnosislifecyclecó mục tiêucó quiz kỳ thi + có một nguồn điểm (bài đo hoặc điểm đã có)Làm quiz mười câu · Làm bài đánh giá bốn kỹ năng
learning_planLearning Planlifecyclechẩn đoán xongcó mốcXem các mốc Nemo chia sẵn và sửa cho vừa sức
daily_learningDaily Learningdaycó mốckhông bao giờ (lặp mỗi ngày)Làm 15 phút <kỹ năng xa mục tiêu nhất> hôm nay
learning_progressLearning Progressweekmột mốc đã tới trong 14 ngàylearner đã xem lại mốcXem lại mốc DD.MM.YYYY
recoveryRecoveryweekđã từng học, nghỉ >= 3 ngày (kích hoạt ở >= 7)học lạiLàm một bài ngữ pháp 5 phút
exam_preparationExam Preparationmonthngày mục tiêu còn <= 90 ngày (kích hoạt ở <= 30)hết hạn khi qua ngàyLàm một đề <kỹ năng> đúng giờ
goal_achievementGoal Achievementlifecyclecó mục tiêu (kích hoạt khi band đo được chạm mục tiêu)đã xem kết quảXem kết quả và đặt mục tiêu mới

Ngưỡng là quyết định ✍️ Q-163, đo lại sau bốn tuần dữ liệu thật (Q-172). "Ngày thi" dùng ngày mục tiêu learner đã khai (✍️ Q-162; tách một cột ngày thi riêng là Q-170).

7. Vòng đời một hành trình ​

NOT_ELIGIBLE -> ELIGIBLE -> ACTIVE -> (PAUSED -> ACTIVE) -> COMPLETED, cộng EXPIRED cho hành trình hết hạn. ACTIVATED và RESUMED của tài liệu gốc là lần chuyển (ELIGIBLE sang ACTIVE, PAUSED sang ACTIVE), ghi trong sổ, không phải trạng thái đứng yên.

8. Ưu tiên và hành trình đứng trước ​

Năm nhân tố, mỗi nhân tố 0..1: mức gấp, mức liên quan tới mục tiêu, mức cần của learner, tác động dự kiến, mức sẵn sàng. Mỗi hành trình trỏ tới một policy (trọng số, ngưỡng tối thiểu, hệ số cho hành trình mới ELIGIBLE). Điểm = tổng có trọng số. Phá hoà: mức gấp, rồi mức liên quan, rồi tác động. Giữ mạch: hành trình đang đứng trước ở lại nếu điểm chỉ kém hành trình đứng đầu trong biên 0.05, để màn hình không đổi việc liên tục.

Ví dụ (PRD gốc §14): learner nghỉ 9 ngày, còn 20 ngày tới ngày thi, có mốc học. Recovery, Exam Preparation và Daily Learning cùng ACTIVE. Việc gợi ý là một bài ngữ pháp 5 phút (Recovery), vì người vừa nghỉ một tuần chưa sẵn sàng cho một đề trọn vẹn.

9. Yêu cầu trải nghiệm ​

  1. Không phơi thuật ngữ hành trình không cần thiết: tên hành trình chỉ là một nhãn nhỏ.
  2. Nói rõ mục tiêu hiện tại, bằng một việc chính.
  3. Nói vì sao, bằng chính luật đã chọn việc ấy.
  4. Giữ mạch giữa các phiên (biên giữ mạch, §8).
  5. Giúp quay lại sau khi nghỉ (Recovery).
  6. Không có hai gợi ý mâu thuẫn trên cùng màn.
  7. Learner hoãn được một gợi ý ("Để sau", 24 giờ - ✍️ Q-166).
  8. Không lộ điểm ưu tiên hay nhân tố cho learner.

Chữ (CLAUDE.md, SRC-953): tên hành trình và nhãn "Next up" tiếng Anh; câu gợi ý, câu vì sao và nhãn nút ("Làm ngay", "Để sau") tiếng Việt (✍️ Q-165).

10. Yêu cầu ​

Bảng REQ-JRN đầy đủ (ưu tiên, trạng thái, SDD, QG): PRD-001 §5. Tóm tắt:

REQNội dungƯu tiên
REQ-JRN-01Journey Registry: định nghĩa có id, phiên bản, mục đích, tầm, chủ, trạng thái, luật, policy, catalog việc, chỉ sốM
REQ-JRN-02Luật khai báo (đủ điều kiện, kích hoạt, xong, hết hạn), có phiên bảnM
REQ-JRN-03Learner State đọc từ dữ liệu thật, một chỗ đọcM
REQ-JRN-04Portfolio: trạng thái từng hành trình của từng learner, sổ chuyển trạng tháiM
REQ-JRN-05Ưu tiên theo năm nhân tố và policy cấu hình đượcM
REQ-JRN-06Chọn một hành trình đứng trước, có phá hoà, giữ mạch, loại hành trình đang hoãnM
REQ-JRN-07Một Next Best Action cụ thể kèm câu vì saoM
REQ-JRN-08Đánh giá lại khi dữ liệu đổiM
REQ-JRN-09Ghi lại gợi ý learner bấm và lần hoãnS
REQ-JRN-10Admin thấy số learner theo hành trình và trạng tháiS
REQ-JRN-11Admin trả lời được "vì sao hành trình này bật / đứng trước" cho một learnerM
REQ-JRN-12Tám hành trình MVPM
REQ-JRN-13Thẻ Next up trên trang chủ /ieltsM
REQ-JRN-14Thay năm bước ở app và trang công khaiM
REQ-JRN-15Phụ huynh xem portfolio của conS, chờ quyết
REQ-JRN-16Phân tích phễu hành trình theo thời gianC, chưa làm

11. Chỉ số ​

  • Hệ thống: % learner có một hành trình đứng trước; % gợi ý có câu vì sao; tỉ lệ gợi ý mâu thuẫn (mục tiêu 0: engine chỉ trả một việc).
  • Trải nghiệm: tỉ lệ bấm "Làm ngay" / tỉ lệ "Để sau"; tỉ lệ xong từng hành trình; tỉ lệ quay lại sau Recovery.
  • Kết quả học: bám kế hoạch; band tiến; đạt mục tiêu trước ngày mục tiêu.

Mục tiêu cuối không phải số phiên học, mà là tiến bộ bền tới mục tiêu IELTS.

12. Rủi ro ​

Rủi roGiảm nhẹ
Bùng nổ số hành trìnhRegistry có chủ, phiên bản, trạng thái; test chặn cấu hình sai
Hành trình giành nhauMột engine ưu tiên trung tâm, một việc duy nhất
Tối ưu cho việc quay lại học thay vì cho kết quảNhân tố "liên quan tới mục tiêu" có trọng số lớn ở mọi policy
Phát hiện sai vì dữ liệu saiLuật tường minh, trang vết cho admin
Gợi ý đổi liên tục gây rốiBiên giữ mạch, "Để sau" 24 giờ

13. Tiến hoá sau MVP ​

Registry chuyển vào D1 kèm màn sửa (khi đã đủ tin luật), A/B test policy, Cloudflare Workflows cho hành trình cần hẹn giờ (nhắc qua email khi Recovery bật), hành trình phối hợp phụ huynh + learner, AI gợi ý luật mới. Luật tất định và giải thích được vẫn là nền.

14. Quyết định ​

Toàn bộ ở open-questions §Đợt 14: ✅ Q-158, Q-167 (chủ dự án); ✍️ Q-159..Q-166 (AI quyết, chờ duyệt); ⏳ Q-168..Q-172 (chờ chủ dự án).