5.0 KiB
5.0 KiB
Epik & Roadmap — LMS MBG
Overview
Roadmap 2 bulan memanfaatkan codebase eksisting untuk mempercepat. Tiap epik memiliki outcome terukur, keterkaitan komponen, dan acceptance criteria.
Epik A — Course & Learning Management
- Rujukan:
docs/Epic 2 — Course & Learning Management.md(eksisting). - Komponen/halaman terkait:
src/app/course/page.tsx,src/app/course/[id]/page.tsxsrc/components/course/ModuleTabs.tsx,ModuleNavigation.tsxsrc/app/assignments/page.tsx,src/app/schedule/page.tsx
- Outcome: katalog kursus, detail kursus, modul/lesson viewer, progres, jadwal & penugasan.
- Acceptance:
- Learner dapat mendaftar, membuka lesson, progres bertambah sesuai aktivitas.
- Admin melihat ringkasan kursus & progres kelas.
Stories (Backend Draft — Non-Implementasi)
Catatan: semua story ini untuk dokumentasi & kontrak API; eksekusi backend ditunda hingga gate terpenuhi.
Story 1.1: Course Catalog Read API
- Tujuan: endpoint read-only untuk daftar kursus (paging, filter dasar).
- Gate: kontrak API disetujui, data privacy OK, tidak ada coding.
Story 1.2: Course Detail Read API
- Tujuan: endpoint read-only untuk detail kursus + modul/lessons.
- Gate: kontrak API disetujui, relasi data diverifikasi.
Story 1.3: Module Progress Update API
- Tujuan: endpoint untuk mencatat progres belajar (id user, modul, progress delta).
- Gate: definisi skema progres & idempotency disetujui.
Story 1.4: Assignment Submission Persist
- Tujuan: draft kontrak penyimpanan submission tugas (metadata, payload).
- Gate: checklist keamanan & audit trail disetujui.
Epik B — Assessment & Sertifikasi
- Komponen/halaman terkait:
src/app/features/interactive-quiz-demo/page.tsxsrc/app/exam-session/[sessionId]/page.tsx,src/app/exam-session/summary/[sessionId]/page.tsxsrc/app/exams/page.tsx,src/app/admin/exams/page.tsxsrc/components/admin/CertificatePDF.tsx,src/app/admin/certificates/[id]/page.tsx
- Outcome: kuis interaktif, sesi ujian, ringkasan hasil, sertifikat PDF & kirim ulang email.
- Acceptance:
- Kuis berjalan, skoring muncul, ujian terjadwal & ringkasan tersedia.
- Sertifikat dihasilkan, dapat diunduh, dan email “kirim ulang” berfungsi.
Stories (Backend Draft — Non-Implementasi)
Catatan: dokumentasi & kontrak, tidak ada coding hingga gate.
Story 2.1: Exam Session Create API
- Tujuan: kontrak pembuatan sesi ujian (user, examId, startTime).
- Gate: model sesi ujian, validasi & lifecycle disetujui.
Story 2.2: Exam Scoring API
- Tujuan: kontrak endpoint penilaian jawaban (batch/stream, skor per soal).
- Gate: aturan penilaian, integritas data & audit disetujui.
Story 2.3: Exam Summary Read API
- Tujuan: kontrak endpoint ringkasan hasil (skor total, waktu, per-soal).
- Gate: format ringkasan & akses kontrol disetujui.
Story 2.4: Certificate Resend Email Stub
- Tujuan: kontrak request untuk kirim ulang email sertifikat (non-implementasi, queue stub).
- Gate: template email, throttling, dan logging disetujui.
Epik C — Reward & Payroll Integration (Phase-1)
- Komponen/halaman terkait:
src/features/payroll-reward-system/RewardDashboard.tsxsrc/features/payroll-reward-system/PayrollManagement.tsxsrc/features/payroll-reward-system/types.ts,services/,repositories/
- Outcome: tampilan jam belajar & pengakuan sederhana (non-transaksional), feature-flagged.
- Acceptance:
- Reward dashboard menampilkan jam belajar dari progres belajar.
- Tidak ada perubahan ke sistem payroll produksi saat ini.
Epik D — Analytics & Laporan
- Komponen/halaman terkait:
src/app/admin/analytics/page.tsx,src/app/admin/analytics/[studentId]/page.tsxsrc/app/export/page.tsx(jika ada) atau util ekspor sederhana.
- Outcome: ringkasan performa, detail peserta, eksport CSV/Excel.
- Acceptance:
- Admin melihat metrik dasar (penyelesaian, skor rata-rata, waktu belajar).
- Dapat mengunduh laporan untuk manajemen.
Epik E — Desktop UX & Accessibility
- Komponen terkait: seluruh halaman learner & komponen utama.
- Outcome: learner flow berjalan nyaman dan efisien di perangkat desktop.
- Acceptance:
- Navigasi, teks, tombol, tabel terbaca & dapat dioperasikan dengan keyboard.
- Waktu muat desktop p95 < 2 detik.
Epik F — AI Assistant (Phase-1)
- Komponen/halaman terkait:
src/app/ai-assistant/page.tsx
- Outcome: tanya jawab konten pelatihan dapur (non-kritis), sebagai pendamping belajar.
- Acceptance:
- Learner dapat bertanya hal umum terkait materi dan mendapat jawaban yang relevan.
Epik G — Jadwal & Penugasan
- Komponen/halaman terkait:
src/app/schedule/page.tsx,src/app/assignments/page.tsx
- Outcome: penjadwalan kelas/ujian & penugasan tugas modul.
- Acceptance:
- Jadwal terlihat bagi learner; admin/trainer dapat mengatur slot dan penugasan.
Ketergantungan & Urutan
- A mendasari B (assessment butuh course & progres).
- B mendasari sertifikasi & input ke D (analytics) dan C (reward).
- E berjalan paralel sebagai polishing, fokus di sprint 4.
- F berjalan opsional, flagged, mengikuti ketersediaan konten.