• Tidak ada hasil yang ditemukan

HASIL DAN PEMBAHASAN

B. Output Sistem

Output dari sistem ini adalah jika diinputkan tahun yang diinginkan maka akan keluar tabel yang berisi hasil pengelompokkan Kecamatan serta sistem akan menampilkan peta Kecamatan kota Surabaya dengan warna yang sesuai dengan hasil pengelompokkan. Dalam peta terdapat 3 warna untuk membedakan antara C1, C2, dan C3 yaitu warna kuning untuk Kecamatan yang masuk dalam kategori C1, warna hijau untuk Kecamatan yang masuk dalam kategori C2 dan warna merah untuk Kecamatan yang masuk dalam kategori C3.

Jika telah diinputkan kategori pada sistem dengan memilih salah satu kategori, hasil output pada sistem berupa tabel yang berisi Kecamatan yang berkategori sama dengan kategori yang diinputkan. Seperti contoh jika pada sistem diinputkan kategori C1, maka sistem akan menampilkan Kecamatan dengan karakteristiknya berkategori C1 dan pada peta akan menampilkan peta Kecamatan yang berkategori C1.

Sedangkan jika sistem telah diinputkan Kecamatan dengan memilih salah satu Kecamatan di Surabaya, maka output sistem berupa peta yang menampilkan Kecamatan yang telah dipilih. Seperti contoh diinputkan Kecamatan Mulyorejo,

maka pada peta akan muncul peta Kecamatan Mulyorejo.

4.4 Implementasi Sistem

Pada sub bab ini akan dibahas mengenai General User Interface(GUI) untuk aplikasi rancang bangun sistem informasi geografis untuk penyebaran penyakit demam berdarah di kota surabaya. GUI tersebut berjalan atas dasar proses k-Means yang telah ditulis dalam sebuah algoritma. Sebelum masuk ke dalam pembahasan user interface, akan dijabarkan terlebih dahulu algoritma proses k-Means yang dijalankan oleh user interface. Gambaran umum Algoritma sistem dapat dilihat pada Gambar 4.2.

Gambar 4.2 Algoritma Umum Sistem

Pada pemilihan tahun, tahun yang dapat dipilih adalah tahun yang sudah ada didalam basis data jika tahun yang akan dipilih tidak muncul hasilnya maka data pada tahun yang ingin ditampilkan belum diinputkan, sehingga user dapat menginputkan terlebih dahulu datanya berupa nama Kecamatan, tahun, jumlah penderita DBD, pasar tradisional, TPS, dan sungai. Dalam pengelompokkan k-Means langkah pertama, yaitu menentukan centroid pada ketiga cluster yaitu dengan cara random berikut pseudocode-nya dapat dilihat pada Gambar 4.3.

1. Pilih tahun

2. Pengelompokan oleh k-Means

1. Menentukan centroid pada ketiga cluster.

2. Menghitung jarak objek dengan masing-masing

cluster

3. Mengalokasikan objek pada cluster terdekat

4. Hitung centroid baru dan lakukan

pengalokasian dengan centroid baru

5. Ulangi langkah 4 jika ada anggota berpindah

kelompok

Tahun ← POST [‘tahun’]

Kelas ← proses () baru

Koneksi ← kelas -> connect ()

Tabel1 ← kelas -> getKecamatanRandom (koneksi) FUNCTION getKecamatanRandom (koneksi) do

query mysqli_query (koneksi, “SELECT id_kec FROM

`kecamatan` ORDER BY RAND() LIMIT 3")

data ← array baru

while (row ← mysqli_fetch_array(query) do

array_push (data, row) return data

arr ← array baru jd← array baru jt ← array baru pasar ← array baru sungai← array baru i← 0

j← 0

foreach (tabel1 as getTabelDetail) arr[i] ← getTabelDetail['id_kec'];

tabel2 ← $kelas->getMean($koneksi, $tahun, $arr[$i]); foreach(tabel2 as $getTabelDetail1) jd[j] ← getTabelDetail1['jumlah'] jt[j] ← getTabelDetail1['jumlahtpa'] sungai[j] ← getTabelDetail1['jumlahSungai'] pasar[j] ←getTabelDetail1['jumlahPasar'] j ←j+1; endforeach i←i+1; endforeach;

arr2 ← array baru

arr2[0] ← jd [0]”,”. jd [0]”,”. pasar [0]”,”. sungai [0]

arr2[1] ← 0]”,”. jd [1]”,”. pasar [1]”,”. sungai [1]

arr3[2] ← 0]”,”. jd [2]”,”. pasar [2]”,”. sungai [2]

for i ← 0 to count ( jumlah) do obj ← jumlah

data ← explode(“,”, obj [i])

for j ← 0 to count (data) do

objek [i][j] <- data [j]

endfor endfor

for i ← 0 to count (jumlah ) do

cls ← arr2

data ← explode(“,”, cls [i])

for j ← 0, count (data) do

centroid [i][j] ← data [j]

endfor endfor

Gambar 4.3 Pseudocode menentukan centroid pada ketiga cluster

Setelah ditentukan centroid pada masing-masing cluster, maka langkah selanjutnya adalah menghitung jarak antara objek dengan masing-masing centroid

lalu menempatkannya pada cluster terdekat. Untuk pseudocode menghitung jarak objek dengan masing-masing cluster algoritmanya ditunjukkan pada Gambar 4.4.

Gambar 4.4 Pseudocode menghitung jarak objek dengan masing-masing cluster

Setelah ditentukan jarak pada masing-masing objek dengan ketiga cluster, maka dipilih jarak terendah yang akan menjadikan objek sebagai kelompoknya. Berikut pada Gambar 4.5 merupakan pseudocode dari pengelompokan dan pengulangan menentukan kelompok.

Gambar 4.5 Pseudocode mengalokasikan objek pada cluster terdekat. Kemudian jika tidak ada objek yang berpindah kelompok maka iterasi berhenti, tapi jika ada objek yang masih berpindah kelompok dan iterasi dibawah 20 kali

Kelas objek

cluster ← null , data ← array baru

fungsi setCluster (cls)

jml ← 0 , tmptCluster ← 0 , c ← null

for i ← 0 to count (this->data) do

jml ← 0

for j ← 0 j<count (this -> data ) do

jml + ← pow ((this -> data [j]-cls[i][j]),2)

endfor tmpC ← sqrt(juml) ifc ← null do c=tmpC tmpCluster ← i endif if tmpC ← < c do c← tmpC tmpCluster ← i endif endfor

this -> cluster ← tmpCluster

Fungsi getCluster () Return this -> cluster

for i ← 0 to count (objek[0] pada data ) do

objek [i] pada setCluster(centroidCluster)

mencetak objek ← (i+1)

for j ← 0 to count (objek[i] data ) do

mencetak (objek [i] data[j]

for j ← 0 to count (centroidCluster ) do

jika ← j== this > objek[i] > getCluster() do mencetak “X”

namun jika selain itu, mencetak “&nbsp” atau kosong

endfor endfor

iterasi maka dilakukan pengelompokan ulang dengan centroid yang baru. Pada Gambar 4.6 dapat dilihat pseudocode untuk pengulangan iterasi.

Gambar 4.6 Pseudocode mengulang pada langkah ke 4

Antar muka sistem ini terdiri dari empat fitur utama pada tampilan home, fitur Hasil k-Means, fitur Lihat Peta, fitur Detail Tabel dan fitur input. Gambar 4.7 merupakan tampilan Home pada saat user pertama kali mengakses sistem.

Gambar 4.7 Tampilan halaman Home sistem

mencetak tabel baru

cek ← true

fori ← 0 icount (this cekObjCluster) do

if ← cekObjCluster [i] tidak = objek[i] getCluster

cek ← FALSE

berhenti endfor endfor

Jika tidak sama dengan cek do

For i ← 0 i < count ( this -> cekObjekCluster ) do

This -> cekObjekCluster [i] ← this -> objek[i],getCluster() endfor

This -> setCentroidCluster ()

This -> setClusterObjek ← (itr+1, tahun)

1. Fitur Hasil Pengelompokan

Pada Fitur ini user dapat melihat hasil pengelompokan Kecamatan berupa tabel dengan cara memilih tahun yang ingin ditampilkan pada kolom tahun lalu klik tombol Hasil Pengelompokan pada tampilan halaman Home. Pada Gabar 4.8 merupakan contoh tampilan hasil pengelompokkan pada tahun 2014.

Gambar 4.8 Tampilan hasil pengelompokan 2. Fitur menampilkan peta

Pada fitur ini user dapat melihat peta kota Surabaya dengan bantuan GoogleMap API, dengan warna poligon setiap Kecamatan yang sesuai dengan hasil pengelompokan k-Means. Dengan keterangan jika Kecamatan masuk kedalam kelompok C1, maka poligon pada Kecamatan berwarna kuning, jika daerah Kecamatan masuk kedalam kelompok C2, maka poligon pada Kecamatan berwarna hijau dan jika Kecamatan masuk kedalam

kelompok C3, maka poligon Kecamatan berwarna merah. Contoh tampilan peta pada tahun 2014 yaitu dapat dilihat ada Gambar 4.9

Gambar 4.9 Tampilan Peta Kota Surabaya

Pada fitur Lihat Peta juga terdapat pilihan Kecamatan yaitu dapat melihat hasil peta hasil pengelompokan bedasarkan Kecamatan yang diinginkan dengan cara pilih Kecamatan yang telah ada pada kotak piihan Kecamatan, lalu klik tombol Lihat Peta. Contoh telah dipilih Kecamatan Mulyorejo dapat dilihat pada Gambar 4.10.

Selain itu pada fitur Lihat Peta juga dapat melihat peta berdasarkan status Kecamatan, status Kecamatan adalah kelompok hasil K-Means yaitu status C1, C2 dan C3. Untuk melihat peta berdasarkan status Kecamatan yaitu dengan cara memilih status pada kolom “pilih status” yang ada pada halaman

Gambar 4.10 Tampilan Peta Kecamatan “Mulyorejo”

Gambar 4.11 Tampilan peta Kecamatan pada kelompok “C2” 3. Fitur Detail Tabel

menampilkan nama kecamatan yang berada pada kelompok, jumlah penderita DBD, pasar tradisional, TPS, dan Sungai sehingga dapat mempermudah user

untuk menentukan kesimpulan dari suatu kelompok tersebut. Dengan cara pilih kelompok pada kolom “Pilih Kelompok” lalu klik detail tabel. Contoh telah dipilih status C2 dapat dilihat pada Gambar 4.12.

Gambar 4.12 Tampilan Detail Tabel untuk Kelompok“C2” 4. Fitur input

Fitur input ini digunakan untuk menginputkan tahun, nama Kecamatan, data jumlah penderita penyakit DBD dan faktor geografis pada daerah Kecamatan pada tahun yang diinputkan, dengan cara klik “Input” pada halaman home

maka akan muncul tampilan seperti pada Gambar 4.13.

4.5 Pengujian Sistem

Pengujian validitas sistem dilakukan dengan membandingkan hasil pengelompokkan oleh k-Means dari sistem dengan hasil manual. Perhitungan

k-Means yang telah dilakukan pada tahun 2014 dapat dilihat pada Tabel 4.8 dapat dibandingkan dengan hasil sistem yaitu dapat dilihat pada Gambar 4.14 maka dapat disimpulkan pada Tabel 4.7 menunjukkan hasil yang sama atau valid.

Tabel 4.9 Perbandingan antara hasil perhitungan manual dan sistem

Selain diuji validasi sistem, pengujian sistem dilakukan dengan metode

black box testing yang berfokus pada fungsionalitas sistem. Pengujian dilakukan dengan dengan membandingkan antara hasil yang diharapkan dengan hasil yang dikeluarkan oleh sistem. Sistem yang diuji denganadalah fungsi-fungsi yang ada pada Sistem Informasi Geografis untuk penyebaran penyakit DBD dikota Surabaya menggunkan metode K-Means. Berikut merupakan pengujian

KECAMATAN Perhitungan manual Perhitungan oleh sistem Sukomanunggal C2 C2 Tandes C2 C2 Asemrowo C1 C1 Benowo C2 C2 Pakal C1 C1 Lakarsantri C3 C3 Sambikerep C3 C3 Genteng C3 C3 Tegalsari C1 C1 Bubutan C2 C2 Simokerto C3 C3 Pabean Cantikan C3 C3 Semampir C2 C2 Krembangan C2 C2 Bulak C1 C1 Kenjeran C2 C2 Tambaksari C2 C2 Gubeng C3 C3 Rungkut C2 C2 Tenggilis C3 C3 Gunung Anyar C3 C3 Sukolilo C2 C2 Mulyorejo C3 C3 Sawahan C2 C2 Wonokromo C2 C2 Karang pilang C3 C3 Dukuh Pakis C3 C3 Wiyung C3 C3 Gayungan C3 C3 Wonocolo C3 C3 Jambangan C3 C3

fungsional sistem : 1. Menu Home

Hasil pengujian black box testing pada fungsi homeditunjukkan pada Tabel 4.8 berikut.

Tabel 4.8 Hasil Pengujian pada menu Home

No Test Case Hasil Harapan Hasil Keluaran Hasil Uji 1 Tekan tombol input Sistem melakukan tindakan user pada halaman Sistem mengarahkan input Sesuai 2 Tekan Tombol Hasil Pengelompokan Sistem melakukan tindakan hasil pengelompokan Sistem menampilkan Sesuai

3 Tekan Tombol Detail Tabel Sistem melakukan tindakan

Sistem menampilkan tabel pengelompokan sesuai status yang dipilih oleh user dari

combo box pilih kelompok

Sesuai

4 Tekan Tombol Lihat Peta Sistem melakukan tindakan Sistem menampilkan peta geografis Sesuai 5 Tidak ada input melakukan apapun Sistem tidak Sistem tidak melakukan apapun Sesuai

2. Menu Input

Hasil pengujian black box testing pada fungsi input ditunjukkan pada Tabel 4.9 berikut.

Tabel 4.9 Hasil Pengujian menu input

No Test Case Hasil Harapan Hasil Keluaran Hasil Uji 1 setelah memasukkan Tekan tombol input

data semua pada kolom

Sistem memproses

input

Sistem menyimpan data

input ke dalam basis data Sesuai 2 setelah memasukkan Tekan tombol input

hanya sebagian data

Sistem memproses

input

Sistem menolak penyimpanan inputan dan

menampilkan pesan “datakurang lengkap! Periksa

kembali”

Sesuai

3 Tekan tombol input memproses Sistem

input

Sistem menolak penyimpanan inputan dan menampilkan pesan “data kurang lengkap! Periksa

kembali”

Sesuai

4 Tidak ada input Sistem tidak melakukan apapun

Sistem tidak melakukan

4.6 Evaluasi Sistem

Evaluasi sistem dilakukan untuk mengetahui tingkat akurasi dari validasi sistem. Evaluasi sistem dihitung dengan membandingkan hasil output sistem dengan hasil output manual. Presentase nilai validasi sistem dengan hasil manual sudah sesuai atau valid.

Sedangkan evaluasi fungsional sistem berdasarkan hasil kuesioner pengujian sistem dapat diketahui bahwa Kepala bidang dan dua staff Pengendalian Masalah Penyakit meyatakan sistem informasi geografis untuk penyebaran penyakit DBD di kota Surabaya yang telah dibuat bersifat user friendly dan dapat membantu mempermudah pengelompokan daerah untuk penyebaran penyakit DBD di Kota Surabaya berbasis SIG. Hasil kuesioner evaluasi sistem dapat dilihat pada Lampiran 5.

BAB V

Dokumen terkait