Engagement Platform - Practice Leaderboard and Global Score Model
SharedShared Capabilities821 words4 min read
Purpose
Phần tiêu đề “Purpose”- Chuẩn hóa mô hình leaderboard cho hoạt động luyện tập theo đúng hướng:
- có leaderboard theo từng chỉ số (thời lượng, số bài, điểm),
- đồng thời có thang điểm chung để xếp hạng global.
- Giữ UX đơn giản: user hiểu nhanh, theo dõi nhanh, không bị quá tải bởi nhiều chỉ số rời rạc.
Design Principles
Phần tiêu đề “Design Principles”Simple for user, rich in backend:- bề mặt chính chỉ ưu tiên 1 điểm tổng hợp + 1 vị trí xếp hạng.
- màn chi tiết mới mở breakdown theo các trục.
No raw vanity race:- không khuyến khích chạy số lượng thuần.
- mọi điểm đều phải đi qua điều kiện
qualified activity.
Global fairness:- score trước khi xếp hạng global phải normalize theo
program + assessment_form + score_profile.
- score trước khi xếp hạng global phải normalize theo
No account level in current rollout:- rank hiện tại chỉ chạy trên
Practice Points. - không mở thêm
user levelđể tránh chồng cơ chế với points.
- rank hiện tại chỉ chạy trên
Practice Leaderboard Axes
Phần tiêu đề “Practice Leaderboard Axes”Duration leaderboard:- chỉ tính
effective learning minutes(thời lượng học hợp lệ), không tính thời gian treo tab.
- chỉ tính
Volume leaderboard:- số
qualified attemptstrong kỳ.
- số
Score leaderboard:- điểm chuẩn hóa theo score profile.
Qualified Activity Baseline
Phần tiêu đề “Qualified Activity Baseline”- Attempt chỉ được tính nếu:
- submit hợp lệ,
- đạt completion ratio tối thiểu theo loại bài,
- không bị anti-cheat flag.
- Attempt bị invalid/flagged:
- vẫn lưu audit,
- không đưa vào điểm leaderboard cho tới khi review xong.
Common Global Scale (Practice Global Score)
Phần tiêu đề “Common Global Scale (Practice Global Score)”User-facing model
Phần tiêu đề “User-facing model”- Một chỉ số duy nhất:
Practice Points. - Bảng global dùng
Practice Pointsđể xếp hạng. - Không có
Practice Levelhoặcuser levelở current rollout.
Scoring model (v1 baseline)
Phần tiêu đề “Scoring model (v1 baseline)”ScoreIndex(0..100): trung bình điểm chuẩn hóa của các attempt hợp lệ.VolumeIndex(0..100): tiến độ theo số attempt hợp lệ, dùng hàm bão hòa để tránh spam.DurationIndex(0..100): tiến độ theo phút học hợp lệ, cũng dùng hàm bão hòa.- Công thức:
PracticePoints = 0.50 * ScoreIndex + 0.30 * VolumeIndex + 0.20 * DurationIndex
- Lý do trọng số:
- ưu tiên chất lượng làm bài (
ScoreIndex) cao nhất, - vẫn giữ động lực duy trì nhịp học qua volume/duration.
- ưu tiên chất lượng làm bài (
Saturation and Caps
Phần tiêu đề “Saturation and Caps”VolumeIndexvàDurationIndexdùng trần theo tuần để:- ngăn farm điểm bằng bài siêu ngắn,
- tránh thiên lệch quá lớn giữa user có nhiều thời gian và user học đều ngắn.
- Khi vượt trần:
- vẫn hiển thị đóng góp học tập ở analytics,
- nhưng không tăng thêm điểm global của kỳ hiện tại.
Tie-break Baseline for Practice Points
Phần tiêu đề “Tie-break Baseline for Practice Points”PracticePointscao hơn.ScoreIndexcao hơn.earlier_qualified_at.higher_valid_activity_count.
UX Surfaces (Simple-by-default)
Phần tiêu đề “UX Surfaces (Simple-by-default)”- Home:
- chỉ hiển thị teaser
Practice Points + rank delta. - 1 CTA:
Xem bảng xếp hạng.
- chỉ hiển thị teaser
- Practice Management:
- hiển thị tab chi tiết với 4 phần:
- Global points,
- Duration rank,
- Volume rank,
- Score rank.
- hiển thị tab chi tiết với 4 phần:
- Profile:
- hiển thị snapshot points theo kỳ + best rank.
Anti-gaming Guardrails
Phần tiêu đề “Anti-gaming Guardrails”- Rate-limit contribution từ attempt quá ngắn bất thường.
- Không cộng điểm nhiều lần cho cùng attempt/ref.
- Phát hiện pattern lặp bất thường:
- đưa vào queue moderation trước khi publish rank.
- Daily anomaly review cho top-rank movers.
Events and Data Contract Hooks
Phần tiêu đề “Events and Data Contract Hooks”- Event bắt buộc:
practice_leaderboard_axis_scored_eventpractice_points_computed_eventpractice_points_rank_published_event
- Payload tối thiểu:
axis_type(duration | volume | score | global_points)axis_valuenormalized_score_profile_idqualified_activity_counteffective_learning_minutesrule_version
Rollout (Low-risk)
Phần tiêu đề “Rollout (Low-risk)”- Phase A:
- publish 3 bảng axis trong nội bộ + hidden global points.
- Phase B:
- mở global points cho user + chỉ teaser ở Home.
- Phase C:
- dùng global points cho season rewards và cross-program ranking.
Success Metrics
Phần tiêu đề “Success Metrics”- Tăng
qualified_attempts_per_user_week. - Không giảm
quality attempt rate. - Không tăng bất thường
anti-cheat flagged rate. - Tăng
leaderboard_return_ratemà không tăngprompt fatigue.
Relationship with Cross-module Global Points
Phần tiêu đề “Relationship with Cross-module Global Points”PracticePointstrong tài liệu này là contribution của module Practice.- Quy đổi hợp nhất Practice + Vocabulary thành
learning_pointsxem tại:
Change log
Phần tiêu đề “Change log”- 2026-03-04: Tạo baseline mô hình leaderboard luyện tập đa trục + thang điểm chung global theo hướng tối giản.
- 2026-03-04: Bổ sung quan hệ giữa
PracticePointsvàlearning_pointsở lớp quy đổi liên module. - 2026-03-09: Chốt rõ current rollout dùng
Practice Pointsđể rank; chưa mởuser level.