3.0 KiB
Epic 2 — Course & Learning Management (detailed)
Goal: bangun pengalaman inti “course → lesson → progress” yang lengkap untuk Learner dan Admin pada frontend (mock-backend). Fitur ini menyediakan listing course, detail course, lesson viewer (video/text/pdf), progress tracker, enrollment, and simple content management for Admin
Personas
Learner — mengakses daftar course, membuka lesson, mengikuti course, melihat progress, menandai selesai.
Admin — membuat/ubah/hapus course & lesson (via UI mock), lihat peserta, atur course visibility.
US-201 — Course list (Learner)
Ringkasan: Sebagai Learner, saya ingin melihat daftar course yang tersedia agar saya bisa memilih untuk belajar. AC (Acceptance Criteria):
Tersedia halaman courses
Pagination / infinite scroll tersedia jika > 20 items (mock).
Sorting (Newest, Popular) dan filter (category). UI components: CourseList, CourseCard, FilterBar, Pagination
TC-US-201-01: open courses → lihat minimal 6 card; filter courses shown.
US-202 — Course detail (Learner)
Ringkasan: Sebagai Learner, saat membuka course, saya ingin melihat detail course, daftar lessons, quiz yang terkait, dan progress saya.
US-203 — Enrollment flow (Learner)
Ringkasan: Sebagai Learner, saya ingin mendaftar/enroll ke course agar dapat membuka lesson.
US-204 — Lesson viewer (multiple content types)
Ringkasan: Sebagai Learner, saya ingin membuka lesson yang bisa berupa video / text / pdf sehingga saya bisa belajar.
US-205 — auto Mark lesson complete & sequential gating jika video/belajar selesai
Ringkasan: Sebagai Learner, setelah menyelesaikan lesson, saya ingin menandai complete supaya progress course bertambah dan lesson berikutnya unlock.
TC-US-205-01: mark lesson complete -> next lesson unlocks.
US-206 — Progress tracking & resume
Ringkasan: Sebagai Learner, saya ingin melihat ringkasan progress per course dan resume from last lesson.
TC-US-206-01: after two lessons completed, progress shows 40% and resume button points to correct lesson.
US-207 — Create / Edit Course (Admin)
Ringkasan: Sebagai Admin, saya ingin bisa membuat dan mengedit course
TC-US-207-01: Admin create course with title -> visible in course list.
US-208 — Add / Edit Lessons (Admin)
Ringkasan: Sebagai Admin, saya ingin menambah lesson ke course (type: video/text/pdf) sehingga konten bisa disusun.
TC-US-208-01: create video lesson -> appears in course detail list.
US-209 — Search & Filter courses (Learner)
Ringkasan: Sebagai Learner, saya ingin mencari course by keyword and filter by category & free/paid.
TC-US-209-01: search "productivity" -> results include courses with that keyword.
US-212 — Content access rules & visibility (Admin)
Ringkasan: Sebagai Admin, saya ingin bisa set course visibility (public, private, by-invite) untuk kontrol akses. AC:
US-213 — Light analytics for Admin (Course-level)
Ringkasan: Sebagai Admin, saya ingin melihat metrics per course: enrolled users, completed %, average score