Quản lý khóa học - Home
DomainsDOL EnglishUX899 words4 min read
Quản lý khóa học - Home (Learning Management)
Phần tiêu đề “Quản lý khóa học - Home (Learning Management)”Purpose
Phần tiêu đề “Purpose”- Home là điểm vào hành động nhanh (Worklist-first), giúp học viên biết ngay việc cần làm tiếp theo.
- Home chỉ giữ thông tin điều phối và tín hiệu tiến độ ngắn hạn; không thay thế vai trò của Profile > Achievements.
- Tăng tỷ lệ hoàn thành tác vụ đúng hạn, giảm thời gian tìm đường đến task/course phù hợp.
- Câu hỏi chính của trang:
Tôi đang theo khóa nào, unit nào, deadline và feedback gì?
Shell Fit
Phần tiêu đề “Shell Fit”- Đây là local home view bên trong destination
Khóa học, không phải shell hub độc lập. Program Workspace root / Hôm nayhoặc aggregate view đủ điều kiện có thể launch user vào đây, nhưng owner flow vẫn thuộcKhóa họccủa đúng program.
Scope
Phần tiêu đề “Scope”- In scope:
- Quick search cho tác vụ học tập.
- Worklist ưu tiên theo thời gian/mức độ bắt buộc.
- Companion modules:
Next class,Recent result,Calendar,Recap. Leaderboard pulse strip: info nhỏ về thay đổi hạng/huy hiệu từ nhiều leaderboard.
- Out of scope:
- Kho huy hiệu đầy đủ (nằm ở Profile > Achievements).
- Danh sách tất cả khóa đầy đủ trạng thái (nằm ở tab Courses).
Core logic
Phần tiêu đề “Core logic”- Home ưu tiên xử lý theo thứ tự:
- Việc bắt buộc và sát hạn (
required,dueAt/startAt). - Việc đang làm dở (
in_progress). - Việc nên làm trong tuần (
available, không khẩn).
- Việc bắt buộc và sát hạn (
- Quick search dùng intent/action để mở đúng deeplink (task/course/schedule/test).
- Companion chỉ hiển thị module có dữ liệu thật; không có dữ liệu thì ẩn module tương ứng.
Leaderboard Pulse Strip (Home)
Phần tiêu đề “Leaderboard Pulse Strip (Home)”- Vai trò: hiển thị tín hiệu ngắn về trạng thái thi đua của học viên trên nhiều khóa/không gian có leaderboard.
- Nội dung cho phép:
- Thăng hạng (ví dụ
#8 -> #5). - Giảm hạng (ví dụ
#3 -> #6). - Nhận huy hiệu mới liên quan leaderboard/chốt hạng.
- Thăng hạng (ví dụ
- Mỗi pulse item gồm:
sourceType(course leaderboard / cross-area points leaderboard / challenge).sourceName(tên khóa hoặc bảng xếp hạng).changeType(rank_up,rank_down,badge_earned,rank_locked).oldRank/newRank(nếu có),badgeTitle(nếu có),changedAt.rankAxis(local_course_metric | learning_points_week) khi có dữ liệu hạng.deeplinktới Achievements hoặc leaderboard read-only của khóa.
- Quy tắc hiển thị:
- Hiển thị tối đa 1 block tóm tắt + lịch sử ngắn 3 sự kiện gần nhất.
- Sự kiện mới trong 7 ngày ưu tiên hiển thị; cũ hơn chuyển về lịch sử.
- Có thể dismiss theo phiên; không xóa dữ liệu gốc.
- Nếu nguồn là cross-area:
- pulse chỉ hiển thị current-period points/rank delta,
- không hiển thị
user/account level.
Data dependencies
Phần tiêu đề “Data dependencies”- Worklist/Quick search lấy từ
Activity[](xem./CM_Course_Activity_Model.md). - Leaderboard pulse nhận event từ Course Detail leaderboard và cross-area points ranking pipeline.
- Achievements là nguồn tổng hợp huy hiệu chính để mở chi tiết.
- Recent result lấy từ test đã chấm có feedback mới nhất.
Cross-flow rules
Phần tiêu đề “Cross-flow rules”- Home chỉ hiển thị pulse/tóm tắt, không render kho huy hiệu đầy đủ.
badge_earnedlà recognition event; không làm Home tự tái tính rank.- Click từ pulse strip:
badge_earned-> mở Profile > Achievements đúng badge.rank_up/rank_down/rank_locked-> mở leaderboard nguồn (read-only nếu đã khóa).
- Home và Achievements dùng chung metadata (
ruleVersion,closedAt,status) để tránh sai lệch.
Edge cases
Phần tiêu đề “Edge cases”- Không có leaderboard data: ẩn pulse strip, không hiển thị placeholder gây nhiễu.
- Có nhiều sự kiện cùng lúc: gộp theo nguồn, ưu tiên
rank_up/badge_earnedmới nhất. - Leaderboard đã khóa: pulse hiển thị trạng thái đã chốt, deeplink vào màn read-only.
- Người dùng tắt module after-flow: pulse strip không hiển thị nhưng dữ liệu vẫn ghi vào Achievements.
Metrics
Phần tiêu đề “Metrics”home_time_to_first_action: thời gian từ vào Home đến click CTA đầu tiên.worklist_completion_rate: tỷ lệ hoàn thành task từ Home.pulse_strip_ctr: tỷ lệ click vào leaderboard pulse strip.pulse_to_achievement_open_rate: tỷ lệ mở Achievements từ pulse item.
References
Phần tiêu đề “References”./CM_Course_Activity_Model.md./CM_Course_Achievements.md./CM_Course_Courses.md./CM_Course_Memory_Capsule.md./Course Detail/CM_Course_Detail_Leaderboard.md./Concepts/Docs/CM_Concept_Course_Home.md
Change log
Phần tiêu đề “Change log”- 2026-03-26: Thêm
Shell Fitđể giữ rõCM Course Homelà local view củaKhóa học, không phải shell hub độc lập. - 2026-03-11: Chốt
main questioncủa Course Home làkhóa nào, unit nào, deadline và feedback gìđể giữ rõ boundary với Home unified và LM. - 2026-03-09: Chốt
Leaderboard pulse striptheo baseline points-only: nguồn cross-area đọc current-period points/rank, không hiển thịaccount level, vàbadge_earnedlà recognition event riêng. - 2026-02-11: Viết lại theo logic flow hiện tại; bổ sung
Leaderboard pulse strip(thăng/giảm hạng + huy hiệu mới), tách rõ vai trò với Profile > Achievements. - 2026-01-20: Cập nhật Home mới theo Worklist-first và after-flow modules.
- 2026-01-18: Khởi tạo logic trang Home.