A. Pendahuluan
Aplikasi si-OBE merupakan aplikasi berbasis web dengan melakukan
manajemen nilai pelajar menggunakan sistem OBE (Outcome Based Education). Sistem
OBE berfokus pada hasil dan pencapaian pelajar sebagai prioritas dengan memastikan
bahwa pelajar mencapai sejumlah hasil atau kompetensi yang telah ditentukan di awal.
Berbeda dengan sistem pelajaran tradisional di mana proses pengajaran dan materi
yang diberikan adalah fokus utama.
Aplikasi tersebut menggunakan pendekatan arsitektur monolitik di mana semua
komponen dan modul terintegrasi dalam satu codebase dan berjalan pada satu
kesatuan. Pada aplikasi si-OBE, semua perangkat lunak termasuk antarmuka
pengguna, logika bisnis, dan akses data terpaket dan diluncurkan dalam satu unit.
B. Fungsionalitas
Aplikasi si-OBE merupakan aplikasi manajemen pembelajaran untuk pengajar
yang digunakan oleh pelajar dan pengajar dengan menggunakan sistem OBE. Terdapat
3 entitas user atau role yaitu student, teacher, dan admin. Role tersebut digunakan
untuk membatasi akses dan izin dari beberapa fitur pada aplikasi si-OBE. Aplikasi
si-OBE menggunakan arsitektur monolitik dengan framework dan teknologi Laravel,
Node, NPM, dan beberapa teknologi lainnya.
Si-OBE menggunakan framework Laravel yang merupakan framework
pengembangan aplikasi web berbasis PHP yang mendukung praktik MVC
(Model-View-Controller) untuk membantu organisasi kode dengan baik dan memisahkan
logika pada aplikasi. Model digunakan untuk mewakilkan data dan logika, kemudian
view bertanggung jawab untuk menunjukkan tampilan atau presentasi data, sedangkan
controller mengatur aliran logika pada aplikasi dan berfungsi untuk menghubungkan
antara model dan view. Database pada aplikasi menggunakan relational basis data
untuk menyimpan user-generated data. Esai ini menggunakan MySQL sebagai sistem
manajemen basis data (DBMS) pada aplikasi.
MySQL adalah sebuah sistem manajemen basis data (DBMS) yang sangat
populer yang digunakan untuk menyimpan, mengelola, dan mengambil data. MySQL
mendukung query SQL (Structured Query Language) dan digunakan untuk membangun
dan mengelola basis data relasional. Pada aplikasi, query dapat digunakan dengan
menggunakan ORM (Object Relational Mapping). Fitur ORM pada Laravel disebut
Eloquent. ORM memungkinkan developer untuk berinteraksi dengan basis data
menggunakan objek dan metode daripada query SQL secara langsung.
Pada bagian ini akan menjelaskan bagaimana interaksi pengguna berdasarkan role
yang dimiliki:
a) Admin
Admin pada aplikasi memiliki role tertinggi pada aplikasi. Admin dapat
melakukan manajemen pada user seperti memodifikasi dan menghapus data
pengguna. Selain itu, admin juga dapat secara langsung menambah kursus,
silabus, dan tugas layaknya entitas teacher.
b) Teacher
Teacher memiliki akses untuk melakukan manajemen pada silabus dan
kelas. Teacher dapat membuat kelas baru serta menggunakan fungsionalitas
seperti pengaturan kelas, portofolio pelajar, dan membuat tugas kepada pelajar.
c) Student
Entitas student dapat mengakses kelas beserta tugas-tugas dalam kelas.
Tugas dapat dikerjakan serta menampilkan nilai dari tugas.
D. Keamanan
Autentikasi pengguna pada aplikasi si-OBE menggunakan email dan kata sandi
agar dapat mengakses aplikasi. Kata sandi wajib memiliki 8 karakter serta
mengharuskan pengguna untuk melakukan verifikasi email ketika melakukan registrasi.
Pengguna aplikasi juga diberikan remember_token saat ketika ingin melakukan reset
kata sandi.
Pengguna dalam menavigasi aplikasi juga dilakukan generasi session saat login
ketika kredensial pengguna terkonfirmasi. Sebuah session yang terautentikasi dapat
dihapus ketika pengguna melakukan logout aplikasi atau session tersebut tidak memiliki
aktivitas.