## APLIKASI PRESENSI SISWA PADA PT. SAMUDERA ANUGERAH MENGGUNAKAN METODE GEOFENCING DAN PERHITUNGAN JARAK MENGGUNAKAN ALGORITMA EUCLIDEAN DISTANCE BERBASIS ANDROID
Anissa Shinta Ahmasetyosari 1) , Titin Fatimah 2) 1,2 Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Budi Luhur
1,2 Jl. Raya Ciledug, Petukangan Utara, Kebayoran Lama, Jakarta Selatan 12260
E-mail : anissashintaa@gmail.com 1) , titin.fatimah@budiluhur.ac.id 2)

## Abstrak
Proses presensi merupakan salah satu hal yang terpenting di suatu instansi, khususnya pada instansi yang memiliki kepentingan tinggi terhadap presensi oleh anggotanya. Salah satunya adalah instansi yang bergerak di bidang  pendidikan.  Dimana  kehadiran  siswa  sangat  penting  untuk  direkam  guna  ditinjau  ulang  pada  suatu periode  tertentu  serta  menentukan  pertimbangan-pertimbangan  sesuai  kepentingan  instansi  tersebut.  Seiring berjalannya  waktu  terdapat  beberapa  kasus  kecurangan  yang  terjadi  pada  prosesnya.  Sesuai  dengan perkembangan  teknologi  saat  ini,  dengan  memanfaatkan  teknologi  android  yang  dapat  dikembangkan,  seperti pelacakan lokasi suatu perangkat android dapat dijadikan solusi bagi aktifitas mengamankan data pada proses presensi saat ini. Beberapa teknologi seperti GPS, Location API dan Geofencing dapat dikolaborasikan dengan realtime database seperti Database Firebase untuk membantu terbentuknya aplikasi  presensi  ini. Penggunaan beberapa  teknologi  tersebut  digunakan  untuk  melakukan  pelacakan  keberadaan  user  yang  ingin  melakukan aktifitas presensi, dengan mengetahui lokasi  user maka program akan mudah dalam melakukan filtering  bagi user yang dinyatakan hadir maupun dinyatakan tidak hadir. Bagi user yang dinyatakan hadir merupakan user yang berada pada area tertentu yang sudah diatur sebagai acuan perhitungan, sedangkan user yang dinyatakan tidak  hadir  merupakan  user  yang  berada  di  luar  area  yang  telah  ditentukan.  Dalam  aplikasi  ini  digunakan algoritma  Euclidean  Distance  dalam  perhitungan  jarak  dan  metode  Geofencing  untuk  mengatur  area  yang ditentukan.  Pembuatan  aplikasi  ini  menggunakan  bahasa  pemrograman  Java.  Hasil  penelitian  ini    berupa aplikasi  presensi  siswa  pada  PT.  Samudera  Angerah  menggunakan  metode  Geofencing  danperhitungan  jarak menggnakan Algoritma Euclidean Distance berbasis  Android yang berguna membantu proses presensi dengan data yang akurat dan dapat dipercaya.
Kata kunci: Presensi, Android, Siswa, Geofencing, Euclidean Distance, Location API

## 1. PENDAHULUAN
Presensi  adalah  proses  pencatatan  hadirnya seseorang  dalam  sebuah  dokumen  yang  dibuat sesuai  kebutuhan  sebagaimana  mestinya  guna sebagai  acuan  dalam  menentukan  sebuah  keputusan dalam lingkup penilaian. Catatan kehadiran biasanya berupa  kertas  yang  ditandatangani,  mesin  ID  Card, mesin  biometrik,  sidik  jari.  Seiring  berjalannya waktu  ditemukannya  kelemahan-kelemahan  yang terjadi  alat-alat  Presensi  tersebut  seperti  halnya antrian  panjang  yang  cukup  mengganggu  proses Presensi  yang  sangat  berpengaruh  oleh  waktu, kecurangan terhadap kehadiran yang mudah dimanipulasi, biaya yang tinggi dalam penerapannya.
Perkembangan  pengguna  perangkat  telepon genggam  saat  ini  sangatlah  tinggi.  Seiring  dengan perkembangan  tersebut,  teknologi  yang  dapat digunakan  pada  perangkat  telepon  genggam  juga semakin canggih. Banyaknya kegiatan yang dilakukan  manusia  sekarang  dengan  menggunakan telepon  genggam  seperti  pertukaran  informasi  serta penyimpanan  data  penting  menjadikan  telepon genggam dianggap penting bagi pemiliknya.
PT.  Samudera  Anugerah  merupakan  suatu perusahaan  yang  bergerak  dalam  bidang  teknologi
informasi  sebagai  konsultan  dan  pusat  pelatihan khususnya  dalam  pengembangan  perangkat  lunak aplikasi. PT. Samudera Anugerah memiliki sejumlah karyawan dan juga siswa pelatihan yang presensinya masih  berupa  kertas  yang  ditandatangani  oleh karyawan  dan  juga  siswanya  yang  mana  dalam prosesnya dikhawatirkan terjadi kecurangan- kecurangan  yang  dilakukan  oleh  siswa,  dengan menandatangani  kertas  presensi  untuk  siswa  lain yang  tidak  hadir.  Oleh  karena  itu,  implementasi penggunaan Geofencing dan  perhitungan  jarak menggunakan  Algoritma Euclidean  Distance pada perangkat mobile  Android dapat  dimanfaatkan sebagai  solusi  dari  masalah  tersebut.  Siswa  yang melakukan  presensi  harus  berada  di  area  kantor, penggunaan  Android  dan  GPS  berdampak  pada aplikasi  untuk  melakukan  pembatasan  area  akses siswa pada saat melakukan presensi. Proses presensi ini  juga  mempermudah  karyawan  di  bagian personalia  dalam  mengolah  data  presensi  siswa. Aplikasi  pada  penelitian  ini  dirancang  dengan menggunakan pengembangan waterfall
2. LANDASAN TEORI
2.1. Global Positioning System(GPS)
GPS atau Global Positioning System , merupakan  sebuah  alat  atau  sistem  yang  dapat digunakan  untuk  menginformasikan  penggunanya dimana  lokasinya  berada  (secara  global)  di permukaan  bumi  yang  berbasiskan  satelit.  Data dikirim  dari  satelit  berupa  sinyal  radio  dengan  data digital[1].

## 2.2. Location Based Service(LBS)
Location Based Service (LBS) mengacu kepada aplikasi  yang  memberdayakan  pengetahuan  posisi geografis  perangkat  bergerak  untuk  memberikan layanan[2].  LBS  memungkinkan  layanan  untuk mengidentifikasikan  lokasi  atau  objek,  seperti keberadaan  sesorang,  lokasi  bank,  rumah  sakit  atau sekolah terdekat[3]. Location Based Service  adalah sebuah  layanan  yang  digunakan  untuk  mengetahui posisi  dari  pengguna,  kemudian  menggunakan informasi  tersebut  untuk  menyediakan  jasa  dan aplikasi yang personal. Ada 2 pendekatan dasar yang dipakai  dalam  mengimplementasikan  LBS,  yaitu memproses  data  lokasi  diserver  dan  mengirimkan hasilnya  ke  alat  dan  mendapatkan  data  lokasi  dari alat tersebut berdasarkan aplikasi yang menggunakannya secara langsung.

## 2.3. Firebase
Pada  penelitian  ini  menggunakan  database yang  disediakan  oleh  firebase  yaitu  real  time database  yang  memiliki  struktur  JSON  Tree. Firebase  adalah  teknologi  yang  memungkinkan untuk  membuat  sebuah  aplikasi  tanpa  memikirkan server-side programming. Aplikasi yang menggunakan  Firebase  dapat  melakukan  control penggunaan data tanpa harus memikirkan bagaimana data  itu  disimpan,  dan  disinkronisasi  ke  seluruh pengguna aplikasi secara real time[4].

## 2.4. Geofencing
Geofence adalah sebuah konsep untuk mendeskripsikan  area  geografis  yang  kemudian dimungkinkan  untuk  menyediakan  context-based action  secara  proaktif[5].    Merupakan  generasi selanjutnya  dari location  based  service ,  dimana ketika  sebuah  perangkat  mobile  memulai  interaksi dialog  dengan  pengguna  jika  perangkat  mobile memasuki  atau  keluar  dari  area  yang  telah ditentukan[6]. Geofencing ini sendiri  memanfaatkan GPS  atau  bisa  juga Radio  Frequency  Identification (RFID)  guna  menentukan  batasan  lokasi  geografi secara  virtual.  Geofence  merelasikan  area  geografis dengan  objek  bersamaan  dengan  sebuah  kondisi yang  ditentukan  terlebih  dahulu.  Fungsi  dari geofence  yang  dibuat  dengan  lokasi  terkini  dari perangkat  mobile  yaitu,  ketika  pengguna  memasuki atau  meninggalkan  area  geografis  yang  telah  dibuat dapat dideteksi secara otomatis, kemudian dari hasil deteksi  tersebut  dapat  dihasilkan  luaran  yang
diinginkan.  Dimana  luaran  tersebut  dijalankan secara  otomatis  ketika  semua  kondisi  yang  telah ditentukan terpenuh[7].

## 2.5. Euclidean Distance
Perhitungan  jarak  antara  lokasi  satu  dengan yang  lainnya  digunakan  algoritma  Euclidean Distance.  Algoritma  ini  berkaitan  dengan  teorema Phytagoras  dan  biasa  diterapkan  untuk  dimensi  1,2 dan 3. Euclidean Distance adalah suatu metode pencarian kedekatan nilai jarak dari 2 buah variabel. Euclidean  adalah  fungsi  heuristik  yang  diperoleh berdasarkan  jarak  langsung  bebas  hambatan  seperti untuk mendapatkan nilai dari panjang garis diagonal pada  segitiga.  Tetapi  sebelum  mendapatkan  hasil kedua  titik  harus  direpresentasikan  ke  dalam koordinat 2 dimensi (x,y). Seperti pada gambar 1.

## Gambar 1. Representasi euclidean distance dalam 2 dimensi
Di  dalam  Euclidean  Distance  perhitungan  dua buah  titik  koordinat  didasarkan  pada  Teorema Phytagoras. Jarak Euclidean Distance dapat dirumuskan sebagai berikut[8].
d(i,j) =
..(1)
𝑑 ( 𝑖 , 𝑗 )   = jarak euclidean Xi        = nilai titik 1 Xj        = nilai titik 2
Pada  perhitungan  jarak  pada  lokasi,  data  yang digunakan  adalah  koordinat  berupa  longitude  dan latitude,  maka  akan  dihitung  jarak  antar  lokasi dengan  persamaan  yang  ditentukan  oleh  persamaan tertentu.  Persamaan  tersebut  digunakan  untuk menghitung  jarak  antar  dua  titik  di  bumi  dan dikalikan dengan 111.319 km menyesuaikan dengan 1 derajat bumi.
3. RANCANGAN SISTEM DAN APLIKASI
3.1. Rancangan Basis Data
Terdapat  tabel  Authentication  yang  berisi tentang  daftar  pengguna  aplikasi  dengan  media Firebase  Authentication.    Spesifikasi  data  tabel authentication dapat dilihat pada tabel 1.
Terdapat  pula  database    yang  memiliki  nama parent yaitu member yang berisikan tentang aktifitas presensi pengguna dengan media Firebase Database. Spesifikasi  data  tabel  member  dapat  dilihat  pada tabel 2.

## 3.2. Rancangan Program

## Gambar 2. Arsitektur kerja aplikasi
Gambar 2 merupakan gambaran arsitektur kerja aplikasi ini yang menjelaskan alur jalannya program yang  akan  dibuat  dengan  menggunakan  algoritma Euclidean  Distance dan  menggunakan  metode Geofencing.  Dimana  algoritma  dan  metode tersebut akan  membantu  kegiatan  presensi  dilokasi  yang telah ditentukan.
Secara  umum  aplikasi  presensi  mempunyai fungsi berupa pengamanan data, yang bertujuan agar data  tersebut  aman  dari  pihak  yang  tidak bersangkutan. Aplikasi presensi  ini  berkerja  melalui sebuah  proses  pencarian  lokasi  terkini  pengguna yang nantinya digunakan untuk menyaring pengguna yang  dianggap  hadir  dan  tidak.  Aplikasi  ini  juga menyediakan kode unik dari telepon pengguna yang digunakan sebagai identifikasi penguna sesungguhnya.
Dengan  adanya  aplikasi  presensi  ini,  data diharapkan  menjadi  lebih  aman  dari  pihak  yang tidak  berwenang  dan  sesuai  dengan  yang  sebenar- benarnya.  Aplikasi  ini  jauh  lebih  baik  ketimbang data berupa kertas tanpa pengamanan apapun.
Tabel 1. Spesifikasi data tabel authentication

## Tabel 2. Spesifikasi data tabel member

## 3.3. Rancangan Layar
Perancangan layar halaman presensi dan daftar hadir terdapat pada gambar 3.

## Gambar 3. Rancangan layar Aplikasi
Penjelasan  pada  gambar  3  adalah  sebagai berikut:
a)  Pada  gambar  di  sebelah  kiri  merupakan rancangan  layar  halaman  presensi  yang  terdapat field  Title  yang  menentukan  pengguna  dinyatakan hadir  atau  tidak.  Kemudian,  terdapat  field  Content yang  disediakan  untuk  menuliskan  keterangan apabila  pengguna  ingin  dinyatakan  ijin.  Terdapat juga  sebuah  Fragment    yang  dijadikan  background pada  halaman  ini  berupa  Maps  yang  dapat menampilkan  posisi  pengguna  dan  posisi  acuan. Adapula button simpan data yang disediakan apabila pengguna  telah  mengisi  semua  field  yang  di anjurkan.
b)  Pada  gambar  di  sebelah  kanan  merupakan rancangan layar halaman daftar hadir. Pada halaman ini  pengguna  yang  telah  berhasil  melakukan  proses
No Nama Field Type Lebar  Keterangan 1. Pengenal String 26 Email terdaftar 2. Dibuat tanggal Timestamp - Tanggal daftar 3. Masuk Timestamp - Tanggal terakhir login 4. UID pengguna String 28 Kode unik
No Nama field Type Lebar Keterangan 1. email String 26 Email pengguna 2. key String 19 Kode unik 3. androidID String 16 Android identification 4. content String 50 Keterangan presensi 5. title String 5 Judul presensi 6. datetime Time stamp - Waktu dan tanggal  data tersimpan 7. idlokasi String 2 Kode unik lokasi 8. latistat String 10 Latitude 9. longistat String 11 Longitude 10. namalokasi String 11 Nama lokasi 11. username String 16 Nama pengguna 12. status String 11 Status akun tervalidasi atau belum 13. memberstatus String 5 Berkaitan dengan aktifitas aplikasi
presensi dapat melihat hasil prosesnya pada halaman ini,  terdapat  jam  nama  dan  judul  presensi  yang ditampilkan  pada  halaman  ini.  Pada  halaman  ini menampilkan  seluruh  hasil  proses  presesi  yang dilakukan  setiap  pengguna  pada  hari  yang  sama. Terdapat  pula  button  simpan  data  yang  disediakan bagi  pengguna  yang  ingin  mengambil  data  daftar hadir  berupa  dokumen  .xls.  akan  tetapi  pengguna akan  menuju  ke  halaman setup tanggal  untuk menentukan  tanggal  awal  dan  akhir  dari  data  yang akan dicantumkan kedalam dokumen.

## 4. HASIL DAN PEMBAHASAN
4.1.   Tampilan aplikasi
Tampilan  aplikasi  halaman  presensi  dengan posisi pengguna  di  luar batas geofence dapat dilihat pada gambar 4.
Gambar 4. Tampilan layar pengguna diluar batas geofence
Terdapat kolom judul, teks presensi yang dapat diklik untuk memudahkan user mengisi kolom judul dan  sebuah  kolom  yang  digunakan  untuk  mengisi keterangan  apabila  user  mengklik  tombol  ijin.  Pada halaman presensi  ini user tidak dapat mengklik teks hadir  apabila  user  tidak  berada  pada  area  kantor, kemudian akan ditampilkan sebuah snackbar seperti gambar  4  di  sebelah  kiri.  Namun  bagi  pengguna yang  memilih  teks  ijin  maka  pengguna  diharuskan mengisi  kolom  Content  sebagai  keterangan  yang akan disimpan ke dalam tabel member.
Bagi  pengguna  yang  berada  di  dalam  area geofence dapat dilihat pada gambar 5.
Pada  gambar  5  posisi  pengguna  dengan  posisi acuan  berdekatan  dan  berada  didalam  lingkaran geofence  maka  pengguna  dapat  memilih  teks  hadir agar  dapat  dinyatakan  hadir  oleh  program.  Bagi pengguna  yang  dinyatakan  hadir  tidak  diharuskan mengisi kolom Content dan dapat segera menyentuh button untuk menyimpan data.
Gambar 5. Tampilan layar pengguna didalam batas geofence
Tampilan daftar hadir akan menampilkan daftar kehadiran  user  pada  hari  itu  dan  sebuah  tombol untuk  mendownload  data  daftar  hadir  pada  periode waktu tertentu.  Tampilan  layar  halaman  hadir  dapat dilihat pada Gambar 6.

## Gambar 6. Tampilan layar halaman hadir

## 4.2.   Uji Coba Aplikasi
Dalam  pengujian  ini  akan  dibahas  keakuratan nilai  hitung  yang  dilakukan  oleh  program  dan  hasil yang  dicapai  pada  proses  perhitungan  jarak  yang dilakukan  secara  mandiri  menggunakan  beberapa perangkat  android  yang  berbeda.  Data  Uji  Coba dapat dilihat pada Tabel 3.

## 4.3.  Hasil Uji Coba Aplikasi
Pada  uji  coba  proses  presesi,  data  yang digunakan adalah sesuai data yang ada pada tabel 3. hasil proses presensi dapat dilihat pada tabel 4.
Dalam  pengujian  kali  ini  penulis  meminta  21 relawan  yang  akan  mencoba  aplikasi  dan  mengisi kuesioner  yang  mencangkup  pertanyaan-pertanyaan yang  bersangkutan.  Hasil  dari  kuesioner  yang dijadikan acuan kesimpulan pada penulisan ini.
Tabel 3. Data uji coba No Andro id Id Longi tude Latitude Longitude acuan Latitude acuan 1. ddbb3 c4233a 06496 106.76 0745 -6.3161433 106.6881418 -6.2559382
2. 5ea7a3
6058c
80535 106.68 75312 -6.2567159 106.6881418 -6.2559382
3. a326e5 3b3cf4
66f9 106.68 81866 -6.2559951 106.6881418 -6.2559382
4. b2530 673e9c 9af34 106.68 81881 -6.2560094 106.6881418 -6.2559382
5. f2ed54 63d88 ae273 106.68 81866 -6.2559951 106.6881418 -6.2559382
6. d2d60 29cb6 1f565e 106.68 8715 -6.2560169 106.6881418 -6.2559382
7. a1e3cd 59945 395ef 106.68 87151 -6.2559879 106.6881418 -6.2559382
Tabel 4. Hasil Uji Coba Aplikasi No. Android Id Longitu de Latitude Longitu de cuan Latitude acuan Jarak Status 1 ddbb3 c4233a 06496 106.76 0745 - 6.316 1433 106.6 88141 8 - 6.255 9382 10499 .3816 60620 002
Berha sil
2 5ea7a3 6058c 80535 106.68 75312 - 6.256 7159 106.6 88141 8 - 6.255 9382 110.0 67960
90228 29
Berha sil
3 a326e5 3b3cf4 66f9 106.68 81866 - 6.255 9951 106.6 88141 8 - 6.255 9382 8.061 71706 09977 31 Berha sil
4 b2530 673e9c 9af34 106.68 81881 - 6.256 0094 106.6 88141 8 - 6.255 9382 9.454 33911 99342 55 Berha sil
5 f2ed54 63d88 ae273 106.68 81866 - 6.255 9951 106.6 88141 8 - 6.255 9382 8.061 71706 09977
31
Berha sil 6 d2d60 106.68 - 106.6 - 6.659 Berha
29cb6 1f565e 8715 6.256 0169 88141 8 6.255 9382 61207 46463 19 sil
7 a1e3cd 59945 395ef 106.68 87151 - 6.255 9879 106.6 88141 8 - 6.255 9382 6.659 61207 46463 19
Berha sil

## 5. KESIMPULAN

## 5.1.   Kesimpulan
Berdasarkan perancangan, pembuatan, uji coba dan  analisa  program  aplikasi  presensi  ini,  dapat diambil kesimpulan antara lain:
a) Dengan  adanya  proses  presensi  menggunakan algoritma Euclidean  Distance dan  metode Geofencing  maka  hasil  presensi  dapat  lebih akurat dan aman karena terhindar dari kecurangan-kecurangan yang biasa terjadi.
b) Tidak  didapatkan  waktu  jeda  antara  perubahan lokasi sebenarnya dengan perhitungan jarak.
c) Penggunaan  satu akun hanya dapat diakses pada satu  perangkat  saja  tanpa  mengganggu  aktifitas lainnya  dalam  aplikasi,  sehingga  aplikasi  dapat dipercaya dalam segala aktifitasnya.
d) File  keluaran  berupa  dokumen  berekstensi  .xls dapat  digunakan  sebagai  laporan  presensi  pada suatu periode tertentu.

## 5.2.   Saran
Adapun  saran  yang  diperlukan  agar  program aplikasi  ini  dapat  berjalan  dengan  lebih  baik  lagi antara lain:
a) Aplikasi  ini  diharapkan  dapat  menangkap aktifitas  lokasi  user  saat  meninggalkan  lokasi secara otomatis.
b) Aplikasi  ini  diharapkan  dapat  lebih  bisa mengurangi  pengaruh  melambatnya  perangkat saat aplikasi ini berjalan.

## 6. DAFTAR PUSTAKA
[1]  Mahdia,  F.  dan  Noviyanto,  F.  2013.  Pemanfaatan Google  Maps  API  Untuk  Pembagunan  Sistem Informasi  Manajemen  Bantuan  Logistik  Pasca Bencana Alam Berbasis
Mobile Web. Yogyakarta. Universitas Ahmad Dahlan. [2]  Lukas,  T.  dan  Daniel,  P.H.  2014.  Pemantau  Lokasi
Benda Bergerak Berbasis Web dengan . Menggunakan  teknologi  GPS  dan  3G.  Jakarta Barat.  Universitas  Bina  Nusantara. Semarang. Universitas Diponegoro.
[3] Gunita, M. H., Andri, S., dan Bandi S. 2013.  Aplikasi Penanda Lokasi Peta Digital Berbasis Mobile GIS Pada Smartphone Android.
[4] Kuamar, K. M., Akhi, K., Gunti, S. K. dan Reddy, M. P. 2016. Implementing Smarthome Using Firebase.
International  Journal  of  Research  in  Engineering and  Applied  Sciences  (IJREAS),  6(10),  pp.  193- 198.
[5]  Beny,  Budiman,  J.  dan  Nugroho,  A.  2017. Implementasi  Geofencing  pada  Aplikasi  Layanan Pemantau  Anak  Berbasis  Lokasi.  Tegal.  Seminar Nasional IPTEK Terapan.
[6]  Garzon,  S.  R.  dan  Deva,  B.  2014.  Geofencing  2.0: Taking  Location-based  Notifications  to  the  Next Level. UBICOMP.
[7]  Rahman, A. F, Kharisma, A. P. dan Dewi, R. K. 2018. Rancang  Bangun  Aplikasi  Geofence  Marketing Cafe  Berbasis  Android  Studi  Kasus:  Ice  Ah  !. Universitas Brawijaya.
[8]  Fitriyani,  Fitriani,  R.  dan  Rosmawanti,  N.  2017. Penerapan  Algoritma  Euclidean  Distance  Untuk Pemilihan  Paket  Internet  Berdasarkan  Wilayah. pp.1651–1662