23
Teknik Monitoring Kehadiran Mahasiswa Dalam Perkuliahan dengan Fingerprint di FTI UKSW Berbasis Website dengan Framework Codeigniter Artikel Ilmiah Peneliti: Michael Tedja Iskandar (672015079) Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga April 2019

Teknik Monitoring Kehadiran Mahasiswa Dalam Perkuliahan ... · absensi dan tidak lagi menggunakan sistem yang manual sehingga meminimalisir terjadinya ... dari mahasiswa ke dalam

  • Upload
    others

  • View
    15

  • Download
    0

Embed Size (px)

Citation preview

Teknik Monitoring Kehadiran Mahasiswa Dalam

Perkuliahan dengan Fingerprint di FTI UKSW Berbasis

Website dengan Framework Codeigniter

Artikel Ilmiah

Peneliti:

Michael Tedja Iskandar (672015079)

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

April 2019

1

Teknik Monitoring Kehadiran Mahasiswa Dalam

Perkuliahan dengan Fingerprint di FTI UKSW Berbasis

Website dengan Framework Codeigniter

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

untuk memperoleh Gelar Sarjana Komputer

Peneliti:

Michael Tedja Iskandar (672015079)

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

April 2019

2

3

4

5

6

Pernyataan

Artikel ilmiah berikut ini :

Judul : Teknik Monitoring Kehadiran Mahasiswa Dalam Perkuliahan dengan

Fingerprint di FTI UKSW Berbasis Website dengan Framework

Codeigniter

Pembimbing : Prof. Dr. Ir. Eko Sediyono, M.Kom.

Adalah benar hasil karya saya :

Nama : Michael Tedja Iskandar

NIM : 672015079

Saya menyatakan tidak mengambil sebagian atau seluruhnya dari hasil karya orang lain kecuali

sebagaimana yang tertulis pada daftar pustaka.

Pernyataan ini dibuat dengan sebenar - benarnya sesuai dengan ketentuan yang berlaku dalam

penulisan karya ilmiah.

Salatiga, 5 April 2019

7

Michael Tedja Iskandar

1. Pendahuluan

Pendidikan di Indonesia dalam perkembangannya selama ini oleh sebagian para ahli

masih dirasa kurang. Kurangnya kompetensi yang dimiliki oleh lulusan, pada akhirnya akan

mengakibatkan membengkaknya angka pengangguran terdidik. Kurang terpakainya tenaga kerja terdidik baik di sector formal maupun nonformal bisa berakibat terhadap kehidupan

sosial. Belum lagi ditambah dengan bertambahnya kepadatan penduduk di Indonesia

menjadikan masalah ini menjadi semakin kompleks [1]. Perbaikan pendidikan melalui penjaminan dan peningkatan mutu pendidikan

merupakan tanggung jawab seluruh satuan pendidikan yang harus didukung oleh pemerintah

daerah provinsi dan pemerintah kabupaten/kota sesuai dengan kewenangan masing-masing

juga peran serta masyarakat. Pada tingkat pemerintah dilaksanakan oleh Kementrian Pendidikan dan Kebudayaan, Kementrian Agama, Kementrian Dalam Negeri serta instansi

terkait lainnya.

Implementasi penjaminan mutu pendidikan hingga saat ini masih menghadapi berbagai macam permasalahan antara lain: (1) belum tersosialisasinya secara utuh Standar

Pendidikan Nasional sebagai acuan mutu pendidikan, (2) pelaksanaan penjaminan dan

peningkatan mutu pendidikan masih terbatas pada pemantauan komponen mutu di satuan

pendidikan, (3) pemetaan mutu masih dalam bentuk pendataan pencapaian mutu pendidikan yang belum terpadu dari berbagai penyelenggara pendidikan, dan (4) tindak lanjut hasil

pendataan mutu pendidikan yang belum terkoordinasi dari para penyelenggara dan pelaksana

pendidikan pada berbagai tingkatan [2]. Absensi adalah salah satu implementasi dari penjaminan mutu Pendidikan. Absensi

dapat dikatakan suatu pendataan kehadiran yang merupakan bagian dari aktifitas pelaporan

yang ada dalam sebuah institusi. Absensi disusun dan diatur sehingga mudah untuk dicari dan dipergunakan ketika diperlukan oleh pihak yang berkepentingan. Absensi pada umumnya

memiliki dua cara penggunaannya. Yang pertama yaitu absensi dengan cara manual. Absensi

dengan cara ini merupakan pendataan kehadiran dengan cara menandatangani lembar absen.

Yang kedua yaitu absensi dengan cara non manual. Absensi dengan cara ini merupakan pendataan kehadiran dengan cara yang terkomputerisasi, bisa menggunakan RFID atau

fingerprint.

Absensi di Fakultas Teknologi Informasi Universitas Kristen Satya Wacana (FTI UKSW) digunakan sebagai tolak ukur dalam kelulusan suatu matakuliah. Absensi yang

diperlukan sebagai syarat kelulusan yaitu maksimal tiga kali tidak absen. Selain itu absensi di

FTI UKSW masih menggunakan cara manual. Oleh karena itu sulit bagi pihak yang berkepentingan untuk mengambil data absensi.

Karena yang digunakan adalah absensi dengan cara manual hal itu memungkinkan

mahasiswa untuk menitipkan absennya dengan cara meminta tolong temannya

menandatangani lembar absen tersebut. Solusi dari masalah tersebut bisa diatasi dengan adanya teknik monitoring kehadiran yang berbasis website yang menjadi wadah dari seluruh proses

absensi dan tidak lagi menggunakan sistem yang manual sehingga meminimalisir terjadinya

kecurangan yang dilakukan oleh mahasiswa. Berdasarkan latar belakang masalah yang dikemukakan diatas, maka rumusan

masalah yang dapat diambil adalah bagaimana merancang dan mengimplementasikan teknik

8

monitoring kehadiran dengan framework Codeigniter berdasarkan sistem absen yang sudah

ada. Tujuan dari penelitian ini adalah menghasilkan suatu sistem yang mampu

mengimplementasikan teknik monitoring kehadiran yang masih menggunakan tanda tangan

dari mahasiswa ke dalam bentuk komputerisasi, tujuan lainnya adalah untuk memanajemen

sistem absen yang lebih menyeluruh meliputi absen dosen, absen mahasiswa, materi belajar mengajar, serta hasil kegiatan belajar mengajar selama satu semester.

2. Tinjauan Pustaka

Dalam Penelitian salah satu Universitas di Jakarta dengan menggunakan sistem

absensi berbasi RFID. Diperoleh hasil bahwa dosen akan membawa suatu alat absesni kedalam

kelas dan alat tersebut berfungsi untuk membaca kartu RFID yang dimiliki setiap mahasiswa. Ketika seluruh mahasiswa telah melakukan absensi maka dosen bisa mematikan alat tersebut.

Dan jika ada mahasiswa yang melewati batas keterlambatan yang ditentukan maka mahasiswa

tersebut tidak bisa melakukan absen. Alat tersebut dihubungkan ke dalam jaringan komputer yang sudah ada untuk mengambil datanya. Tetapi sistem ini bisa mengakibatkan mahasiswa

menitipkan kartu RFIDnya ke temannya [3].

Dalam penelitian lain di Universitas di Surabaya dengan menggunakan sistem absensi berbasis fingerprint. Diperoleh hasil bahwa ketika akan dimulai kelas mahasiswa harus

absen dengan fingerprint yang tersedia. Dengan fingerprint selain lebih murah dibandingkan

dengan modul RFID fingerprint juga meminimalisir kecurangan dalam absen. Perangkat yang

digunakan yaitu VF30. Namun belum maksimal penerapanya karena belum memiliki aplikasi yang mengelola fingerprint tersebut [4].

Dalam Penelitian lain di Sekolah Menengah Atas Manado dengan menggunakan

sistem absensi berbasis fingerprint. Diperoleh hasil bahwa dilakukan absensi pada pagi dan siang hari. Mesin ini mengirimkan data sidik jari ke sebuah PC yang sudah memiliki jaringan

dengan mesin fingerprint. Mesin yang digunakan untuk mendeteksi sidik jari juga bukan mesin

yang tergolong baik sehingga keakuratan masih kurang [5]. Berdasarkan penelitian yang sudah ada, maka akan dilakukan penelitian yang

membahas “Teknik Monitoring Mahasiswa dengan Fingerprint di FTI UKSW Berbasis

Website dengan Framework Codeigniter. Dalam aplikasi ini akan bersifat real time jadi begitu

ada yang absen maka otomatis akan masuk ke database dan akan dilakukan penghapusan di log absen pada msein sehingga mesin jadi bersih tanpa log dan tanpa harus menghapus secara

manual pada alat.

Adapun teknologi – teknologi yang dimanfaatkan dalam pembangunan aplikasi monitoring kehadiran untuk memudahkan dalam hal operasional sistem. Apikasi ini dibangun

menggunakan framework Codeigniter dengan Boostrap sebagai front-end, library ZK dan

TAD, jQuery dan Ajax sebagai middle-end dan PHP sebagai back-end web. Dalam

pembangunan sistem digunakan library JQuery Responsive Data Tables sebagai tampilan tabel yang responsive.

Framework Codeigniter adalah kerangka kerja PHP yang kuat dengan tapak yang

sangat kecil, dibangun untuk pengembang yang membutuhkan toolkit sederhana dan elegan untuk membuat aplikasi web berfitur lengkap. Framework Codeigniter merupakan aplikasi

opensource yang berupa framework dengan bahasa pemrograman PHP dengan model MVC

(Model, View, Controller) untuk membangun website dinamis dengan menggunakan PHP. Codeigniter memudahkan developer untuk membuat aplikasi web dengan cepat mudah

dibandingkan dengan membuatnya dari awal. [6].

9

Fingerprinting adalah salah satu bentuk biometrik, sebuah ilmu yang menggunakan

karakteristik fisik penduduk untuk mengidentifikasi. Sidik jari sangat ideal untuk tujuan ini karena mereka murah untuk mengumpulkan dan menganalisis dan mereka tidak pernah

berubah, bahkan dengan umur orang [7].

PHP atau Hypertext Preprocessor pertama kali diciptakan oleh seorang kebangsaan

denmark bernama Rasmus Lerdorf pada 1995. PHP merupakan bahasa berbentuk script yang ditempatkan dalam server dan dieksekusi didalam server untuk selanjutnya ditransfer dan

dibaca oleh client. Untuk itu, dalam mengeksekusi PHP dibutuhkan web server. Beberapa web

server yaitu WampServer, Apache, dan Xampp [8]. MySQL merupakan salah satu database yang sering digunakan. MySQL di ciptakan

oleh perusahaan MySQL AB di Swedia. Nama-nama yang berjasa dalam menciptakan MySQL

adalah David Axmark, Allan Larsson, dan Michael “Monty” Widenius. Database ini tersebar

luas secara gratis karena memiliki lisensi GNU (General Public License). Selain itu juga, MySQL dapat disinkronisasi dengan beberapa bahasa pemrograman seperti PHP, Jaca, C++,

C#, Python, dan Ruby [8].

Library JQuery Data Tables berfungsi untuk menghasilkan tabel data yang dinamis, dimana data dapat langsung di urutkan berdasarkan kolom, selain itu dengan Data Tables juga

menyediakan formulir pencarian yang langsung mencari data dari semua kolom yang tampil

tanpa perlu melakukan query dari database terlebih dahulu [9].

3. Metodologi Penelitian

Penelitian ini dilakukkan dan diselesaikan melalui 5 tahapan penelitian yaitu: (a) Analisis kebutuhan dan pengumpulan data. (b) Perancangan sistem. (c) Perancangan aplikasi /

program. (d) Implementasi dan pengujian sistem serta analisis hasil pengujian. (e) Penulisan

laporan hasil penelitian [10]. Tahapan-tahapan penelitian ini dapat dilihat pada gambar 1.

Gambar 1 Tahapan Penelitian [11]

Berdasarkan pada Gambar 1 dapat dijelaskan bahwa data diperoleh dari wawancara

dengan Profesor Eko sebagai koordinator penjaminan mutu FTI UKSW tentang aplikasi yang akan dibuat serta menjelaskan proses dari kehadiran dosen dan mahasiswa dalam perkuliahan.

Berdasarkan hasil wawancara dengan Profesor Eko peneliti mendapatkan alur proses bisnis

yang dilakukan oleh dosen dan mahasiswa serta masalah-masalah yang ada di dalam

10

monitoring kehadiran. Proses monitoring kehadiran menurut wawancara dimulai dengan dosen

melakukan tapping / absen di bagian tata usaha untuk mendaftarkan sidik jarinya yang kemudian akan dipakai dalam absensi di tiap kelas. Lalu data absen tersebut akan masuk ke

sebuah server. Kemudian dari data yang ada di server terdapat Rencana Pembelajaran

Semester (RPS) dari tiap matakuliah yang nantinya akan diajarkan ke mahasiswa. Dan di server

terdapat absensi untuk dosen dan mahasiswa. Kemudian dari data tersebut yang nantinya akan digunakan untuk absen dosen dan mahasiswa pada jam kelas tertentu.

Tahap kedua dilakukan desain perancangan sistem berdasarkan hasil analisis

kebutuhan menggunakan UML (Unified Modelling Language) yang terdiri dari use case diagram, activity diagram, dan sequence diagram. UML merupakan sebuah standar

perancangan, visualisasi dan mendokumentasikan suatu sistem perangkat lunak. UML dapat

digunakan untuk pemodelan pada semua jenis aplikasi piranti lunak, dimana aplikasi tersebut

dapat berjalan pada piranti keras, dalam jaringan dan sistem operasi apapun, serta dapat ditulis

dalam bahasa pemrograman apapun [12].

Gambar 2 Flowchart Teknik Monitoring Kehadiran Mahasiswa

Tahap ketiga adalah perancangan aplikasi / program, yaitu merancang aplikasi sesuai dengan kebutuhan sistem berdasarkan perancangan yang sudah dilakukan. Bahasa

pemrograman yang dipakai adalah PHP dengan menggunakan framework Codeigniter,

database MySQL serta Bootstrap. Tahap keempat adalah implementasi dan pengujian sistem serta analisis hasil

pengujian.

Tahap kelima adalah penulisan laporan hasil penelitian. Tahap ini dilakukan dokumentasi dalam bentuk artikel ilmiah Metode perancangan sistem yang digunakan didalam

pembangunan aplikasi ini adalah Prototype. Metode Prototype merupakan metode

pengembangan sistem yang dilakukkan secara iteratif dengan mementingkan kebutuhan client.

Tahap-tahap yang dilakukkan pada metode prototype ditunjukkan pada Gambar 3.

11

Gambar 3 Metode Prototype [13].

Seperti terlihat pada Gambar 3, tahapan dalam metode Prototyping adalah listen to

customer, bulid/revise mock-up, dan customer test-drives mock-up. Tahap pertama adalah

listen to customer, yaitu mengetahui informasi mengenai kebutuhan pengguna untuk

diimplementasikan dalam sistem. Informasi yang telah didapatkan kemudian dianalisa dan diterjemahkan ke dalam sistem. Pada tahap ini data yang didapat berasal dari client dibagian

produksi. Tahap kedua di dalam model Prototyping adalah build/revise mock-up. Pada tahap

ini perancangan dilakukan secara cepat dan mewakili semua aspek software yang diketahui. Rancangan tersebut menjadi dasar pembutatan prototype. Tahap ketiga adalah customer test-

drives mock-up. Pada tahap ini client mengevaluasi prototype yang telah dibuat. Semua proses

tersebut terus diulang hingga aplikasi yang dirancang sesuai dengan permintaan.

Gambar 4 Arsitektur aplikasi Teknik Monitoring.

Gambar 4 ini menjelaskan secara detail mengenai arsitektur aplikasi teknik

monitoring. Komputer server berperan untuk menghubungkan antara client dan database

server. Data akan dikirim dari alat fingerprint yang ada di setiap kelas ke komputer server dan

nantinya lewat aplikasi akan dimasukkan ke database. Data fingerprint nanti akan di validasi apakah yang di aplikasi uid sama dengan yang di alat fingerprint kemudian nanti setelah sama

maka akan dilakukan absensi. Ketika absen, maka di aplikasi akan di cek apakah statusnya

dosen atau mahasiswa. Baru kemudian data akan masuk database jika dosen absen terlebih dahulu.

12

Gambar 5 Use Case Diagram aplikasi Monitoring Kehadiran.

Gambar 5 merupakan use case diagram dari aplikasi monitoring kehadiran. Aplikasi

tersebut memiliki 3 aktor yaitu dosen, mahasiswa dan admin. Admin memiliki hak untuk

mengelola absen, mengelola data dosen, mengelola data mahasiswa, mengelola data RPS.

Sedangkan untuk dosen bisa input dan view data RPS, bisa edit, input dan view data absen. Sedangkan untuk mahasiswa hanya bisa input dan view data absen.

13

Gambar 6 Activity Diagram Admin aplikasi Monitoring Kehadiran.

Pada Gambar 6 menjelaskan bahwa admin harus telebih dahulu melakukan login.

Apabila berhasil login maka sistem akan menampilkan menu yang terdiri atas Dashboard, Data

Dosen, Data Mahasiswa, Data Matakuliah, Data Kelas, Data Ruangan, Data RPS dan Data

Absensi. Jika admin memilih salah satu dari menu diatas, maka sistem akan mengirimkan request data ke database. Kemudian setelah database menerima request data maka akan

ditampilkan di sistem. Dalam menu utama terdapat logout yang digunakan untuk destroy

session dari admin dan membuatnya keluar dan kembali ke halaman login.

14

Gambar 7 Activity Diagram Dosen aplikasi Monitoring Kehadiran.

Pada Gambar 7 menjelaskan bahwa dosen harus telebih dahulu melakukan login.

Apabila berhasil login maka sistem akan menampilkan menu yang terdiri atas Dashboard, data kelas, data rps dan data Absensi. Jika dosen memilih salah satu dari menu diatas, maka sistem

akan mengirimkan request data ke database. Kemudian setelah database menerima request data

maka akan ditampilkan di sistem. Dalam menu utama terdapat logout yang digunakan untuk

destroy session dari mahasiswa dan membuatnya keluar dan kembali ke halaman login.

15

Gambar 8 Activity Diagram Mahasiswa aplikasi Monitoring Kehadiran.

Pada Gambar 8 menjelaskan bahwa mahasiswa harus telebih dahulu melakukan

login. Apabila berhasil login maka sistem akan menampilkan menu yang terdiri atas Dashboard

dan Data Absensi. Jika mahasiswa memilih salah satu dari menu diatas, maka sistem akan

mengirimkan request data ke database. Kemudian setelah database menerima request data maka akan ditampilkan di sistem. Dalam menu utama terdapat logout yang digunakan untuk

destroy session dari mahasiswa dan membuatnya keluar dan kembali ke halaman login.

Gambar 9 Sequence Diagram Input aplikasi Monitoring Kehadiran.

Pada Gambar 9 menjelaskan bahwa user melakukan request input data pada halaman

view_form_request, selanjutnya request akan dikirimkan ke controller yang kemudian

meneruskannya lagi ke model hingga sampai database. Kemudian database memberi respon

16

balik yang dikirim lewat model kemudian lewat controller kemudian data ditampilkan di

view_form_request sesuai dengan respon yang diberikan dari database ke model dan ke controller.

Gambar 10 Sequence Diagram Menu aplikasi Monitoring Kehadiran.

Pada Gambar 10 menjelaskan bahwa user melakukan request menudata pada

halaman view_menu, selanjutnya request akan dikirimkan ke controller yang kemudian

meneruskannya lagi ke model hingga sampai database. Kemudian database memberi respon

balik yang dikirim lewat model kemudian lewat controller kemudian data ditampilkan di view_menu sesuai dengan respon yang diberikan dari database ke model dan ke controller.

4. Hasil Dan Pembahasan

Dari sistem yang telah dirancang sebelumnya dilakukan implementasi dan pengujian

aplikasi. Implementasi dan pengujian sistem dilakukan dengan tujuan memastikan apakah hasil perancangan sudah sesuai dengan harapan serta dapat menyelesaikan masalah yang dihadapi.

Gambar 11 Form login aplikasi Monitoring Kehadiran.

17

Gambar 11 merupakan form login aplikasi monitoring kehadiran dengan fitur

multiuser. Pada bagian login aplikasi monitoring kehadiran dilengkapi dengan system keamanan yaitu enkripsi password menggunakan md5. Keamanan ini ditujukan agar setiap

akun tetap aman dan terlindungi dari pembobol.

Gambar 12 Menu Utama Admin.

Pada Gambar 12. Setelah berhasil login sebagai admin maka akan diarahkan ke menu

Dashboard yang berisi konten untuk menambah data fingerprint yang diambil langsung dari

mesin fingerprint. Kemudian untuk admin memiliki hak akses ke data dosen, data mahasiswa,

data matakuliah, data kelas dan juga data mahasiswa di tiap kelas, data ruangan, data rps admin yang berisi rencana pembelajaran semester yang ditentukan oleh admin, dan juga data absensi

dosen dan mahasiswa.

Gambar 13 Menu Utama Dosen.

Kemudian pada Gambar 13. Setelah berhasil login sebagai dosen maka akan diarahkan ke menu Dashboard. Kemudian untuk dosen memiliki hak akses data kelas dan juga

data mahasiswa di tiap kelas, data rps admin yang berisi rencana pembelajaran semester yang

ditentukan oleh admin, dan juga data absensi dosen dan mahasiswa.

18

Gambar 14 Menu Utama Mahasiswa.

.

Kemudian pada Gambar 14 Setelah berhasil login sebagai mahasiswa maka akan

diarahkan ke menu Dashboard. Kemudian untuk mahasiswa hanya memiliki hak akses data

absensi dosen dan mahasiswa.

Gambar 15 Menu data absen dari user Mahasiswa.

Kemudian pada Gambar 15 adalah tampilan data absen dari user mahasiswa.

Kode Program 1 Insert data fingerprint dari alat ke database.

1. function insert_finger(){

2. $this->load->view('zklibrary/zklibrary.php');

3. $zk = new ZKLibrary('192.168.1.101', 4370);

4. $zk->connect();

5. $zk->disableDevice();

6.

7. $users = $zk->getUser();

8.

9. //$this->db->truncate('fingerprint');

10. 11. foreach($users as $key=>$user) 12. { 13. if($user[2] == "0"){

14. $uid = $user[0];

15. $nama = $user[1];

16. $status = 0;

17.

19

18. $sql = "REPLACE INTO fingerprint (uid, nama,

status) VALUES ('$uid', '$nama', '$status')";

19. $this->db->query($sql);

20. }

21. }

22. $url=base_url('home'); 23. redirect($url); 24. }

Kode Program 1 merupakan fungsi untuk menambah data berupa UID dan nama dari

mesin fingerprint dan menambahkan variabel status untuk mengeteahui nantinya UID sudah

terpakai pada dosen atau mahasiswa atau belom.

Kode Program 2 Insert data absensi dari mesin fingerprint dengan ZK library dan TAD library.

1. function ajax_absensi(){

2. $this->load->view('zklibrary/zklibrary.php');

3. $this->load->view('tad/lib/TADFactory.php');

4. $this->load->view('tad/lib/TAD.php');

5. $this->load->view('tad/lib/TADResponse.php');

6. $this->load->view('tad/lib/Providers/TADSoap.php');

7. $this->load->view('tad/lib/Providers/TADZKLib.php');

8. $this->load->view('tad/lib/Exceptions/ConnectionError.php');

9. $this->load->view('tad/lib/Exceptions/FilterArgumentError.php');

10. $this->load->view('tad/lib/Exceptions/UnrecognizedArgument.php'); 11. $this->load->view('tad/lib/Exceptions/UnrecognizedCommand.php'); 12. $arrHari = ["Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"]; 13. $query = $this->db->query("SELECT * FROM ruangan")->result(); 14. foreach ($query as $ruangan) { 15. $koderuang = $ruangan->kode; 16. $zk = new ZKLibrary($ruangan->ip, $ruangan->port); 17. $zk->connect(); 18. $zk->disableDevice(); 19. $attendance = $zk->getAttendance(); 20. foreach($attendance as $key=>$att) { 21. //$att[1] = 2; 22. //$att[2] = 0; 23. //$att[3] = "2019-04-01 09:10:00"; 24. $tanggal = explode(' ', $att[3])[0]; 25. $jam = explode(' ', $att[3])[1]; 26. $hari = $arrHari[date('w', strtotime($att[3]))]; 27. if($att[2] == 0) { 28. $query = $this->db->query("SELECT * FROM kelas WHERE kode_ruang =

'$koderuang' AND hari = '$hari' AND ('$jam'>=SUBTIME(jam_masuk, '0:5:0') AND

'$jam'<=ADDTIME(jam_masuk, '0:15:0')) LIMIT 1");

29. } else { 30. $query = $this->db->query("SELECT * FROM kelas WHERE kode_ruang =

'$koderuang' AND hari = '$hari' AND ('$jam'>=ADDTIME(jam_masuk, '0:15:0') AND

'$jam'<=ADDTIME(jam_keluar, '0:5:0')) LIMIT 1");

31. } 32. $kelas = $query->row(); 33. if($kelas != null) { 34. $query = $this->db->query("SELECT * FROM mahasiswa WHERE uid = " .

$att[1]);

35. $user = $query->row(); 36. $dosenmhs = "mahasiswa"; 37. if($user == null) { 38. $query = $this->db->query("SELECT * FROM dosen WHERE uid = " .

$att[1]);

39. $user = $query->row(); 40. $dosenmhs = "dosen"; 41. } 42. if($user != null) { 43. if($dosenmhs == "mahasiswa") {

20

44. $query = $this->db->query("SELECT * FROM detail_kelas WHERE

kode_kelas = '" . $kelas->kode . "' AND nim = '" . $user->nim . "'");

45. if($query->num_rows() > 0) { 46. $absensimhs = $this->db->query("SELECT * FROM absen WHERE nip_nim

= '" . $user->nim . "' AND kode_kelas = '" . $kelas->kode . "'")->row_array();

47. if($att[2] == 0) { 48. $absensidosen = $this->db->query("SELECT * FROM absen WHERE

kode_kelas = '" . $kelas->kode . "' AND dosen_mhs = 'Dosen'")->row_array();

49. for($i=1; $i<=14; $i++) { 50. $tanggaldosen = $absensidosen["p".$i."_masuk"]; 51. $tanggaldosen = explode(' ', $tanggaldosen)[0]; 52. if ($tanggaldosen == $tanggal) { 53. if ($absensimhs["p".$i."_masuk"] == "0000-00-00 00:00:00")

{

54. //update database mahasiswa masuk 55. $this->db->query("UPDATE absen SET p".$i."_masuk = '" .

$att[3] . "' WHERE nip_nim = '" . $user->nim . "' AND kode_kelas = '" . $kelas-

>kode . "'");

56. } 57. break; 58. } 59. } 60. } else { 61. for($i=1; $i<=14; $i++) { 62. $tanggalmasuk = $absensimhs["p".$i."_masuk"]; 63. $tanggalmasuk = explode(' ', $tanggalmasuk)[0]; 64. if($tanggalmasuk == $tanggal) { 65. if ($absensimhs["p".$i."_pulang"] == "0000-00-00

00:00:00") {

66. //update database mahasiswa pulang 67. $this->db->query("UPDATE absen SET p".$i."_pulang = '" .

$att[3] . "' WHERE nip_nim = '" . $user->nim . "' AND kode_kelas = '" . $kelas-

>kode . "'");

68. } 69. break; 70. } 71. } 72. } 73. } 74. } else { 75. $absensi = $this->db->query("SELECT * FROM absen WHERE nip_nim =

'" . $user->kode . "' AND kode_kelas = '" . $kelas->kode . "'")->row_array();

76. if($att[2] == 0) { 77. if($absensi["p1_masuk"] == "0000-00-00 00:00:00") { 78. //update database dosen masuk 79. $this->db->query("UPDATE absen SET p1_masuk = '" . $att[3] .

"' WHERE nip_nim = '" . $user->kode . "' AND kode_kelas = '" . $kelas->kode . "'");

80. } else { 81. for($i=2; $i<=14; $i++) { 82. if($absensi["p".$i."_masuk"] == "0000-00-00 00:00:00") { 83. $tanggalsebelum = $absensi["p" . ($i - 1) . "_masuk"]; 84. $tanggalsebelum = explode(' ', $tanggalsebelum)[0]; 85. if($tanggalsebelum != $tanggal) { 86. //update database dosen masuk 87. $this->db->query("UPDATE absen SET p".$i."_masuk = '" .

$att[3] . "' WHERE nip_nim = '" . $user->kode . "' AND kode_kelas = '" . $kelas-

>kode . "'");

88. } 89. break; 90. } 91. } 92. } 93. } else { 94. for($i=1; $i<=14; $i++) { 95. $tanggalmasuk = $absensi["p".$i."_masuk"]; 96. $tanggalmasuk = explode(' ', $tanggalmasuk)[0]; 97. if($tanggalmasuk == $tanggal) { 98. if ($absensi["p".$i."_pulang"] == "0000-00-00 00:00:00") {

21

99. //update database dosen pulang 100. $this->db->query("UPDATE absen SET p".$i."_pulang = '"

. $att[3] . "' WHERE nip_nim = '" . $user->kode . "' AND kode_kelas = '" . $kelas-

>kode . "'");

101. }

102. break;

103. }

104. }

105. }

106. }

107. }

Kode program 2 Adalah fungsi untuk menambah data berupa absen dari mesin

fingerprint. Dengan mengecek data yang diinput dosen atau mahasiswa. Jika Mahasiswa terlebih dahulu absen maka data tidak akan masuk ke database. Tetapi ketika dosen absen

terlebih dahulu kemudian diikuti mahasiswa maka data akan masuk ke database. Dengan

ketentuan bisa absen 5 menit sebelum jadwal kelas masuk dan bisa pulang setelah 15 menit kelas berjalan. Untuk pulang bisa mahasiswa dahulu yang absen. Setelah berhasil absen maka

secara otomatis data log yang ada di mesin akan otomatis dihapus, sehingga data di mesin tidak

penuh dan perlu di backup.

Pengujian aplikasi dilakukan pengujian beta. Yaitu pengujian yang diuji oleh pengguna secara langsung di lokai pengguna akhir untuk memvalidasi kegunaan, fungsi,

kompatibilitas, dan uji reliabilitas dari software yang dibuat.

5. Kesimpulan

Berdasarkan penelitian dan pengujian yang dilakukan dapat disimpulkan bahwa

Teknik Monitoring Kehadiran Mahasiswa Dalam Perkuliahan Dengan Fingerprint di FTI

UKSW Berbasis Website sangat membantu karyawan Tata Usaha dalam mengelola absensi tiap semesternya karena menggunakan sistem dan tidak manual lagi. Serta membuat absensi

lebih akurat tanpa adanya kecurangan yang dilakukan oleh mahasiswa.

Adapun saran yang diperlukan oleh sistem ini adalah melakukan pengembangan

lebih lanjut mengenai perbandingan Rencana Pembelajaran Semester (RPS) agar bisa digunakan sebagai acuan penilaian dosen.

6. Daftar Pustaka

[1] Munjin. 2013. “Sistem Penjaminan Mutu Pendidikan di Madrasah”. Jurnal Dakwah

Dakwah dan Komunikasi. Vol.7. No.2.

[2] Moerdiyanto. 2009. “Strategi Pelaksanaan Sistem Penjaminan Mutu Pendidikan (SPPMP) Oleh Pemerintah Kabupaten / Kota”. Jurnal Informasi UNY, No. 2, XXXV.

[3] Rudy Susanto, A. A. 2017. “Sistem Absensi Berbasis RFID”. Teknik Kopmuter, 67 -

74. [4] Noval Aditya Muhammad, F.S. 2013. “Pembuatan Aplikasi Presensi Perkuliahan

Berbasis Fingerprint”. Jurnal ITS, 465 - 469.

[5] Alfien S. Rintjap, Sherwin R.U.A, Sompie, Oktavian Lantang. 2014. “Aplikasi Absensi Siswa Menggunakan Sidik Jari di Sekolah Menengah Atas Negeri 9 Manado”. Jurnal

Unsrat. Vol.3. No.3.

[6] CodeIgniter, http://www.codeigniter.com, [Accessed 27 September 2018]

[7] Penjelasan Mengenai Fingerprint, Teknologi Yang Sangat Berguna. https://www.archivioguerrapolitica.org/2017/12/23/penjelasan-mengenai-fingerprint-

teknologi-yang-sangat-berguna-bagi-manusia/ [Accessed 4 Oktober 2018]

22

[8] Adelheid, Andrea, & Nst, Khairil. 2012. “Buku Pintar Menguasai PHP MySQL”. Jakarta

: Mediakita. [9] Data Tables, http://www.Data Tables.net, [Accessed 27 September 2018]

[10] Hasibuan, Zainal A. 2007. Metodologi Penelitian Pada Bidang Ilmu Komputer dan

Teknologi Informasi : Konsep, Teknik, dan Aplikasi. Jakarta : Ilmu Komputer

Universitas Indonesia [11] Nugroho, Adi. 2005. Analisis dan Perancangan Sistem Informasi. Bandung:

Informatika.

[12] Sulistyorini, P., 2009. “Pemodelan Visual dengan Menggunakan UML dan Rational Rose,” vol. XIV, no. 1, pp. 23–29.

[13] Pressman, Roger S., 2001, Software Engineering: A Practitioner’s Approach, Amerika

Serikat: R.S. Pressman and Associates.