DOL Kid LMS - Learning Doc Rules
DomainsDOL KidUX1.227 words6 min read
DOL Kid - Learning Doc Rules
Phần tiêu đề “DOL Kid - Learning Doc Rules”Purpose
Phần tiêu đề “Purpose”- Giữ cho các doc của
KID Learning / LMS / Exercisengắn, ổn định, và không trộn sai vai trò. - Giúp AI và team viết thêm doc mà không tạo ra taxonomy rác hoặc flow giả.
Core Writing Rules
Phần tiêu đề “Core Writing Rules”Role before detail- Mỗi file phải trả lời rõ nó sở hữu câu hỏi gì trước khi đi vào chi tiết.
One file, one level- Không trộn
capability map,launcher,authoring logic,interaction catalog, vàscreen conceptvào cùng một file.
- Không trộn
Current canon vs near-term expansion- Nếu một lane chưa có flow/detail canon, ghi rõ nó là
near-term expansionhoặcTBD, không viết như thể đã active đầy đủ.
- Nếu một lane chưa có flow/detail canon, ghi rõ nó là
Do not guess missing product logic- Phần nào chưa chốt thì giữ
placeholderhoặcTBD.
- Phần nào chưa chốt thì giữ
Wrapper is not a lanestory,theme,mini game,character,video/rive,fish/bubble/flowerkhông tự động trở thành product lane.
Shared capability stays sharedpronunciation,vocabulary notebook, hoặc các utility tương tự không nên bị viết thànhpractice typengang hàng nếu vai trò thực tế là lớp hỗ trợ dùng chung.
KID Product Rules
Phần tiêu đề “KID Product Rules”Offline-course companion- Mọi lane học của KID mặc định phải neo vào khóa offline, lesson objective, hoặc homework need.
Course-first- Không viết doc theo hướng
self-learning appđộc lập nếu canon hiện tại vẫn làcourse-linked.
- Không viết doc theo hướng
Root placeholder before public site- Nếu current phase chưa build public DOL Kid site, không mô tả
domain rootnhư home sản phẩm đầy đủ; ưu tiên entry narrative choKID LMS.
- Nếu current phase chưa build public DOL Kid site, không mô tả
Evaluation separate from reinforcementTestingkhông trộn vai trò vớiExercisehoặcguided learning.
Submission separate from coachingAssignment W/Slà lane nộp bài;guided writing/speakinglà lane luyện cùng học viên.
Child-friendly, parent-readable- Ngôn ngữ và logic phải đủ đơn giản cho trẻ dùng, nhưng phụ huynh vẫn hiểu bài này đang để làm gì.
Home tabs are intent bucketsOverview,Khóa học,Kho đề,Lịch học,Thành tích,Kỷ niệmlà các bucket theo ý định sử dụng; không copy-paste cùng một loại content sang nhiều tab chỉ để “đủ nội dung”.
Home stays lightweightLMS Homekhông thay vai trò củaParent Dashboard,Course Detail, hayteacher reporting.
Home summarizes, tabs specialize- summary tổng quát có thể nằm ở
Home, nhưng stats chi tiết phải quay về đúng tab owner.
- summary tổng quát có thể nằm ở
One card, one question- Mỗi card/cluster trên
LMS Homechỉ nên trả lời 1 câu hỏi chính; nếu một block bắt đầu làm nhiều việc, phải tách block hoặc chuyển nội dung về đúng tab owner.
- Mỗi card/cluster trên
Allocation specs for dense surfaces- Khi một surface có nhiều tab hoặc nhiều organism dễ trùng payload như
LMS Home,Course Detail,Kho đề,Exercise Home, nên có mộtContent Allocationcanon ngắn để khóamust show / may show / must not show.
- Khi một surface có nhiều tab hoặc nhiều organism dễ trùng payload như
Schedule tab is schedule-onlyLịch họckhông mang breakdown nội dung buổi học hoặc thống kê khóa học.
Overview previews, not duplicatesOverviewcó thể previewKhóa học,Lịch học,Thành tích, nhưng không render lại nguyên bản full content của các tab đó.
Overview to-do is contextual, not a backlogViệc cần làmcủaOverviewchỉ được surface các task ưu tiên theo bối cảnh hiện tại như lesson follow-up, assignment due, test due, hoặc item đang dở; không biến thành full task manager.
Overview snapshots are condensed signals- Snapshot trong
Overviewchỉ được nhắc tín hiệu đáng chú ý nhất của tab owner; không copy full payload củaKhóa học,Lịch học,Thành tích,Learning Stats, hoặcKỷ niệm.
- Snapshot trong
Bank lane is not a course laneKho đề / Test Banklà library tự luyện theo level; không mô tả nó như homework lane hoặc tab con củaCourse Detail.
Asset type is not discovery surfaceOnline Testlà loại bài / asset type;Kho đề / Test Banklà nơi chứa và cho user chọn các asset đó để tự luyện.
Learner stats is a secondary viewLearning Statslà view phụ củaLMS Home, không phải top-level tab mới.
Stats reflect, achievements recognizeLearning Statsdùng để nhìn lại tiến độ;Thành tíchdùng để badge/certificate/vinh danh.
Learner stats stays lightweight- Không đổ teacher reporting, class leaderboard, attendance sâu, hay operational analytics vào
Learning Stats.
- Không đổ teacher reporting, class leaderboard, attendance sâu, hay operational analytics vào
Exercise-specific Rules
Phần tiêu đề “Exercise-specific Rules”Pattern is ingredient, not productSelection,Matching,Speaking,Logic gamelà nguyên liệu biên soạn bài.
Exercise is an authored bundle- Một bài exercise là một question set có mở đầu, phần luyện chính, và kết thúc rõ.
One primary learning target- Một bài không nên ôm nhiều mục tiêu ngang hàng.
Dominant + support pattern- Ưu tiên
1 dominant pattern familyvà tối đa1-2 support pattern family.
- Ưu tiên
Completion is bundle-level- Không coi một pattern riêng lẻ là xong bài nếu question set còn chưa kết thúc.
File-type Rules
Phần tiêu đề “File-type Rules”Capability Map- Dùng để chốt bức tranh sản phẩm và boundary giữa các lane.
Overview- Dùng để chốt role, scope gate, core logic, non-goals.
Launcher- Chỉ mô tả entry layer hiện hành; không đại diện cho toàn bộ capability map nếu chưa route-expand.
Authoring Logic- Chỉ mô tả cách biên soạn bài từ nhiều question/pattern.
Interaction Catalog- Chỉ chuẩn hóa pattern và naming, không thay vai trò của product model.
Concept / Screen Doc- Chỉ dùng khi logic product đã tương đối rõ.
Update Discipline
Phần tiêu đề “Update Discipline”- Khi thêm một capability mới:
- chốt ở
Capability Maptrước.
- chốt ở
- Chỉ cập nhật
Practice Launcherkhi capability đó thật sự làcurrent entry type. - Chỉ cập nhật
Sitemapkhi route/state của capability đó đã được quyết định. - Khi thêm doc canon mới:
- nối tối thiểu vào
entry overview, context router,- và
benchmarknếu cần truy xuất ổn định.
- nối tối thiểu vào
- Nếu doc cũ đã lệch vai trò:
- sửa ngắn gọn hoặc đổi note phạm vi,
- không tạo thêm doc mới chỉ để vá sự mâu thuẫn cũ.
Non-goals
Phần tiêu đề “Non-goals”- Không biến guideline thành checklist quá dài.
- Không dùng file này để thay product canon.
- Không mô tả implementation, schema, hay runtime contract ở đây.
Change log
Phần tiêu đề “Change log”- 2026-03-24: Bổ sung rule
one card, one questionđể khóa content allocation choLMS Homevà các lần build/concept sau. - 2026-03-24: Bổ sung rule cho
Learning Statsđể khóa boundary giữa progress reflection,Thành tích, vàParent Dashboard. - 2026-03-23: Bổ sung rule
root placeholder before public siteđể tránh AI/doc drift sang public-home-first khi current phase vẫn ưu tiênKID LMS. - 2026-03-19: Tạo bộ rule ngắn cho
KID Learning docsđể tách đúngcapability map,launcher,authoring logic,interaction catalog, vàshared capability.