Final Project PBKK

 Nama : Adrian Ismu Arifianto

NRP : 5025211116

Kelas : PBKK A

Paper Referensi : APLIKASI MANAJEMEN IURAN PERUMAHAN

 

Ketentuan Final Project

Cari paper yang berhubungan dengan aktivitas pembuatan perangkat lunak/ aplikasi menggunakan framework.

Berdasarkan referensi yang sudah didapatkan,

  1. Buatlah deskripsi studi kasus aplikasi ditinjau dari MVC nya(individu)
  2. Buatlah rancangan umum arsitektur atau fitur yang ada dalam aplikasi  (individu)
  3. Rancang desain databasenya  (individu)
  4. Buat desain front end  (individu)
  5. Tentukan Control yang akan mengandle logika back end.  (individu)
  6. Implementasikan rancangan yang sudah dibuat  menggunakan Framework NET, CI ataupun Framework Google (pilih salah satu - bisa kelompok maks 3)
  7. Buat video presentasinya, upload di youtube, dan didokumentasikan di blog.
  8. Pengumpulan terakhir 16 Des 2023 pukul 08.00 , di dokumentasi di blog masing-masing, dan mengisi lembar monitoring dengan judul "Final Project Pemrograman Berbasis Kerangka Kerja". Tidak lupa membuat koment link pekerjaan di halaman post ini.

 

Penyelesaian

Deskripsi Studi Kasus Aplikasi Ditinjau dari MVC (Model-View-Controller)

Model:

  1. Pemilik Perumahan dan Data Penghuni:
    • Model ini menyimpan informasi tentang pemilik perumahan (atau manajemen perumahan) beserta daftar penghuni yang tinggal di sana.
    • Data yang terkait mungkin meliputi informasi pribadi, detail kontak, informasi pembayaran, dan status tinggal penghuni.
  2. Tagihan dan Pembayaran:
    • Model ini mencakup informasi mengenai tagihan iuran perumahan untuk setiap penghuni.
    • Menyimpan detail pembayaran yang dilakukan oleh penghuni serta status pembayaran untuk setiap bulannya.

View:

  1. Halaman Informasi Perumahan:
    • Menampilkan detail perumahan, informasi pemilik, fasilitas yang tersedia, dan kontak untuk manajemen.
    • Menampilkan informasi mengenai iuran perumahan, jadwal pembayaran, dan metode pembayaran yang dapat digunakan.
  2. Halaman Tagihan dan Pembayaran:
    • Menampilkan tagihan iuran perumahan untuk setiap penghuni.
    • Memberikan opsi kepada penghuni untuk melakukan pembayaran, baik melalui transfer bank, kartu kredit, atau metode pembayaran lainnya.
    • Menyediakan riwayat pembayaran dan status pembayaran yang terkait dengan setiap penghuni.

Controller:

  1. Manajemen Pengguna:
    • Memproses informasi yang berkaitan dengan pendaftaran pengguna baru, pembaruan informasi pengguna, dan penghapusan akun.
    • Mengelola otentikasi dan otorisasi pengguna agar hanya penghuni yang berhak mengakses informasi tagihan dan melakukan pembayaran.
  2. Pengelolaan Tagihan dan Pembayaran:
    • Memproses pembuatan tagihan untuk setiap penghuni berdasarkan tarif iuran yang berlaku.
    • Memvalidasi pembayaran yang diterima dan mengubah status pembayaran sesuai dengan informasi yang diterima dari sistem pembayaran.
  3. Interaksi antara Model dan View:
    • Mengatur hubungan antara tampilan dengan data yang disajikan, memastikan informasi yang ditampilkan di view berasal dari model yang benar dan terkini.
    • Menangani permintaan dari pengguna untuk melihat informasi tagihan, pembayaran, dan detail perumahan.

 

Buatlah rancangan umum arsitektur atau fitur yang ada dalam aplikasi (individu)

  1. Autentikasi dan Otorisasi:
    • Sistem login untuk penghuni perumahan dan manajemen perumahan.
    • Otorisasi untuk memastikan hak akses yang sesuai berdasarkan peran pengguna.
  2. Manajemen Pengguna:
    • Fasilitas untuk mendaftarkan penghuni baru dan mengelola informasi pengguna yang ada.
    • Kemampuan untuk mengubah detail kontak, informasi keuangan, atau informasi lainnya terkait penghuni.
  3. Informasi Perumahan:
    • Fitur untuk menampilkan detail perumahan, informasi tentang pemilik atau manajemen perumahan, fasilitas yang tersedia, dan kebijakan yang berlaku.
  4. Tagihan dan Pembayaran:
    • Pembuatan dan penyimpanan tagihan iuran perumahan untuk setiap penghuni.
    • Riwayat pembayaran yang mencatat setiap transaksi yang dilakukan oleh penghuni.
    • Notifikasi kepada penghuni tentang jadwal pembayaran yang akan datang atau tagihan yang belum dibayar.
  5. Metode Pembayaran:
    • Integrasi dengan berbagai metode pembayaran seperti transfer bank, kartu kredit, e-wallet, atau metode pembayaran lainnya.
    • Pengelolaan keamanan transaksi untuk memastikan keamanan informasi keuangan pengguna.
  6. Notifikasi dan Pengingat:
    • Sistem notifikasi untuk mengirimkan pengingat kepada penghuni tentang jadwal pembayaran yang akan datang atau tagihan yang belum terbayar.
    • Kemampuan untuk memberikan pemberitahuan kepada pengguna mengenai informasi penting terkait perumahan atau perubahan dalam kebijakan pembayaran.
  7. Manajemen Admin/Manajemen Perumahan:
    • Fasilitas khusus untuk manajemen perumahan untuk mengelola informasi penghuni, tagihan, laporan keuangan, dan pengelolaan keseluruhan aplikasi.
  8. Pemantauan dan Pelaporan:
    • Fitur untuk membuat laporan pembayaran, status tagihan, dan informasi keuangan perumahan.
    • Pemantauan untuk mengawasi status pembayaran secara keseluruhan.
  9. Pengaturan Profil Pengguna:
    • Kemampuan bagi pengguna untuk mengatur preferensi pemberitahuan, mengelola metode pembayaran, dan melihat riwayat transaksi.


Rancang desain databasenya

            Berikut merupakan database yang digunakan.

  1. Tabel Pengguna (Users):
    • Columns:
      • user_id (Primary Key)
      • username
      • password
      • role (seperti 'penghuni' atau 'manajemen')
  2. Tabel Perumahan (Housing):
    • Columns:
      • housing_id (Primary Key)
      • housing_name
      • owner_id (Foreign Key ke Tabel Pengguna)
  3. Tabel Penghuni (Residents):
    • Columns:
      • resident_id (Primary Key)
      • user_id (Foreign Key ke Tabel Pengguna)
      • housing_id (Foreign Key ke Tabel Perumahan)
  4. Tabel Tagihan (Bills):
    • Columns:
      • bill_id (Primary Key)
      • resident_id (Foreign Key ke Tabel Penghuni)
      • billing_month
      • billing_amount
      • payment_status (status pembayaran: misalnya 'dibayar' atau 'belum dibayar')
  5. Tabel Riwayat Pembayaran (Payment History):
    • Columns:
      • payment_id (Primary Key)
      • bill_id (Foreign Key ke Tabel Tagihan)
      • payment_date
      • payment_amount
      • payment_method
  6. Tabel Metode Pembayaran (Payment Methods):
    • Columns:
      • method_id (Primary Key)
      • user_id (Foreign Key ke Tabel Pengguna)
      • method_type (seperti 'transfer bank', 'kartu kredit', dll.) 

Di bawah ini adalah kode SQL untuk membuat struktur tabel yang telah dijelaskan


Buat desain front end

Halaman login dan register





          Profil pengguna

           Halaman pembayaran

          Riwayat pembayaran

       Halaman administrasi (Dashboard admin)

      Halaman data pemasukan admin


         Halaman data penghuni

          Halaman data laporan admin

 

Tentukan Control yang akan mengandle logika back end

Dalam arsitektur MVC (Model-View-Controller), bagian yang bertanggung jawab atas logika bisnis dan interaksi antara model dan view adalah bagian Controller. berikut adalah controller yang ada:

  1. UserController:
    • Menangani autentikasi pengguna.
    • Mengelola pendaftaran, login, logout, dan manajemen akun pengguna.
    • Mengelola informasi profil pengguna.
  2. ResidentController:
    • Mengelola data penghuni perumahan.
    • Menyediakan akses ke informasi tagihan dan pembayaran bagi penghuni tertentu.
    • Memproses pembayaran yang dilakukan oleh penghuni.
  3. BillController:
    • Bertanggung jawab atas pembuatan tagihan berdasarkan jadwal yang ditetapkan.
    • Menyediakan informasi tagihan dan status pembayaran kepada penghuni.
    • Memungkinkan pengelolaan tagihan oleh manajemen perumahan.
  4. PaymentController:
    • Menangani logika terkait proses pembayaran.
    • Memvalidasi pembayaran yang diterima, mengubah status pembayaran, dan merekam riwayat pembayaran.
  5. HousingController:
    • Menyediakan informasi tentang perumahan seperti detail perumahan, fasilitas, dan kebijakan.
    • Memungkinkan manajemen perumahan untuk mengelola informasi perumahan.
  6. AdminDashboardController:
    • Menangani interaksi antara manajemen perumahan dengan informasi yang melibatkan tagihan, riwayat pembayaran, dan laporan keuangan.

 Implementasikan rancangan yang sudah dibuat menggunakan Framework NET, CI ataupun Framework Google        

Berikut merupakan link implementasi rancangan yang telah dibuat menggunakan CodeIgniter.

https://github.com/Dafarelcky/FP_PBKK_A


Buat video presentasinya, upload di youtube, dan didokumentasikan di blog.



Komentar

Postingan populer dari blog ini

MVC CodeIgniter pada Toko Online

Membuat View CodeIgniter4

QUIZ 1 PBKK A