Skip to main content

Dataschema: Arkademi Prakerja

Versi​

Versi: 1.0

Gambaran Umum​

Dokumen ini menjelaskan fungsi dari setiap tabel dalam skema data untuk Arkademi Prakerja Apps.

Tables Diagram​

Visit here to see the detail.

datachemadatachema

Tables Description​

Penjelasan tiap tabel dibagi menjadi tiga bagian bedasarkan sistemnya:

Sistem: Course​

sx5p1B_posts​

Tabel Posts merupakan tabel utama yang terbagi menjadi beberapa tipe diantaranya adalah course, product, unit, question dan quiz.

sx5p1B_postmeta​

Tabel ini merupakan informasi tambahan atau spesifik mengenai post yang berelasi langsung dengan tabel Posts. Diantara data yang disimpan pada tabel ini adalah id product dan duration. Sehingga data pada tabel Posts hanya berupa id dan typenya, sedangkan detailnya ada di postmeta.

sx5p1B_categories​

Menyimpan data kategori kelas seperti kewirausahaan dan Tes CPNS.

sx5p1B_category_course​

Merupakan tabel relasi diantara tabel Posts dan tabel Categories.

sx5p1B_course_flag​

Berisikan flag (tanda) kelas, terdapat dua tipe yaitu webinar dan spl.

sx5p1B_kuesioner​

Kuesioner merupakan sisipan materi pada pembelajaran (kurikulum). Terdapat 2 field utama yaitu aktif sebagai penanda keaktifan kuesioner dan index untuk urutan dari kuesioner.

sx5p1B_jawaban_kuesioner​

Tabel ini digunakan untuk menyimpan jawaban pengguna pada kuesioner.

sx5p1B_jawaban_refelective_journal​

Tabel ini digunakan untuk menyimpan jawaban pengguna pada reflective journal.

sx5p1B_jawaban_spl_unit​

Tabel ini digunakan untuk menyimpan jawaban pengguna pada TPM dan UK.

sx5p1B_jawaban_webinar_unit​

Tabel ini digunakan untuk menyimpan jawaban pengguna pada unit yang tersedia di Webinar.

sx5p1B_log_mail​

Tabel ini dibuat berdasarkan kebutuhan dari tim Product untuk melacak aktivitas pengguna ketika menyelesaikan pemesanan dan memulai sesi kelas. Untuk email mengenai pembelajaran, jika diketahui waktu sudah melewati batas yang tercatat, sistem akan mengirimkan email berupa reminder untuk menyelesaikan kelas.

Note: Batasan waktu sekita 2-3 hari dari waktu sesi dimulai.

sx5p1B_log_openunit​

Tabel untuk pencatatan aktivitas pengguna ketika membuka unit.

sx5p1B_mail_templates​

Berisikan template email.

sx5p1B_marketplaces​

Menyimpan data marketplace/e-commerce yang terafiliasi dengan Arkademi untuk penjualan kelas Prakerja.

sx5p1B_mst_sesi​

Menampung data sesi webinar.

sx5p1B_product_limit​

Berisikan batasan pembelian product/kelas.

sx5p1B_rating​

Menampung data ulasan dan rating dari user terhadap sebuah kelas.

sx5p1B_spl_unit_flag​

Menampung data flag unit untuk kelas SPL,

sx5p1B_spl_user_last_unit​

Pengguna hanya diperbolehkan untuk mengakses 1 sesi di tiap harinya, maka diperlukan pencatatan waktu unit terakhir yang dikerjakan pengguna.

sx5p1B_webinar​

Merupakan tabel perencanaan dari pemecahan tabel posts yang diharapkan terjadi kedepannya.

sx5p1B_webinar_pembicara​

Berisikan data pembicara pada kelas webinar.

sx5p1B_webinar_quiz​

Tabel ini digunakan untuk menyimpan jawaban pengguna pada quiz webinar.

sx5p1B_webinar_unit​

Tabel ini digunakan untuk menyimpan data waktu unit dimulai dan selesai.

sx5p1B_webinar_unit_flag​

Tabel ini digunakan untuk menyimpan data unit flag untuk kelas Webinar.

sx5p1B_webinar_user​

Tabel ini berisikan data user yang sudah masuk ke kelas webinar.

sx5p1B_gagal_submit_pmo​

Terdapat pencatatan proses submit TPM dan UK ke PMO, jika terjadi kegagalan maka dicatat pada tabel ini.

Sistem: Order​

sx5p1B_order​

Mencatat transaksi yang ada kelas prakerja.

sx5p1B_antrian_sesi​

Tabel ini merupakan table additional, yaitu untuk case tertentu. Dimana untuk pengguna yang tidak memiliki sesi (membeli kelas di Tokopedia).

sx5p1B_arkademi_notifications​

Berisikan data/format notifikasi yang akan dikirimkan ke pengguna.

sx5p1B_coupons​

Merupakan tabel hasil dari refaktor tabel lama, sebelumnya ada di posts dengan post type soft coupon, foreign key pada tabel ini adalah slug_code/code.

sx5p1B_coupon_useds​

Catatan kupon yang telah digunakan oleh pengguna.

sx5p1B_redeem_code_fraud​

Berisikan data yang ketika proses redeem gagal (error/400), requested by Product team.

sx5p1B_user_live_access​

Awal pembuatan ditujukan untuk memberikan privilage khusus untuk redeem lebih cepat, seperti untuk user assesor (dari PMO). Terdapat dua tipe yaitu, liveaccess dengan flow harus melakukan redeem code dan bypass dengan flow tanpa perlu melakukan redeem code.

sx5p1B_user_prakerja_state​

Tabel untuk mencatat log verifikasi wajah, didalamnya terdapat field state yaitu string unik yang diberi oleh PMO yang diperlukan pada saat callback.

Sistem: User​

sx5p1B_users​

Berisikan data user seperti email, pass yang biasa digunakan untuk proses login, profile, sertifikat.

sx5p1B_usermeta​

Merupakan meta data dari tabel sx5p1B_users, pada tabel ini juga menyimpan token, progress, durasi kelas, status kelas pengguna. Untuk status kelas ada beberapa tipe:
1: Telah melakukan pembelian.
2: Sedang mengerjakan kelas.
3: Sudah mengerjakan post test. 4: Kelas sudah complete.

sx5p1B_users_data​

Merupakan tabel refaktor berisikan data profile user.

sx5p1B_cek_kupon_profile​

Menyimpan sertifikat pengguna prakerja. Dapat diakses langsung (tanpa memerlukan relasi dengan tabel lain) karena sudah tersedia data user dan lainnya.

sx5p1B_user_file_images​

Berisikan file foto profile user, berelasi dengan tabel sx5p1B_users.


Writer: Media
Contributor: Fauzan
Written at: 25 September 2024