ABSTRAK Sistem informasi absensi merupakan sebuah sistem yang mencatat kehadiran pegawai secara real time, dengan tujuan untuk kepentingan review suatu absensi yang nantinya akan digunakan sebagai salah satu variabel yang berkaitan dengan perhitungan – perhitungan mengenai keadaan pegawai seperti uang makan, uang lembur, transportasi, kenaikan pangkat dan variabel lainnya yang sesuai dengan standar dari PNS. Pada tugas akhir ini dilakukan suatu studi untuk memikirkan dan mencari jalan keluar bagaimana dan apakah memungkinkan data – data absensi yang diperoleh dapat diolah menjadi suatu sistem yang informasinya dapat dimanfaatkan oleh semua pihak khususnya pegawai menjadi sebuah informasi yang berbasis komputer tanpa menggunakan sistem yang masih konvensional atau manual. Pada BBLM (Balai Besar Logam dan Mesin) di Departemen Perindustrian sistem
informasi absensi yang digunakan masih menggunakan teknik
pemrograman
secara
struktur,
akibatnya
sulitnya
developer
untuk
mengembangkan sistem tersebut mengingat kebijakan dan standar kerja yang dibutuhkan BBLM berubah – ubah. Untuk menanggulanginya maka di migrasikanlah teknik pemrograman struktur menjadi teknik pemrograman berbasis objek (Object Oriented Programming) tujuannya agar developer dapat dengan mudah melakukan maintenance terhadap sistem apabila adanya perubahan terhadap sistem. Sistem informasi absensi yang baru ini menggunakan konsep MVC (Model View Controller) dengan bahasa program PHP berbasis framework yaitu CodeIgniter serta basis data yang digunakan yaitu MySQL. Dengan konsep MVC maka programmer dapat dengan mudah mengembangkan sistem karena antara bagian database dan user interface dipisahkan sehingga masing – masing programmer dapat bekerja sesuai dengan bidangnnya masing – masing, apabila ada penambahan modul tidak harus merubah program secara keseluruhan hanya dengan menambah atau mengurangi modul yang diinginkan. Kata Kunci : MVC (Model View Controller), Codeigniter PHP Framework, MySQL
Universita s Kri sten Maranatha
ABSTRACT
Information system attendance is a system that records employee in a real time, in order to review an absence of interest that will be used as one of the variables related to the calculation of state employees such as food allowance, overtime pay, transportation, promotions and other variables in accordance with standard civil servants. This final project performed a study to consider and find a solution how and whether the possible absence of data obtained can be processed into an information system that can be utilized by all parties especially the clerk into a computer-based information without using a conventional system or still
a
manual. At BBLM (Metal Industry Development Center) in the industrial department of information systems that are used are still used in the structure of programming techniques, the result difficult to develop a system developer is considering the policy and standard of work required to change BBLM. To overcome so the migration of Structure programming techniques to object-based programming techniques (Object Oriented Programming) to developer can easily perform maintenance on the system if any change in the system. Information system attendance which uses the concept of MVC (Model View Controller) with the PHP programming language-based framework CodeIgniter and the database used is MySQL. Use the MVC concept programmers can easily develop a system because of the database and user interface are separated, so that each programmer can work in accordance with her/his industry self. if there is additional module must not change the overall program but only by adding or subtracting the desired module.
Keywords : MVC (Model View Controller), Codeigniter PHP Framework, MySQL
Universita s Kri sten Maranatha
DAFTAR ISI LEMBAR PENGESAHAN KAT A PENGANTAR………………………………………………………………. LEMBAR PERNYAT AAN PERSETUJUAN PUBLIKASI KARYA ILMIAH….. SURAT PERNYATAAN ORISINALITAS KARYA………………………………. ABSTRAK…………………………………………………………………………… ABSTRACT………………………………………………………………………… DAFT AR ISI…………………………………………………………………………. DAFT AR TABEL……………………………………………………………………. DAFT AR GAMBAR…………………………………………………………………. DAFT AR KODE PROGRAM……………………………………………………….
i ii iii iv v vi viii x xiii
BAB I
PERSYARATAN PRODUK.............................................................. I.1 Pendahuluan…………………………………………………….. I.1.1 Tujuan………………………………………………….. I.1.2 Ruang Lingkup Projek………………………………… I.1.3 Definisi Akronim, dan Singkatan…………………….. I.1.4 Overview Laporan…………………………………….. I.2 Gambaran Keseluruhan………………………………………… I.2.1 Perspektif Produk……………………………………… I.2.2 Fungsi Produk…………………………………………. I.2.3 Karakteristik Pengguna………………………………. I.2.4 Batasan-Batasan………………………………………
1 1 3 3 3 4 5 5 5 6 6
BAB II
SPESIFIKASI PRODUK……………………………………………….. II.1 Persyaratan Antarmuka Ekstenal……………………………… II.1.1 Antarmuka dengan Pengguna……………………….. II.1.2 Antarmuka Perangkat Keras…………………………. II.1.3 Antarmuka Perangkat Lunak………………………… II.2 Fitur Produk Perangkat Lunak…………………………………. II.2.1 Fitur Produk Bagian Proses………………………….. II.2.2 Fitur Produk Bagian Hasil……………………………..
8 8 8 9 9 10 10 11
BAB III
DESAIN PERANGKAT LUNAK………………………………………. III.1 Pendahuluan……………………………………………………... III.1.1 Identifikasi……………………………………………… III.1.2 Overview Sistem………………………………………. III.1.3 Landasan Teori………………………………………… III.1.3.1 PHP…………..…………………………….. III.1.3.1.1 Kepraktisan….……………….. III.1.3.1.2 Kekuatan…….……………….. III.1.3.2 MVC (Model View Controller)………….… III.1.3.2.1 Kelebihan MVC…..………….. III.1.3.3 CodeIgniter…………………………………
12 12 12 14 15 15 15 17 18 18 19
Universita s Kri sten Maranatha
III.2
III.1.3.3.1 Fitur – fitur CodeIgniter……... III.1.3.3.2 Alur MVC pada CodeIgniter... III.1.3.4 MySQL……………………………………… III.1.3.4.1 Fleksibilitas………………….... III.1.3.4.2 Kekuatan…………………....... III.1.3.4.3 Keamanan.………………....... Desain Arsitektur Perangkat Lunak……………………………. III.2.1 Elemen Desain Perangkat Lunak……………………. III.2.1.1 Diagram Use Case………………………... III.2.1.2 Dokumentasi Use Case…………………... III.2.1.3 Realisasi Use Case……………………….. III.2.1.3.1 Diagram Kelas……………….. III.2.1.3.2 Diagram Sequence dan Diagram Aktifitas………….. III.2.1.3.3 ER-Diagram........................ III.2.2 Konsep Eksekusi………………………………………. III.2.3 Desain Antarmuka……………………………………..
19 20 21 21 22 23 24 24 25 27 47 47 49 68 69 69
BAB IV
PENGEMBANGAN SISTEM………………………………………….. IV.1 Perencanaan Tahap Implementasi……………………………. IV.1.1 Pembagian Implementasi Class……………………... IV.1.2 Keterkaitan Antar Class………………………………. IV.2 Perjalanan Tahap Implementasi (Coding)…………………….. IV.2.1 Top Down Implementasi……………………………… IV.2.2 Debugging……………………………………………… IV.2.3 Ulasan Realisasi Fungsionalitas…………………….. IV.2.4 Ulasan Realisasi User Interface Design…………….
79 79 80 86 87 91 92 107 109
BAB V
TESTING DAN EVALUASI SISTEM………………………………… V.1 Rencana Pengujian Sistem Terimplementasi………………… V.1.1 Test Case……………………………………………… V.1.2 Uji Fungsionalitas Modul/Class……………………… V.2 Perjalanan Metodologi Pengujian……………………………… V.2.1 White Box………………………………………………. V.2.2 Black Box………………………………………………. V.3 Ulasan Hasil Evaluasi……………………………………………
110 110 110 111 116 117 118 122
BAB VI
KESIMPULAN DAN SARAN…………………………………………..
124 124 125
VI.1 Keterkaitan antara Kesimpulan dengan Hasil Evaluasi……... VI.2 Keterkaitan antara Saran dengan Hasil Evaluasi……………. VI.3 Rencana Perbaikan/Implementasi terhadap Saran yang Diberikan……………………………………………………
125
DAFT AR PUSTAKA LAMPIRAN Universita s Kri sten Maranatha
DAFTAR TABEL Tabel I.1 Tabel I.2 Tabel II.1 Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel
II.2 II.3 III.1 III.2 III.3 III.4 III.5 III.6 III.7 III.8 III.9 III.10 III.11 III.12 III.13 III.14 III.15 III.16 III.17 III.18 III.19 III.20 III.21 IV.1 IV.2 IV.3 IV.4 IV.5 IV.6 IV.7 IV.8 IV.9 V.1 V.2 V.3 V.4 V.5 V.6
Perbedaan Pemrograman Terstruktur dan Pemrograman Berbasis Objek………………………………………………....... Data Kata, Akronim dan Singkatan……………………..……… Parameter pada Tampilan Hingga dapat Digunakan oleh Pengguna………………………………..……………………….. Fitur Produk Bagian Proses…………………………………….. Fitur Produk Bagian Hasil……………………………………….. Activity Use Case UCA.001……………………………………. Activity Use Case UCA.002……………………………………. Activity Use Case UCA.002.001………………………………. Activity Use Case UCA.002.002………………………………. Activity Use Case UCA.002.003………………………………. Activity Use Case UCA.003……………………………………. Activity Use Case UCA.003.001………………………………. Activity Use Case UCA.003.002………………………………. Activity Use Case UCA.004…….………………………………. Activity Use Case UCA.004.001.………………………………. Activity Use Case UCA.004.002.………………………………. Activity Use Case UCA.005…....………………………………. Activity Use Case UCA.006……………………………………. Activity Use Case UCA.007……………………………………. Activity Use Case UCA.008……………………………………. Activity Use Case UCA.009……………………………………. Activity Use Case UCA.010……………………………………. Activity Use Case UCA.011……………………………………. Activity Use Case UCA.012……………………………………. Activity Use Case UCA.013……………………………………. Activity Use Case UCA.014……………………………………. Kelas Controller Pegawai………..……………………………… Kelas Controller Admin…….……………………………………. Kelas Controller Front.............................................................. Kelas Controller Report............................................................ Kelas Model MAdm…………………………………………….. Kelas Model MAbsen……….…………………………………… Kelas Model MRep................................................................... Kelas Model MUser.................................................................. Kelas Model MGol.................................................................... Pengujian Frm.01………………………………………………… Pengujian Frm.02………………………………………………… Pengujian Frm.03………………………………………………... Pengujian Frm.04………………………………………………… Pengujian Frm.05………………………………………………… Pengujian Frm.06………………………………………………...
2 4 8 10 11 27 28 29 30 31 32 33 33 34 35 36 37 38 39 41 42 43 44 45 45 46 80 81 82 82 83 83 84 85 85 118 118 118 119 119 120
Universita s Kri sten Maranatha
Tabel Tabel Tabel Tabel Tabel Tabel Tabel Tabel
V.7 V.8 V.9 V.10 V.11 V.12 V.13 V.14
Pengujian Frm.07………………………………………………… Pengujian Frm.08………………………………………………… Pengujian Frm.09………………………………………………... Pengujian Frm.10………………………………………………… Pengujian Frm.11………………………………………………… Pengujian Frm.12………………………………………………... Pengujian Frm.13………………………………………………… Pengujian Frm.14…………………………………………………
120 120 120 121 121 121 122 122
Universita s Kri sten Maranatha
DAFTAR GAMBAR Gambar III.1 Gambar III.2 Gambar III.3 Gambar III.4 Gambar III.5.1 Gambar III.5.2 Gambar III.6.1 Gambar III.6.2 Gambar III.7.1 Gambar III.7.2 Gambar III.8.1 Gambar III.8.2 Gambar III.9.1 Gambar III.9.2 Gambar III.10.1 Gambar III.10.2 Gambar III.11.1 Gambar III.11.2 Gambar III.12.1 Gambar III.12.2 Gambar III.13.1 Gambar III.13.2 Gambar III.14.1 Gambar III.14.2 Gambar III.15.1 Gambar III.15.2 Gambar III.16.1 Gambar III.16.2 Gambar III.17.1
Identifikasi Pengembangan Sistem…………………………… Perbandingan Sistem Lama dan Sistem Baru………………. Alur MVC pada CodeIgniter…………………………………… Diagram Use Case…………………………………………….. Diagram Kelas Sistem Controller….………………………….. Diagram Kelas Sistem Model...……………………………….. Diagram Sequence Login……………………………………… Diagram Aktifitas Login………………………………………… Diagram Sequence Mengelola Absensi….…………………… Diagram Aktifitas Mengelola Absensi ………………………… Diagram Sequence Mengelola User…..….…………………… Diagram Aktifitas Mengelola User….. ………………………… Diagram Sequence Mengelola Golongan..…………………… Diagram Aktifitas Mengelola Golongan..……………………… Diagram Sequence Menampilkan Absensi Pegawai Hari ini……………………………………………………………….... Diagram Aktifitas Menampilkan Absensi Pegawai Hari ini……………………………………………………………….… Diagram Sequence Menampilkan Absensi Harian Pegawai……………………………………..…………………… Diagram Aktifitas Menampilkan Absensi Harian Pegawai…………………………………..……………………… Diagram Sequence Menampilkan Absensi Pegawai Pergolongan………………………………..…………………… Diagram Aktifitas Menampilkan Absensi Pegawai Pergolongan……………………………...……………………… Diagram Sequence Menampilkan Absensi Pegawai Berdasarkan Range Tanggal……………...…………………… Diagram Aktifitas Menampilkan Absensi Pegawai Berdasarkan Range Tanggal…………...……………………… Diagram Sequence Menampilkan Grafik Absensi Pegawai…............................................................................... Diagram Aktifitas Menampilkan Grafik Absensi Pegawai…………………………………..……………………… Diagram Sequence Menampilkan Jam Lembur Pegawai……………………………………..…………………… Diagram Aktifitas Menampilkan Jam Lembur Pegawai…………………………………..……………………… Diagram Sequence Menampilkan Hasil Perhitungan Uang Makan Pegawai……………………………..…………………… Diagram Aktifitas Menampilkan Hasil Perhitungan Uang Makan Pegawai………………………....……………………… Diagram Sequence Menampilkan Hasil Perhitungan Uang
13 15 20 26 48 48 49 50 50 51 51 52 52 53 53 54 55 56 56 57 58 59 60 61 61 62 63 64 64
Universita s Kri sten Maranatha
Gambar III.17.2 Gambar III.18.1 Gambar III.18.2 Gambar III.19.1 Gambar III.19.2 Gambar III.20 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar III.21 Gambar IV.1 Gambar IV.2 Gambar IV.3 Gambar IV.4 Gambar IV.5 Gambar IV.6 Gambar IV.7 Gambar IV.8 Gambar IV.9 Gambar IV.10 Gambar IV.11 Gambar IV.12 Gambar IV.13 Gambar IV.14 Gambar IV.15 Gambar IV.16
Lembur Pegawai..……………………………..………………… Diagram Aktifitas Menampilkan Hasil Perhitungan Uang Makan Pegawai………………………....……………………… Diagram Sequence Menampilkan Rekapitulasi Jumlah Kedatangan Pegawai…………………………………………… Diagram Aktifitas Menampilkan Rekapitulasi Jumlah Kedatangan Pegawai…………………...……………………… Diagram Sequence Logout………………..…………………… Diagram Aktifitas Logout………………..……………………… ER-Diagram Sistem Informasi Absennsi................................. Frm.01 Form Tampilan Login…………...……………………... Frm.02 Form Tampilan Halaman Aktif User…………..……... Frm.03 Form Tampilan Mengelola Absensi…………………... Frm.04 Form Tampilan Mengelola User….....………………... Frm.05 Form Tampilan Mengelola Golongan....……………... Frm.06 Form Tampilan Absensi Pegawai Hari ini…..……….. Frm.07 Form Tampilan Absensi Harian Pegawai…..………... Frm.08 Form Tampilan Absensi Pegawai Pergolongan…….. Frm.09 Form Tampilan Absensi Pegawai Berdasarkan Range Tanggal…………………………………………………. Frm.10 Form Tampilan Grafik Absensi Pegawai…………… Frm.11 Form Tampilan Jam Lembur Pegawai……………… Frm.12 Form Tampilan Hasil Perhitungan Uang Makan Pegawai……. ……………………………………………….…. Frm.13 Form Tampilan Hasil Perhitungan Uang Lembur Pegawai………………………………………………………... Frm.14 Form Tampilan Rekapitulasi Jumlah Kehadiran Pegawai………………………………………..………………... Relasi Antara Kelas Model dan Kelas Mpeg Model dan Kelas Madm Admin………………………...…………………… Relasi Antara Kelas Admin Controller dan Kelas Pegawai Controller………………………………………..………………. Arsitektur Perjalanan Database Absensi………..……………. Halaman Login........................................................................ Halaman Pegawai…………………………………..………….. Halaman Absen Hari ini……………………………..…………. Halaman Absensi Harian…………………………….………… Halaman Absensi Bulanan…………………………….………. Halaman Absensi Pergolongan……………………….………. Halaman Rekapitulasi Kedatangan……………………..…….. Halaman Grafik Berdasarkan Kehadiran Pegawai................. Halaman Grafik Berdasarkan Golongan Pegawai.................. Halaman Report Absensi Pegawai......................................... Halaman Report Absensi Hari ini Pdf..................................... Halaman Admin…………………………………………..…….. Halaman Mengelola Absensi……………………………..…….
65 66 67 67 68 68 69 70 70 71 72 72 73 74 74 75 76 76 77 78 86 87 87 93 94 95 96 97 98 99 100 101 103 103 104 105
Universita s Kri sten Maranatha
Gambar IV.17 Gambar IV.18 Gambar V.1
Halaman Mengelola User…………………………………..….. Halaman Mengelola Golongan............................................... Hasil Testing Program Kelas Model………………………..….
106 107 117
Universita s Kri sten Maranatha
DAFTAR KODE PROGRAM Kode Program IV.1 Kode Program IV.2 Kode Program IV.3 Kode Program IV.4 Kode Program IV.5 Kode Program IV.6 Kode Program IV.7 Kode Program IV.8 Kode Program IV.9 Kode Program IV.10 Kode Program Kode Program Kode Program Kode Program Kode Program Kode Program Kode Program Kode Program Kode Program Kode Program Kode Program Kode Program
IV.11 IV.12 IV.13 IV.14 IV.15 IV.16 IV.17 IV.18 IV.19 IV.20 IV.21 IV.22
Kode Program IV.23 Kode Program IV.24 Kode Program IV.25 Kode Program IV.26 Kode Program V.1
Script Konfigurasi Site Domain…………….. Script Konfigurasi URL_suffix……………… Script Konfigurasi Enable_Hook…………… Script Konfigurasi Benchmark Database…. Script Konfigurasi Koneksi Database……… Script Konfigurasi Driver Database……….. Script Konfigurasi Username…………….... Script Konfigurasi Password………………. Script Konfigurasi Hostname………………. Script Konfigurasi Database yang digunakan……………………………………. Script Konfigurasi Prefix……………………. Script Konfigurasi Debugging………………. Script Konfigurasi Cache…………………… Script Konfigurasi Char_Set……………….. Script Konfigurasi Default_Controller……… Script Login Kelas Controller........................ Script Kelas Pegawai Controller…………… Script Query Absensi Hari ini………………. Script Query Absensi Harian Pegawai…….. Script Query Absensi Bulanan.…………….. Script Query Absensi Pergolongan………… Script Query Rekapitulasi Kedatangan Pegawai………………………………………. Script Grafik berdasarkan Kehadiran Pegawai......................................................... Script Grafik Berdasarkan Golongan Pegawai.......................................................... Script Report Absensi Pegawai Kelas Controller........................................................ Script Kelas Admin Controller.……………… Script Query Mengelola Absensi……………. Script Query Mengelola User……………….. Script Testing Unit Kelas Model……………..
88 88 89 89 89 89 89 89 90 90 90 90 90 90 90 92 93 94 95 96 97 98 100 101 102 104 105 106 107
Universita s Kri sten Maranatha