Abstrak —Perkembangan teknologi informasi di dunia semakin cepat,  khususnya  pada  teknologi  perangkat  bergerak  dan internet.  Akses  dan  pengambilan  informasi  dikatakan  semakin mudah  dan  cepat  diakses  melalui  penggunaan  perangkat bergerak dan web. Perkembangan ini juga mempengaruhi data sebagai validasi menggantikan kode sandi (password). Validasi merupakan  sebuah  proses  yang  wajib  ada  dimana  diperlukan sebuah  kebenaran  data  atau  informasi,  salah  satunya  adalah proses  validasi  kehadiran.  Proses  validasi  sudah  banyak diterapkan  seiring  dengan  perkembangan  teknologi  informasi misalnya  validasi  kehadiran  dengan  menggunakan  alat  yang menerima  inputan  metode  fingerprint,  validasi  kehadiran menggunakan  deteksi  suara,  dan  lain-lain.  Namun  kelemahan dari penerapan yang sudah ada adalah kurangnya fleksibilitas. Fleksibilitas  yang  dimaksud  adalah  teknologi  yang  digunakan tidak  bisa  berpindah  tempat  dan  diakses  kapanpun.  Oleh karena  itu,  studi  ini  akan  mengimplementasikan  sebuah aplikasi mobile validasi  kehadiran  berbasis  android.  Aplikasi validasi  kehadiran  yang  telah  dibuat  sudah  dibatasi  ruang lingkup  penggunaannya.  Pengguna  dari  aplikasi  ini  adalah mahasiswa  Teknik  Informatika  ITS.  Proses  validasi  kehadiran pada  aplikasi  ini  mengimplementasikan  metode  pencocokan lokasi  mahasiswa  terhadap  kelas  matakuliah  berlangsung  dan QR  Code dari  masing-masing  kelas.  Selanjutnya,  lokasi  yang didapatkan  dari  mahasiswa  akan  diklasifikan  dengan menggunakan  algoritma  K-Nearest  Neighbors.  Selain  dengan algoritma  K-Nearest  Neighbors,  data  lokasi  mahasiswa  juga akan  diklasifikasikan  dengan  metode  rata-rata  dan  metode regresi linier. Prinsip  kerja  dari  aplikasi  ini  akan membandingkan  metode  KNN  dengan  kedua  metode  tersebut. Kemudian,  ditemukan  kesamaan  hasil  dari  ketiga  metode. Apabila  ketiga  metode  mendapatkan  hasil  yang  sama,  maka dapat dipastikan lokasi mahasiswa dengan tingkat akurasi yang tinggi.
Kata  Kunci —Absensi,  Validasi  Kehadiran,  Lokasi, QR  Code , KNN,    Simple  Average,  Regresi  Linier,  Aplikasi  Perangkat Bergerak.

## I. PENDAHULUAN
ERKEMBANGAN  teknologi  informasi  di  dunia semakin  cepat,  khususnya  pada  teknologi  perangkat bergerak  dan  internet.  Akses  dan  pengambilan  informasi dikatakan  semakin  mudah  dan  cepat  diakses  melalui penggunaan perangkat bergerak dan web. Perkembangan ini juga  mempengaruhi  data  sebagai  validasi  menggantikan kode  sandi  (password).  Validasi  merupakan  sebuah  proses yang  wajib  ada  dimana  diperlukan  sebuah  kebenaran  data atau  informasi,  salah  satunya  adalah  proses  validasi kehadiran.  Proses  validasi  sudah  banyak  diterapkan  seiring
dengan perkembangan teknologi informasi misalnya validasi kehadiran dengan menggunakan alat yang menerima inputan metode fingerprint, validasi kehadiran menggunakan deteksi suara, dan lain-lain. Namun kelemahan dari penerapan yang sudah ada adalah kurangnya fleksibilitas dari penerapan ini. Fleksibilitas  yang  dimaksud  adalah  teknologi  yang digunakan  tidak  bisa  berpindah  tempat  dan  diakses kapanpun.  Sehingga,  untuk  memenuhi  dan  menghilangkan kelemahan  tersebut,  maka  dibuatlah  sistem  validasi kehadiran mahasiswa berbasis perangkat bergerak.
Sistem  validasi  kehadiran  mahasiswa  merupakan  proses pencatatan  kehadiran  mahasiswa  di  kelas.  Dengan  adanya validasi  kehadiran  maka  dapat  membuktikan  bahwa mahasiswa  tersebut  telah  berada  di  dalam  kelas.  Validasi kehadiran dapat dilakukan dengan berbagai cara. Di Teknik Informatika  ITS,  sistem  validasi  kehadiran  mahasiswa dilakukan  secara  manual  yaitu  melakukan  tanda  tangan  di kertas  validasi  kehadiran  kelas.  Hal  ini  menimbulkan  celah kelemahan yaitu terjadi kecurangan dalam validasi kehadiran atau  disebut  titip  absen.  Titip  absen  merupakan  kejadian dimana  mahasiswa  meminta  teman  satu  kelas  untuk menandatangani  absen  pada  matakuliah  tertentu,  sehingga mahasiswa  tersebut  tidak  perlu  datang  untuk  menghadiri kelas.  Oleh  karena  itu,  diperlukan  suatu  sistem  yang  dapat digunakan  untuk  mengatasi  kecurangan  dalam  validasi kehadiran.
Aplikasi  validasi  kehadiran  yang  sudah  dibuat  telah dibatasi ruang lingkup penggunanya. Pengguna dari aplikasi ini  adalah  mahasiswa  Teknik  Informatika  ITS.  Proses validasi  kehadiran  pada  aplikasi  ini  mengimplementasikan metode  pencocokan  lokasi  mahasiswa  terhadap  kelas matakuliah  berlangsung  dan QR  Code dari  masing-masing kelas.  Selanjutnya,  lokasi  yang  didapatkan  dari  mahasiswa akan  diklasifikasikan  dengan  menggunakan  algoritma  K- Nearest  Neighbors,  Simple  Average,  dan  Regresi  Linier. Ketiga  metode  ini  akan  dibandingkan  dan  dicari  kesamaan hasilnya.
Hasil  yang  diharapkan  dari  pengerjaan  studi  ini  berupa aplikasi  perangkat  bergerak  yang  menggantikan  proses validasi  kehadiran  mahasiswa  dari  sistem  manual  melalui tanda  tangan  pada  kertas  presensi  kehadiran  kelas  menjadi sistem online dengan  metode  pencocokan  lokasi mahasiswa pada  aplikasi mobile .  Selain  itu,  dengan  aplikasi  ini diharapkan  juga  dapat  memberikan  kebenaran  data  absen ( data validation ) serta mempermudah pemantauan kehadiran mahasiswa di kelas untuk orang tua atau wali mahasiswa dan

## Rancang Bangun Sistem Validasi Kehadiran Perkuliahan dengan Metode K-Nearest Neighbor Berbasis Aplikasi Perangkat Bergerak
Latifa Nurrohman, Adian dan Titi Ciptaningtyas, Hening. Sunaryono, Dwi. Departemen Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember (ITS)
e-mail :   henning@if.its.ac.id
P
juga dosen wali di jurusan Teknik informatika ITS.

## II. METODOLOGI

## A. Aplikasi Perangkat Bergerak
Aplikasi  perangkat  bergerak  atau mobile applications adalah  pengembangan  aplikasi  untuk  perangkat  genggam seperti  PDA,  asisten  digital  perusahaan  atau  telepon genggam,  smartphone  dan  sebagainya.  Aplikasi  ini  sudah ada pada telepon selama manufaktur, atau di download oleh pelanggan  dari  toko  aplikasi  dan  dari  distribusi  perangkat lunak mobile platform yang lain[1].
Platform smartphone terpopuler yang mendukung aplikasi perangkat  bergerak  saat  ini  adalah  Android,  iOS,  Windows Phone dan BlackBerry[2].

## B. Android
Android  adalah  software  untuk  perangkat mobile yang mencakup  sistem  operasi, middleware dan  aplikasi  kunci. Pengembangan aplikasi pada platform Android menggunakan  bahasa  pemrograman  Java.  Serangkaian aplikasi inti Android antara lain klien email , program SMS, kalender, peta, browser , kontak, dan lain-lain[3].
C. Global Positioning System (GPS)
GPS  ( Global  Positioning  System )  atau  sistem  peletakkan adalah  sistem  navigasi  yang  berbasiskan  satelit  yang  saling berhubungan yang berada di orbitnya. Satelit-satelit itu milik Departemen  Pertahanan  ( Department  of  Defense )  Amerika Serikat  yang  pertama  kali  diperkenalkan  mulai  tahun  1978 dan pada tahun 1994 sudah memakai 24 satelit[4].
D. Application Programming Interface (API)
API  atau Application  Programming  Interface adalah sekumpulan  perintah,  fungsi,  serta  protocol  yang  dapat digunakan  oleh  programmer  saat  membangun  perangkat lunak  untuk  sistem  operasi  tertentu.  API  memungkinkan programmer  untuk  menggunakan  fungsi  standar  untuk berinteraksi  dengan  sistem  operasi.  API  juga  dapat menjelaskan  cara  sebuah  tugas  tertentu  dilakukan.  Sebuah API  juga  dapat  digunakan  untuk  menspesifikasikan  cara komponen  aplikasi  saling  berinteraksi. Dengan bahasa yang lebih  sederhana,  API  adalah  fungsi-fungsi  pemrograman yang  disediakan  oleh  aplikasi  atau  layanan  agar  layananan tersebut bisa di integrasikan dengan aplikasi yang dibuat. Di dalam pemrograman android, API biasanya digunakan untuk mempermudah pertukaran data dari atau ke dalam server[5].

## E. Quick Response Code (QR Code)
Kode  QR  (Quick  Response)  merupakan  bentuk  evaluasi dari barcode yang  biasanya  kita  lihat  pada  sebuah  produk.
Kode  QR  berbentuk  jajaran  persegi  berwarna  hitam berbentuk  seperti barcode tetapi  dengan  tampilan  lebih ringkas[6].
Gambar 1. Contoh QR Code
Bar  code adalah  metode  pengumpulan  data  yang  cepat, mudah,  akurat  dan  otomatis. Barcode memungkinkan produk  dilacak  dengan  efisien  dan  akurat  menggunakan sistem entri data manual. Barcode scanner hanya digunakan untuk  mengenali barcode ,  dan  harga barcode  scanner itu mahal.  Kini,  ponsel  bisa  menerapkan  banyak  aplikasi  baru, seperti  pengambilan  foto  dan  pemotretan  film  dengan menggunakan  kamera  yang  tersedia.  Jadi,  pendekatan  yang menarik  adalah  melakukan scan  barcode dengan  kamera mereka  dan  menguraikannya  dengan  perangkat  lunak  yang berjalan di ponsel[7].

## F. K - Nearest Neighbors (KNN)
Algoritma K-Nearest Neighbor (KNN) merupakan sebuah metode  untuk  melakukan  klasifikasi  terhadap  objek berdasarkan  data  pembelajaran  yang  jaraknya  paling  dekat dengan objek tersebut. KNN termasuk algoritma supervised learning  dimana  hasil  dari query instance yang  baru diklasifikan berdasarkan mayoritas dari kategori pada KNN. Kelas  yang  paling  banyak  muncul  itu  yang  akan  menjadi kelas  hasil  klasifikasi.  Tujuan  dari  algoritma  ini  adalah mengklasifikasikan  objek  baru  berdasarkan  atribut  dan training sample [8].
Algoritma  K-  Nearest  Neighbor  menggunakan  klasifikasi ketetanggaan  (neighbor)  sebagai  nilai  prediksi  dari query instance yang  baru.  Algoritma  ini  sederhana,  bekerja berdasarkan jarak terpendek dari query instance ke training sample untuk menentukan ketetanggaannya[9].

## G. Metode Rata-Rata atau Simple Average (SA)
Simple Average atau metode rata-rata merupakan metode yang  mencari  nilai  tengah  dari  sekumpulan  data.  Caranya adalah  dengan  menjumlahkan  seluruh  data  (SUM),  lalu membagi  dengan  banyaknya  data  (n)  seperti  pada rumus[10]:

## Gambar 2. Rumus Metode Rata-Rata

## H. Metode Regresi Linier
Regresi  linier  adalah  metode  statistika  yang  digunakan untuk  membentuk  model  hubungan  antara  variabel  terikat (dependen; respon; Y) dengan satu atau lebih variabel bebas (independen,  prediktor,  X).  Apabila  banyaknya  variabel bebas  hanya  ada  satu,  disebut  sebagai  regresi  linier sederhana,  sedangkan  apabila  terdapat  lebih  dari  1  variabel bebas, disebut sebagai regresi linier berganda[11].

## III. UJI COBA

## A. Kondisi Uji Coba
Kondisi  uji  coba  menjelaskan tentang kondisi yang harus dipenuhi  untuk  menjalankan  uji  coba  aplikasi.  Kondisi  uji coba  merupakan  pemilihan  pengguna  dan smartphone yang dijelaskan sebagai berikut:
Table 1.
Spesifikasi Smartphone untuk Uji Coba No NRP Smartphone Seri Android RAM Seri GPS 1 511310 0051 Sony C5 OS 6 Marshmallow 2 GB A- GPS 2 511310 0075 Samsung Note 3 OS 6 Marshmallow 3 GB A- GPS 3 511310 0128 Sony Xperia Z5 OS 7 Nougat 3 GB A- GPS 4 511310 0062 Xiaomi Redmi Note 2 OS 5 Lolipop 2 GB A- GPS 5 511310 0072 Oppo A37 OS 5 Lolipop 2 GB A- GPS 6 511310 0143 Samsung J2 OS 5 Lolipop 1 GB A- GPS 7 511310 0173 Sony Xperia Z1 Compact OS 5 Lolipop 2 GB A- GPS

## B. Data Training
Data  training yang  digunakan  disini  adalah  data  lokasi tiap  ruang  kelas  yang  berada  di  jurusan  Teknik Informatika ITS dan QR Code dari masing-masing kelas.
C. Skenario Uji Coba
Uji coba ini dilakukan untuk menguji  apakah fungsionalitas  program  telah  diimplementasikan  dengan benar  dan  berjalan  sebagaimana  mestinya.  Uji  coba  akan didasarkan  pada  beberapa  skenario  untuk  menguji kesesuaian dan kinerja aplikasi.
Skenario  pengujian  terdiri  dari  dua  skenario  pengujian, yaitu:
1. Skenario  melakukan  pencarian  terhadap  lokasi  ruangan IF-101.
2. Skenario  melakukan  pencarian  terhadap  lokasi  ruangan IF-103.

## D. Hasil Uji Coba
Uji  coba  akan  dilakukan  dengan  dua  tahap  utama,  yaitu pemindaian QR Code dan pencocokan lokasi.
1) Pemindaian QR Code
Sebelum melakukan proses pencarian lokasi dengan GPS, mahasiswa  harus  terlebih  dahulu  memindai QR  Code dari kelas  yang  sesuai  dengan  jadwal  (skenario).  Hasil  dari pemindaian QR Code tersebut akan digunakan untuk proses validasi  dengan  tanda  tangan  atau face  recognition . QR Code yang  digunakan  harus  di encode terlebih  dahulu  ke Base64  atau  MD5.  Selanjutnya,  hasil  dari  pemindaian  akan di- decode. Berikut merupakan QR Code untuk kelas IF-101 dan IF-102 tanpa enkripsi.
Gambar 3. QR Code untuk IF-101
Gambar 4. QR Code untuk IF-102

## 2) Pencocokan Lokasi
Berikut  ini  merupakan  hasil  dari  pencocokan  lokasi  dari ketujuh mahasiswa.
Grafik 1. Hasil Uji Coba Mahasiswa NRP 5113100051
Grafik 2. Hasil Uji Coba Mahasiswa NRP 5113100075
Grafik 3. Hasil Uji Coba Mahasiswa NRP 5113100128
Grafik 4. Hasil Uji Coba Mahasiswa NRP 5113100062
Grafik 5. Hasil Uji Coba Mahasiswa NRP 5113100072
Grafik 6. Hasil Uji Coba Mahasiswa NRP 5113100143
Grafik 7. Hasil Uji Coba Mahasiswa NRP 5113100173
Masing-masing  grafik  menggambarkan  jumlah percobaan yang dilakukan untuk menemukan kelas yang cocok dengan lokasi mahasiswa saat itu. Hasil dari ketiga metode memiliki
selisih jarak yang sedikit atau kecil. Hal ini membuat tingkat akurasi  dapat  dinyatakan  tinggi  dan  mahasiswa  tersebut dinyatakan absen karena ruang kelas dapat ditemukan, serta kelas  tersebut  merupakan  kelas  yang  berada  pada  jurusan Teknik Informatika ITS.

## IV. HASIL DAN KESIMPULAN
Dari  hasil  uji  coba  yang  telah  dilakukan  dapat  diambil beberapa kesimpulan sebagai berikut:
1. Ketinggian  atau  altitude  yang  tidak  pasti,  sehingga  tidak dapat  digunakan  untuk  menentukan  posisi  mahasiswa secara  pasti,  bisa  0,  bilangan  negatif,  atau  bilangan puluhan.
2. Hasil  terbaik  yang  dapat  digunakan  sebagai  lokasi mahasiswa  ketika  ketiga  metode  memiliki  kode  ruang kelas yang sama.
3. Jarak yang didapat dari hasil klasifikasi memiliki rata-rata 10 meter dari lokasi sebenarnya.
4. Selisih  jarak  dari  hasil  klasifikasi  ketiga  metode  tidak lebih dari 2 meter.

## DAFTAR PUSTAKA
[1] “Apa  Itu  Mobile  Application?”  [Daring].  Tersedia  pada: http://cloudindonesia.com/apa-itu- mobile -application/. [Diakses: 08-Jul-2017].
[2] “4 sistem operasi smartphone paling dikenal,” For Guides , 25-Feb-
2016. .
[3] M. I. S.-U. Surabaya, “Android: Sistem Operasi Pada Smartphone | Universitas  Surabaya  (UBAYA),” Universitas  Surabaya  (Ubaya) . [Daring]. Tersedia pada: http://www.ubaya.ac.id/2014/content/articles_detail/7/Android-- Sistem-Operasi-pada-Smartphone.html. [Diakses: 08-Jul-2017].
[4] “Global positioning system (GPS): Overview,” SpringerReference . [5]
“What  is  API  -  Application  Program  Interface?  Webopedia.”
[Daring]. Tersedia pada: http://www.webopedia.com/TERM/A/API.html.  [Diakses:  12-Des- 2016].
[6] “Jurnal/Hasil  Penelitian  Kementerian  Perindustrian.”  [Daring]. Tersedia  pada:  http://www.kemenperin.go.id/kajian.  [Diakses:  15- Jul-2017].
[7] Y. Liu, J. Yang, dan M. Liu, “Recognition of QR Code with mobile phones,” in Control and Decision Conference, 2008. CCDC 2008. Chinese , 2008, hal. 203–206.
[8] M. A. Banjarsari, I. Budiman, dan A. Farmadi, “PENERAPAN K- OPTIMAL  PADA  ALGORITMA  KNN  UNTUK  PREDIKSI KELULUSAN  TEPAT  WAKTU  MAHASISWA  PROGRAM STUDI  ILMU  KOMPUTER  FMIPA  UNLAM  BERDASARKAN IP SAMPAI DENGAN SEMESTER 4,” KLIK - Kumpul. J. ILMU
Komput. , vol. 2, no. 2, hal. 159–173, Apr 2016.
[9] A.  R.  Alfarisi,  H.  Tjandrasa,  dan  I.  Arieshanti,  “Perbandingan Performa  antara  Imputasi  Metode  Konvensional  dan  Imputasi dengan  Algoritma  Mutual  Nearest  Neighbor,” J.  Tek.  ITS ,  vol.  2, no. 1, hal. A73–A76, Mar 2013.
[10] “Kelebihan  dan  Kekurangan  Rata-rata,  Median  dan  Modus,” Rumus Statistik . .
[11] “regresi_linier.pdf.” , Rumus Statistik .