Skip to main content

Final Project

 Final Project

Link source code : Github Repository

Anggota Kelompok : 1. Sejati Bakti Raga (5025201007)

                                   2. William Zefanya Maranatha (5025201167)

                                   3. Immanuel Pascanov Samosir( 5025211257)


Referensi :

Pada final project PBKK kali ini kami menggunakan referensi paper. Berikut adalah paper nya https://ejurnal.umri.ac.id/index.php/JIK/article/view/3472 



yang berjudul  "Sistem Informasi Manajemen PenggajianBerbasis FrameworkCodeigniter Di CV.Citra Mandiri Gresikyang mana dibuat oleh mahasiswa Universitas Muhammadiyah Gresik. 

Deskripsi Studi Kasus Aplikasi :

Studi kasus aplikasi yang akan dibangun adalah Sistem Informasi Penggajian Pegawai Berbasis Web. Aplikasi ini dirancang untuk memudahkan proses penggajian pegawai dengan fitur-fitur yang mencakup manajemen data pegawai, data jabatan, data absensi, data gaji, data potongan, laporan, serta fungsi login multi-user. Dalam pengembangan aplikasi ini, kita akan merinci setiap aspek menggunakan pendekatan Model-View-Controller (MVC).


Rancangan Umum Arsitektur atau Fitur :

Model:

- Entitas Pegawai

- Entitas Jabatan

- Entitas Absensi

- Entitas Gaji

- Entitas Potongan

View:

 - Halaman Login

- Dashboard

- Form Pegawai

- Form Jabatan

- Form Absensi

- Form Gaji

- Form Potongan

- Laporan

Controller: 

- Pengelola Autentikasi

- Pengelola Data Pegawai

- Pengelola Data Jabatan

- Pengelola Data Absensi

- Pengelola Data Gaji

- Pengelola Data Potongan

- Pengelola Laporan


Rancangan Desain Database :

Berikut adalah rancangan sistem basis data (database) untuk aplikasi Sistem Informasi Penggajian Pegawai Berbasis Web. Sistem ini mencakup tabel-tabel utama, relasi antar tabel, dan beberapa catatan terkait desain.

### Rancangan Sistem Database:

1. Tabel `data_jabatan`:
   - Kolom:
     - `id_jabatan` (Primary Key)
     - `nama_jabatan`
     - `gaji_pokok`
     - `tj_transport`
     - `uang_makan`

2. Tabel `data_kehadiran`:
   - Kolom:
     - `id_kehadiran` (Primary Key)
     - `bulan`
     - `nik` (Foreign Key ke `data_pegawai`)
     - `hadir`
     - `sakit`
     - `alpha`

3. Tabel `data_pegawai`:
   - Kolom:
     - `id_pegawai` (Primary Key)
     - `nik`
     - `nama_pegawai`
     - `username`
     - `password`
     - `jenis_kelamin`
     - `jabatan` (Foreign Key ke `data_jabatan`)
     - `tanggal_masuk`
     - `status`
     - `photo`
     - `hak_akses` (Foreign Key ke `hak_akses`)

4. Tabel `hak_akses`:
   - Kolom:
     - `id` (Primary Key)
     - `keterangan`
     - `hak_akses`

5. Tabel `potongan_gaji`:
   - Kolom:
     - `id` (Primary Key)
     - `potongan`
     - `jml_potongan`

### Relasi Antar Tabel:

1. Relasi antara `data_pegawai` dan `data_jabatan`:
   - `data_pegawai.jabatan` (Foreign Key) -> `data_jabatan.id_jabatan`

2. Relasi antara `data_kehadiran` dan `data_pegawai`:
   - `data_kehadiran.nik` (Foreign Key) -> `data_pegawai.nik`

3. Relasi antara `data_pegawai` dan `hak_akses`:
   - `data_pegawai.hak_akses` (Foreign Key) -> `hak_akses.id`

### Catatan Desain:

1. Enkripsi Password:
   - Pastikan untuk menggunakan teknik enkripsi yang aman untuk menyimpan kata sandi pengguna.

2. Validasi Input:
   - Terapkan validasi input pada tingkat aplikasi untuk mencegah serangan injeksi SQL dan memastikan integritas data.

3. Indexing:
   - Pertimbangkan penggunaan indeks pada kolom-kolom yang sering digunakan dalam kueri untuk meningkatkan kinerja database.

4. Backup dan Restore:
   - Tetapkan kebijakan reguler untuk backup data dan mekanisme pemulihan untuk melindungi data dari kehilangan atau kerusakan.

5. Pembaruan dan Penghapusan Data:
   - Pertimbangkan penggunaan kunci asing dengan aturan tindakan ON UPDATE dan ON DELETE untuk menangani pembaruan dan penghapusan data dengan benar.

Dengan mengikuti rancangan ini, aplikasi penggajian dapat diimplementasikan dengan struktur basis data yang kokoh dan terorganisir, memungkinkan manajemen data yang efisien dan aman.

 

Desain Frontend :

Menggunakan CI (CodeIgniter) sebagai kerangka kerja, desain frontend akan mencakup:

- Halaman Login dengan validasi

- Dashboard yang menampilkan ringkasan data

- Form untuk manajemen Pegawai, Jabatan, Absensi, Gaji, Potongan

- Halaman Laporan untuk melihat data secara terperinci


Sistem Informasi Penggajian Pegawai Berbasis Web (Codeigniter)
Sistem Informasi Penggajian Pegawai Berbasis Web (Codeigniter)
Sistem Informasi Penggajian Pegawai Berbasis Web (Codeigniter)


Control untuk Logika Backend:

Logika backend akan dihandle oleh controller sebagai berikut:

- Controller Autentikasi untuk login dan logout

- Controller Pegawai untuk manajemen data pegawai

- Controller Jabatan untuk manajemen data jabatan

- Controller Absensi untuk manajemen data absensi

- Controller Gaji untuk manajemen data gaji

- Controller Potongan untuk manajemen data potongan

- Controller Laporan untuk menghasilkan laporan


Implementasi Menggunakan CodeIgniter (CI) :

Menggunakan CI sebagai kerangka kerja PHP, kita akan mengimplementasikan rancangan tersebut. Membuat model, view, dan controller sesuai dengan desain yang sudah dirancang sebelumnya. Menggunakan fitur-fitur CI seperti routing, database library, form validation, dan lainnya.