Final Project PBKK 2023

 Final Project - Membuat Aplikasi E-Learning


Nama    : Melanie Sayyidina Sabrina Refman
NRP      : 5025211029
Kelas    : Pemrograman Berbasis Kerangka Kerja B

Deskripsi Studi Kasus

Studi kasus aplikasi e-learning untuk Sekolah Menengah Atas, yang dikembangkan menggunakan model pengembangan waterfall, dapat dipandang dari perspektif Model-View-Controller (MVC) sebagai berikut:
Dalam konteks MVC, Model pada aplikasi e-learning ini mencakup struktur database MySQL yang menyimpan informasi tentang pengguna (siswa dan guru), materi pelajaran, dan jadwal. Logika bisnis, seperti proses autentikasi dan pemrosesan data, terdapat pada lapisan Model ini. Sebagai contoh, Model akan memastikan keamanan login siswa dan guru.
View dalam aplikasi ini mencakup antarmuka pengguna (UI) yang dirancang untuk memudahkan akses siswa dan guru ke berbagai fitur, seperti kelas, materi pelajaran, dan latihan soal. Desain instruksional yang dinamis, yang memungkinkan evaluasi dan penyesuaian, juga akan tercermin dalam View, menciptakan pengalaman pengguna yang optimal.
Controller pada aplikasi ini bertanggung jawab atas alur logika pengendalian aplikasi. Dengan menggunakan bahasa pemrograman PHP dan Framework Codeigniter, Controller mengelola input dari pengguna, mengatur interaksi antara Model dan View, dan memastikan bahwa aplikasi berjalan sesuai dengan alur proses yang ditentukan. Misalnya, ketika seorang siswa mengakses latihan soal, Controller akan meminta informasi dari Model, memproses jawaban siswa, dan kemudian memperbarui View dengan hasil evaluasi.
Dengan adanya forum diskusi, akses materi pelajaran dari berbagai lokasi, dan latihan soal, aplikasi e-learning ini diimplementasikan dengan prinsip-prinsip MVC untuk memastikan pemisahan yang jelas antara komponen-komponen aplikasi. Dengan demikian, pengembang dapat lebih mudah melakukan pemeliharaan, memperbarui, atau mengembangkan fitur tambahan tanpa merusak integritas keseluruhan aplikasi. Dengan tujuan meningkatkan kualitas pembelajaran di kelas melalui pendekatan yang lebih interaktif, aplikasi ini memanfaatkan struktur MVC untuk menyediakan solusi e-learning yang efisien dan terstruktur.

Rancangan Umum Fitur

Aplikasi E-learning ini dapat digunakan oleh 2 user yaitu oleh siswa dan guru. 
Berikut adalah rancangan umum fitur dari aplikasi E-learning untuk siswa:
  1. Halaman Login dan Sign up: sign up untuk membuat akun baru siswa dan login untuk siswa yang sudah memiliki akun
  2. Halaman Beranda: menampilkan daftar kelas yang baru dibuka dan latihan yang belum dikerjakan
  3. Halaman Kelas: menampilkan daftar kelas yang diikuti
  4. Halaman Jadwal: menampilkan jadwal kelas yang diikuti di sekolah

Berikut adalah rancangan umum fitur dari aplikasi E-learning untuk guru:
  1. Halaman Login dan Sign up: sign up untuk membuat akun baru guru dan login untuk guru yang sudah memiliki akun
  2. Halaman Beranda: menampilkan daftar kelas dan latihan yang telah dibuat
  3. Halaman Kelas: menampilkan daftar kelas yang dibuka dan bisa menambahkan konten materi untuk kelas yang dibuka
  4. Halaman Jadwal: menampilkan jadwal kelas yang diikuti di sekolah

Rancangan Desain Database

Berikut adalah rancangan desain database (PDM) dari aplikasi E-Learning:

Rancangan Desain Frontend (User Interface)

Berikut adalah rancangan dashboard untuk aplikasi E-Learning:


Rancangan Controller Backend

Dalam implementasi fungsi CRUD pada aplikasi E-learning menggunakan Framework CodeIgniter, logika back end atau pengendalian data dijalankan oleh komponen Controller. Setiap fungsi CRUD memiliki Controller yang khusus untuk menangani logika back end-nya: 1. createData (DataCreationController):
  • Menggunakan metode POST.
  • Diterapkan pada halaman Login, Sign Up, serta Jadwal untuk menambahkan data
  • Controller akan menerima input melalui POST, memvalidasi, memproses data, dan memanggil Model untuk menambahkan data baru ke dalam database.
2. getData (DataRetrievalController):
  • Menggunakan metode GET.
  • Digunakan hampir di seluruh halaman untuk menampilkan data.
  • Controller akan menangkap permintaan melalui GET, memanggil Model untuk mengambil data dari database, dan mengirimkannya kembali ke halaman yang membutuhkan informasi.
3. editData (DataEditingController):
  • Menggunakan metode PUT.
  • Diterapkan pada halaman Jadwal untuk mengedit data.
  • Controller ini menerima permintaan melalui PUT, memvalidasi, memproses data, dan memanggil Model untuk memperbarui data dalam database.
4. deleteData (DataDeletionController):
  • Menggunakan metode DELETE.
  • Diterapkan pada halaman Jadwal untuk menghapus data.
  • Controller ini menerima permintaan melalui DELETE, memvalidasi, dan memanggil Model untuk menghapus data dari database.
Dengan menetapkan fungsi-fungsi CRUD kepada Controller yang khusus, aplikasi dapat menjaga pemisahan tugas dan tanggung jawab antara Model, View, dan Controller sesuai dengan prinsip-prinsip desain Model-View-Controller (MVC). Hal ini memungkinkan pengembang untuk melakukan perubahan atau pembaruan pada bagian tertentu tanpa merusak keseluruhan struktur aplikasi, mendukung pemeliharaan, dan memudahkan pengembangan fitur tambahan.

Dokumentasi Youtube

Anggota Kelompok:
1. Melanie Sayyidina Sabrina Refman (5025211029)
2. Salsabila Fatma Aripa (5025211057)
3. Yusna Millaturrosyidah (5025211254)

Comments

Popular posts from this blog

Tugas Pertemuan 13 - Membuat Aplikasi dengan Memanfaatkan Framework Google

TUGAS 1 PBKK : Latihan 1 Membuat Aplikasi Desktop Sederhana

TUGAS 2 PBKK : Aplikasi Media Capture dengan NET