Bỏ qua để đến nội dung

DOL Edu - Login UX Scenario Catalog

DomainsDOL EnglishUX1.296 words6 min read
active
  • Tổng hợp các tình huống login cần bao phủ cho DOL English, DOL Academy, DOL Kid.
  • Giúp Product/Design review nhanh mà không cần đi vào logic kỹ thuật.
  • Dùng khi thiết kế/review login flow.
  • Ưu tiên đọc theo cột Domain để kiểm tra đúng ngữ cảnh.
  • Nếu có xung đột, ưu tiên REG_Login_UX_Blueprint.md.
ScenarioDomainTriggerSurfaceKết quả UX mong đợi
User cũ đăng nhậpAllBấm CTA loginFull-pageVào đúng màn gần nhất hợp lệ của domain hiện tại
User bấm CTA auth toàn cục ở trang publicAllBấm login/signup từ nav/header/footer/hero chínhFull-pageUser vào luồng auth độc lập, funnel rõ, không bị popup làm rối
User đăng nhập bằng email phụ đã verifyEnglish/AcademyNhập email phụ của cùng accountFull-pageVào đúng cùng account, không tạo account mới
User mới đăng kýAllNhập email mớiFull-pageTạo tài khoản nhanh, không ép profile dài
Guest bấm action protectedAllSave/Bookmark/StartPopupLogin xong tự quay lại action
Quên mật khẩuAllTừ màn loginRecovery flowReset xong quay lại login với email đã điền
Recovery bằng email phụ đã verifyEnglish/AcademyBấm quên mật khẩu với email phụRecovery flowNhận diện đúng account hiện có, không báo “email chưa có tài khoản”
Email cũ ở flow signupAllSignup bằng email có sẵnCùng flowChuyển sang login, giữ email
Email mới ở flow loginAllLogin bằng email chưa cóCùng flowGợi ý đăng ký ngay
OTP sai/hết hạnAllBước OTPCùng surfaceBáo lỗi ngắn + CTA gửi lại
Link reset lỗiAllVào từ link emailFull-pageFallback OTP, không dead-end
User nhận email recovery có OTP + linkAllMở email recoveryMixedUser chọn cách thuận tiện hơn nhưng vẫn đi cùng một logic recovery
Login trên thiết bị mớiAllPassword login từ thiết bị chưa tin cậyCùng surfaceStep-up rõ ràng, user hiểu đây là xác thực bổ sung chứ không phải lỗi account
Vượt giới hạn phiên/thiết bịAllĐăng nhập khi đã đủ phiên activeFull-pageChặn rõ lý do, hiển thị danh sách phiên đang dùng để logout từ xa rồi tiếp tục
Session hết hạn khi đang thao tácAllTimeout giữa chừngFull-page re-authQuay lại context đang dở
Login cross-domainEnglish -> Academy/KidDùng cùng account ở domain khácFull-pageLogin thành công, vào điểm bắt đầu đúng domain đích
Domain đích chưa có dữ liệuAcademy/KidLogin thành công nhưng trống dữ liệuFull-pageVào màn “bắt đầu phù hợp”, không lỗi mơ hồ
Parent tạo tài khoản học cho conKidPhụ huynh vào không gian quản lýParent flowTạo hồ sơ học cho con nhanh, không mơ hồ
Con vào học bằng codeKidNhập code được cấpKid entry flowVào đúng không gian học của con, không lẫn vai trò
Chuyển từ code KID sang login độc lậpKid -> English/AcademyUser lớn lên và cần tự quản accountFull-page setupKích hoạt email/password trên cùng account, giữ lịch sử học
User lớn lên chuyển sang English/AcademyKid -> English/AcademyDùng tiếp account đã cóFull-pageGiữ continuity account, không tạo lại từ đầu
Guardian vào Kid domainKidPhụ huynh đăng nhậpFull-pageHiển thị luồng phù hợp vai trò phụ huynh
Mở nhầm lane phụ huynh ở English/AcademyEnglish/AcademyUser đi vào deep link phụ huynhRedirectĐiều hướng sang Kid domain; không hiển thị lane phụ huynh ở domain hiện tại
User đóng popup nhiều lầnAllTừ action protectedPopupKhông làm hỏng màn trước, user quay lại được
Context sau login không hợp lệAllRoute cũ không cònFallback routeVề route gần nhất cùng ý định, rồi mới Home
  • Không mất email đã nhập.
  • Không bắt nhập lại từ đầu.
  • Email phụ đã verify không bị hiểu nhầm thành account mới.
  • Không tạo cảm giác bị “đăng xuất ngầm”.
  • Luôn rõ user đang ở domain nào.
  • Phụ huynh và học viên không bị lẫn thông điệp.
  • Luôn có hành động kế tiếp rõ ràng cho từng vai trò.
  • Không hiển thị UI/lane phụ huynh trên English/Academy.
  • Phụ huynh tạo account cho con không bị rối bước.
  • Con nhập code sai vẫn có hướng xử lý rõ.
  • Con vào học đúng profile, không nhầm sang tài khoản khác.
  • Khi cần login độc lập, user được nâng cấp trên cùng account (không bị tách account mới).
  • Action cũ còn hợp lệ thì replay ngay.
  • Không còn hợp lệ thì có CTA thay thế gần nhất.
  • Nếu có giới hạn đăng nhập, user phải hiểu giới hạn theo account hoặc phiên đang active.
  • Không dùng copy khiến user hiểu nhầm là quota theo desktop/tablet/mobile nếu sản phẩm không chốt rule đó.
  • Khi chạm limit, user có thể tự logout phiên cũ mà không cần đi qua support.
  • CTA auth toàn cục ở bề mặt public nên đi full-page.
  • Popup chỉ dùng khi user đang cần hoàn tất một action protected ngay trong context.
  • Nếu popup không còn tối ưu, phải có đường fallback sang full-page mà không làm mất return path.
  • OTP là đường chính trên UI recovery.
  • Link trong email là shortcut, không phải một logic reset khác.
  • User dùng OTP hay link cũng phải đi về cùng một account recovery.

Flow Sample - Cross-domain nhưng domain đích chưa có dữ liệu

Phần tiêu đề “Flow Sample - Cross-domain nhưng domain đích chưa có dữ liệu”
  1. User đã có account từ DOL English, mở DOL Academy.
  2. User login thành công bằng cùng account.
  3. Hệ thống không báo lỗi “không có dữ liệu”.
  4. Hệ thống đưa user vào màn bắt đầu phù hợp của Academy (ví dụ: chọn lộ trình đầu tiên).
  5. CTA chính rõ: Bắt đầu lộ trình.
  • User luôn hiểu bước hiện tại.
  • Không có dead-end.
  • Login xong không mất ý định ban đầu.
  • Trải nghiệm khác domain nhưng vẫn “cùng một hệ”.
  • 2026-03-05: Nâng scenario catalog lên cross-domain, bổ sung case Academy/Kid và chuyển domain.
  • 2026-03-05: Bổ sung scenario redirect khi lane phụ huynh bị mở ngoài domain KID.
  • 2026-03-06: Bổ sung coverage cho login/recovery bằng email phụ đã verify của cùng account.
  • 2026-03-06: Bổ sung scenario cho thiết bị mới và giới hạn phiên/thiết bị theo logic account-level.