Skip to main content

Học khoá học

Link figma: https://www.figma.com/design/jM4Xopoh41pK1UhYEnxWUq/Workplace-Home?node-id=20547-24401&m=dev

1. Tổng quan chức năng

1.1 Mục tiêu

Chức năng Khóa học cho phép người học:

  • Xem danh sách các khóa học được gán (assigned)

  • Xem toàn bộ khóa học

  • Bắt đầu hoặc tiếp tục học khóa học

  • Theo dõi tiến độ học tập

2. Actor

Actor Mô tả
Người học (Learner) Người dùng được gán khóa học và thực hiện học

3. Entry Flow

Người học đăng nhập hệ thống
        ↓
Hệ thống mở Menu mặc định focus vào "Của tôi"
        ↓
Hiển thị block "Khoá học"

4. Màn hình "Của tôi" – Block Khóa học

 

image.png

4.1 Hiển thị danh sách khóa học

Block Khóa học hiển thị:

Thuộc tính Quy tắc
Nguồn dữ liệu Khóa học được assign cho user
Số lượng hiển thị Tối đa 5 khóa học / 1 dòng
Số dòng không giới hạn
Kiểu hiển thị Card

4.2 Quy tắc sắp xếp khóa học

Khóa học được sắp xếp theo thứ tự:

Rule 1 – Deadline: deadline sớm hơn → hiển thị trước

Rule 2 – Publish date:

Nếu cùng deadline: publish date sớm hơn → hiển thị trước

4.3 Card khóa học

Mỗi card hiển thị:

Thành phần Mô tả
Cover image Hình đại diện khóa học
Text "Khóa học"
Tên khóa học Title
Deadline hiển thị dạng dd/mm
Trạng thái cần học / đã hoàn thành

4.4 Action – Xem tất cả

Người học click: Xem tất cả

→ Điều hướng đến màn hình: Tất cả khóa học

5. Màn hình "Tất cả khóa học"

 

image.png

5.1 Thành phần giao diện

Component Mô tả
Tab filter Cần học / Đã hoàn thành
Search Tìm kiếm khóa học theo tên
Grid khóa học hiển thị card

5.2 Tab filter

Tab: Cần học

Hiển thị các khóa học: status != completed

Tab: Đã hoàn thành

Hiển thị các khoá học: status = completed

Cho phép tìm theo: tên khoá học, search contain

NFR: Người dùng nhập đến đâu, kết quả trả ra đến đó trong vòng 2s. Người dùng xoá các kí tự nhập trong ô search -> tự động reload page. 

5.4 Layout hiển thị

Thuộc tính Quy tắc
Grid 8 card / dòng
Responsive tự wrap dòng

5.7 Action – Mở khóa học

User click vào card khóa học -> hiển thị màn hình danh sách bài học

6. Màn hình ds bài học

image.png

6.1 Ảnh khoá học

  • Hiển thị ảnh của khoá học hoặc ảnh mặc định như thiết kế nếu khoá học không được upload ảnh

6.2 Progress khóa học

Được tính theo: số bài học hoàn thành / tổng số bài học

6.3 Segment Bài học

Quy tắc focus bài học

Điều kiện Hành vi hệ thống
Khóa học chưa học bài nào Focus vào bài học đầu tiên
Khóa học đã có bài học đang học Focus vào bài học đang học
Tất cả bài học đã hoàn thành Focus vào bài học đầu tiên

Hiển thị text theo nội dung

  • Nếu khoá học có chứa nội dung có file thuyết minh -> hiển thị icon và text "Có nội dung âm thanh"  

     

    image.png

     

    ở khung bên phải, ngay dưới tên bài học
  • Luôn hiển thị icon và text "Cần kết nối Internet" 

     

    image.png

     

    ở khung bên phải, ngay dưới tên bài học, bên cạnh icon và text "Có nội dung âm thanh"

Nút hiển thị theo trạng thái

Căn cứ vào trạng thái của bài học để hiển thị nút tương ứng:

Trạng thái bài học Nút hiển thị Hành động
Chưa bắt đầu Bắt đầu học Bắt đầu bài học
Đang học Tiếp tục học Mở lại bài học
Hoàn thành Xem lại / Học lại Mở lại bài học
Khóa Không hiển thị nút Không cho truy cập

Nội dung học

 

image.png

 

Cách vào

Từ segment Bài học, người dùng chọn bài học cần học -> click nút "Bắt đầu học" hoặc "Tiếp tục học" hoặc "Xem lại" hoặc "Học lại"

Layout tổng thể 

Màn hình chia thành 2 khu vực chính

Khu vực Mô tả
Panel trái Danh sách nội dung trong bài học
Panel phải Nội dung học

Panel trái – Navigation nội dung

  • Hiển thị tên bài học:
    • Text wrap

    • Tối đa 2 dòng

    • Căn trái

  • Tiến trình nội dung
    • Nội dung 1/7
Field Meaning
1 Nội dung hiện tại
7 Tổng số nội dung
  • Hiển thị Danh sách các nội dung trong bài học 
Trạng thái Hiển thị Ý nghĩa
Completed Icon check màu xanh Đã học xong
Current

Highlight tím

Bài học hiện đang học sẽ được thể hiện active.

Nội dung đang học
Not started nền trắng Chưa học
Locked

icon khóa

Khi hover vào các bài học ở dưới sẽ hiển thị là đang khóa do chưa học xong bài học này.

Chưa mở

Quy tắc khoá nội dung: content[i-1] chưa hoàn thành

Panel phải – Nội dung học 

Panel phải hiển thị nội dung học của content hiện tại.

Nút hành động: Tiếp tục 

  • Click -> Chuyển sang nội dung/câu hỏi tiếp theo
Điều kiện Action
Là nội dung trắc nghiệm, không phải câu hỏi cuối Chuyển câu hỏi tiếp theo
Là nội dung trắc nghiệm, là câu hỏi cuối và không phải là nội dung cuối của bài học Chuyển nội dung tiếp

Không phải nội dung cuối

và không phải là nội dung trắc nghiệp

Chuyển nội dung tiếp
Là nội dung cuối Hoàn thành bài học

Nút hành động: Thoát bài học

  • Hiển thị ở: Góc dưới bên trái
  • Click -> Quay lại màn hình danh sách bài học
  • Progress vẫn được lưu.

Nút hành động: Mở rộng hiển thị nội dung học

  • Click -> collapse Panel trái, toàn màn hình hiển thị nội dung học của Panel phải
Logic hoàn thành nội dung
  • Với nội dung không phải trắc nghiệm hoặc câu hỏi cuối của nội dung trắc nghiệm:
    • Khi user nhấn Tiếp tục: content status → COMPLETED
    • Sau đó: mở khóa nội dung tiếp theo
UX/UI nội dung học theo từng loại

Học "Đoạn văn bản"

image.png
  • Ngay khi chuyển sang nội dung văn bản có chứa file mp3 thuyết minh, hiển thị modal thông tin "Bài học có thuyết minh": 
    • Người dùng nhấn "Tôi đã hiểu" -> Quay lại màn hình hiển thị nội dung học hiện tại
image.png
  • Hiển thị thanh audio: Chỉ hiển thị khi nội dung có chứa file mp3 ở phần thuyết minh
    • Thành phần
      UI Mô tả
      Play/Pause icon play
      Current time thời gian đã nghe
      Total time tổng thời lượng
      Progress bar thanh tiến độ audio
    • Logic Audio
Hành động Kết quả
Click play phát audio
Click pause dừng audio
Click progress tua audio
  • Panel phải - Nội dung học 
    • Header: Hiển thị Logo Supa
    • Icon audio: Chỉ hiển thị khi nội dung có chứa file mp3 ở phần thuyết minh
    • Hiển thị tiêu đề của nội dung, nếu tiêu đề dài quá thì wraptext
    • Hiển thị nội dung học: Hiển thị đúng Đoạn văn bản, Bullet, text... theo đúng định dạng được soạn ở khoá học
    • Scroll nội dung: Nếu nội dung dài, Panel nội dung cho phép Scroll, không scroll toàn trang.

Học "Đoạn Slide ảnh"

  • Khi người học chưa xem tới ảnh cuối cùng thì nút sẽ có tác dụng là next tới ảnh tiếp theo.

 

image.png
  • Khi xem tới ảnh cuối cùng thì nút biến thành nút [Tiếp theo], cho phép qua bài học khác.

 

image.png
  • Với Slide ảnh có kèm ghi chú, hiển thị ảnh và text ghi chú theo kích thước như thiết kế, text Ghi chú được align center với ảnh
image.png
  • Với nội dung Đoạn Slide ảnh có file mp3 thuyết minh:
    • Ngay khi vào nội dung, cũng hiển thị modal thông tin "Bài học có thuyết minh" như mô tả ở nội dung "Đoạn văn bản"
    • Hiển thị thanh audio và icon audio như mô tả ở nội dung "Đoạn văn bản"

Học "Video - youtube"

  • Mặc định khi mới vào nội dung

 

image.png
    • Nếu nội dung chọn tự động phát -> phát luôn video ngay khi vào nội dung
    • Nếu nội dung không chọn tự động phát -> hiển thị như hình, user chủ động bấm play
  • Video không được tua, Chỉ khi xem hết video mới có thể hiện lên nút để đi tới nội dung tiếp theo.
image.png

Học "Trắc nghiệm"

image.png
  • Header: Hiển thị logo Supa
  • Thanh tiến trình câu hỏi: Dựa theo số câu hỏi trong quiz và câu hỏi user đã trả lời, mầu tím là hiển thị % số câu hỏi đã trả lời/tổng số câu hỏi
  • Nội dung câu hỏi và đáp án
Thành phầnMô tả
Media
  • Hình ảnh (optional), chỉ hiển thị nếu câu hỏi có cấu hình ảnh minh hoạ
  • Hiển thị ở giữa khung, kích thước mặc định theo thiết kế
  • Có thể click để phóng to, UI xem ở thiết kế
Question text
  • Nội dung câu hỏi
  • Hiển thị ngay bên dưới Media
  • Nếu không có media, hiển thị nội dung câu hỏi ở giữa theo chiều dọc của khung hiển thị câu hỏi
  • Text câu hỏi: align trái
Danh sách đáp án


  • Đáp án dài thì wraptext, max = 5 dòng như thiết kế, nếu dài quá thì hiển thị thanh scroll nội tại của đáp án đó. 
  • Text đáp án align trái
  • Tuỳ vào số lượng đáp án đúng được cấu hình để hiển thị radio/checkbox:
    • Nếu chỉ có 1 đáp án đúng được cấu hình -> hiển thị radio
    • Nếu có > 1 đáp án đúng được cấu hình -> hiển thị checkbox
  • User click vào 1 đáp án -> Highlight đáp án được chọn
  •  Khi chưa chọn đáp án nào, hiển thị:

 

image.pngimage.png
  • Sau khi chọn đáp án thì hiện nút tiếp tục và bắt buộc bấm tiếp tục để hoàn thành trả lời câu hỏi Quiz 

 

image.png
  • Khi trả lời sai hiển thị thông báo kèm nội dung đã setup trong khóa học (nếu không có thì để trống!)
image.png
  • Khi trả lời đúng hiển thị thông báo kèm nội dung đã setup trong khóa học (nếu không có thì để trống!)

 

image.png
  • Với câu hỏi Quiz có đặt thời gian trong setup thì sẽ hiện hết thời gian, câu hỏi k được tính điểm và bắt buộc tiếp tục sang nội dung khác

 

 

image.png