SKRIPSI
SISTEM PRESENSI DOSEN DAN PEGAWAI MENGGUNAKAN GPS BERBASIS FINGERPRINT PERANGKAT BERGERAK
Diajukan untuk memenuhi persyaratan menyelesaikan pendidikan sarjana (S-1) pada
Departemen Teknik Elektro Sub konsentrasi Teknik Komputer Oleh
WIRAHADI GUMELAR NIM : 130402057
DEPARTEMEN TEKNIK ELEKTRO FAKULTAS TEKNIK
UNIVERSITAS SUMATERA UTARA MEDAN
2019
ABSTRAK
Sistem presensi dosen dan pegawai yang banyak digunakan sekarang ini ialah presensi menggunakan alat fingerprint yang diletakkan di setiap departemen ataupun fakultas. Sistem ini memiliki kekurangan yaitu ketersediaan alat fingerprint scanner yang terbatas, penempatan alat presensi yang jauh dari lokasi kerja, dan ketergantungan terhadap alat presensi. Maka dengan adanya kelemahan tersebut maka dibangun sistem presensi berbasis mobile apps yang menggunakan GPS dan fingerprint untuk memudahkan dosen dan pegawai dalam melakukan presensi selama berada didalam area presensi atau tempat mereka bekerja.
Dengan adanya sistem maka ini akan membuat proses presensi dan pengolahan data presensi semakin mudah dan efisien, sehingga dapat membantu memaksimalkan proses pengumpulan dan pengolahan data presensi. Dari pengujian sistem didapatkan sistem dapat mengolah data pegawai, menampilkan hasil presensi harian, dan dapat menyimpan hasil presensi dan diperoleh sensitivitas sistem sebesar 65%, spesifisitas sebesar 70 % dan akurasi sistem sebesar 72%.
Kata kunci: presensi dosen dan pegawai, GPS, fingerprint perangkat bergerak, mobile apps
KATA PENGANTAR
Puji dan syukur penulis ucapkan kepada Allah SWT atas Berkah dan Rahmat-Nya sehingga penulis dapat menyelesaikan skripsi yang berjudul:
“SISTEM PRESENSI DOSEN DAN PEGAWAI MENGGUNAKAN GPS BERBASIS FINGERPRINT PERANGKAT BERGERAK”
Skripsi ini merupakan bagian dari kurikulum yang harus diselesaikan untuk memenuhi persyaratan menyelesaikan pendidikan Sarjana Strata Satu (S-1) di Departemen Teknik Elektro Fakultas Teknik Universitas Sumatera Utara.
Skripsi ini penulis persembahkan kepada yang teristimewa, yaitu Ayahanda Suharto dan Ibunda Siti Hindun, yang telah membesarkan, mendidik, dan selalu mendoakan penulis tanpa mengenal rasa lelah. Selanjutnya rasa sayang kepada saudara-saudari penulis, Muhammad Yusuf, Fahmi Syukri, Alya Sabrina, dan Adillah Syarfina yang selalu memberi dukungan dan selalu bersama penulis dalam menjalani lika-liku kehidupan.
Selama penulis menjalani pendidikan di kampus hingga diselesaikannya skripsi ini, penulis banyak menerima bantuan, bimbingan serta dukungan dari berbagai pihak. Pada kesempatan ini penulis ingin menyampaikan rasa terimakasih yang tulus dan sebesar-besarnya kepada:
1. Bapak Dr. Ir. Fahmi S.T, M.Sc, IPM selaku Dosen Pembimbing skripsi yang bersedia dan senantiasa bersabar dalam membimbing dan memberikan bantuan yang sangat dibutuhkan oleh penulis dalam menyelesaikan skripsi ini.
2. Bapak Soeharwinto S.T, M.T dan Tigor Hamonangan Nasution S.T, M.T selaku Dosen Pembanding skripsi yang telah banyak memberikan masukan dan arahan dalam penyempurnaan penulisan skripsi ini.
3. Seluruh Staf Pengajar yang telah memberikan bekal ilmu kepada penulis dan Staf Pegawai di Departemen Teknik Elektro yang telah membantu proses administrasi penulis selama perkuliahan
4. Rekan sesama asisten Laboratorium Sistem Pengaturan dan Komputer yang menjadi tempat belajar dan berdikusi
5. Teman-teman seperjuangan Fachriasyah, Taufik, Hafidh, Irsyad, Juliansyah, Rozi, Randy, Sawaluddin, Hanafi, Yasir, Dika, Riza, Wemppy, Hendra, Bang reza, dan Bang Dipo.
6. Teman-teman Elektro angkatan 2013 yang selalu memberikan bantuan dan dukungan.
7. Kepada Rizka Afriyanti yang selalu hadir memberi dukungan, motivasi dalam bentuk materi maupun semangat.
8. Seluruh Abang/ Kakak senior dan Adik junior.
9. Semua orang yang pernah mengisi setiap detik waktu yang telah dilalui bersama penulis yang tidak dapat disebutkan satu persatu. Tanpa mereka, pengalaman penulis tidaklah lengkap.
Penulis menyadari bahwa dalam penulisan Skripsi ini masih jauh dari kata sempurna karena masih banyak kekurangan baik dari segi isi maupun susunan bahasanya. Saran dan kritik dari pembaca dengan tujuan perbaikan dan penyempurnaan Skripsi ini sangat diharapkan penlis.
Akhir kata, penulis berharap semoga Skripsi ini dapat berguna bagi kita semua.
Medan, 12 April 2019 Penulis,
Wirahadi Gumelar
DAFTAR ISI
ABSTRAK... i
KATA PENGANTAR ... ii
DAFTAR ISI ... iv
DAFTAR GAMBAR ... vi
DAFTAR TABEL ... vii
BAB 1 PENDAHULUAN ... 1
1.1 Latar Belakang ... 1
1.2 Tujuan ... 2
1.3 Rumusan Masalah ... 2
1.4 Batasan Masalah ... 3
1.5 Manfaat Penelitian ... 3
1.6 Tahapan Penelitian ... 3
1.7 Sistematika Penulisan... 4
BAB II TINJAUAN PUSTAKA ... 6
2.1 Sistem Presensi ... 6
2.2 Android ... 8
2.3 Asisted Global Positioning System (AGPS) ... 8
2.4 Basis Data ... 9
2.5 Antarmuka Android ... 9
2.6 Fingerprint (Sidik Jari) ... 10
2.7 Fingerprint scanner (pemindai sidik jari) ... 12
2.8 REST API ... 14
2.9 Teori Harvesine Formula ... 19
BAB III PERANCANGAN SISTEM ... 21
3.1 Umum ... 21
3.2 Perancangan Database ... 22
3.3 Perancangan Aplikasi Android ... 22
3.3.1 Perancangan Use Case Diagram ... 22
3.3.2 Perancangan Activity Diagram ... 23
3.3.3 Perancangan Tampilan Antarmuka Pengguna ... 26
3.4 Perancangan Aplikasi Web ... 28
3.4.1 Perancangan Use Case Diagram ... 29
3.4.3 Perancangan Tampilan Antarmuka Pengguna ... 31
3.5 Perancangan API ... 34
3.5.2 Perancangan API presensi ... 34
3.5.3 Perancangan API Registrasi ... 36
BAB IV PENGUJIAN DAN ANALISIS ... 38
4.1 Pengujian Aplikasi Web ... 38
4.1.1 Hasil Pengujian fungsionalitas Aplikasi Web ... 38
4.1.2 Hasil Pengujian API ... 40
4.2 Pengujian Aplikasi Android ... 43
4.2.1 Pengujian fungsi Registrasi ... 43
4.2.2 Pengujian fungsi Presensi ... 45
4.3 Pengujian Sistem ... 47
4.3.1 Pengujian presensi dengan titik lokasi yang berbeda-beda ... 48
4.3.2 Hasil Pengujian presensi secara bersamaan ... 53
4.3.3 Pengujian dengan kondisi diluar batas waktu ... 54
BAB V KESIMPULAN DAN SARAN ... 55
5.1 Kesimpulan ... 55
5.2 Saran ... 56
DAFTAR PUSTAKA... 57
LAMPIRAN ... 60
DAFTAR GAMBAR
Gambar 2.1 Contoh sistem presensi……….…….…....….7
Gambar 2.2 Pola sidik jari manusia ………...….11
Gambar 2.3 Proses pemindaian sidik jari……….…...13
Gambar 2.4 Arsitecture of REST and without REST……….……...…..15
Gambar 2.5 Diagram Alir pertukaran data dengan (a)REST, (b) tanpa REST………..….………16
Gambar 2.6 Hukum kosinus………...………….………19
Gambar 2.7 Persamaan Busur………...…..20
Gambar 3.1 Arsitektur Sistem ………..…...21
Gambar 3.2 Perancangan Database Menggunakan Entity Relationship Diagram..………..22
Gambar 3.3 Gambar Use case diagram aplikasi Android……….………...…….…23
Gambar 3.4 Activity diagram fungsi Registrasi ………..………..….24
Gambar 3.5 Activity diagram fungsi Presensi ……….……….…..25
Gambar 3.6 User interface menu presensi aplikasi Android………..……….26
Gambar 3.7 User interface berhasil melakukan presensi………..…………....…………..….27
Gambar 3.8 User interface menu registrasi aplikasi Android……….………….……28
Gambar 3.9 Use case diagram aplikasi Web………...……29
Gambar 3.10 Activity Diagram aplikasi Web………..……….….….30
Gambar 3.11 Tampilan antarmuka fungsi login……….………...…31
Gambar 3.12 Tampilan antarmuka beranda atau dashboard utama………..…...…32
Gambar 3.13 Tampilan antarmuka fungsi manajemen pegawai……….………...………….……33
Gambar 3.14 Tampilan antarmuka fungsi manajemen kehadiran………..……….……34
Gambar 3.15 Gambar Flowchart perancangan API presensi ……….……….……36
Gambar 3.16 Flowchart perancangan API registrasi ………...……..37
Gambar 4.1 Hasil Pengujian API Registrasi……….…..….…41
Gambar 4.2 Hasil Pengujian API presensi………..…………...…..42
Gambar 4.3 Paket data Resquest dan Response dari fungsi Register ……...………..….…………44
Gambar 4.4 Paket data Resquest dan Response dari fungsi Presensi ……...………..….…………46
Gambar 4.5 Titik kordinat acuan pengujian………47
Gambar 4.6 Titik lokasi pengujian……….……..49
DAFTAR TABEL
Tabel 4.1 Hasil Pengujian Alpha Aplikasi Web………...………..39
Tabel 4.2 Hasil pengujian fungsi Registrasi……….………..…….…....43
Tabel 4.3 Hasil pengujian fungsi Presensi pada pagi hari / jam masuk….. …………..…45
Tabel 4.4 Hasil pengujian fungsi Presensi pada sore hari / jam pulang………...45
Tabel 4.5 Titik kordinat acuan pengujian………47
Table 4.6 Daftar smartphone yang digunakan ………..48
Tabel 4.7 Keterangan beberapa titik pengujian ……….49
Tabel 4.8 Hasil pengujian fungsi Presensi presensi dibeberapa titik lokasi………51
Tabel 4.9 Hasil Pengujian vs Kondisi Sebenarnya………...52
Tabel 4.10 Hasil pengujian fungsi Presensi presensi secara bersamaan……….……53
Tabel 4.11 Hasil pengujian dengan kondisi diluar batas waktu……….54
BAB 1 PENDAHULUAN
1.1 Latar Belakang
Salah satu kewajiban seorang dosen dan pegawai adalah melakukan presensi, yaitu suatu kegiatan yang bertujuan untuk mengetahui jumlah kehadiran dalam suatu waktu tertentu. Salah satu point penting dalam melakukan evaluasi tingkat kedisiplinan pegawai dapat dilihat dari data presensi yaitu dalam hal waktu melakukan pengisian kehadiran.
Banyak cara yang digunakan dalam proses pengumpulan data kehadiran seperti: tanda tangan, pindai barcode maupun fingerprint. Adapun beberapa metode presensi yang sering digunakan pada universitas yaitu menggunakan fingerprint atau sidik jari tangan.
Sistem presensi menggunakan fingerprint atau sidik jari merupakan salah satu cara pengumpulan data kehadiran yang sangat popular dan mampu meminimalisir tingkat kecurangan karena setiap manusia memiliki sidik jari yang berbeda-beda. Peletakan dan penempatan sensor fingerprint sebagai titik pengumpulan data kehadiran yang terbatas membuat setiap dosen dan pegawai yang ingin melakukan presensi harus dilakukan secara bergantian. Dalam melakukan proses pengumpulan data presensi di beberapa universitas tidak mengharuskan seorang dosen dan pegawai untuk pergi ke suatu ruangan khusus atau tempat alat presensi diletakkan. Dikarenakan kondisi universitas yang luas dan tempat atau lokasi setiap dosen dan pegawai bekerja berbeda-beda dan tidak selalu berada dekat dengan tempat alat presensi sidik jari tersebut. Dosen dan pegawai dikatakan hadir apabila sudah berada ditempat atau lokasi mereka bekerja. Dengan kata lain dosen dan pegawai dapat melakukan presensi ditempat mereka bekerja.
Ketersediaan alat presensi yang terbatas dan pengumpulan data kehadiran yang hanya
sistem pada alat yang terbatas menjadi salah satu hal yang perlu diperhatikan, dan pengumpulan data kehadiran tidak dapat dilakukan apabila alat presensi rusak ataupun pada saat listrik padam.
Untuk membantu mempermudah dosen dan pegawai yang bekerja ditempat yang tidak dekat dengan tempat peletakan alat presensi untuk melakukan pengambilan dan pengumpulan data kehadiran, maka dibutuhkannya suatu sistem presensi dimana setiap dosen dan pegawai mampu melakukan presensi dimana saja jika sudah didalam lingkungan bekerja. Maka akan dibuat sistem presensi dosen dan pegawai menggunakan GPS berbasis fingerprint perangkat bergerak.
1.2 Tujuan
Adapun tujuan dari penulisan skripsi ini adalah membuat sistem presensi dosen dan pegawai dengan memanfaatkan teknologi GPS yang ada pada smartphone dapat mengetahui keberadaan dan autentikasi fingerprint mobile apps sebagai tanda bukti presensi.
1.3 Rumusan Masalah
Adapun rumusan masalah dari penelitian ini adalah sebagai berikut:
1. Bagaimana membuat aplikasi Android yang dapat membaca koordinat lokasi menggunakan GPS.
2. Bagaimana membuat aplikasi Android yang dapat menggunakan sensor fingerprint yang terpasang pada smartphone sebagai autentikasi sidik jari.
3. Bagaimana merancang aplikasi Web untuk sistem presensi dosen dan pegawai yang berbasis lokasi.
4. Bagaimana menggabungkan aplikasi Android dan aplikasi Web yang telah dirancang menjadi satu kesatuan sistem yang saling terintegrasi.
1.4 Batasan Masalah
Agar isi dan pembahasan skripsi ini menjadi terarah, maka penulis perlu membuat batasan masalah yang akan dibahas. Adapun batasan masalah pada penulisan skripsi ini adalah sebagai berikut :
1. Hanya menggunakan sensor fingerprint dan GPS yang ada pada Smartphone 2. Tidak membahas tentang keakuratan sensor fingerprint dan GPS Android 3. Smartphone yang digunakan pada skripsi ini berbasis sistem Android 4. Tidak membahas presensi pada pembagian waktu kerja (Shift)
1.5 Manfaat Penelitian
Adapun manfaat yang diharapkan dari pengembangan sistem ini adalah:
Memudahkan dosen dan pegawai dalam melakukan proses presensi terhadap kehadiran dosen dan pegawai dimana data presensi langsung terkirim secara real time.
1.6 Tahapan Penelitian
Untuk dapat menyelesaikan skripsi ini maka penulis menerapkan beberapa tahapan penelitian diantaranya:
a. Studi literatur
Studi literatur dilakukan dengan mengumpulkan referensi untuk membangun sistem baik dari buku, jurnal, maupun sumber lainnya mengenai bahasa pemrograman dan materi yang bersangkutan dalam pembuatan sistem.
b. Perancangan Sistem
1. Perancangan Database (Basis Data)
Pada tahap ini dilakukan perancangan terhadap database sistem yang akan ditampilkan dalam bentuk Entity Relationship Diagram (ERD)
Pada tahap ini dilakukan perancangan terhadap sistem aplikasi Android, seperti perancangan use case diagram, activity diagram dan tampilan antarmuka.
3. Perancangan Aplikasi Web
Pada tahap ini dilakukan perancangan terhadap aplikasi Web, seperti perancangan use case, activity diagram dan tampilan antarmuka.
4. Perancangan API sistem
Pada tahap ini dilakukan perancangan API, seperti API Registrasi dan API Presensi c. Pengujian Sistem
Pengujian sistem dilakukan untuk melihat apakah sistem telah berjalan dengan baik atau tidak sesuai dengan konsep yang diajukan.
d. Penyusunan laporan
Pada tahap ini merupakan tahap akhir dalam pengerjaan skripsi yang disusun sesuai dengan proses yang telah dikerjakan. Dari penyusunan skripsi ini diharapkan pembaca bisa mempelajari dan mengembangkan sistem tersebut.
1.7 Sistematika Penulisan
Skirpsi ini disusun berdasarkan sistematika penulisan sebagai berikut:
BAB I PENDAHULUAN
Bab ini merupakan pendahuluan yang berisi tentang latar belakang masalah, tujuan manfaat penulisan, batasan masalah, tahapan penulisan, dan sistematika penulisan.
BAB II DASAR TEORI
Bab ini membahas sekilas mengenai beberapa teori tentang presensi, fingerprint, assisted global position location, Android, sensor fingerprint Android, dan lain-lain.
BAB III PERANCANGAN SISTEM
Pada bab ini dijelaskan tentang perancangan sistem presensi mulai dari blok diagram, activity diagram, use case diagram, perancangan database dan tampilan antarmuka
aplikasi.
BAB IV PUNGUJIAN DAN ANALISIS
Bab ini membahas tentang pengujian dan analisis terhadap sistem yang telah dirancang.
BAB V KESIMPULAN DAN SARAN
Bab ini membahas tentang kesimpulan dari perancangan dan saran-saran yang mungkin untuk pengembangan lebih lanjut.
BAB II
TINJAUAN PUSTAKA 2.1 Sistem Presensi
Presensi dalam Kamus Besar Bahasa Indonesia (KBBI) berarti kehadiran, artinya adalah suatu cara atau metode untuk menandakan seseorang hadir atau tidak. Sedangkan sistem menurut Kamus Besar Bahasa Indonesia (KBBI) adalah perangkat unsur yang secara teratur saling berkaitan sehingga membentuk suatu totalitas. Maka Sistem presensi merupakan sebuah sistem yang digunakan untuk mengetahui, mencatat maupun merangkum daftar kehadiran setiap anggota instansi tersebut. Sistem presensi mencatat identitas anggota instansi dan waktu keluar masuk anggotanya.
Sistem presensi mempunyai kebutuhan penting dalam suatu instansi dimana data yang didapat dari proses pengisian kehadiran bisa digunakan ataupun diolah menjadi salah satu proses penilaian baik atau buruknya kinerja seseorang. Pada suatu instansi pendidikan seperti universitas, perguruan tinggi maupun sekolah, data dari proses presensi juga sangat berguna sebagai tolak ukur kedisiplinan suatu pegawai ataupun staf pengajar, yang kemudian data tersebut akan dijadikan sebagai salah satu acuan kedisiplinan dalam berkerja.
Dewasa ini perkembangan sistem presensi pun beragam tergantung kebutuhan dan keefektifan dari instansi masing-masing. Adapun diantaranya yaitu :
- Sistem presensi menggunakan tanda tangan, yang menggunakan tanda tangan diselembar kertas atau menggunakan alat lain sebagai identifikasi kehadiran.
- Sistem presensi menggunakan scan barcode, yang menggunakan kamera Handphone untuk melakukan scan barcode yang telah disediakan atau ditempel
dibagian lokasi kerja tertentu.
- Sistem presensi menggunakan fingerprint, yang menggunakan sidik jari atau fingerprint yang dicocokan pada alat fingerprint scanner yang biasanya diletakkan
didaerah lokasi pekerjaan sebagai identifikasi kehadiran.
- Dan sistem presensi lain sebagainya.
(a) (b)
(c)
Gambar 2.1 Contoh sistem presensi. (a) Sistem presensi menggunakan fingerprint (b) Sistem presensi menggunakan tanda tangan. (c) Sistem presensi menggunakan scan barcode
2.2 Android
Android adalah sistem operasi berbasis Linux yang dirancang untuk perangkat bergerak layar sentuh seperti telepon pintar dan komputer tablet. Android awalnya dikembangkan oleh Android, Inc., dengan dukungan finansial dari Google, yang kemudian membelinya pada tahun 2005. Sistem operasi ini dirilis secara resmi pada tahun 2007, bersamaan dengan didirikannya Open Handset Alliance, konsorsium dari perusahaan- perusahaan perangkat keras, perangkat lunak, dan telekomunikasi yang bertujuan untuk memajukan standar terbuka perangkat seluler. Ponsel Android pertama mulai dijual pada bulan Oktober 2008. [1]
Android merupakan sistem operasi dengan sumber terbuka, dan Google merilis kodenya di bawah Lisensi Apache. Kode dengan sumber terbuka dan lisensi perizinan pada Android memungkinkan perangkat lunak untuk dimodifikasi secara bebas dan didistribusikan oleh para pembuat perangkat, operator nirkabel, dan pengembang aplikasi.
Selain itu, Android memiliki sejumlah besar komunitas pengembang aplikasi yang memperluas fungsionalitas perangkat, umumnya ditulis dalam versi kustomisasi bahasa pemrograman Java.
Android tidak hanya ditujukan untuk ponsel, tetapi juga perangkat elektronik bergerak lainnya. Pada tahun 2012, Android telah digunakan untuk piranti-piranti berikut : smartphone/tablet, piranti pembaca buku elektronik, netbook, MP4 Player, dan TV
Internet[2].
2.3 Asisted Global Positioning System (AGPS)
Global Positioning System (GPS) adalah salah satu sistem yang tertanam dalam fitur
ponsel pintar. fungsi GPS telah menjadi sistem smartphone utama, dan menggunakan data dasar layanan berbasis lokasi seperti Layanan-Peta, Layanan Pengenalan atau Layanan
Penyediaan Informasi[3]. Global Positioning System (GPS) merupakan sebuah sistem satelit navigasi dan penentuan posisi dengan menggunakan satelit. GPS dapat memberikan informasi tentang posisi, kecepatan, dan waktu secara cepat, akurat, murah, dimana saja di bumi ini pada setiap saat tanpa tergantung cuaca [4]
Assisted GPS atau singkatnya A-GPS adalah sebuah sistem yang mempercepat TTFF
(Time To First Fix) atau kecepatan menentukan posisi pertama kali. Rata-rata smartphone modern sudah menggunakan A-GPS untuk membantu sistem navigasi global di dalam smartphone “mengunci” satelit dengan cepat. [5]
2.4 Basis Data
Data adalah fakta-fakta tentang segala sesuatu di dunia nyata yang dapat direkam dan disimpan pada media komputer. Sebagai contoh, pada basis data mahasiswa, data adalah NIM, nama mahasiswa, yang bersangkutan, tanggal lahir, alamat, serta nomor teleponnya.
Sedangkan informasi adalah data yang telah diolah sedemikian rupa sehingga memiliki makna tertentu bagi pengguna.[6]
Basis data adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system).[7]
2.5 Antarmuka Android
User interface atau Antarmuka pengguna merupakan bentuk tampilan grafis yang berhubungan langsung dengan pengguna (user). Antarmuka pengguna berfungsi untuk menghubungkan antara pengguna dengan sistem operasi, sehingga perangkat tersebut bisa
Prinsip-prinsip dalam mendesain User Interface (UI) adalah sebagai berikut: [8]
1. User familiarity, gunakan istilah, konsep dan kebiasaan user.
2. Consistency/konsisten dalam operasi dan istilah di seluruh sistem sehingga tidak membingungkan. Contohnya layout menu di Open Office mirip dengan layout menu di MS Office.
3. Minimal surprise, operasi bisa diduga prosesnya berdasarkan perintah yang disediakan.
4. Recoverability, recoverability ada dua macam: Confirmation of destructive action (konfirmasi terhadap aksi yang merusak) dan ketersediaan fasilitas pembatalan (undo)
5. User guidance, sistem manual online, menu help, caption pada ikon khusus tersedia.
6. User diversity, fasilitas interaksi untuk tipe user yang berbeda disediakan.
Misalnya ukuran huruf bisa diperbesar.
2.6 Fingerprint (Sidik Jari)
Fingerprint atau sidik jari adalah hasil reproduksi tapak jari baik yang sengaja
diambil, dicapkan dengan tinta, maupun bekas yang ditinggalkan pada benda karena pernah tersentuh kulit telapak tangan atau kaki. Kulit telapak adalah kulit pada bagian telapak tangan mulai dari pangkal pergelangan sampai kesemua ujung jari, dan kulit bagian dari telapak kaki mulai dari tumit sampai ke ujung jari yang mana pada daerah tersebut terdapat garis halus menonjol yang keluar satu sama lain yang dipisahkan oleh celah atau alur yang membentuk struktur tertentu. [9]
Sidik Jari merupakan identitas pribadi yang tidak mungkin ada yang menyamainya.
Sifat-sifat atau karakteristik yang dimiliki oleh sidik jari adalah perennial nature yaitu
guratan-guratan pada sidik jari yang melekat pada manusia seumur hidup, immutability yang berarti bahwa sidik jari seseorang tak akan pernah berubah kecuali sebuah kondisi yaitu terjadi kecelakaan yang serius sehingga mengubah pola sidik jari yang ada dan individuality yang berarti keunikan sidik jari merupakan originalitas pemiliknya yang tak
mungkin sama dengan siapapun di muka bumi ini sekali pun pada seorang yang kembar identik. [10]
Menurut sistem Galton, pola sidik jari dibedakan menjadi tiga, yaitu bentuk lengkung atau arch, bentuk sosok atau loop, dan lingkaran atau whorl. Pola arch adalah pola dengan garis lengkung sejajar menyerupai busur dan tidak memiliki triradius. Pola loop memiliki bentuk lengkung seperti kait dengan satu triradius. Pola ini ada 2 macam yaitu loop ulna dan loop radial. Pola whorl berbentuk lingkaran dengan sedikitnya memiliki dua
triradius, seperti terlihat pada Gambar 1.2 [11]
(a) (b) (c)
Gambar 2.2 Pola sidik jari manusia. (a) Pola lengkung atau arch, (b) Pola sosok atau loop, (c) Pola lingkaran atau whorl. Tanda panah menunjukkan triradius.
2.7 Fingerprint scanner (pemindai sidik jari)
Pemindai sidik jari adalah sebuah perangkat elektronik yang digunakan untuk menangkap gambar digital dari pola sidik jari. Gambar tersebut disebut pemindaian hidup.
Pemindaian hidup adalah pemrosesan digital untuk membuat sebuah template biometrik yang disimpan dan digunakan untuk pencocokan. Ini merupakan ikhtisar dari beberapa sidik jari yang lebih umum digunakan sensor teknologi. [12]
Berikut adalah uraian beberapa sistem pembacaan yang di temukan di beberapa sistem sensor sidik jari elektronik, baik sensor online maupun stand alone.
1. Optical (Optis). Teknik pembacaan dengan optical atau optis mempunyai sistem merekam pola sidik jari dengan menggunakan blitz (cahaya). Alat pembaca sidik jari atau fingerprint scanner yang digunakan adalah berupa digital camera (kamera digital). Untuk
lapisan paling atas area untuk meletakkan ujung jari atau permukaan sentuh (scan area).
Di bawah scan area, terdapat lampu blitz atau pemancar cahaya yang difungsikan untuk menerangi permukaan ujung jari. Karena sidik jari terkena cahaya maka akan menghasilkan pantulan dari ujung jari yang selanjutnya ditangkap oleh alat penerima. Data tersebut selanjutnya disimpan ke dalam memori. Sistem ini banyak digunakan di berbagai perusahaan penyedia pemindai sidik jari seperti Fingerspot.
2. Ultrasonik adalah suara atau getaran dengan frekuensi yang sangat tinggi dan tidak bisa didengar oleh telinga manusia, yaitu kira-kira di atas 20 Khz. Gelombang ultrasonik dapat merambat dalam medium padat, cair dan gas.
Dengan pembacaan ultrasonik, tangan yang kotor tidak menjadi masalah. Demikian juga dengan permukaan scanner yang kotor tidak akan menghambat proses pembacaan.
3. Capacitive (Kapasitans). Teknik Kapasitans menggunakan cara pengukuran kapasitans untuk membentuk citra sidik jari. Scan area dan kulit ujung jari yang bersentuhan sebagai
kapasitor dari sistem ini. Karena tekstur sidik jari mempunyai ridge (gundukan) dan valley (lembah) pada maka kapasitas dari kapasitor masing-masing orang akan berbeda.
4. Thermal (Suhu). Teknik Thermal sistem pembacaan dengan menggunakan perbedaan suhu antara ridge (gundukan) dengan valley (lembah) tekstur sidik jari untuk mengetahui pola sidik jari. Cara yang dilakukan adalah dengan menggeser ujung jari (swap) diatas lapisan scan area. Apabila ujung jari hanya diletakkan saja, dalam waktu singkat, suhunya akan sama karena adanya proses keseimbangan. [13]
(a) (b)
(c) (d)
Gambar. 2.3 Proses pemindaian sidik jari (a)optic sensor, (b)ultrasonic sensor, (c)capacitive sensor, (d)thermal sensor
2.8 REST API
Dalam pemrograman komputer, antarmuka pemrograman aplikasi (API) adalah sekumpulan definisi subrutin, protokol komunikasi, dan alat untuk membangun perangkat lunak. Secara umum, ini adalah seperangkat metode komunikasi yang didefinisikan dengan jelas di antara berbagai komponen. API yang baik memudahkan pengembangan program komputer dengan menyediakan semua blok, yang kemudian disatukan oleh programmer.[14]
Penggunaan API dapat bervariasi tergantung pada jenis bahasa pemrograman yang terlibat. API untuk bahasa prosedural seperti Lua dapat terdiri terutama dari rutinitas dasar untuk mengeksekusi kode, memanipulasi data atau error handle. API untuk bahasa berorientasi objek, seperti Java, akan memberikan spesifikasi kelas dan metode kelasnya.[15]
Ada beberapa jenis API lebih lanjut seperti Simple Access Access Protocol (SOAP),
Remote Procedure Call (RPC), dan mungkin yang paling popular (setidaknya dalam nama) Representational State Transfer (REST).
Representational State Transfer (REST) adalah arsitektur standar Web yang
menggunakan protokol HTTP dalam komunikasi data. Arsitektur tersebut didirikan berdasarkan sumber data dimana masing-masing komponen merupakan sumber data.
Sumber data diakses oleh antarmuka yang sama dengan menggunakan metode standar HTTP. Dalam arsitektur REST, server yang mengikuti arsitektur REST menyediakan akses ke sumber data dan klien yang mengambil data. Setiap sumber data diidentifikasi menggunakan link URI. REST menggunakan berbagai format untuk menyajikan data, seperti teks, JSON dan XML. [16]
REST merupakan filosofi desain yang mendorong untuk menggunakan protokol dan fitur yang sudah ada pada Web untuk memetakan permintaan terhadap sumber daya pada berbagai macam representasi dan manipulasi data di Internet. [17]
Ide dasar dari arsitektur REST adalah bagaimana menghubungkan jalur komunikasi antar mesin atau aplikasi melalui HTTP yang sederhana. Sebelum adanya REST, komunikasi antar mesin atau aplikasi dilakukan dengan menggunakan beberapa mekanisme atau protokol middleware yang cukup kompleks seperti SOAP. Arsitektur REST mampu mengeksploitasi berbagai kelebihan dari HTTP yang digunakan untuk kebutuhan Web service. HTTP sendiri merupakan sebuah protokol standar di dunia World Wide Web yang berbasis synchronous request / response. Protokol tersebut sangat
sederhana: client mengirimkan sebuah request message yang mencakup HTTP method yang akan di invokasi, lokasi resource dalam format URI, serta pilihan format pesan (pada dasarnya dapat berupa format apa saja seperti HTML, plain text, XML, JSON, ataupun data binary), Kemudian server akan mengirimkan respon sesuai dengan spesifikasi yang diminta oleh client. Selama ini, yang berfungsi sebagai aplikasi client adalah sebuah Web browser yang memfasilitasi komunikasi antara mesin dengan manusia. Dengan adanya REST, aplikasi client dapat berupa aplikasi apa saja hanya dengan memanfaatkan HTTP. [18]
Gambar 2.4 arsitecture of REST and without REST
(a)
(b)
Gambar 2.5 Diagram Alir pertukaran data dengan (a)REST, (b) tanpa REST Pada diagram tanpa REST menggunakan API tanpa menggunakan REST sebelum melakukan kontak atau Request, client melakukan kontak dengan service registry. Operasi- operasi pengiriman pesan dijalankan dengan melibatkan paramater nama operasi yang diinginkan melalui method call. Jika Web service yang dituju menyediakan sebuah file WSDL (Web Service Description Language), akan mengacu langsung pada URL file WSDL tersebut dan menggunakan class “wsdl” untuk mem-parsing file WSDL dan mengekstrak seluruh datanya. Class “wsdl” menyediakan beberapa metode untuk mengekstrak data per operasi. Operasi-operasi tersebut sebelumnya telah di publish oleh API. Setelah proses find function berhasil proses request akan diteruskan ke API Web
service. Sedangkan pada proses pertukaran data dengan API menggunakan REST client
melakukan request langsung ke API tanpa perlu melakukan pengecekan function yang ada yang kemudian langsung menerima respon dari API.
Sebelum adanya REST pesan request/response mengikuti pendekatan formal dan standar yang menentukan cara menyandikan file XML yang dikembalikan oleh API. Pesan tersebut sebenarnya adalah file XML biasa yang terdiri dari bagian-bagian berikut:
Amplop (wajib) :Ini adalah tag awal dan akhir pesan.
Header (opsional) :Berisi atribut opsional pesan. Ini memungkinkan untuk memperluas pesan dengan cara modular dan terdesentralisasi.
Badan (wajib) :Berisi data XML yang ditransmisikan server ke penerima.
Kesalahan (opsional) :Ini membawa informasi tentang kesalahan yang terjadi selama pemrosesan pesan. [19]
Berikut ini beberapa prinsip arsitektur dari REST: [20]
1. Addressablitiy
Addressability adalah gagasan bahwa setiap objek dan sumber daya dalam
sistem dapat dijangkau melalui pengidentifikasi unik.
2. Constrained & Uniform Interface
adalah bahwa REST berpegang teguh pada serangkaian operasi protokol aplikasi hingga pendistribusikan layanan. Hal ini menunjukkan bahwa REST memiliki parameter "aksi" di URI dan hanya digunakan metode HTTP untuk layanan Web. HTTP memiliki sekumpulan kecil operasional yang tetap. Setiap metode memiliki tujuan dan makna tertentu yaitu:
GET adalah operasi read-only. Ini digunakan untuk menanyakan server untuk informasi spesifik. Tindakan membaca dokumen HTML tidak boleh mengubah dokumen. Ini berarti bahwa, selain memuat permintaan, operasi tidak akan mempengaruhi server.
PUT meminta server menyimpan tubuh pesan yang dikirim dengan permintaan di bawah lokasi yang disediakan dalam pesan HTTP. Biasanya dimodelkan sebagai sisipan atau pembaruan. Saat menggunakan PUT, klien tahu identitas sumber daya yang ia buat atau perbarui. Analogi adalah dokumen MS Word yang sedang diedit, tidak peduli berapa kali mengklik tombol Simpan, file yang menyimpan dokumen secara logis akan sama dokumen.
DELETE digunakan untuk menghapus sumber daya.
POST adalah satu-satunya operasi HTTP yang tidak aman. Setiap metode POST diizinkan untuk memodifikasi layanan dengan cara yang unik.
HEAD persis seperti GET kecuali bahwa alih-alih mengembalikan badan respons, ia hanya mengembalikan kode respons dan header apa pun yang
terkait dengan permintaan.
OPTION digunakan untuk meminta informasi tentang opsi komunikasi sumber daya yang diminati. Ini memungkinkan klien untuk menentukan kemampuan server dan sumber daya tanpa memicu tindakan atau pengambilan sumber daya apa pun.
3. Stateless Communication
Dalam REST, stateless berarti bahwa tidak ada data sesi klien yang disimpan di server. Server hanya mencatat dan mengelola status sumber daya yang
disingkapnya. Jika perlu menjadi data khusus sesi, harus dipegang dan dikelola oleh klien dan ditransfer ke server dengan setiap permintaan sesuai kebutuhan.
4. Berorientasi pada Representasi
Prinsip arsitektur terakhir REST adalah bahwa layanan ini harus berorientasi pada representasi. Setiap layanan dapat dialamatkan melalui URI tertentu dan representasi dipertukarkan antara klien dan layanan. Dengan operasi GET, menerima representasi dari kondisi saat ini. PUT atau POST meneruskan representasi sumber daya ke server sehingga kondisi sumber daya yang mendasarinya dapat berubah.
2.9 Teori Harvesine Formula
Formula Haversine merupakan persamaan penting dalam sistem navigasi, nantinya Formula Haversine akan menghasilkan jarak terpendek antara dua titik, misalnya pada bola yang diambil dari garis bujur (longtitude) dan garis lintang (latitude). Formula ini pertama kali ditemukan oleh Jamez Andrew di tahun 1805, dan digunakan pertama kali oleh Josef de Mendoza y Ríos di tahun 1801. [21]
Gambar 2.6 Hukum kosinus
Dengan persamaan Hukum Kosinus sebagai berikut:
cos(𝑐) = cos(𝑎) cos(𝑏) + sin(𝑎)sin(𝑏)cos(𝑐) (1)
Dimana a, b, c merupakan jarak dengan satuan radian karena berada dalam bidang bola, yang bias dikorelasikan dengan persamaan busur dibawah ini [9]:
Gambar 2.7 Persamaan Busur 𝜃 =𝐿
𝑟 (2)
Kemudian diimplementasikan persamaan harvesin dibawah ini:
ℎ𝑎𝑣𝑒𝑟𝑠𝑖𝑛𝑒𝜃 = 𝑠𝑖𝑛2(𝜃
2) =1−cos(𝜃)
2 (3)
Sehingga dari Formula diatas dapat diimplementasi menjadi:
d = 2𝑟 arcsin (√sin2(𝜑2−𝜑1
2 ) + cos(𝜑1) cos(𝜑2) sin2(𝜆2−𝜆1
2 )) (4)
Keterangan:
d : Jarak antara dua lokasi yang akan dihitung (km)
r : jari-jari bumi (6371 km)
φ1, φ2 : latitude pada titik 1 and latitude pada titik 2, dalam radian
λ1, λ2 : longitude pada titik 1 and longitude pada titik 2, dalam radian
BAB III
PERANCANGAN SISTEM 3.1 Umum
Secara umum aplikasi ini dirancang untuk melakukan presensi yang dilakukan oleh dosen atau pegawai. Dosen dan pegawai melakukan autentikasi sidik jari dengan menggunakan aplikasi mobile yang smartphone pada lokasi yang telah ditentukan.
Kemudian data tersebut dikirim ke server dan dengan menggunakan API yang telah dirancang untuk menerima data yang dikirim kemudian data disimpan di database yang ada pada sistem. Data hasil presensi dosen dan pegawai yang telah tersimpan di database akan dapat dilihat oleh admin departemen atau fakultas menggunakan aplikasi Web yang telah dirancang. Sehingga data presensi dosen dan pegawai dapat diambil dan diproses untuk kegunaan lainnya. Secara umum diagram sistem presensi yang akan dirancang dapat dilihat pada gambar 3.1 berikut:
Gambar 3.1 Arsitektur Aplikasi Android dan Aplikasi Web untuk sistem presensi dosen dan pegawai menggunakan GPS dan fingerprint
3.2 Perancangan Database
Perancangan database ini menggunakan Entity Relationship Diagram (ERD) yang dapat menggambarkan kebutuhan-kebutuhan terkait database didalam membangun sistem.
Adapun kebutuhan database pada sistem antara lain: sebagai penyimpanan dan manajemen pegawai, serta penyimpanan atau manajemen kehadiran. Untuk lebih jelasnya dapat dilihat pada gambar 3.2 berikut.
Gambar 3.2 Perancangan Database Menggunakan Entity Relationship Diagram (ERD)
3.3 Perancangan Aplikasi Android
Pada perancangan aplikasi Android dilakukan perancangan yang lebih detail mengenai pengguna yang terlibat, diagram activity dan serta perancangan antarmuka pengguna. Adapun tahapan-tahapan yang dilakukan dalam perancangan aplikasi Android yaitu:
3.3.1 Perancangan Use Case Diagram
Use case diagram berguna untuk mengetahui kebutuhan fungsional dari sistem yang akan dibangun. Use case diagram memberikan gambaran umum mengenai aktor atau target pengguna sistem yang memiliki kebutuhan fungsional yang disesuaikan dengan situasi tertentu. Pada
perancangan ini, aktor yang terlibat ialah pegawai dan dosen, dimana kedua aktor tersebut memiliki kebutuhan fungsional tertentu yang dapat dilihat pada gambar dibawah 3.3 berikut.
Gambar 3.3 Use case diagram aplikasi Android
3.3.2 Perancangan Activity Diagram
Activity diagram merupakan penjabaran lebih detail mengenai kebutuhan
fungsional yang telah dirancang pada use case diagram. Kebutuhan fungsional yang akan dirancang yaitu fungsi registrasi, fungsi presensi. Fungsi registrasi pada aplikasi Android ini adalah sebagai cara pegawai/pengguna untuk mendaftarkan IMEI smartphone yang mereka gunakan untuk alat presensi ke sistem. Untuk lebih jelasnya dapat dilihat pada gambar 3.4 berikut.
Gambar 3.4 Activity diagram fungsi Registrasi
Seperti yang terlihat pada gambar 3.4 bahwa pada saat aplikasi Android berada pada menu registrasi aplikasi langsung meminta akses untuk memperoleh data IMEI smartphone. Apabila data IMEI device telah diperoleh maka akan tampil dua kolom isian
data yaitu: nomor induk dan tempat lahir. Setelah pengisian data telah selesai maka data nomor induk, tempat lahir, dan IMEI device akan dikirim ke server. Pada server data tersebut akan dilakukan pengecekan terhadap nomor induk pegawai dan tempat lahirnya.
Jika nomor induk dan Tempat lahir sesuai maka IMEI perangkat akan ditambahkan ke dalam database pegawai tersebut. Kemudian server akan mengirim respon dan aplikasi Android akan menampilkan respon tersebut.
Berikutnya adalah fungsi presensi. Fungsi presensi pada aplikasi ini dirancang untuk pengguna / pegawai dapat melakukan pengiriman data presensi pada server sebagai data kehadiran. Untuk lebih jelas mengenai fungsi presensi dapat dilihat pada gambar 3.5 berikut.
Gambar 3.5 Activity diagram fungsi Presensi
Fungsi presensi dimulai pada saat aplikasi dibuka, pada saat aplikasi Android dibuka, aplikasi langsung meminta akses untuk memperoleh data GPS, IMEI device dan juga akses menggunakan fingerprint scanner. Apabila semua data dan akses yang diminta telah terpenuh, aplikasi akan membuka fitur autentikasi sidik jari dimana fitur ini berguna untuk mengirimkan semua data yang telah diperoleh (GPS dan IMEI device) ke server. Jika autentikasi fingerprint berhasil dilakukan maka data tersebut akan dikirim di server yang
kemudian data tersebut akan dilakukan pengecekan data presensi. Kemudian server akan mengirim respon dan aplikasi Android akan menampilkan respon tersebut.
3.3.3 Perancangan Tampilan Antarmuka Pengguna
Perancangan antarmuka pengguna (user interface) pada aplikasi perangkat bergerak (mobile) berguna sebagai perantara komunikasi pengguna dengan sistem.
Tampilan antarmuka pengguna ini dirancangan sesuai dengan activity diagram yang telah dirancang sebelumnya. Pada saat aplikasi di buka akan muncul tampilan presensi.
Tampilan menu presensi dapat dilihat pada gambar 3.6 berikut.
Gambar 3.6 User interface menu presensi aplikasi Android
Pada menu presensi ini terdapat nama pengguna. Menu presensi ini adalah menu untuk pengguna melakukan presensi dengan menekan gambar sidik jari dan meletakkan
sidik jari pada sensor fingerprint yang tersedia pada perangkat bergerak (Smartphone). Jika proses presensi berhasil maka gambar sidik jari akan menghilang dan akan muncul keterangan bahwa pengguna telah melakukan presensi pada hari dan jam presensi. Dapat dilihat pada gambar 3.7
Gambar 3.7 User interface berhasil melakukan presensi
Kemudian terdapat menu selanjutnya yaitu menu registrasi. Pada menu registrasi, pengguna memasukkan data berupa nomor induk dan tempat lahir. Nomor induk yang dimasukkan tentunya harus nomor induk yang telah terdaftar pada sistem. Jika proses registrasi berhasil maka akan kembali ke menu presensi. Jika proses registrasi tidak berhasil maka akan ada respon gagal dan pengguna bisa melakukan pengisian kembali dengan nomor induk, tempat lahir kembali. Jika pengguna dengan nomor induk tersebut pernah
melakukan registrasi pada perangkat bergerak yang lain maka akan mendapatkan respon gagal. Setiap pengguna hanya boleh melakukan proses registrasi dengan satu perangkat bergerak saja. Tampilan menu registrasi dapat dilihat pada gambar 3.8 berikut.
Gambar 3.8 User interface menu registrasi
3.4 Perancangan Aplikasi Web
Pada perancangan aplikasi Web dilakukan perancangan yang lebih detail mengenai pengguna yang terlibat, fungsi dan alur pada sistem, serta perancangan antarmuka pengguna. Adapun Tahapan-tahapan yang dilakukan dalam perancangan aplikasi Web yaitu:
3.4.1 Perancangan Use Case Diagram
Use case diagram berguna untuk mengetahui kebutuhan fungsional dari sistem yang akan dibangun. Use case diagram memberikan gambaran umum mengenai aktor atau target pengguna sistem yang memiliki kebutuhan fungsional yang disesuaikan dengan situasi tertentu. Pada perancangan ini, aktor yang terlibat ialah admin dimana kebutuhan fungsional dapat dilihat pada gambar 3.9 berikut.
Gambar 3.9 Use case diagram aplikasi Web
3.4.2 Perancangan Activity Diagram
Activity Diagram merupakan penjabaran lebih detail mengenai kebutuhan fungsional yang telah dirancangan pada use case diagram. Kebutuhan fungsional yang akan dirancang antara lain fungsi login, manajemen pegawai dan lihat kehadiran. Perancangan activity diagram untuk fungsi login, manajemen pegawai dan lihat kehadiran akan dibuat pada satu Activity Diagram yang dapat dilihat pada gambar 3.10 berikut.
Gambar 3.10 Activity Diagram Aplikasi Web
Fungsi login berguna sebagai keamanan pengguna sistem, sehingga hanya pengguna yang memiliki akses yang dapat menggunakan.
Fungsi manajemen pegawai berguna sebagai manajemen pegawai yang dapat melakukan penambahan pegawai baru, edit pegawai ataupun hapus pegawai yang kemudian akan berfungsi untuk memberi hak pegawai dalam melakukan presensi melalui aplikasi yang sudah dibangun pada Android atau smartphone. Sehingga hanya pegawai yang terdaftar pada aplikasi Web saja yang dapat melakukan registrasi pada aplikasi presensi pada perangkat bergerak atau Android.
Fungsi berikutnya yaitu fungsi lihat kehadiran pegawai, dimana pada fungsi ini admin dapat melihat daftar kehadiran. Fungsi lihat kehadiran ini dapat dipilih berdasarkan bulan ataupun hari. Namun secara mendasar data tampilan kehadiran akan otomatis menampilkan data kehadiran dihari tersebut apabila tidak dimasukkan ingin melihat dihari ataupun bulan tertentu.
3.4.3 Perancangan Tampilan Antarmuka Pengguna
Antarmuka pengguna (user interface) merupakan bentuk tampilan grafis yang berhubungan langsung dengan pengguna (user).[17] Kegunaan antarmuka pengguna pada aplikasi Web merupakan berguna sebagai perantara komunikasi pengguna dengan sistem. Tampilan antarmuka pengguna ini dirancang berdasarkan activity diagram yang telah dirancang sebelumnya. Perancangan tampilan antarmuka pengguna pada saat autentikasi login dapat dilihat pada gambar 3.11 berikut.
Gambar 3.11 Tampilan antarmuka fungsi login
Pada tampilan antarmuka login. Pengguna diwajibkan mengisi form untuk masuk ke halaman utama sistem. Adapun yang yang diwajibkan untuk dimasukkan yaitu username dan password yang sebelumnya telah didaftarkan. Jika pengguna selalu
menggunakan perangkat komputer dan browser yang sama, maka tersedia fitur remember me yang berfungsi untuk mengecek cookie pada browser yang sedang digunakan atau yang
selalu digunakan untuk mengakses sistem. Ketika proses login berhasil maka selanjutnya akan muncul tampilan halaman utama sistem. Halaman utama sistem dapat dilihat pada gambar 3.12 berikut.
Gambar 3.12 Tampilan antarmuka beranda atau dashboard utama
Pada tampilan antarmuka dashboard atau beranda pengguna dapat melihat data kehadiran dalam bentuk grafik yang menampilakan jumlah pegawai yang melakukan presensi perbulan. Untuk tampilan antarmuka manajemen pegawai dapat dilihat pada gambar 3.13. Pada tampilan antarmuka ini pengguna/admin dapat melakukan penambahan pegawai baru dengan menekan tombol hijau yang bertuliskan tambah pegawai, update data pegawai lama dengan menekan tombol berwarna biru yang bertuliskan huruf E (edit) dan hapus pegawai dengan menekan tombol bewarna merah yang bertuliskan huruf D (delete).
Pada menu manajemen pegawai berikut pengguna/admin dapat melakukan reset status registrasi dimana dengan melakukan hal tersebut dapat membuat pegawai/user yang telah melakukan registrasi ulang pada smartphone tidak dapat melakukan presensi dan harus melakukan registrasi ulang kembali. Hal ini bertujuan untuk menangani kasus kehilangan smartphone (alat presensi) atau pegawai/user ingin mengganti smathphone yang digunakan untuk presensi.
Gambar 3.13 Tampilan antarmuka fungsi manajemen pegawai
Untuk tampilan antarmuka fungsi lihat kehadiran / data kehadiran pegawai dapat dilihat pada gambar 3.14 Pada tampilan antarmuka ini pengguna akan melihat data pegawai yang melakukan presensi pada hari itu. Kemudian dapat melakukan pencarian pada tanggal tertentu apabila ingin menampilkan data pada hari tertentu.
Gambar 3.14 Tampilan antarmuka fungsi manajemen kehadiran
3.5 Perancangan API
Pada sistem presensi dosen dan pegawai berbasis GPS dan fingerprint perangkat bergerak dilakukan perancangan Application Programming Interface (API). API memiliki fungsi sebagai jembatan atau perantara komunikasi data antara sistem yang berada di server dengan aplikasi Android pada perangkat bergerak. Penggunaan API dapat mempercepat proses pengembangan aplikasi pada perangkat bergerak, karena API telah menyediakan fitur-fitur yang dibutuhkan sehingga para pengembang aplikasi tidak perlu lagi membuat fitur yang serupa.
3.5.2 Perancangan API presensi
API presensi berfungsi sebagai akses dosen dan pegawai untuk memberikan status hadir pada sistem. Adapun data yang dikirim oleh aplikasi presensi Android adalah koordinat yang bersumber dari GPS, dan IMEI Android tersebut. Kemudian data tersebut akan dilakukan pengecekan satu per satu oleh API. Pengecekan berurutan tersebut meliputi pengecekan kelengkapan data (latitude, longitude, dan IMEI), kemudian dari data koordinat yang didapat dari
GPS smartphone dicek apakah benar user sedang berada dalam jangkauan kordinat tempat pekerjaan, lalu dari data IMEI Perangkat dicek apakah IMEI tersebut terdaftar sebagai pegawai.
Setelah melakukan pengecekan terhadap kordinat dan data pegawai kemudian dilakukan pengecekan terhadap waktu presensi apabila presensi dilakukan pada waktu pagi (pukul 06.00 WIB – 09.00 WIB), Maka data presensi akan ditambahkan kedalam database dan mengirimkan respon presensi datang berhasil. Apabila presensi dilakukan pada waktu sore (pukul 16.00 WIB – 23.59 WIB), maka data presensi akan ditambahkan kedalam database dan mengirimkan respon presensi pulang berhasil. Dan apabila presensi dilakukan diluar rentang waktu jam masuk atau pu jam pulang maka akan mendapatkan respon bahwa anda tidak dapat melakukan presensi karena anda tidak dalam waktu presensi. Untuk lebih jelas nya dapat dilihat pada diagram alir perancangan API presensi pada gambar 3.15 berikut.
Gambar 3.15 Flowchat perancangan API presensi 3.5.3 Perancangan API Registrasi
API registrasi berfungsi sebagai akses dosen dan pegawai untuk mendaftarkan Smartphone yang digunakan untuk melakukan proses presensi. Adapun data yang diperlukan oleh API ini adalah nomor induk pegawai atau dosen sebagai identifikasi id pengguna, tempat lahir sebagai pertanyaan
tambahan dalam identifikasi pengguna, dan IMEI Smartphone. Kemudian data tersebut akan dilakukan pengecekan satu per satu oleh API registrasi. Pengecekan berurutan tersebut meliputi pengecekan kelengkapan data (nomor induk, tempat lahir, dan IMEI), kemudian pengecekan nomor induk apakah nomor induk tersebut sudah pernah melakukan registrasi atau status aktifasi pengguna masih ada. Kemudian pengecekan terhadap tempat lahir apakah tempat lahir pegawai tersebut sama dengan yang data pegawai. Lalu jika pengecekan telah berhasil maka pada database akan ditambahkan IMEI sebagai data. Untuk lebih jelas nya dapat dilihat pada diagram alir perancangan API presensi pada gambar 3.16 berikut.
Gambar 3.16 Flowchat perancangan API Registrasi
BAB IV
PENGUJIAN DAN ANALISIS 4.1 Pengujian Aplikasi Web
Pengujian sistem dilakukan untuk mengetahui sistem yang telah dibangun telah sesuai dengan perancangan yang dibuat dan memberikan hasil yang sesuai yang diharapkan yaitu sesuai dengan tujuan penelitian. Adapun pada pembuatan aplikasi sistem presensi dosen dan pegawai ini menggunakan metode pegujian alpha atau black box. Pengujian alpha atau black box merupakan metode pengujian yang berfokus pada kebutuhan
fungsional dari aplikasi. Pengujian black box dilakukan dengan fokus pada hasil keluaran yang diharapkan dari sistem yang diuji, apakah dapat berjalan sesuai yang diharapkan atau tidak. Adapun pengujian yang dilakukan meliputi pengujian fungsionalitas aplikasi Web seperti autentikasi (login), manajemen pegawai, dan lihat kehadiran. Pengujian lain yang dilakukan ialah pengujian API yang digunakan untuk menghubungkan sistem aplikasi presensi yang telah dirancang untuk Android dengan sistem presensi yang telah dirancang untuk Web.
4.1.1 Hasil Pengujian fungsionalitas aplikasi Web
Setelah melakukan pengujian aplikasi Web maka diperoleh hasil pengujian yang yang disusun berdasarkan pada fungsi-fungsi yang ada pada aplikasi Web. Hasil pengujian Alpha dari aplikasi Web dapat dilihat pada table.4.1
Tabel 4.1 Hasil Pengujian Alpha Aplikasi Web
NO Skenario Pengujian
Hasil yang diharapkan Hasil Pengujian 1 Login akun admin
menggunakan username dan password
Aplikasi masuk
kehalaman utama berhasil
2 Mengubah password admin Admin yang sudah login dapat mengubah
password
berhasil 3 Remember password Dapat mengingat sandi /
password berhasil
4 Logout akun admin Aplikasi akan kembali ke
menu login berhasil
5 Tambah pegawai baru Pegawai baru dapat ditambahkan kedalam database
berhasil 6 Edit / Update Pegawai lama Data pegawai dapat
diubah dan disimpan dalam database
berhasil 7 Pilih dan Hapus Pegawai Dapat menghapus data
pegawai yang dipilih berhasil 8 Lihat kehadiran pegawai Menampilkan daftar
kehadiran pegawai pada hari tersebut
berhasil
9
Lihat kehadiran pegawai berdasarkan tanggal
Menampilkan daftar kehadiran pegawai berdasarkan tanggal yang dipilih
berhasil
10
Lihat status aktivasi pegawai Menampilkan daftar data pegawai dengan status aktivasi masing-masing pegawai
berhasil
11
Mengubah status aktivasi pegawai
Mengubah status aktivasi pegawai sehingga
pegawai tidak bisa login atau presensi sebelum registrasi ulang
berhasil
4.1.2 Hasil Pengujian API
Pengujian selanjutnya adalah pengujian API, pengujian API dapat dilakukan dengan menggunakan software postman. Data yang akan digunakan untuk dikirim pada pengujian ini yaitu data sampel pegawai dalam kondisi sebenarnya didapatkan dari aplikasi sistem presensi pada perangkat bergerak dan hasilnya akan berupa response yang diberikan dari API merupakan data yang akan digunakan pada aplikasi sistem presensi pada perangkat bergerak yang telah dirancang sebelumnya. Berikut adalah hasil dari pengujian dari masing – masing API yang telah dibangun.
a. Hasil Pengujian API Registrasi
Pada pengujian API Registrasi ini menggunakan PUT sebagai metode pengiriman data. Kemudian akan dikirimkan data berupa nomor induk yang disimbolkan sebagai nomorInduk, IMEI perangkat bergerak yang disimbolkan presensi_devId, dan tempat lahir
yang disimbolkan dengan tempatlahir. Kemudian API akan memberikan respon berupa status, data, dam messege. Adapun jika pegawai atau dosen memasukkan nomor induk yang tidak terdaftar atau yang telah diregistrasi sebelumnya maka API akan mengeluarkan pesan bahwa regitrasi gagal. Hasil pengujian API resgiter dapat dilihat pada gambar 4.1 berikut.
Gambar 4.1 Hasil Pengujian API Registrasi
b. Hasil Pengujian API Presensi
Pada pengujian API presensi ini menggunakan POST sebagai metode pengiriman data. Kemudian akan dikirimkan data berupa lat yaitu singkatan dari latidude, lng yaitu singkatan dari longitude, dan IMEI perangkat bergerak yang disimbolkan presensi_devId.
Kemudian API akan memberikan respon berupa status, data, dan messege. Adapun data- data tersebut didapat setelah melakukan autentikasi fingerprint saat presensi, dan aplikasi telah mendapat izin untuk mengakses GPS dan Autentikasi Fingerprint. Pengisian presensi akan di sesuaikan dengan waktu pegawai melakukan presensi. Jika pegawai melakukan presensi pada pukul 06.00 WIB sampai 09.00 WIB maka akan mendapatkan respon berhasil presensi datang. Jika pegawai melakukan presensi pada pukul 16.00 WIB sampai 23.59 WIB maka akan mendapatkan respon berhasil presensi pulang. Apabila melakukan presensi diluar jam tersebut maka akan API akan merespon waktu presensi telah habis.
Hasil pengujian API presensi dapat dilihat pada gambar 4.2 (a) dan (b) berikut.
(a)
(b)
Gambar 4.2 Hasil Pengujian API Presensi (a) pada waktu pagi hari atau jam masuk (b) pada waktu sore hari atau jam pulang
4.2 Pengujian Aplikasi Android
Pengujian aplikasi Android merupakan pengujian yang bertujuan untuk mengetahui fungsi-fungsi pada sistem berjalan dengan baik dan sesuai dengan apa yang telah dirancang. Pengujian dilakukan cara menguji satu persatu fungsi yang ada pada aplikasi yang telah dirancang dengan menggunakan perangkat Smartphone yang berbeda-beda yang sudah mendukung fitur Fingerprint sensor dan GPS.
4.2.1 Pengujian fungsi Registrasi
Pengujian dilakukan pada beberapa pegawai yang sebelumnya sudah terdaftar pada sistem dan belum diregistrasi dengan pada aplikasi mobile. Pengujian dilakukan untuk mengetahui keberhasilan registrasi. Hasil pengujian dapat dilihat pada table 4.1 berikut:
Tabel 4.2 Hasil pengujian fungsi Registrasi
No Nomor Induk Hasil yang diharapkan Hasil yang dicapai 1 130402057
Registrasi ulang pegawai yang telah terdaftar pada sistem
Berhasil 2 130402059
Registrasi ulang pegawai yang telah terdaftar pada sistem
Berhasil 3 141402051
Registrasi ulang pegawai yang telah terdaftar pada sistem
Berhasil 4 120402065
Registrasi ulang pegawai yang telah terdaftar pada sistem
Berhasil 5 110400501
Registrasi ulang pegawai yang telah terdaftar pada sistem
Berhasil
(a)
(b)
Gambar 4.3 Capture Packet data Request dan Response dari fungsi Registrasi (a) Request (b) Response
Pada gambar 4.3 (a) berisikan informasi antara lain: nama host yang di request adalah absensicerdas.web.id/api/register2 dengan menggunakan metode HTTP PUT yang memiliki request body yaitu: absensi_devId (IMEI), tempat lahir dan nomor induk.
Pada gambar 4.3 (b) berisikan informasi antara lain: response diberikan pada hari kamis, 11 april 2019 pukul 08:36 GMT. Adapun isi dari response tersebut antara lain:
sebuah status, data, dan messege. Semua Response dikirim dalam berntuk format JSON.
4.2.2 Pengujian fungsi Presensi
Pengujian dilakukan pada beberapa pegawai yang sebelumnnya sudah melakukan registrasi pada aplikasi mobile yang telah dirancang. Pengujian dilakukan untuk mengetahui keberhasilan pegawai/user melakukan pengisian kehadiran atau presensi menggunakan autentikasi fingerprint. Pengujian dilakukan pada waktu pagi / jam masuk kerja (06.00 WIB – 09.00 WIB) dan pada waktu sore / jam pulang kerja (16.00 WIB – 23.59 WIB) Hasil pengujian dapat dilihat pada table 4.3 dan 4.4 berikut:
Tabel 4.3 Hasil pengujian fungsi Presensi pada pagi hari / jam masuk No Nomor Induk Hasil yang diharapkan Hasil yang dicapai
1 130402057 Melakukan presensi menggunakan
fingerprint pada pagi hari Berhasil 2 130402059 Melakukan presensi menggunakan
fingerprint pada pagi hari Berhasil 3 141402051 Melakukan presensi menggunakan
fingerprint pada pagi hari Berhasil 4 120402065 Melakukan presensi menggunakan
fingerprint pada pagi hari Berhasil 5 110400501 Melakukan presensi menggunakan
fingerprint pada pagi hari Berhasil
Tabel 4.4 Hasil pengujian fungsi Presensi pada sore hari / jam pulang No Nomor Induk Hasil yang diharapkan Hasil yang dicapai
1 130402057 Melakukan presensi menggunakan
fingerprint pada pagi hari Berhasil 2 130402059 Melakukan presensi menggunakan
fingerprint pada pagi hari Berhasil 3 141402051 Melakukan presensi menggunakan
fingerprint pada pagi hari Berhasil 4 120402065 Melakukan presensi menggunakan
fingerprint pada pagi hari Berhasil 5 110400501 Melakukan presensi menggunakan
fingerprint pada pagi hari Berhasil
(a)
(b)
Gambar 4.4 Capture Packet data Request dan Response dari fungsi Presensi (a) Request (b) Response
Pada gambar 4.4 (a) berisikan informasi antara lain: nama host yang di request adalah absensicerdas.web.id/api/absen2 dengan menggunakan metode HTTP POST yang memiliki request body yaitu: absensi_devId (IMEI, latitude dan lingitude.
Pada gambar 4.4 (b) berisikan informasi antara lain: response diberikan pada hari kamis, 11 april 2019 pukul 08:22 GMT. Adapun isi dari response tersebut antara lain:
sebuah status, data yaitu: hari, waktu melakukan presensi masuk, waktu melakukan presensi pulang, dan nama lengkap, serta sebuah messege. Semua Response dikirim dalam berntuk format JSON.
4.3 Pengujian Sistem a. Lokasi Pengujian
Pengujian ini dilakukan di lingkungan Fakultas Teknik Universitas Sumatera Utara.
Telah ditentukan beberapa titik koordinat acuan yang akan dibandingkan dengan koordinat yang didapat dari sensor GPS sebagai data. Adapun titik koordinat acuan dapat dilihat pada gambar 4.5 dan keterangan titik kordinat acuan dapat dilihat pada table 4.5 berikut.
Gambar 4.5 Titik kordinat acuan pengujian Tabel 4.5 Titik kordinat acuan pengujian
No Latitude Longitude Area Keterangan
1 3.561726 98.655690 Area 1 Gedung Administrasi Fakultas Teknik 2 3.561798 98.654843 Area 2 Gedung Departemen Teknik Elektro 3 3.561443 98.653654 Area 3 Gedung Magister Teknik Elektro
b. Alat yang digunakan
Adapun beberapa device atau smartphone yang digunakan pada skripsi ini, dimana setiap pengguna hanya bisa menggunakan satu smartphone saja. Daftar pengguna dan model smartphone dapat dilihat pada table 4.6 berikut.
Tabel 4.6 Daftar smartphone yang digunakan
4.3.1 Pengujian presensi dengan titik lokasi yang berbeda-beda
Pengujian dengan lokasi berbeda dilakukan dengan percobaan melakukan presensi pada 25 titik berbeda. Titik-titik lokasi pengujian tersebut dipilih secara acak yang tersebar di area-area yang masih dalam jangkauan boleh melakukan presensi maupun tidak dalam jangkauan presensi. Adapun beberapa titik lokasi pengujian tersebut dapat dilihat pada gambar 4.6 berikut.
No Nomor induk Nama
Pengguna
Model handphone yang
digunakan Android 1
.
130402057 Wirahadi Gumelar Xiaumi red 5 plus 8.1 (Oreo) 2
.
130402059 Randy Rizki S I Asus zenfone max pro m1 8.1 (Oreo) 3
.
141402051 Andhika Prasetyo, S.Kom Xiaomi redmi note 4x 7.0 (Nougat) 4
.
120402065 Muhammad Fadhlan Arizka S.T Pochophone F1 9.0 (Pie) 5
. 130402045 Rizka Afriyanti, S.T Sony Experia Performance
(XP) 7.0 (Nougat)
Gambar 4.6 Titik lokasi pengujian
Tabel 4.7 Keterangan beberapa titik lokasi pengujian No titik Latitude longitude jangkauan Presensi
(Di luar / Di dalam)
1 3.561681 98.654854 Di dalam
2 3.561853 98.655035 Di dalam
3 3.561914 98.654830 Di dalam
4 3.562131 98.654733 Di luar
5 3.561772, 98.655185 Di luar
6 3.561533, 98.655125 Di luar
7 3.561778, 98.655805 Di dalam
8 3.561840, 98.655682 Di dalam
9 3.561705, 98.655497 Di dalam
10 3.561725, 98.656044 Di luar
11 3.561578, 98.653692 Di dalam 12 3.561422, 98.653823 Di dalam
13 3.561576, 98.654095 Di luar
14 3.561558, 98.653487 Di luar