Final Project Pemrograman Berbasis Kerangka Kerja

Nama : Made Nanda Wija Vahindra

NRP : 5025211160

Kelas : PBKK A

Pada Final Project kali ini saya akan menggunakan Code Igniter Untuk membuat aplikasi web.

Referensi Paper



Deskripsi Studi Kasus: Aplikasi Manajemen Kelas dan Mahasiswa

Model (M)

  • ClassModel: Menyimpan informasi kelas seperti nama kelas, kode kelas, dan daftar mahasiswa yang terdaftar.
  • StudentModel: Menyimpan informasi mahasiswa seperti nama, NIM, alamat, dan informasi lainnya.
View(V)
  • ClassListView: Menampilkan daftar kelas beserta informasi dasar.
  • ClassDetailView: Menampilkan detail kelas, termasuk daftar mahasiswa yang terdaftar.
  • StudentFormView: Menampilkan formulir untuk menambah atau mengedit informasi mahasiswa.
Controller (C)
  • ClassController: Mengelola operasi terkait kelas, seperti menambah kelas, menampilkan daftar kelas, dan menambah/menghapus mahasiswa dari kelas.
  • StudentController: Mengelola operasi terkait mahasiswa, seperti menambah mahasiswa, mengedit informasi mahasiswa, dan menghapus mahasiswa.
Interaksi MVC dalam Aplikasi:
  1. Pengguna membuka Aplikasi:
    • View (ClassListView) menampilkan daftar kelas dari Model (ClassModel).
  2. Pengguna Melihat Detail Kelas:
    • Pengguna memilih kelas pada View (ClassListView).
    • View (ClassDetailView) menampilkan detail kelas dan daftar mahasiswa dari Model (ClassModel).
  3. Pengguna Menambah Mahasiswa:
    • Pengguna membuka View (StudentFormView) untuk menambah mahasiswa.
    • Controller (StudentController) menerima input, memvalidasi, dan menyimpan data mahasiswa baru ke Model (StudentModel).
    • View (ClassDetailView) diperbarui untuk menampilkan mahasiswa yang terbaru terdaftar pada kelas.
  4. Pengguna Menghapus Mahasiswa dari Kelas:
    • Pengguna memilih mahasiswa pada View (ClassDetailView).
    • Controller (ClassController) menghapus mahasiswa dari Model (StudentModel).
    • View (ClassDetailView) diperbarui untuk mencerminkan perubahan./

Fitur Aplikasi

Kelas (Class):
  • Tambah Kelas: Menambahkan kelas baru beserta informasi dasarnya.
  • Lihat Daftar Kelas: Menampilkan daftar kelas yang tersedia.
  • Lihat Detail Kelas: Melihat informasi lengkap tentang suatu kelas dan daftar mahasiswa yang terdaftar.
Mahasiswa (Student):
  • Tambah Mahasiswa: Menambahkan mahasiswa baru ke dalam sistem dengan informasi pribadi.
  • Edit Informasi Mahasiswa: Mengedit informasi mahasiswa seperti nama, NIM, atau alamat.
  • Hapus Mahasiswa: Menghapus data mahasiswa dari sistem.
Keamanan:
  • Autentikasi Pengguna: Memastikan hanya pengguna yang terotentikasi yang dapat mengakses data dan fitur.
  • Otorisasi Pengguna: Memastikan pengguna hanya dapat mengakses data dan operasi yang sesuai dengan peran atau hak aksesnya.
Antarmuka Pengguna (User Interface):
  • Responsif: Antarmuka pengguna yang responsif untuk mendukung berbagai perangkat.
  • Navigasi Intuitif: Menyediakan navigasi yang mudah dipahami dan efisien.

Desain Database

Physical Database Model
Conceptual Database Model

Desain Front End

Halaman Home
Halaman Admin



Control Untuk Logika Backend

Class Controller
class ClassController:
    def get_class_list(self):
        # Logika untuk mendapatkan daftar kelas dari Model (ClassModel)
        pass
    def get_class_details(self, class_id):
        # Logika untuk mendapatkan detail kelas dan daftar mahasiswa dari Model (ClassModel)
        pass
    def add_class(self, class_data):
        # Logika untuk menambahkan kelas baru ke Model (ClassModel)
        pass
    def add_student_to_class(self, class_id, student_data):
        # Logika untuk menambahkan mahasiswa ke suatu kelas di Model (ClassModel)
        pass
    def remove_student_from_class(self, class_id, student_id):
        # Logika untuk menghapus mahasiswa dari suatu kelas di Model (ClassModel)
        pass
Student Controller
class StudentController:
    def add_student(self, student_data):
        # Logika untuk menambahkan mahasiswa baru ke Model (StudentModel)
        pass
    def edit_student_details(self, student_id, updated_data):
        # Logika untuk mengedit informasi mahasiswa di Model (StudentModel)
        pass
    def delete_student(self, student_id):
        # Logika untuk menghapus mahasiswa dari Model (StudentModel)
        pass

Video Presentasi

Link Github : Github



Comments

Popular posts from this blog

Quiz 2 PBKK A

Deskripsi