KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

119
KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL DENGAN MENGIMPLEMENTASIKAN ALGORITMA K-NEAREST NEIGHBOR (Studi Kasus: RW 13 Kelurahan Palmerah Jakarta Barat) Skripsi Oleh: DESY RAHMAWATI NIM. 11140910000118 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 2020 M / 1441 H

Transcript of KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

Page 1: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN

BANTUAN SOSIAL DENGAN MENGIMPLEMENTASIKAN

ALGORITMA K-NEAREST NEIGHBOR

(Studi Kasus: RW 13 Kelurahan Palmerah Jakarta Barat)

Skripsi

Oleh:

DESY RAHMAWATI

NIM. 11140910000118

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA

2020 M / 1441 H

Page 2: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN

BANTUAN SOSIAL DENGAN MENGIMPLEMENTASIKAN

ALGORITMA K-NEAREST NEIGHBOR

(Studi Kasus: RW 13 Kelurahan Palmerah Jakarta Barat)

Skripsi

Diajukan Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana

Oleh:

DESY RAHMAWATI

NIM. 11140910000118

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA

2020 M / 1441 H

Page 3: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

i

LEMBAR PENGESAHAN PEMBIMBING

KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN

SOSIAL DENGAN MENGIMPLEMENTASIKAN ALGORITMA K-

NEAREST NEIGHBOR

(STUDI KASUS: RW 13 KELURAHAN PALMERAH JAKARTA BARAT)

Skripsi

Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer

Oleh:

Desy Rahmawati

11140910000118

Menyetujui,

Pembimbing I

Victor Amrizal, M.Kom

NIP. 19740624 200710 1 001

Pembimbing II

Siti Ummi Masruroh, M.Sc

NIP. 19820823 201101 2 013

Mengetahui,

Ketua Program Studi Teknik Informatika

Dr. Imam Marzuki Shofi,M.T

NIP. 19720205 200801 1 010

Page 4: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

ii

PENGESAHAN UJIAN

Page 5: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

iii

PERNYATAAN ORISINALITAS

Page 6: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

iv

KATA PENGANTAR

Assalamu’alaikum Wr. Wb.

Puji dan syukur penulis panjatkan kepada Allah SWT yang telah

melimpahkan rahmat serta karunia-Nya sehingga penulis dapat menyelesaikan

skripsi ini dengan baik. Shalawat serta salam tak lupa penulis sanjungkan kepada

Nabi Muhammad SAW.

Skripsi ini berjudul “Klasifikasi Warga Yang Layak Mendapatkan

Bantuan Sosial Dengan Mengimplementasikan Algoritma K-Nearest

Neighbor”. Penyusun skripsi ini bertujuan untuk memenuhi salah satu syarat dalam

menyelesaikan Pendidikan S1 Program Studi Teknik Informatika di Universitas

Islam Negeri Syarif Hidayatullah Jakarta.

Pada kesempatan ini penulis mengucapkan terima kasih yang sebesar-

besarnya kepada pihak-pihak yang telah membantu dalam menyelesaikan skripsi

ini, yaitu:

1. Ibu Prof. Dr. Lily Surraya Eka Putri, M.Env.Stud., selaku Dekan Fakultas Sains

dan Teknologi.

2. Bapak Dr. Imam Marzuki Shofi, M.T., selaku ketua Program Studi Teknik

Informatika, serta Bapak Andrew Fiade, M.Kom, selaku sekretaris Program

Studi Teknik Informatika.

3. Bapak Victor Amrizal, M.Kom., selaku Dosen Pembimbing I dan Ibu Siti

Ummi Masruroh, M.Sc., selaku Dosen Pembimbing II yang telah memberikan

bimbingan, motivasi, dan arahan kepada penulis sehingga skripsi ini bisa selesai

dengan baik.

4. Seluruh Dosen, Staf Karyawan Fakultas Sains dan Teknologi, khususnya

Program Studi Teknik Informatika yang telah memberikan bantuan dan

kerjasama dari awal perkuliahan.

5. Kepada Bapak Muhamad Zen, S.E selaku Ketua RW.13 yang telah memberikan

waktu dan kesempatannya serta mengizinkan penulis untuk

Page 7: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

v

Page 8: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

vi

ABSTRAKSI

Desy Rahmawati – Teknik Informatika, Klasifikasi Warga Yang Layak

Mendapatkan Bantuan Sosial Dengan Mengimplementasikan Algoritma K-Nearest

Neighbor. Dibimbing oleh Victor Amrizal, M.Kom dan Siti Ummi Masruroh,

M.Sc

Secara Nasional, Persentase penduduk miskin DKI Jakarta pada Maret 2019 adalah

3,47 persen atau sejumlah 365,55 ribu orang. Persoalan kemiskinan bukan hanya

sekedar jumlah dan persentase penduduk miskin, selain harus mampu memperkecil

jumlah penduduk miskin, kebijakan penanggulangan kemiskinan juga sekaligus

harus dapat mengurangi tingkat kedalaman dan keparahan kemiskinan. RW 13

Jakarta Barat merupakan RW yang sudah menerapkan sistem penerimaan Bantuan

Sosial dengan mempertimbangkan kondisi ekonomi warga atau kriteria yang telah

ditetapkan. seleksi penerimaan bantuan sosial merupakan tipe masalah semi

terstruktur yaitu agenda yang diadakan pada waktu tertentu. Di dalam pemilihan

bantuan sosial pada RW 13 Jakarta Barat masih menggunakan sistem manual,

dimana dalam menentukan calon penerima bantuan sosial, Staff RW 13 harus

mengumpulan berkas data seleksi calon penerima bantuan sosial meliputi data

warga yang berasal dari keluarga sederhana sampai kurang mampu. sehingga

membutuhkan waktu yang relatif lama, serta ketelitian yang tinggi dalam

mengambil keputusan. Metode K-Nearest Neighbor dipilih oleh penulis untuk

mempercepat dalam pemilihan calon penerima bantuan sosial. Membangun sistem

untuk memudahkan kinerja Staff RW13 serta mengimplementasikan metode KNN

kedalam aplikasi, dimana ada beberapa kriteria yang diolah sehingga diperoleh

suatu nilai dan nilai tersebut akan di bandingkan dengan data training, sehingga

menghasilkan klasifikasi data warga yang layak mendapatkan bantuan sosial dan

yang tidak mendapatkan bantuan sosial. Penelitian ini menghasilkan suatu aplikasi

klasifikasi penentuan warga yang layak mendapatkan bantuan sosial. Aplikasi ini

dapat membantu Staff RW 13 untuk mempercepat kinerja dalam penentuan

klasifikasi bantuan sosial, sehingga dapat menghindari kesalahan yang terjadi serta

hasil yang lebih akurat.

Kata kunci : Klasifikasi, K-Nearest Neighbor, Bantuan Sosial.

Daftar Pustaka : 12 (2017-2020)

Jumlah Halaman : VI BAB + xii Halaman + 109 Halaman + 34 Gambar + 18

Tabel

Page 9: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

vii

ABSTRACT

Desy Rahmawati – Teknik Informatika, Klasifikasi Warga Yang Layak

Mendapatkan Bantuan Sosial Dengan Mengimplementasikan Algoritma K-Nearest

Neighbor. Dibimbing oleh Victor Amrizal, M.Kom dan Siti Ummi Masruroh,

M.Sc

Nationally, the percentage of poor population of DKI Jakarta in March 2019 was

3.47 percent or 365.55 thousand people. The problem of poverty is not just the

number and percentage of poor people, in addition to being able to reduce the

number of poor people, poverty alleviation policies must also be able to reduce the

depth and severity of poverty. RW 13 West Jakarta is a RW that has implemented

a Social Assistance acceptance system by considering the economic conditions of

the residents or the criteria that have been set. social assistance acceptance selection

is a type of semi-structured problem that is the agenda held at a certain time. In the

selection of social assistance in RW 13, West Jakarta, it still uses a manual system,

where in determining the prospective recipients of social assistance, Staff RW 13

must collect data files for selection of prospective social assistance recipients

including data from residents from simple to disadvantaged families. so it requires

a relatively long time, and high accuracy in making decisions. The K-Nearest

Neighbor method was chosen by the author to speed up the selection of potential

recipients of social assistance. Build a system to facilitate the performance of RW13

Staff and implement the KNN method into the application, where there are several

criteria that are processed in order to obtain a value and these values will be

compared with training data, so as to produce a data classification of citizens who

are eligible for social assistance and who do not get social assistance . This research

resulted in an application classification of determining citizens who deserve social

assistance. This application can help Staff RW 13 to accelerate performance in

determining the classification of social assistance, so as to avoid mistakes that occur

as well as more accurate results.

Keywords : Classification, K-Nearest Neighbor, Social Assistance.

Bibliography : 12 (2017-2020)

Number of Pages : VI BAB + xii Pages + 109 Pages + 34 Pictures + 18 Tables

Page 10: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

viii

DAFTAR ISI

LEMBAR PENGESAHAN PEMBIMBING.................................................................... i

PENGESAHAN UJIAN ................................................................................................. ii

PERNYATAAN ORISINALITAS ................................................................................ iii

KATA PENGANTAR................................................................................................... iv

ABSTRAKSI ................................................................................................................ vi

DAFTAR ISI ............................................................................................................. viii

DAFTAR TABEL ........................................................................................................ xii

DAFTAR GAMBAR .................................................................................................. xiii

BAB I PENDAHULUAN ...............................................................................................1

1.1. Latar Belakang.................................................................................................1

1.2. Tujuan Penelitian .............................................................................................4

1.3. Manfaat Penelitian ...........................................................................................4

1.4. Rumusan Masalah ............................................................................................5

1.5. Batasan Masalah ..............................................................................................5

1.6. Metodologi Penelitian ......................................................................................5

1.7. Sistematika Penulisan ......................................................................................6

BAB II LANDASAN TEORI ..........................................................................................8

2.1 Bantuan Sosial .................................................................................................8

2.2 Data Mining.....................................................................................................9

2.2.1 Pekerjaan Dalam Data Mining ................................................................ 11

2.3 Klasifikasi ..................................................................................................... 13

2.4 Algoritma ...................................................................................................... 14

2.4.1 Dasar Penyusunan Algortima ................................................................. 15

2.4.2 Struktur Dasar Algoritma ....................................................................... 16

2.5 Algoritma K-Nearest Neighbor ...................................................................... 17

2.6 Metode Rapid Application Development ........................................................ 19

2.7 Unified Modeling Language (UML) .............................................................. 20

2.7.1 Flowchart ............................................................................................... 20

2.7.2 Use Case .............................................................................................. 232

2.7.3 Activity Diagram ................................................................................... 23

2.8 Bahasa Pemrograman PHP ............................................................................. 25

2.9 Basis Data...................................................................................................... 26

Page 11: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

ix

2.9.1 Database Management System (DBMS) ................................................. 26

2.9.2 MySql .................................................................................................... 27

2.10 Perangkat Lunak Pendukung ........................................................................ 298

2.10.1 Xampp ................................................................................................. 298

2.10.2 Ionic ...................................................................................................... 29

2.10.3 Javascript ............................................................................................... 30

2.10.4 CSS (Cascanding Style Sheet) ................................................................ 30

2.10.5 Visual Studio Code ................................................................................ 31

2.11 Studi Pustaka ................................................................................................. 32

2.12 Observasi ..................................................................................................... 321

2.13 Wawancara .................................................................................................... 32

2.14 Metode Pengujian Sistem ............................................................................... 32

2.14.1 Pengujian Black Box .............................................................................. 32

BAB III METODOLOGI PENELITIAN ....................................................................... 34

3.1 Metode Pengumpulan Data ............................................................................ 34

3.1.1 Observasi ............................................................................................... 34

3.1.2 Wawancara ............................................................................................ 34

3.1.3 Studi Pustaka ......................................................................................... 34

3.1.4 Studi Literatur Sejenis ............................................................................ 34

3.2 Metode Pengembangan Sistem ....................................................................... 39

3.2.1 Fase Perencanaan Sistem ........................................................................ 40

3.2.2 Fase Perancangan Design ....................................................................... 40

3.2.3 Fase Implementasi.................................................................................. 41

3.3 Alasan Menggunakan Rapid Application Development (RAD) ...................... 41

3.4 Kerangka Penelitian ....................................................................................... 41

BAB IV ANALISIS DAN PERANCANGAN SISTEM ................................................ 43

4.1 Fase Perencanaan ........................................................................................... 43

4.1.1 Analisa Sistem ....................................................................................... 43

4.1.2 Tujuan Informasi .................................................................................... 40

4.1.3 Analisa Kebutuhan ................................................................................. 41

4.2 Fase Perancangan Design ............................................................................... 41

4.2.1 Perancangan Prosedur ............................................................................ 41

4.2.2 Perancangan Antarmuka Pengguna ......................................................... 51

BAB V HASIL DAN PEMBAHASAN ......................................................................... 59

Page 12: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

x

5.1 Fase Implementasi ......................................................................................... 59

5.1.1 Implementasi Antarmuka (Interface) ...................................................... 59

5.1.2 Tampilan Antarmuka Sistem .................................................................. 60

5.1.3 Implementasi Algoritma KNN ................................................................ 67

5.1.4 Confussion Matrix .................................................................................. 72

5.2 Pengujian Sistem ........................................................................................... 73

BAB VI PENUTUP .................................................................................................... 825

6.1 Kesimpulan.................................................................................................. 825

6.2 Saran ........................................................................................................... 825

DAFTAR PUSTAKA ................................................................................................. 827

LAMPIRAN I HASIL WAWANCARA ...................................................................... 828

LAMPIRAN II IMPLEMENTASI CODE ..................................................................... 80

Page 13: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

xi

DAFTAR TABEL

Tabel 2.1 Daftar Tabel Flowchart..................................................................... 21

Tabel 2.2 Daftar Tabel Diagram Use Case ....................................................... 23

Tabel 2.3 Simbol Diagram Activity.................................................................. 24

Tabel 3.1 Perbandingan Studi Literatur Sejenis .. Error! Bookmark not defined.

Tabel 4.1 Kebutuhan Perangkat keras dan Perangkat lunak .............................. 41

Tabel 5.1 Impelementasi Antarmuka Sistem .................................................... 59

Tabel 5.2 Pembobotan Atribut ....................................................................... 698

Tabel 5.3 Pekerjaan ...................................................................................... 718

Tabel 5.4 Tanggungan .................................................................................... 72

Tabel 5.5 Penghasilan ................................................................................... 729

Tabel 5.6 Pekerjaan (a) .................................................................................. 719

Tabel 5.7 Tanggungan (c) .............................................................................. 729

Tabel 5.8 Penghasilan Orangtua (e)................................................................ 729

Tabel 5.9 Sample Data Training ....................................................................... 70

Tabel 5.10 Sample Data Testing ........................................................................ 70

Tabel 5.11 Hasil Klasifikasi Data Testing .......................................................... 72

Tabel 5.12 Pengujian Confussion Matrix............................................................ 73

Tabel 5.13 Sample Data Testing ........................................................................ 74

Page 14: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

xii

DAFTAR GAMBAR

Gambar 2.1 Langkah data mining dalam proses pencarian pengetahuan ........... 11

Gambar 2.2 Langkah-langkah Struktur Sekuensial ........................................... 16

Gambar 2.3 Alur Struktur Seleksi .................................................................... 17

Gambar 2.4 Langkah Struktur Pengulangan ..................................................... 17

Gambar 3.1 Siklus Pengembangan Sistem Model RAD ................................... 40

Gambar 3.2 Alur Kerangka Penelitian .............................................................. 42

Gambar 4.1 Proses Mengambilan Keputusan Untuk Warga Yang Menerima

Bantuan 40

Gambar 4.2 Alur Aplikasi KNN ....................................................................... 42

Gambar 4.3 Use Case Diagram Steganografi Audio ......................................... 43

Gambar 4.4 Activity Diagram Menu Login ...................................................... 46

Gambar 4.5 Activity Diagram Bobot ................................................................ 46

Gambar 4.6 Activity Diagram Atribut .............................................................. 47

Gambar 4.7 Activity Diagram Data Training .................................................... 48

Gambar 4.8 Activity Diagram Data Testing ...................................................... 49

Gambar 4.9 Activity Diagram Report ............................................................... 50

Gambar 4.10 Activity Diagram User ............................................................... 51

Gambar 4.11 Rancangan Antarmuka Menu Login .......................................... 52

Gambar 4.12 Rancangan Antarmuka Menu Bobot .......................................... 53

Gambar 4.13 Rancangan Antarmuka atribut ................................................... 54

Gambar 4.14 Rancangan Antarmuka Data Training ........................................ 55

Gambar 4.15 Rancangan Antarmuka Data Testing ......................................... 55

Gambar 4.1 Rancangan Antarmuka Data Testing ............................................. 56

Gambar 4.2 Rancangan Antarmuka Report ...................................................... 57

Gambar 4.1 Rancangan Antarmuka Report Warga Mampu .............................. 57

Gambar 4.1 Rancangan Antarmuka Report Warga Tidak Mampu .................... 58

Gambar 4.2 Rancangan Antarmuka User.......................................................... 58

Gambar 5.1 Tampilan Menu Login .................................................................. 61

Gambar 5.2 Tampilan Menu Bobot .................................................................. 61

Gambar 5.3 Tampilan Menu Atribut ................................................................ 63

Page 15: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

xiii

Gambar 5.4 Tampilan Menu Data Training ...................................................... 64

Gambar 5.5 Tampilan Menu Data Testing ........................................................ 65

Gambar 5.6 Tampilan Menu Data Testing ........................................................ 65

Gambar 5.7 Tampilan Menu Report ................................................................. 66

Gambar 5.8 Tampilan Menu User .................................................................... 67

Page 16: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

1

BAB I

PENDAHULUAN

1.1. Latar Belakang

Secara Nasional, tingkat kemiskinan DKI Jakarta adalah yang

terendah diantara 34 provinsi di Indonesia. Persentase penduduk miskin

DKI Jakarta pada Maret 2019 adalah 3,47 persen atau sejumlah 365,55 ribu

orang. Dibandingkan dengan September 2018 (3,55% atau 372,26 ribu

orang), jumlah penduduk miskin berkurang 6,71 ribu orang atau turun 0,08

poin. Dan dibandingkan dengan periode Maret 2018 (3,57% atau 373,12

ribu orang), persentase penduduk miskin turun 0,10 poin atau berkurang

7,57 ribu orang.

Gambar 1.1 Tabel 1 Garis Kemiskinan, Jumlah dan Persentase Penduduk Miskin di DKI

Jakarta Maret 2018 – September 2018 – Maret 2019

(Sumber: https://jakarta.bps.go.id/pressrelease/2019/07/15/358/persentase-penduduk-miskin-dki-jakarta-maret-2019-sebesar-3-47-persen.html)

Gambar 1.2 Perkembangan Persentase Penduduk Miskin di DKI Jakarta, Maret 2014 – Maret 2019

(Sumber: https://jakarta.bps.go.id/pressrelease/2019/07/15/358/persentase-penduduk-

miskin-dki-jakarta-maret-2019-sebesar-3-47-persen.html)

Page 17: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

2

Gambar 1.3 Profil Kemiskinan Di Indonesia

(Sumber: https://jakarta.bps.go.id/pressrelease/2019/07/15/358/persentase-penduduk-miskin-

dki-jakarta-maret-2019-sebesar-3-47-persen.html)

Persoalan kemiskinan bukan hanya sekedar jumlah dan persentase

penduduk miskin, dimensi lain yang perlu diperhatikan adalah tingkat

kedalaman dan keparahan kemiskinan. Selain harus mampu memperkecil

jumlah penduduk miskin, kebijakan penanggulangan kemiskinan juga

sekaligus harus dapat mengurangi tingkat kedalaman dan keparahan

kemiskinan.

Berdasarkan hasil observasi oleh penulis di Wilayah RW.13

Kelurahan Palmerah Kecamatan Palmerah Jakarta Barat yaitu, tingkat

kemiskinan di wilayah rw.13 masih sangat tinggi. Serta di wilayah rw.13

Page 18: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

3

sudah mulai menerapkan sistem bantuan sosial kepada warga miskin atau

tidak mampu untuk mengurangi jumlah tingkat kemiskinan yakni dengan

mempertimbangkan kondisi ekonomi warga atau memiliki beberapa

kategori yaitu berdasarkan Pekerjaan, Tanggungan, dan Penghasilan.

Namun ternyata pemilihan Bantuan Sosial di Wilayah RW.13

Kelurahan Palmerah Kecamatan Palmerah Jakarta Barat masih

menggunakan sistem manual, dimana dalam menentukan calon penerima

Bantuan Sosial, para Staff RW.13 harus mengumpulkan berkas data seleksi

calon penerima Bantuan Sosial warga yang berada di Wilayah RW.13

berasal dari keluarga sederhana sampai kurang mampu. Sehingga

membutuhkan waktu yang relatif lama, serta ketelitian yang tinggi dalam

mengambil keputusan.

Metode K-Nearest Neighbor dipilih oleh penulis untuk

mempercepat dalam pemilihan calon penerima bantuan sosial. Membangun

sistem untuk memudahkan kinerja Staff RW13 serta mengimplementasikan

metode KNN kedalam aplikasi, dimana ada beberapa kriteria yang diolah

sehingga diperoleh suatu nilai dan nilai tersebut akan di bandingkan dengan

data training, sehingga menghasilkan klasifikasi data warga yang layak

mendapatkan bantuan sosial dan yang tidak mendapatkan bantuan sosial.

Penelitian ini menghasilkan suatu aplikasi klasifikasi penentuan

warga yang layak mendapatkan bantuan sosial. Aplikasi ini dapat

membantu Staff RW 13 untuk mempercepat kinerja dalam penentuan

klasifikasi bantuan sosial, sehingga dapat menghindari kesalahan yang

terjadi serta hasil yang lebih akurat. Sehingga penulis menggunakan judul

“KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN

BANTUAN SOSIAL DENGAN MENGIMPLEMENTASIKAN

ALGORITMA K-NEAREST NEIGHBOR”.

Page 19: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

4

1.2. Tujuan Penelitian

Berdasarkan rumusan masalah di atas maka tujuan dari dibangunnya

sistem ini adalah Mengimplementasikan penggunaan Algoritma K-Nearest

Neighbor dalam mengklasifikasi warga yang layak atau tidak layak

mendapatkan bantuan sosial.

1.3. Manfaat Penelitian

Manfaat yang didapatkan dari penelitian ini adalah:

1. Bagi Penulis

a. Mengimplementasikan ilmu-ilmu yang didapatkan pada waktu

perkuliahan.

b. Membandingkan teori yang didapat saat perkuliahan dengan

masalah yang sebenarnya.

2. Bagi Universitas

a. Mengetahui kemampuan mahasiswa menguasai materi yang

diperoleh selama perkuliahan

b. Mengetahui kemampuan mahasiswa dalam mengimplementasikan

ilmunya dan sebagai bahan evaluasi selanjutnya.

3. Bagi Pembaca

a. Menambah wawasan pembaca mengenai bagaimana kinerja

algoritma K-Nearest Neighbor dalam melakukan klasifikasi data,

sehingga dapat memilih algoritma dengan kinerja terbaik

berdasarkan hasil analisa data.

b. Membantu pembaca untuk memahami bagaimana penggunaan

Algoritma K-Nearest Neighbor dalam aplikasi klasifikasi warga

yang layak mendapatkan bantuan sosial.

4. Bagi User

a. Membantu User (Staff Rw 13) dalam menginput data warga yang

berada di Wilayah Rw.13 serta dengan mudah menambah wawasan

pembaca mengenai bagaimana kinerja algoritma K-Nearest

Page 20: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

5

Neighbor dalam melakukan klasifikasi data, sehingga dapat memilih

algoritma dengan kinerja terbaik berdasarkan hasil analisa data.

b. Membantu pembaca untuk memahami bagaimana penggunaan

Algoritma K-Nearest Neighbor dalam aplikasi klasifikasi warga

yang layak mendapatkan bantuan sosial.

1.4. Rumusan Masalah

Berdasarkan latar belakang yang sudah dikemukakan, maka

perumusan masalah yang akan dibahas dalam penelitian ini adalah

bagaimana mengimplementasikan Algoritma K-Nearest Neighbor kedalam

aplikasi untuk melakukan klasifikasi data warga yang layak dan tidak layak

mendapatkan bantuan sosial.

1.5. Batasan Masalah

Batasan masalah pada skripsi ini yaitu sebagai berikut:

1. Menggunakan Algoritma K-Nearest Neighbor untuk melakukan

klasifikasi warga di RW 13 Kelurahan Palmerah Kecamatan Palmerah

Jakarta Barat.

2. Menggunakan MySQL untuk penyimpanan data.

3. Cara perhitungan Data di Aplikasi K- Nearest Neighbor dilakukan per

satu orang untuk menentukan warga yang layak dan tidak layak

mendapatkan bantuan sosial.

4. Menggunakan RAD sebagai metode penelitian.

1.6. Metodologi Penelitian

Penulis menggunakan beberapa metode penelitian pada saat

pengumpulan data dan informasi yang dibutuhkan sebagai bahan penyusun

penelitian. Metode yang digunakan diantaranya:

1.6.1 Studi Pustaka

Yaitu pengumpulan data melalui studi literature seperti buku, jurnal,

skripsi, artikel, e-book dan situs internet yang berkaitan dengan pembahasan

skripsi.

Page 21: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

6

1.6.2 Observasi

Yaitu metode pengumpulan data dengan melakukan observasi di

wilayah RW.13 Kelurahan Palmerah Kecamatan Palmerah Jakarta Barat.

1.6.3 Wawancara

Wawancara adalah teknik pengumpulan data yang dilakukan

melalui tatap muka dan Tanya jawab langsung antara penulis dengan Pak

RW.13 Kelurahan Palmerah Kecamatan Palmerah Jakarta Barat.

1.7. Sistematika Penulisan

Dalam penulisan skripsi ini, penulis menjabarkan menjadi enam bab

dengan beberapa sub pokok pembahasan. Adapun sistematika dari

penelitian ini adalah sebagai berikut:

BAB I PENDAHULUAN

Dalam bab ini akan diuraikan latar belakang, rumusan

masalah, tujuan penelitian, batasan masalah, manfaat

penelitian, metodologi penelitian dan sistematika penulisan.

BAB II LANDASAN TEORI

Dalam bab ini penulis mengemukakan seputar teori-teori

tentang konsep aplikasi, metode pengembangan sistem,

definisi tools yang akan digunakan dalam pengembangan

aplikasi.

BAB III METODOLOGI PENELITIAN

Dalam bab ini akan menjelaskan metode yang digunakan

penelitian seperti metode pengumpulan data maupun metode

pengembangan sistem.

BAB IV ANALISIS DAN PERANCANGAN SISTEM

Dalam bab ini akan membahas perencanaan sistem dan

perancangan menggunakan UML (Unified Modelling

Language) yang berkaitan proses klasifikasi warga.

BAB V HASIL DAN PEMBAHASAN

Page 22: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

7

Dalam bab ini akan dibahas hasil tampilan aplikasi

klasifikasi warga yang layak atau tidak layak mendapatkan

bantuan sosial.

BAB VI PENUTUP

Pada bab ini akan diuraikan kesimpulan dari pembahasan

penulisan secara keseluruhan dan saran untuk

pengembangan perangkat lunak lebih jauh.

Page 23: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

8

BAB II

LANDASAN TEORI

2.1 Bantuan Sosial

Menurut Kementerian Sosial (2011:15) bantuan sosial

adalah bantuan yang sifatnya sementara yang diberikan kepada

masyarakat miskin, dengan maksud agar mereka dapat

meningkatkan kehidupannya secara wajar. Program bantuan sosial

merupakan salah satu komponen program jaminan sosial yang

menjadi bentuk realisasi tanggung jawab pemerintah atau

pemerintah daerah yang sangat peduli terhadap kondisi masyarakat

yang miskin dan terlantar di tingkat bawah.

Program ini merupakan implementasi Undang-Undang

Dasar 1945 Pasal 34 ayat 1 (2010:79) yang menyatakan bahwa fakir

miskin dan anak-anak terlantar dipelihara oleh negara. Selain itu

pada Undang-Undang Dasar 1945 Pasal 34 ayat 2 (2010:79)

menyebutkan bahwa negara mengembangkan sistem jaminan sosial

bagi seluruh rakyat dan memberdayakan masyarakat yang lemah

dan tidak mampu sesuai dengan martabat kemanusiaan.

Dengan perkembangan sosial ekonomi suatu negara,

program bantuan sosial yang semula hanya berbentuk hibah saja

berubah orientasinya menjadi program yang lebih memberikan

manfaat berkelanjutan melalui bantuan pemberdayaan atau stimulan

agar sasaran program bantuan bisa menjadi mandiri kecuali bagi

sasaran program yang memang sudah tidak potensial sama sekali

seperti lanjut usia yang jompo, miskin terlantar dan lain-lain.

Salah satu program pemerintah dalam mengentaskan

kemiskinan yaitu dengan pemberian bantuan sosial kepada kepala

keluarga miskin dengan membentuk kelompok kerja yang

bergabung ke dalam Kelompok Usaha Bersama (KUBE),

Page 24: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

9

diharapkan dengan model bantuan tersebut dapat terentaskan

kemiskinan. Kelompok Usaha Bersama (KUBE) merupakan salah

satu media pemberdayaan yang diciptakan untuk membangun

kemampuan warga masyarakat atau keluarga miskin dalam

memecahkan masalah, memenuhi kebutuhan dan mengembangkan

potensi guna meningkatkan kesejahteraan sosialnya (Kementrian

Sosial, 2011:9).

Berdasarkan uraian tersebut, maka bantuan sosial yang

digulirkan di Desa Totokaton Kecamatan Punggur Kabupaten

Lampung Tengah yaitu 28 ekor anak sapi, yang dibagikan kepada

tujuh Kelompok Usaha Bersama (Hasil wawancara pada tanggal 20

Desember 2011). Sehingga setiap kelompok yang terdiri dari 10

orang anggota mendapatkan bagian empat ekor sapi yang akhirnya

dikembangkan untuk meningkatkan pendapatan.

2.2 Data Mining

Data mining sebagai Interdisciplinary Subject, dapat

didefinisikan dengan berbagai cara. Untuk merujuk pada

penambangan emas dari batuan atau pasir, kita mengatakan

penambangan emas bukan penambangan batu atau pasir. Secara

analog, data mining seharusnya lebih tepat disebut "Knowledge

Mining From Data," yang sayangnya terlalu panjang. Namun, dalam

istilah yang lebih pendek, Knowlede Mining terkesan mencerminkan

penekanan pada pertambangan dari sejumlah besar data. Meskipun

demikian, mining adalah istilah yang jelas yang mencirikan proses

yang menemukan seperangkat nuggets berharga dari banyak bahan

mentah. Dengan demikian, keliru yang membawa "data" dan

"mining" ini menjadi pilihan populer.

Selain itu, banyak istilah lain yang memiliki arti yang mirip

dengan data mining misalnya, menggali pengetahuan dari data,

Page 25: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

10

ekstraksi pengetahuan, analisis data/pola, arkeologi data, dan

pengerukan data. Banyak orang memperlakukan data mining

sebagai sinonim untuk istilah populer lainnya, penemuan

pengetahuan dari data, atau KDD, sementara yang lain melihat data

mining hanya sebagai langkah penting dalam proses penemuan

pengetahuan. Proses penemuan pengetahuan ditunjukkan pada

Gambar 2.1 sebagai urutan iteratif dari langkah-langkah berikut:

1. Data Cleaning

Untuk membuang data noise dan data yang tidak konsisten.

2. Data Integration

Data yang berasal dari berbagai sumber dikombinasikan atau

diintegrasikan

3. Data Selection

Pemilihan data yang berkaitan dengan tujuan untuk analisis diambil

dari database

4. Data Transformation

Data ditransformasi dan digabung menjadi bentuk yang sesuai untuk

proses mining dengan melakukan operasi ringkasan atau agregasi.

5. Data Mining

Proses penting dimana metode intelligent digunakan untuk menggali

pola data

6. Pattern Evaluation

Mengidentifikasi pola yang benar-benar menarik yang memberikan

pengetahuan atau informasi berdasarkan perhitungan yang menarik.

7. Knowledge Presentation

Teknik visualisasi dan representasi dari pengetahuan digunakan untuk

mempresentasikan informasi yang didapatkan dari hasil pengolahan

data kepada user.

Page 26: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

11

Gambar 2.1 Langkah data mining dalam proses pencarian pengetahuan

2.2.1 Pekerjaan Dalam Data Mining

Data mining dapat digunakan untuk melakukan beberapa

pekerjaan. Eko Prasetyo menjelaskan bahwa terdapat empat

kelompok pekerjaan yang berkaitan dengan data mining, yaitu

model prediksi (prediction modelling), analisis kelompok (cluster

analysis), analisis asosiasi (association analysis), dan detekni

anomali (anomali detection). Berikut penjelasan dari empat

kelompok yang telah disebutkan (Prasetyo E. 2012):

1. Model Prediksi berkaitan dengan pembuatan sebuah model yang

dapat melakukan pemetaan dari setiap himpunan variabel ke

setiap targetnya. Kemudian model tersebut digunakan untuk

memberikan nilai target pada himpunan baru yang didapat.

Terdapat dua jenis model prediksi yaitu, klasifikasi dan regresi.

Klasifikasi digunakan untuk variabel target diskret, misalnya

ingin mendeteksi jenis penyakit pasien berdasarkan sejumlah

nilai parameter penyakit yang diderita. Kasus ini merupakan

termasuk dalam jenis klasifikasi karena target yang diharapkan

adalah jenis penyakit pasien yang merupakan variabel target

diskret. Hanya beberapa jenis kemungkinan nilai target yang

didapatkan, tidak ada nilai deret waktu (time series) yang harus

Page 27: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

12

didapatkan untuk mendapat target nilai akhir. Sedangkan regresi

untuk variabel target kontinu. Misalnya ingin prediksi jumlah

penjualan yang didapatkan pada tiga bulan ke depan termasuk

regresi karena untuk mendapatkan nilai penjualan bulan ketiga,

nilai penjualan bulan kedua harus didapatkan dan untuk

mendpatkan nilai penjualan bulan kedua, nilai penjualan bulan

pertama harus didapatkan. Terdapat nilai deret waktu yang harus

dihitung untuk sampai pada target akhir yang diinginkan, ada

nilai kontinu yang harus dihitung untuk mendapatkan nilai target

akhir yang diinginkan. Terdapat pendapat lain mengenai

perbedaan klasifikasi dan regresi, yaitu klasifikasi merupakan

melakukan prediksi suatu kasusuntuk mengetahui terdapat pada

kategori atau class apakah kasus tersebut. Sedangkan regresi

merupakan prediksi untuk mengetahui nilai yang dimiliki suatu

variabel, apabila variabel memiliki deret waktu, maka disebut

time serires prediction (Imandoust & Bolandraftar, 2013).

2. Analisis Kelompok

Analisis kelompok (Cluster Analysis) melakukan

pengelompokan data-data ke dalam sejumlah kelompok

berdasarkan kesamaan karakteristik masing-masing data pada

kelompokkelompok yang ada. Misalnya, bagaimana cara untuk

mengetahui pola pembelian barang oleh para konsumen pada

waktu-waktu tertentu. Dengan mengetaui pola kelompok

pembelian tersebut, perusahaan/pengecer dapat menentukan

jadwal promosi yang dapat diberikan sehingga omzet penjualan

dapat ditingkatkan.

3. Analisis Asosiasi

Analisis Asosiasi (Association Analysis) digunakan untuk

menemukan pola yang menggambarkan kekuatan hubungan fitur

dalam data. Pola yang ditemukan biasanya mempresentasikan

bentuk aturan implikasi atau subset fitur. Contoh, pembeli adalah

Page 28: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

13

ibu rumah tangga yang akan membeli barang di supermarket.

Jika ibu tersebut membeli beras, besar kemungkinan bahwa ibu

tersebut akan membeli baranglain, seperti minyak, telur, dan

tidak mungkin atau jarang membeli barang lain seperti topi atau

buku.

4. Deteksi Anomali

Deteksi anomali (Anomali Detection) berkaitan dengan

pengamatan sebuah data dari sejumlah data yang secara

signifikan mempunyai karakteristik yang berbeda dari sisa data

yang lain. Data-data yang karakteristiknya menyimpang atau

berbeda dari data yang lain disebut outlier. Algoritma deteksi

anomal yang baik harus mempunyai laju deteksi yang tinggi dan

laju error yang rendah. Contoh, perilaku kondisi cuasa yang

mengalami anomali dapat dideteksi dengan algoritma ini.

2.3 Klasifikasi

Masalah klasifikasi bertujuan untuk mengidentifikasi

karakteristik yang menunjukkan kelompok tempat masing-masing

kasus berada. Pola ini dapat digunakan baik untuk memahami data

yang sudah ada maupun untuk memprediksi kasus baru. Data mining

menciptakan model klasifikasi dengan memeriksa data yang sudah

diklasifikasikan (kasus) dan secara induktif menemukan pola

prediktif.

Kasus-kasus yang ada dapat berasal dari historical database,

seperti orang-orang yang telah menjalani perawatan medis tertentu

atau pindah ke layanan jarak jauh yang baru. Hasil tersebut dapat

berasal dari percobaan dengan sampel seluruh database diuji di

dunia nyata dan hasilnya digunakan untuk membuat klasifikasi

(Imandoust & Bolandraftar, 2013).

Dalam klasifikasi, terdapat variabel kategorisasi target,

seperti kelompok pendapatan. Misalnya kelompok pendapatan dapat

Page 29: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

14

dipartisi menjadi tiga kelas atau kategori: pendapatan tinggi,

pendapatan menengah, dan pendapatan rendah. Model data mining

memeriksa sejumlah besar catatan (records), setiap record berisi

informasi tentang variabel target serta seperangkat variabel input

atau prediktor. Misalkan peneliti ingin dapat mengklasifikasikan

jenis pendapatan seseorang yang belum tercatat di database

berdasarkan karakteristik yang berhubungan seperti umur, jenis

kelamin, dan pekerjaan. Pekerjaan ini merupakan pekerjaan

klasifikasi, sangat sesuai dengan metode dan teknik data mining

(Larose, 2005).

Pada proses klasifikasi, data latih yang digunakan sudah

memiliki class label sebelumnya, sehingga proses ini juga diketahui

sebagai supervised learning, yaitu untuk mengatahui class label dari

data yang ingin diprediksi. Berbeda dengan unsupervised learning

(atau clustering), class label dari data latih tidak diketahui dan

jumlah kelompok yang akan dipelajari belum diketahui sebelumnya

(Han, Kamber, & Pei, General Approach to Classification, 2012)

2.4 Algoritma

Menurut (Rinaldi Munir, 2011) algoritma merupakan

prosedur komputasi yang terdefinisi dengan baik, yang

menggunakan beberapa nilai sebagai masukan dan menghasilkan

beberapa nilai yang disebut keluaran.

Algoritma merupakan prosedur yang berisi langkah-langkah

penyelesaian suatu masalah. Algoritma merupaka suatu alur pikiran

dalam menyelesaikan pekerjaan, yang dituangkan dalam bentuk

tertulis yang dapat dimengerti oleh orang lain. Suatu pekerjaan dapat

diselesaikan dengan berbagai macam cara, akan tetepi harus

tersususn secara logis agar pekerjaan dapat diselesaikan dengan

benar (Sjukani, 2010).

Page 30: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

15

Algoritma adalah jantung ilmu komputer atau informatika.

Banyak cabang dari ilmu komputer yang diacu dalam terminologi

algoritma, misalnya algoritma perutean (routing) pesan di dalam

jaringan komputer, algoritma brensenham untuk menggambar garis

lurus, algoritma KMP untuk mencari suatu pola di dalam teks, dan

sebagainya (Rinaldi Munir, 2011).

2.4.1 Dasar Penyusunan Algortima

Ada beberapa hal yang perlu diperhatikan dalam menyusun

suatu algoritma. Ada lima ciri penting yang harus dimiliki sebuah

algoritma, yaitu berupa Finiteness, Definiteness, masukan, keluaran,

dan efektivitas.

1. Finiteness. menyatakan bahwa suatu algoritma harus berakhir

untuk semua kondisi setelah memproses sejumlah langkah.

2. Definiteness. menyatakan bahwa setiap langkah harus

dinyatakan dengan jelas (tidak rancu atau mendua-arti).

3. Masukan. Setiap algoritma bisa tidak memiliki masukan atau

mempunyai satu atau beberapa masukan. Masukan merupakan

suatu besaran yang diberikan di awal sebelum algoritma

diproses.

4. Keluaran. Setiap algoritma memiliki keluaran, entah hanya

sebuah keluaran atau banyak keluaran. Keluaran merupakan

besaran yang mempunyai kaitan atau hubungan dengan

masukan.

5. Efektifitas. Setiap algoritma diharapkan bersifat efektif, dalam

arti semua operasi yang dilaksanakan oleh algoritma haruslah

sederhana dan dapat dikerjakan dalam waktu yang terbatas.

Secara prinsip, setiap intruksi dalam algoritma dapat dikerjakan

oleh orang dengan hanya menggunakan kertas dan pensil.

Sebuah algoritma dikatakan benar, untuk berbagai ragam

masukan, jika algoritma berakhir dengan keluaran yang benar. Pada

Page 31: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

16

keadaan seperti ini, algoritma menyelesaikan masalah komputasi

yang diberikan.

2.4.2 Struktur Dasar Algoritma

Pada dasarnya terdapat tiga buah struktur dasar yang

menyusun suatu algoritma. Ketiga struktur dasar tersebut, yaitu

(Kadir, 2012):

1. Struktur Sekuensial

Pada struktur sekuensial, langkah-langkah yang dilakukan dalam

algoritma diproses secara berurutan (Kadir, 2012), sebagaimana

diperlihatkan pada gambar berikut ini:

Gambar 2.2 Langkah-langkah Struktur Sekuensial

2. Struktur Seleksi

Struktur seleksi menyatakan pemilihan langkah yang didasarkan

oleh suatu kondisi (pengambilan keputusan) (Kadir, 2012).

Gambar 2.2 memperlihatkan diagram alur struktur seleksi yang

melibatkan dua alternatif. Dalam hal ini, simbol belah ketupat

digunakan untuk mewakili langkah pengambilan keputusan.

Page 32: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

17

Gambar 2.3 Alur Struktur Seleksi

3. Struktur Pengulangan

Pengulangan menyatakan suatu tindakan atau langkah yang

dijalankan beberapa kali. Struktur pengulangan menyatakan

perwujudan keadaan seperti itu (Kadir, 2012).

Gambar 2.4 Langkah Struktur Pengulangan

2.5 Algoritma K-Nearest Neighbor

k-NN adalah algoritma untuk mengklasifikasi objek baru

berdasarkan atribut dan training samples (data latih). Dimana hasil

dari sampel uji yang baru diklasifikasikan berdasarkan mayoritas

dari kategori pada k-NN. Algoritma k-NN menggunakan klasifikasi

Page 33: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

18

ketetanggaan sebagai nilai prediksi dari sampel uji yang baru

(Krisandi, dkk. 2013). KNN termasuk algoritma supervised

learning, dimana hasil dari query instance yang baru,

diklasifikasikan berdasarkan mayoritas dari kategori pada KNN.

Kelas yang paling banyak muncul yang akan menjadi kelas hasil

klasifikasi. Data latih akan dibangun dengan memperhatikan

keseimbangan dokumen satu sama lain.

Contoh kasus, misal diinginkan untuk mencari solusi

terhadap masalah seorang pasien baru dengan menggunakan solusi

dari pasien lama. Dalam mencari solusi dari pasien baru tersebut

digunakan kedekatan dengan kasus pasien lama, solusi dari kasus

lama yang memiliki kedekatan dengan kasus baru.

Adapun rumus untuk melakukan perhitungan kedekatan

antara dua kasus adalah sebagai berikut:

Similarity (T, S) = ∑ 𝑓(𝑇𝑖 ,𝑆𝑖 ) ∗ 𝑊𝑖

𝑛𝑖=1

𝑊𝑖

Keterangan :

T : Kasus Baru

S : Kasus yang ada dalam penyimpanan

n : jumlah atribut dalam setiap kasus

i : atribut individu antara 1 s.d.n

f : fungsi similarityatribut I antara kasus T dan kasus S

w : bobot yang diberikan pada atribut ke-i

kedekatan biasanya berada pada nilai antara 0 s.d 1. Nilai 0 artinya

kedua kasus mutlak tidak mirip, sebaliknya untuk nilai 1 kasus mirip

dengan mutlak (Kusrini,2009).

Adapun algortima k-NN dapat dijelaskan (Kurniawan, 2012)

dengan keterangan berikut:

Page 34: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

19

a. Hitung jarak antara data sampel (data uji) dengan data latih yang

telah dibangun. Salah satu persamaan dalam menghitung jarak

kedekatan dapat menggunakan persamaan Cosine Similirity.

b. Menentukan parameter nilai k = jumlah tetanggaan terdekat.

c. Mengurutkan jarak terkecil dari data sample

d. Pasangkan kategori sesuai dengan kesesuaian

e. Cari jumlah terbanyak dari tetanggaan terdekat. Kemudian

tetapkan kategori.

f. Jarak yang digunakan dalam penelitian ini adalah Cosine

Similarity.

2.6 Metode Rapid Application Development

McLeod dan Schell (2007) berpendapat bahwa RAD

merupakan metode yang memfokuskan pada kecepatan dalam

pengembangan sistem untuk memenuhi kebutuhan pengguna atau

pemilik sistem seperti prototipe namum mempunyai cakupan yang

lebih luas, nama RAD dikenalkan oleh James Martin pada tahun

1991, yang mengacu pada life cycle pengembangan sistem

(Mulyani, 2016: 31).

Fase – fase Rapid Application Devlopment (Musyawarman,

2011: 2):

1. Fase perencanaan Kebutuhan (Requirements Planning)

Menentukan tujuan dibentuknya aplikasi dan kebutuhannya.

Menurut Mcleod fan shell pada fase ini dijelaskan mengenai

cakupan sistem yang akan dikembangkan, definisi masalah yang

berhubungan dengan sistem, dan identifikasi tujuan yang

diharapkan nantinya.

2. Fase Proses Desain (Workshop Design)

Data yang mengalir dalam sistem dipresentasikan dalam suatu

diagram aliran data. Diagram tersebut terdiri dari diagram level

0 (diagram konteks), level 1 dan level 2. Perancangan antarmuka

Page 35: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

20

sistem contohnya dilakukan sesuai dengan warna pada logo

perusahaan.

3. Fase Implementasi (Implementation System)

Dilakukannya pengujian terhadap sistem, mengubah atau

menginstak sistem tahap inin juga menjelaskan proses

penyelesaian sistem dan menyerahkan kepada pengguna.

2.7 Unified Modeling Language (UML)

Unified Modeling Language (UML) adalah bahasa

spesifikasi standar untuk mendokumentasikan, menspesifikasikan,

dan membangun sistem perangkat lunak. Unified Modeling

Language (UML) adalah himpunan struktur dan teknik untuk

pemodelan desain program berorientasi obyek (OOP) serta

aplikasinya. UML mulai diperkenalkan oleh Object Management

Group, sebuah organisasi yang telah mengembangkan model,

teknologi, dan standar OOP sejak tahun 1980-an. (David M.

Kroenke, 2005)

UML dikembangkan sebagai suatu alat untuk analisis dan

desain berorientasi objek oleh Grady Booch, Jim Rumbaugh, dan

Ivar Jacobson. Namun demikian UML dapat digunakan untuk

memahami dan mendokumentasikan setiap sistem informasi.

Penggunaan UML dalam industri terus meningkat. Ini merupakan

standar terbuka yang menjadikannya sebagai bahasa pemodelan

yang umum dalam industri peranti lunak dan pengembangan sistem.

2.7.1 Flowchart

Menurut Al-Bahra (2010), dalam buku yang berjudul

Analisis dan Desain Sistem Informasi, menyebutkan bahwa:

flowchart adalah bagan-bagan yang mempunyai arus yang

menggambarkan langkah-langkah penyelesaian suatu masalah.

Page 36: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

21

Sedangkan menurut Jogiyanto (2008) dalam bukunya yang

berjudul Analisis dan Desain Sistem Informasi:

Pendekatan Terstruktur Teori dan Praktek Aplikasi Bisnis,

Flowchart merupakan bagan (chart) yang menunjukkan alir (flow)

didalam program atau prosedur sistem secara logika.

Secara garis besar berdasarkan dua pengertian diatas

flowchart adalah cara penulisan algoritma dengan menggunakan

notasi grafis yang memperlihatkan urutan atau langkah dari suatu

program dan hubungan antar proses beserta pernyataannya.

Pada dasarnya terdapat berbagai macam flowchart,

diantaranya yaitu Flowchart Sistem (System Flowchart), Flowchart

Paperwork / Flowchart Dokumen (Document Flowchart),

Flowchart Skematik (Schematic Flowchart), Flowchart Program

(Program Flowchart), Flowchart Proses (Process Flowchart).

Untuk keperluan pembuatan program maka digunakan Flowchart

Program. Berikut adalah daftar simbol-simbol yang digunakan

dalam flowchart.

Tabel 2.1 Daftar Tabel FLowchart

Nama Simbol Deskripsi

Terminator

Simbol mulai dan selesai

Flow line/ arah

aliran

Simbol arah aliran / penghubung

Proses

Simbol perhitungan atau proses

Input/output data

Mempresentasikan pembacaan data (read)

/ penulisan (write)

Page 37: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

22

Decision

Simbol pernyataan pilihan, berisi suatu

kondisi yang selalu menghasilkan 2 nilai

keluaran yaitu benar atau salah

Preparation

Inisialisasi /pemberian nilai awal

Subprogram

Proses menjalankan sub program / fungsi /

Prosedur

Dokumen

Dokumen merupakan tampilan data secara

fisik yang dapat dibaca oleh manusia. Data

ini biasanya merupakan hasil pemecahan

masalah (informasi) yang telah dicetak

(print out)

Stored data

Simbol yang menyatakan input yang

berasal dari disk atau disimpan ke disk

Keluaran

Simbol untuk menyatakan peralatan output

yang digunakan yaitu layar, plotter, printer

dan sebagainya.

On page

connector

Penghubung Flow chart pada satu halaman

Off page

connector

Penghubung Flow chart pada halaman

berbeda

Page 38: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

23

2.7.2 Use Case

Diagram use case mendefinisikan manfaat sistem jika dilihat

menurut pandangan orang yang berada diluar sistem diagram ini

menunjukkan fungsionalitas suatu sistem atau kelas dan bagaimana

sistem berinteraksi dengan dunia luar. Hal pertama yang dilakukan

seorang pengembang aplikasi yaitu mengenali aktor untuk sistem

atau aplikasi yang dikembangkan (Adi Nugroho, 2009). Use case

diagram adalah gabungan dari beberapa actor, use case, dan

komunikasi antara actor dan use case. (Yulianti, 2012).

Tabel 2.2 Daftar Tabel Diagram Use Case

(Sumber: Yulianti, 2012)

Simbol Nama Keterangan

Use Case Menggambarkan bagaimana

Seseorang menggunakan sistem

Actor

Aktor adalah seseorang atau

sesuatu diluar sistem yang harus

berinteraksi dengan sistem

Association

Relationships

Relationships menggambarkan

hubungan antara dua atau lebih

aktor dan use case dan antara dua

atau lebih use case

Dependency

Hubungan semantik antara dua

benda yang mana benda berubah

akibat benda satunya akan

berubah pula.

2.7.3 Activity Diagram

Activity diagram menggambarkan hubungan dari use case

dan responsibilities dari class. Activity diagram fokus pada behavior

dari operation dan menunjukkan aliran control untuk menyelesaikan

proses tertentu, seperti aktivitas untuk menerima pembayaran. Aliran

Page 39: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

24

control tersebut dimulai dari state awal atau initial state dan diakhiri

oleh state yang lain yang disebut dengan end state. (Yulianti, 2012)

Tabel 2.3 Simbol Diagram Activity

(Sumber: Yulianti, 2012)

Simbol Nama Keterangan

Activity

Activity menggambarkan

sebuah pekerjaan atau tugas

dalam workflow

Start state

Start state dengan tegas

menunjukkan dimulainya

suatu workflow pada sebuah

activity diagram. Start state

digambarkan dengan symbol

lingkaran yang solid

End state

End state menggambarkan

akhir atau terminal dari pada

sebuah activity diagram. Bisa

terdapat lebih dari satu end

state pada sebuah activity

diagram.

Sate transition

State transition menunjukkan

kegiatan apa berikutnya

setelah suatu keiatan

sebelumnya.

Page 40: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

25

Decision

Decision adalah suatu titik

atau point pada activity

diagram yang

mengindikasikan suatu kondisi

dimana ada kemungkinan

perbedaantransisi.

Swimlane

Swimlane digunakan untuk

membagi partisi diagram

aktivitas untuk membantu user

lebih mengerti siapa atau apa

yang sedang melakukan

aktivitas.

2.8 Bahasa Pemrograman PHP

PHP adalah salah satu Bahasa pemograman skrip yang

dirancang untuk membangun aplikasi web. Ketika dipanggil dari

web browser, program yang ditulis dengan PHP akan di-parsing di

dalam web server oleh interpreter PHP dan diterjemahkan ke dalam

dokumen HTML, yang selanjutnya akan ditampilkan kembali ke

web browser. Karena pemprosesan program PHP dilakukan di

lingkungan web server, PHP dikatakan sebagai Bahasa sisi server

(server-side). Oleh sebab itu, seperti yang telah dikemukakan

sebelumnya, kode PHP tidak akan terlihat pada saat user memilih

perintah “view source” pada web browser yang yang mereka

gunakan. Meskipun PHP 5 dapat digunakan untuk membuat aplikasi

CLI (command Line Interface) dan juga aplikasi desktop (seperti

Perl, Phyton dan Ruby), namun pada umumnya orang menggunakan

PHP untuk tujuan pembuatan aplikasi web (Raharjo, 2014).

Page 41: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

26

2.9 Basis Data

Basis data (database) menurut Yakub (2012) diartikan

sebagai markas atau gedung, tempat bersarang atau berkumpul.

Prinsip utama basis data adalah pengaturan data dengan tujuan

utama fleksibilitas dan kecepatan dalam pengambilan data kembali.

Adapun tujuan basis data diantaranya sebagai efisiensi yang

meliputi speed, space, dan accurancy, menangani data dalam jumlah

besar, kebersamaan pemakaian, dan meniadakan duplikasi.

Menurut Connolly dan Begg (2010), basis data adalah

sebuah kumpulan data yang secara logis terkait dan dirancang untuk

memenuhi suatu kebutuhan informasi dari sebuah organisasi.

Sedangkan menurut Indrajani (2015), basis data adalah kumpulan

data yang saling berhubungan secara logis dan didesain untuk

mendapatkan data yang dibutuhkan oleh suatu organisasi.

2.9.1 Database Management System (DBMS)

DBMS adalah sebuah sistem perangkat lunak yang

mengizinkan pengguna untuk mendefinisikan, membuat,

memelihara, dan mengontrol akses ke dalam basis data (Connoly

dan Begg, 2010). Fasilitas yang disediakan DBMS antara lain:

1. Mengizinkan pengguna untuk mendfinisikan basis data, dengan

melalui Data Definition Language (DDL). DDL mengizinkan

pengguna untuk menentukan tipe, struktur, serta kendala data

yang nantinya akan disimpan ke dalam basis data.

2. Mengizinkan pengguna untuk melakukan menambah,

mengubah, menghapus dan mengambil data dari basis data

tersebut, dengan menggunakan Data Manipulation Language

(DML). Standard bahasa dari DBMS ialah Structured Query

Language (SQL).

3. Menyediakan akses kontrol ke dalam basis data, seperti sistem

keamanan, yang dapat mencegah pengguna yang tidak diberi

kuasa untuk mengakses basis data. Sistem integritas, yang dapat

Page 42: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

27

menjaga konsistensi dari data yang tersimpan. Sistem kontrol

konkurensi, yang mengizinkan berbagi akses dengan basis data.

Sistem kontrol pemulihan, jika terjadi kegagalan perangkat keras

atau perangkat lunak maka sistem kontrol pemulihan ini dapat

mengembalikan basis data ke keadaan yang konsisten dari yang

sebelumnya.

Sistem manajemen database DBMS (Database Management

System) merupakan kumpulan kode program untuk menciptakan dan

memelihara sebuah database yang dilakukan oleh pengguna (user).

DBMS merupakan sistem perangkat lunak (software) yang memiliki

fasilitas proses mendefinisikan (define), membangun (construct) dan

memelihara (manipulate) database pada perangkat aplikasi yang

bervariasi (Bagir, 2012).

2.9.2 MySql

MySQL adalah sebuah perangkat lunak sistem manajemen

basis data SQL (bahasa inggris: databae management system) atau

DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi

di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai

perangkat lunak gratis di bawah lisensi GNU General Public

License (GPL), tetapi mereka juga menjual dibawah lisensi

komersial untuk kasus-kasus dimana penggunaannya tidak cocok

dengan penggunaan GPL (Solichin, 2010).

Tidak seperti PHP atau Apache yang merupakan software

yang dikembangkan oleh komunitas umum, dan hak cipta untuk

kode sumber dimiliki oleh penulisnya masing-masing. MySQL

dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia

yaitu MySQL AB. MySQL AB memegang penuh hak cipta hamper

atas semua kode sumbernya. Kedua orang Swedia dan satu orang

Finlandia yang mendirikan MySQL AB adalah: David Axmark,

Allan Larsson, dan Michael “Monty” Widenius (Solichin, 2010).

Fitur-fitur MySQL antara lain:

Page 43: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

28

a. Relational Database System. Seperti halnya software database

lain yang ada di pasaran, MySQL termasuk RDBMS.

b. Arsitektur Client-Server. MySQL memiliki arsitektur client-

server dimana server database MySQL terinstal di server. Client

MySQL dapat berada di komputer yang sama dengan server, dan

dapat juga di komputer lain yang berkomunikasi dengan server

melalui jaringan bahkan internet.

c. Mengenal perintah SQL standar. SQL (Structured Query

Language) merupakan suatu bahasa standar yang berlaku di

hamper semua software database. MySQL mendukung SQL

versi SQL: 2003.

d. Mendukung Sub Select. Mulai versi 4.1 MySQL telah

mendukung select dalam select (sub select).

e. Mendukung Views. MySQL mendukung views sejak versi 5.0

f. Mendukung Stored Procedured (SP). MySQL mendukung SP

sejak versi 5.0

g. Mendukung Triggers. MySQL mendukung trigger pada versi

5.0 namun masih terbatas. Pengembang MySQL berjanji akan

meningkatkan kemampuan trigger pada versi 5.1

h. Mendukung replication

i. Mendukung transaksi.

j. Mendukung foreign key.

k. Tersedia fungsi GIS.

l. Free (bebas didownload).

m. Stabil dan tangguh.

n. Fleksibel dengan berbagai pemrograman.

o. Security yang baik.

p. Dukungan dari banyak komunitas.

Lisensi MySQL terbagi menjadi dua, yaitu dapat

menggunakan MySQL sebagai produk opensource di bawah

Page 44: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

29

General Public License (GNU) secara gratis atau dapat membeli

lisensi dari versi komersialnya. MySQL komersial tentu memiliki

nilai lebih atau kemampuan yang tidak disertakan pada versi gratis.

Pada kenyataannya, untuk keperluan industri menengah ke bawah,

versi gratis dapat digunakan dengan baik (Budi Raharjo, 2011).

2.10 Perangkat Lunak Pendukung

2.10.1 Xampp

XAMPP adalah paket Web Server sumber terbuka yang

berfungsi pada berbagai platform. Ini sebenarnya adalah singkatan

dengan X yang berarti “lintas” platform, A untuk server HTTP

Apache, M untuk MySQL, P untuk PHP, dan P untuk Perl.

XAMPP dirancang untuk membantu pengembang halaman

web, programer, dan perancang memeriksa dan meninjau pekerjaan

mereka menggunakan komputer mereka bahkan tanpa koneksi ke

web atau internet. Jadi, pada dasarnya XAMPP dapat digunakan

untuk berdiri sebagai halaman untuk internet bahkan tanpa koneksi

ke sana.

Itu juga dapat digunakan untuk membuat dan

mengkonfigurasi dengan database yang ditulis

dalam MySQL atau SQLite. Karena XAMPP dirancang sebagai

paket server lintas platform, ia tersedia untuk berbagai sistem

operasi dan platform seperti Microsoft Windows, Mac OS X, Linux,

dan Solaris.

2.10.2 Ionic

Ionic adalah sebuah framewok aplikasi mobile berbasis

HTML5 yang dapat digunakan untuk mengembangkan

apikasi mobile dengan teknologi web seperti HTML, CSS, dan

Javascript. Dengan menggunakan Ionic, para developer web bisa

membuat aplikasi lintas platform seperti untuk Android dan iOS.

Page 45: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

30

Dengan menggunakan Ionic, para developer web tidak perlu

belajar bahasa pemrograman Java, Objective C, atau C# untuk

membuat aplikasi mobile karena mereka cukup menggunakan ilmu

mereka di bahasa pemrograman web.

Ionic mempunyai kelebihan diantaranya bersifat open

source dan juga menggunakan teknologi web terbaru. Ionic juga

menggunakan Angular JS untuk implementasi logic-nya. Kabarnya,

dengan menggunakan Angular JS aplikasi yang dibuat

menggunakan Ionic akan dapat berjalan sangat cepat seperti halnya

aplikasi native.

Untuk desain tampilan antarmuka aplikasi, ini dimudahkan

di Ionic dengan bantuan ID-nya yang bernama Ionic Lab. Ini

berbeda dengan framewok lain seperti jQuery Mobile di mana kita

harus koding manual untuk membuat tampilan antarmuka

aplikasinya.

Dikarenakan Ionic hanyalah sebuah framework, untuk

merubah kodingan kita menjadi aplikasi Android atau iOS perlu

menggunakan tool tambahan seperti Cordova / Phonegap.

2.10.3 Javascript

Javascript menurut (Sunyoto,2007:17) adalah bahasa

scripting yang popular di internet dan dapat bekerja di sebagian

besar browser popoler seperti Internet Explorer (IE), Mozilla

Firefox, Netscape dan Opera. Kode Javascript dapat disisipkan

dalam halaman web menggunakan tag SCRIPT. Beberapa hal

tentang Javascript:

1. Javascript didesain untuk menambah interaktif suatu web

2. Javascript merupakan sebuah bahasa scripting.

3. Bahasa scripting merupakan bahasa pemograman yang ringan.

Page 46: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

31

4. Javascript berisi baris kode yang dijalankan di komputer (web

browser).

5. Javascript biasanya disisipkan (embedded) dalam halaman

HTML.

6. Javascript adalah bahasa interpreter (yang berarti skrip

dieksekusi tanpa proses kompilasi).

7. Setiap orang dapat menggunakan Javascript tanpa membayar

lisensi.

2.10.4 CSS (Cascanding Style Sheet)

Menurut Bunafit Nugroho (2014:1), Cascanding Style Sheet

adalah bahasa stye sheet yang digunakan untuk mengatur tampilan

suatu dokumen yang ditulis dalam bahasa markup. CSS bekerja

sebagai pelengkap pada elemen HTML yang kesemuanya itu dapat

dikendalikan dengan menggunakan dengan menggunakan sebuah

bahasa script CSS. Penggunaan CSS dilakukan untuk memperluas

kemampuan HTML dalam memformat dokumen web atau untuk

memperindah tampilan web. Penulisan kode CSS disisipkan pada

tag HTML. Kode CSS ditulis dengan tag <style> dan </style>

dengan mendefinisikan suatu style baru yang kemudian dapat

digunakan berulang kali.

2.10.5 Visual Studio Code

Visual Studio Code (VSCode) merupakan editor teks cross-

platform yang tersedia bagi sistem operasi Windows, Linux,

maupun OS X. Editor ini dikembangkan oleh Microsoft dan dengan

cepat mengambil hati para developer yang menggunakan Sublime

Text untuk pindah menggunakan VSCode.

Seperti Sublime Text, VSCode memiliki sebuah fitur plugin

bernama extentions. Extension bisa kita tambahkan langsung dari

dalam VSCode itu sendiri. Extension yang tersedia di Marketplace

juga bisa langsung dicari dari menu Extension.

Page 47: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

32

2.11 Studi Pustaka

Studi pustaka merupakan salah satu metode pengumpulan

data yang dilakukan dengan mencari, mengumpulkan dan membaca

dokumen sebagai refrensi seperti buku, artikel, jurnal dan literatur

sejenis dengan sistem pakar menggunakan metode forward chaining

dan best first search. (Lisna Zahrotun, 2015)

2.12 Observasi

Pengertian Metode Observasi Definisi Menurut Para Ahli

Dalam Penelitian - Pengertian Observasi merupakan teknik

pengumpulan data, dimana peneliti melakukan pengamatan secara

langsung ke objek penelitian untuk melihat dari dekat kegiatan yang

dilakukan (Riduwan, 2004 : 104).

2.13 Wawancara

Lexy J. Moleong (1991:135) Mendefinisikan bahwa

wawancara dengan tujuan percakapan tertentu. Dalam metode ini

peneliti dan responden secara langsung (tatap muka) untuk

memperoleh informasi secara lisan dengan mendapatkan data tujuan

yang bisa menjelaskan masalah penelitian.

2.14 Metode Pengujian Sistem

Pengujian sistem menyajikan anomali yang menarik bagi

rekayasa perangkat lunak pada proses perangkat lunak, perekayasa

berusaha membangun perangkat lunak dari konsep abstrak ke

implementasi yang dapat dilihat, baru kemudian dilakukan

pengujian.

2.14.1 Pengujian Black Box

Dalam pengujian perangkat lunak ada dua yaitu white box

testing dan black box testing. Dari kedua metode itu, penulis

memilih menggunakan black box testing karena dianggap lebih tepat

dibanding white box testing. Perangkat lunak memerlukan tes untuk

Page 48: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

33

pencarian kesalahan fungsi-fungsi dalam aplikasi sehingga dalam

hal ini black box testing lebih sesuai. Pengujian ini digunakan untuk

mengetahui apakah fungsi-fungsi dalam perangkat lunak sudah

sesuai dengan yang diharapkan.

Page 49: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

34

BAB III

METODOLOGI PENELITIAN

3.1 Metode Pengumpulan Data

Pada penilitian ini penulis mengumpulkan data dan informasi

menggunakan observasi, wawancara dan studi pustaka.

3.1.1 Observasi

Penulis melakukan observasi langsung dengan mengambil

data warga miskin yang berada di wilayah RW.13 Kelurahan

Palmerah Kecamatan Palmerah Jakarta Barat.

3.1.2 Wawancara

Penulis melakukan wawancara langsung dengan Ketua RW.

13 Kelurahan Palmerah Kecamatan Palmerah Jakarta Barat untuk

memperoleh informasi yang dibutuhkan untuk menunjang

kebutuhan penelitian.

3.1.3 Studi Pustaka

Metode studi pustaka merupakan sumber data sekunder dalam

penelitian. Metode studi pustakan dilakukan dengan mengumpulkan

teori, metode, serta teknik penelitian yang berkaitan dengan

penulisan dan menganalisis data dalam penelitian sebagai bahan

untuk melengkapi penelitian ini. Sumber teori berasal dari buku

referensi; hasil penelitian sebelumnya seperti jurnal, skripsi; dan

artikel oleh peneliti terdahulu sehingga memperoleh orientasi yang

lebih luas dalam permasalahan yang dipilih dan diangkat.

3.1.4 Studi Literatur Sejenis

Penelitian ini menggunakan beberapa jurnal dan skripsi dari

beberapa penulis terkait dengan menentukan metode apa yang tepat

untuk menentukan warga yang layak mendapatkan bantuan sosial

sebagai referensi.

Page 50: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

35

Tabel 3.1 Perbandingan Studi Literatur Sejenis

No Penulis Judul Tahun

Metode

yang

digunakan

Kesimpulan Kekurangan Kelebihan

1. Haditsah

Annur

Klasifikasi

Masyarakat

Miskin

Menggunakan

Metode Naïve

Bayes

2018 Naïve Bayes

• Sistem Klasifikasi

masyarakat miskin

berjalan lancar

dengan adanya

pengujian whitebox

dan blackbox.

• Hasil pengujian

sistem diperoleh

tingkat keakurasian

sebesar 73% yaitu

“Baik” sehingga

sistem dapat

• Tingkat keakurasian

sistem dalam

menentukan

masyarakat miskin di

wilayah tersebut masih

bisa dikembangkan

kembali agar menjadi

Sangat Baik karena

masih belum akurat dari

hasil penelitian saat ini.

• Penjelasan yang

cukup jelas

dipaparkan oleh

peneliti, sehingga

mudah dipahami oleh

pembaca saat meneliti

jurnal tersebut.

Page 51: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

36

digunakan untuk

bahan pengambilan

keputusan.

2. Dwi

Rahayu

Utami

Aplikasi

Monitoring

Keluarga

Miskin

Menggunakan

Metode K-

Means

Berbasis

Mobile GIS

2018 K-Means Sistem Aplikasi

berbasis mobile

berjalan dengan lancar

dan sangat baik

sehingga menghasilkan

tingkat keakurasian

92.8% yang termasuk

ke dalam tingkat

Excellent

Classification.

Tidak ada fitur pencarian

nilai k yang terkait dari

Algoritma Klasterisasi K-

Means.

Skripsi yang disediakan

oleh peneliti sangat

lengkap materinya

sehingga sangat mudah

dimengerti, serta lengkap

dengan grafik dan

sumbernya dicantumkan.

3. Muhammad

Jabal

Tursina

Sentimen

Analisis

Sistem Zonasi

Sekolah Pada

2019 Metode K-

Nearest

Neighbor &

Hasil dari Analisis

Tingkat Keakurasian

dari 2 Perbandingan

Algoritma K-Nearest

Sangat diharapkan untuk

penelitian selanjutnya

yaitu:

Analisa yang telah

dilakukan oleh penulis

sudah sangat jelas dan

akurat dalam pembuktian

Page 52: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

37

Media Sosial

Youtube

Menggunakan

Metode K-

Nearest

Neighbor

Dengan

Algoritma

Levenshtein

Distance

Levenshtein

Distance

Neighbor dengan

Levenshtein Distance

sebesar 65.625%

tingkat akurasi rendah

karena adanya

perbaikan kata-kata

yang tidak sesuai atau

typo menjadi kata-kata

yang sesuai dengan

KBBI.

• Meningkatkan jumlah

data latih yang

digunakan dalam

proses

pengklasifikasian.

• Menggunakan Cross

Validation untuk

mencari nilai optimal

dan akurasi.

di skripsinya

menggunakan metode K-

Nearest Neighbor dengan

Algoritma Levensthein

Distance.

4. Haditsah

Annur, &

Moh.

Efendi

Lasulika

Klasifikasi

Nasabah

Kredit

Koperasi

Menggunakan

Algoritma K-

2019 Metode K-

Nearest

Neighbor

Data uji untuk

mendapatkan akurasi

dari algoritma K-NN

memperoleh hasil

akurasi sebesar 77.78

%. Maka dari itu

algoritma KNN baik

Tidak ada tampilan

aplikasi di dalam jurnal

sehingga pembaca tidak

mengetahui apakah

pengujian tingkat

keakurasian data sudah

Page 53: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

38

Nearest

Neighbor

digunakan dalam

klasifikasi nasabah

kredit koperasi,

sehingga Koperasi

dapat mencegah resiko

kredit nasabah mereka.

sesuai dengan aplikasi dan

hitungan manual.

Page 54: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

39

Berdasarkan Tabel 3.1, maka dapat disimpulkan bahwa penelitian ini

memiliki perbedaan dari penelitian terdahulu. Aplikasi yang dirancang oleh

Haditsah Annur menggunakan Naïve Bayes untuk menentukan Klasifikasi namun

penelitian ini menggunakan K-Nearest Neighbor yaitu Klasifikasi. Sementara

aplikasi yang dirancang oleh Dwi Rahayu Utami menggunakan K-Means

sedangkan penilitian ini menggunakan K-Nearest Neighbor yaitu Klasifikasi.

Aplikasi yang dirancang oleh Muhamad Jabal Tursina menggunakan metode KNN

& Levenshtein Distance untuk Analisis. Dan Jurnal yang diteliti oleh Haditsah

Annur dan Moh Efendi Lasulika menggunakan KNN untuk klasifikasi. Dari semua

studi literatur, maka penulis menentukan metode KNN dengan Klasifikasi Data

serta dengan aplikasi yang sudah dibuat dan ditentukan keakurasiannya.

3.2 Metode Pengembangan Sistem

Pengembangan sistem dalam penelitian ini penulis menggunakan model

RAD (Rapid Aplication Development), yaitu fase perencanaan syarat, fase

perancangan, dan fase implementasi. Model RAD digunakan penulis karena sesuai

kebutuhan dan sudah memiliki batasan penelitian. Medel RAD merupakan

pendekatan berorientasi objek dalam suatu metode pengembangan perangkat lunak.

Tujuan dari model RAD yaitu menghasilkan proses secara cepat dan tepat, dan

mempersingkat waktu pengerjaan. Model RAD diilustrasikan seperti gambar 3.1:

(Kendall, 2003)

Page 55: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

40

Gambar 3.1 Siklus Pengembangan Sistem Mode

Gambar 3.2 l RAD

(Sumber : Nurhayati dan Syukri Sayyid Ahmad, 2016)

3.2.1 Fase Perencanaan Sistem

Pada tahapan ini, penulis melakukan analisis kebutuhan, menentukan

fungsi yang tersedia dalam fitur, serta menentukan syarat software dan hardware.

Hal tersebut penulis uraikan sebagai analisa sistem yang berjalan dan sistem yang

diterapkan.

3.2.2 Fase Perancangan Design

Pada tahapan ini, penulis melakukan perancangan proses, flowchart, serta

perancangan antar muka (interface). Perancangan proses merupakan suatu

perancangan saat proses klasifikasi data yang dilakukan sistem untuk mencari

kemiripan nilai dari suatu data yang dibandingkan dari data lama dengan data baru.

Perancangan flowchart merupakan suatu perancangan yang terdapat didalam

aplikasi. Perancangan antar muka pengguna (user interface) merupakan suatu

Page 56: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

41

perancangan antar muka pengguna untuk berkomunikasi antara pengguna dan

sistem.

3.2.3 Fase Implementasi

Pada tahapan ini, penulis melakukan pengujian dan analisa terhadap

aplikasi. Pengujian dilakukan dengan membandingkan data lama dengan data baru

sesuai data yang sudah ada di dalam data training. Selain itu, tahapan ini melakukan

pengenalan terhadap sistem ke pengguna.

3.3 Alasan Menggunakan Rapid Application Development

(RAD)

Penulis menggunakan metode pengembangan sistem berupa Rapid

Application (RAD) dalam penelitian ini. Alasan menggunakan model RAD sebagai

berikut:

1. Aplikasi dalam penelitian ini merupakan aplikasi sederhana dan

memerlukan waktu yang singkat. Sehingga sangat tepat menerapkan

model RAD.

2. Jika kebutuhan dapat dipahami dengan baik, maka model RAD akan

mencapai suatu sistem fungsional yang utuh dalam periode waktu yang

singkat.

3. Aplikasi ini menggunakan konsep Object Oriented Programming.

4. Aplikasi dalam penelitian ini memiliki batasan agar tidak mengalami

perubahan.

3.4 Kerangka Penelitian

Penulis menggambarkan alur diagram untuk menjelaskan proses

berjalannya sebuah penelitian. Kerangka berfikir dalam penelitan ini diilustrasikan

pada gambar 3.2

Page 57: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

42

Gambar 3.3 Alur Kerangka Penelitian

Wawancara Studi Pustaka

Page 58: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

43

BAB IV

ANALISIS DAN PERANCANGAN SISTEM

Pada bab ini akan membahas dan mendeskripsikan mengenai pembuatan

sistem yang akan mengaplikasikan dengan menerapkan metode yang sudah dibahas

pada bab sebelumnya. Dalam bab sebelumnya telas dibahas bahwa metode

pengembangan sistem yang digunakan dalam pengembangan sistem kali ini adalah

Rapid Aplication Development (RAD). Tahap perancangan menjadi tahapan

kegiatan yang akan menentukan sistem yang akan dibuat. Sementara tahap

implementasi pada bab ini yaitu tahapan kegitan dalam penentuan tindakan atau

keputusan yang akan menentukan rancangan sistem.

4.1 Fase Perencanaan

4.1.1 Analisa Sistem

Analisa Sistem terdapat 5 proses utama yaitu Login, Perhitungan Data

Training, Perhitungan Data Testing, Proses Batasan, dan Laporan. Peran utama

dalam aplikasi KNN untuk mengklasifikasi warga yang layak mendapatkan bantuan

sosial yaitu seorang Admin yang dapat menginputkan Data Training warga

penerima bantuan sosial serta menginputkan Data Testing dan inputan Batasan

warga penerima bantuan sosial.

Data Testing yang telah diinputkan oleh admin masuk ke dalam proses

perhitungan data testing yang mengambil bobot dari database bobot, kemudian hasil

perhitungan dibandingkan dengan data training. Hasil perbandingan dimasukkan

dalam database data testing. Proses perhitungan data testing langsung masuk ke

proses Batasan, kemudian admin dapat menginputkan banyaknya warga yang

menerima bantuan sosial dan nantinya akan masuk proses Batasan, hasilnya

disimpan dalam database hasil dan menghasilkan laporan yang dapat diakses oleh

admin.

Page 59: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

40

Gambar 4.1 Proses Mengambilan Keputusan Untuk Warga Yang Menerima Bantuan

4.1.2 Tujuan Informasi

Pada tahap tujuan informasi ini merupakan tahapan untuk

mengidentifikasi tujuan sistem dengan menganalisis permasalahan yang terjadi

dalam menentukan warga yang layak atau tidak mendapatkan bantuan sosial.

Identifikasi ini bertujuan untuk mengetahui sasaran dibentuknya sistem. Penulis

melakukan penelitian untuk mengumpulkan data dan informasi sebagai dasar acuan

Page 60: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

41

dalam pengaplikasian sistem. Tujuannnya adalah untuk mengetahui penerapan

algoritma KNN yang dapat membantu sistem untuk menentukan warga yang benar-

benar layak atau tidak layak mendapatkan bantuan sosial berdasarkan bobot yang

sudah ditentukan di Data Training.

4.1.3 Analisa Kebutuhan

Analisa kebutuhan merupakan analisis penggunaan perangkat keras dan

perangkat lunak yang dibutuhkan pada Aplikasi KNN yang akan mendukung

penginputan Data Training hingga pengujian Data Testing. Adapun perangkat keras

yang dibutuhkan yaitu dengan spesifikasi seperti yang terlampir dalam Tabel 4.1

Tabel 4.1 Kebutuhan Perangkat keras dan Perangkat lunak

Perangkat Keras Perangkat Lunak

Processor : AMD Dual Core E1-

7010

Sistem

Operasi : Windows 10 Pro

Hard Disk

Drive : 500 GB

Bahasa

Pemrograman : PHP

Memory : 2 GB Aplikasi

Permodelan

: VSCode,

Ms. Office 2010

VGA Card : Minimum Aplikasi

pengolah kata : Ms. Word 2010

4.2 Fase Perancangan Design

Perancangan sistem bertujuan untuk memberikan gambaran secara umum

kepada pengguna mengenai perancangan sistem secara umum juga sudah dapat

mengenal komponen sistem yang akan di desain. Penentuan persyaratan sistem

dilakukan agar arah perancangan sistem dapat terarah pada sasaran, oleh sebab itu

sistem yang dirancang harus memenuhi batasan sistem.

4.2.1 Perancangan Prosedur

Pada tahapan ini dilakukan permodelan dengan menggunakan Unified

Modeling Language (UML). Rancangan sistem keamanan pesan ini dapat dilihat

berdasarkan use case diagram, activity diagram, Sequence Diagram.

Page 61: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

42

1. Flow Chart

Flowchart adalah adalah suatu bagan dengan simbol-simbol tertentu

yang menggambarkan urutan proses secara mendetail dan hubungan antara

suatu proses (instruksi) dengan proses lainnya dalam suatu program.

Start

Login

Masukkan Username dan

Password

Login

Validasi

Data Testing

Masukkan NIP, Nama, Tempat Lahir, Penghasilan, Tanggal Lahir, Jumlah Tanggungan, Jenis Kelamin, Pekerjaan

Hitung

Data Warga Mampu / Tidak

Simpan

Report

Cetak

Selesai

Emai

l & P

assw

ord

Sala

h

Email & Password Benar

Gambar 4.2 Alur Aplikasi KNN

Page 62: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

43

2. Use Case Diagram

Use case diagram adalah diagram yang menunjukkan fungsionalitas

suatu sistem atau kelas dan bagaimana sistem tersebut berinteraksi

dengan dunia luar dan menjelaskan sistem secara fungsional yang

terlihat oleh pengguna.

Gambar 4.3 Use Case Diagram Steganografi Audio

3. Skenario Use Case

Use case scenario adalah sebuah dokumentasi terhadap kebutuhan

fungsional dari sebuah sistem. Berikut penjelasan dari masing-masing

Use Case dalam steganografi pada file audio ini.

a. Use Case Menu Login

Nama Use Case : Login

Aktor : Admin

Deskripsi : Use Case ini menggambarkan tentang

langkah awal dimana proses ini admin harus memasukkan username

dan password terlebih dahulu untuk bisa mengakses seluruh menu

yang ada di aplikasi KNN.

Page 63: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

44

b. Use Case Bobot

Nama Use Case : Bobot

Aktor : Admin

Deskripsi : Use Case ini menggambarkan tentang suatu

nilai yang sudah ditentukan untuk membandingkan data training

dengan data testing yang ada di aplikasi KNN.

c. Use Case Atribut

Nama Use Case : Atribut

Aktor : Admin

Deskripsi : Use Case ini menggambarkan tentang suatu

bahan acuan data yang sudah ditentukan berdasarkan nama bobot,

data baru, data lama, serta nilai bobot yang akan digunakan untuk

mengklasifikasikan data warga yang layak mendapatkan bantuan

sosial dengan kategori “mampu” dan “tidak mampu”.

d. Use Case Menu Data Training

Nama Use Case : Data Training

Aktor : Admin

Deskripsi : Use Case ini menggambarkan tentang data

yang sudah diinputkan oleh admin, meliputi NIP, Nama,

Penghasilan, Tanggungan, Pekerjaan, dan Status warga yang layak

atau tidak layak mendapatkan bantuan yang nantinya akan

digunakan untuk membandingkan data baru.

e. Use Case Menu Data Testing

Nama Use Case : Data Testing

Aktor : Admin

Deskripsi : Use Case ini menggambarkan tentang

penginputan data meliputi NIP, Nama, Penghasilan, Tanggungan,

Pekerjaan, Tempat Lahir, Tanggal Lahir, dan Jenis Kelamin.

Page 64: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

45

Kemudian data diproses untuk menampilkan daftar warga apakah

berkategori mampu atau tidak mampu.

f. Use Case Menu Report

Nama Use Case : Report

Aktor : Admin

Deskripsi : Use Case ini menggambarkan tentang hasil

dari proses keputusan dalam menentukan warga yang layak dan tidak

layak mendapatkan bantuan social. Hasil tersebut bias langsung

dicetak ke printer atau bisa disimpan berupa format pdf berdasarkan

kategori mampu dan tidak mampu.

g. Use Case Menu User

Nama Use Case : User

Aktor : Admin

Deskripsi : Use Case ini bertujuan untuk menampilkan

username dan password yang hanya bias dilihat dan ditambahkan

oleh admin.

4. Activity Diagram

Activity diagram memodelkan aliran kerja atau workflow dari urutan

aktifitas dalam suatu proses yang mengacu pada use case diagram

yang ada. Activity diagram pada sistem steganografi pesan ini terdiri

dari activity diagram menu utama, activity diagram Embedding,

activity diagram ekstraksi pesan, activity diagram petunjuk aplikasi,

activity diagram tentang aplikasi. Berikut ini penjelasan dengan

activity diagram pada sistem steganografi pesan

a. Activity Diagram Menu Login

Interaksi antara admin dengan use case penyisipan dijelaskan

dalam activity diagram pada gambar 4.3.

Page 65: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

46

Gambar 4.4 Activity Diagram Menu Login

b. Activity Diagram Bobot

Interaksi antara admin dengan use case penyisipan dijelaskan

dalam activity diagram pada gambar 4.4.

Gambar 4.5 Activity Diagram Bobot

Page 66: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

47

c. Activity Diagram Atribut

Interaksi antara admin dengan use case penyisipan dijelaskan

dalam activity diagram pada gambar 4.5.

Gambar 4.6 Activity Diagram Atribut

Page 67: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

48

d. Activity Diagram Data Training

Interaksi antara admin dengan use case penyisipan dijelaskan

dalam activity diagram pada gambar 4.6.

Gambar 4.7 Activity Diagram Data Training

Page 68: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

49

e. Activity Diagram Data Testing

Interaksi antara admin dengan use case penyisipan dijelaskan

dalam activity diagram pada gambar 4.7.

Gambar 4.8 Activity Diagram Data Testing

Page 69: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

50

f. Activity Diagram Report

Interaksi antara admin dengan use case penyisipan dijelaskan

dalam activity diagram pada gambar 4.8.

Gambar 4.9 Activity Diagram Report

Page 70: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

51

g. Activity Diagram User

Interaksi antara admin dengan use case penyisipan

dijelaskan dalam activity diagram pada gambar 4.9.

Gambar 4.10 Activity Diagram User

4.2.2 Perancangan Antarmuka Pengguna

Antarmuka pengguna merupakan mekanisme komunikasi antara pengguna

dengan sistem. Perancangan tampilan antarmuka diperlukan untuk mengetahui

bentuk tampilan yang akan digunakan pada aplikasi. Tampilan yang menarik dan

user friendly akan memberikan nilai tambah pada aplikasi.

1. Tampilan Menu Login

Menu login merupakan tampilan utama dari aplikasi KNN. Ketika pengguna

mengakses aplikasi KNN, halaman pertama yang muncul adalah menu login.

Pada menu login terdapat beberapa komponen, diantaranya:

Page 71: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

52

a. Input Username : berfungsi untuk menginput username yang sudah di

sediakan atau ditambahkan oleh admin.

b. Input Password : berfungsi untuk menginput password yang sudah

disediakan atau ditambahkan oleh admin.

c. Tombol Login : berfungsi untuk menjalankan proses masuk ke

aplikasi KNN berdasarkan username dan password yang sudah tersedia.

Gambar 4.11 Rancangan Antarmuka Menu Login

2. Tampilan Menu Bobot

Menu bobot berfungsi untuk menampilkan data bobot yang sudah ditentukan

berdasarkan kategori dan kebutuhan yang dijadikan perbandingan data di data

training. Pada menu bobot terdapat beberapa komponen, diantaranya:

a. Tombol Tambah : Berfungsi untuk menambahkan Nama dan Nilai

Bobot terbaru.

b. Tombol Ubah : Berfungsi untuk mengubah Nama dan Nilai Bobot

yang akan dirubah.

c. Tombol Hapus : Berfungsi untuk menghapus Nama dan Nilai Bobot

yang ingin dihapus.

Page 72: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

53

Gambar 4.12 Rancangan Antarmuka Menu Bobot

3. Tampilan Menu Atribut

Menu atribut berfungsi untuk menampilkan banyaknya nilai atribut yang akan

digunakan sebagai perbandingan data lama dengan data baru yaitu sebagai

perhitungan data testing. Pada menu atribut terdapat beberapa komponen,

diantaranya:

a. Tombol Tambah : Berfungsi untuk menambahkan ID Bobot, Nama

Bobot, Data Baru, Data Lama, dan Nilai Bobot.

b. Tombol Ubah : Berfungsi untuk mengubah ID Bobot, Nama Bobot,

Data Baru, Data Lama, dan Nilai Bobot yang akan dirubah.

c. Tombol Hapus : Berfungsi untuk menghapus ID Bobot, Nama

Bobot, Data Baru, Data Lama, dan Nilai Bobot yang ingin dihapus.

Page 73: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

54

Gambar 4.13 Rancangan Antarmuka atribut

4. Tampilan Menu Data Training

Menu data training berfungsi untuk menampilkan 6 data traning yang sudah

ditentukan dan dijadikan perbandingan dalam perhitungan data baru dan data

lama untuk menentukan warga mampu dan tidak mampu yang layak

mendapatkan bantuan sosial. Pada menu data training terdapat beberapa

komponen, diantaranya:

a. Tombol Tambah : Berfungsi untuk menambahkan NIP, Nama,

Penghasilan, Tanggungan, Pekerjaan, dan Status.

b. Tombol Ubah : Berfungsi untuk mengubah NIP, Nama,

Penghasilan, Tanggungan, Pekerjaan, dan Status.

c. Tombol Hapus : Berfungsi untuk menghapus NIP, Nama,

Penghasilan, Tanggungan, Pekerjaan, dan Status.

Page 74: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

55

Gambar 4.14 Rancangan Antarmuka Data Training

5. Tampilan Menu Data Testing

Menu data testing berfungsi untuk menginput data warga sesuai kolom yang

sudah disediakan, setelah di input kemudian dihitung dan dibandingkan untuk

mencari 3 data tertinggi yang lebih mirip dari data training dan di simpan. Pada

menu data testing terdapat beberapa komponen, diantaranya:

a. Tombol Hitung : Berfungsi untuk menghitung data testing warga

berdasarkan perbandingan nilai bobot, data baru dan data lama sesuai

yang sudah di input di data training.

b. Tombol Simpan : Berfungsi setelah data testing warga dihitung,

kemudian disort berdasarkan 3 angka tertinggi. Maka selanjutnya diklik

tombol Simpan. Dan akan disimpan ke menu report dan ke database.

Gambar 4.15 Rancangan Antarmuka Data Testing

Page 75: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

56

Gambar 4.1 Rancangan Antarmuka Data Testing

6. Tampilan Menu Report

Menu report berfungsi untuk menampilkan hasil data warga yang sudah di

input di data testing secara keseluruhan dan ada 2 pilihan untuk menampilkan

warga yang mampu dan tidak mampu, serta di menu report dapat menjalankan

untuk proses menyimpan data berupa pdf dan bisa dicetak langsung. Pada

menu report terdapat beberapa komponen, diantaranya:

a. Tombol Print : Berfungsi untuk menjalankan proses cetak

berdasarkan status yang dipilih “mampu” dan “tidak mampu”.

b. Tombol Simpan : Berfungsi untuk menjalankan proses menyimpan

data warga berdasarkan kategori terdapat 2 pilihan, simpan sebagai Pdf,

atau cetak dengan printer yang sudah terhubung di PC.

c. Tombol Batal : Berfungsi untuk mebatalkan perintah cetak atau

simpan berkas ke dalam pdf.

Page 76: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

57

Gambar 4.2 Rancangan Antarmuka Report

Gambar 4.1 Rancangan Antarmuka Report Warga Mampu

Page 77: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

58

Gambar 4.1 Rancangan Antarmuka Report Warga Tidak Mampu

7. Tampilan Menu User

Menu user berfungsi untuk menampilkan data user yang hanya bisa dinput,

ubah, dan hapus oleh admin. Pada menu user terdapat beberapa komponen,

diantaranya:

a. Tombol Tambah : Berfungsi untuk menambahkan data user yaitu

username dan password.

b. Tombol Ubah : Berfungsi untuk menghapus data user yaitu

username dan password.

c. Tombol Hapus : Berfungsi untuk menghapus data user yaitu

username dan password.

Gambar 4.2 Rancangan Antarmuka User

Page 78: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

59

BAB V

HASIL DAN PEMBAHASAN

5.1 Fase Implementasi

Implementasi merupakan tahap menerjemahkan perancangan berdasarkan

hasil analisa yang telah dilakukan sebelumnya. Adapun tujuan implementasi adalah

untuk mengkonfirmasikan modul program perancangan pada para pelaku sistem

sehingga user dapat memberi masukan kepada pengembang sistem.

5.1.1 Implementasi Antarmuka (Interface)

Antarmuka adalah komponen sistem operasi yang bersentuhan langsung

dengan pengguna. Implementasi antarmuka sistem merupakan realisasi desain

tampilan antarmuka dari setiap menu yang telah dirancang sebelumnya.Berikut ini

adalah implementasi antarmuka steganografi pada file audio.

Tabel 5.1 Impelementasi Antarmuka Sistem

Nama Menu Deskripsi

Login Langkah awal dimana proses ini admin harus

memasukkan username dan password terlebih dahulu

untuk bisa mengakses seluruh menu yang ada di aplikasi

KNN.

Bobot Merupakan suatu nilai bobot yang sudah ditentukan untuk

membandingkan data training dengan data testing yang

ada di aplikasi KNN.

Atribut Merupakan suatu nilai atribut yang sudah ditentukan

untuk membandingkan data baru dan data lama untuk

mendapatkan hasil data warga yang berkategori mampu

dan tidak mampu.

Page 79: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

60

Data Training Merupakan suatu data yang menampilkan 6 nilai data traning

yang sudah ditentukan dan dijadikan perbandingan dalam

perhitungan data baru dan data lama untuk menentukan warga

mampu dan tidak mampu yang layak mendapatkan bantuan

sosial.

Data Testing Merupakan suatu data yang berfungsi untuk menginput data

warga sesuai kolom yang sudah disediakan, setelah di input

kemudian dihitung dan dibandingkan untuk mencari 3 data

tertinggi yang lebih mirip dari data training dan di simpan.

Report Merupakan menu yang dapat menampilkan hasil data warga

yang sudah di input di data testing secara keseluruhan dan ada

2 pilihan untuk menampilkan warga yang mampu dan tidak

mampu, serta di menu report dapat menjalankan untuk proses

menyimpan data berupa pdf dan bisa dicetak langsung.

User Menu user berfungsi untuk menampilkan data user yang hanya

bisa dinput, ubah, dan hapus oleh admin.

5.1.2 Tampilan Antarmuka Sistem

1. Tampilan Menu Login

Implementasi antar muka pada menu login dapat dilihat pada gambar 5.1

Page 80: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

61

Gambar 5.1 Tampilan Menu Login

Berdasarkan gambar 5.1, dapat dijelaskan bahwa menu login adalah Langkah

awal dimana proses ini admin harus memasukkan username dan password terlebih

dahulu untuk bisa mengakses seluruh menu yang ada di aplikasi KNN.

2. Tampilan Menu Bobot

Implementasi antar muka pada menu bobot dapat dilihat pada gambar 5.2.

Gambar 5.2 Tampilan Menu Bobot

Berdasarkan gambar 5.2, dapat dijelaskan bahwa menu bobot adalah menu yang

dapat menampilkan nilai bobot yang sudah ditentukan untuk membandingkan data

training dengan data testing yang ada di aplikasi KNN.

Page 81: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

62

Page 82: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

63

3. Tampilan Menu Atribut

Implementasi antar muka pada menu atribut dapat dilihat pada gambar 5.3.

Gambar 5.3 Tampilan Menu Atribut

Berdasarkan gambar 5.3, dapat dijelaskan bahwa menu atribut merupakan suatu

nilai atribut yang sudah ditentukan untuk membandingkan data baru dan data lama

untuk mendapatkan hasil data warga yang berkategori mampu dan tidak mampu.

Page 83: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

64

4. Tampilan Menu Data Training

Implementasi antar muka pada menu data training dapat dilihat pada gambar 5.4.

Gambar 5.4 Tampilan Menu Data Training

Berdasarkan gambar 5.4, dapat dijelaskan bahwa menu data training merupakan

suatu data yang menampilkan 6 nilai data traning yang sudah ditentukan dan

dijadikan perbandingan dalam perhitungan data baru dan data lama untuk

menentukan warga mampu dan tidak mampu yang layak mendapatkan bantuan

sosial.

Page 84: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

65

5. Tampilan Menu Data Testing

Implementasi antar muka pada menu data testing dapat dilihat pada gambar 5.5

dan gambar 5.6.

Gambar 5.5 Tampilan Menu Data Testing

Gambar 5.6 Tampilan Menu Data Testing

Page 85: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

66

Berdasarkan gambar 5.5 dan gambar 5.6, dapat dijelaskan bahwa menu data

testing merupakan suatu data yang berfungsi untuk menginput data warga sesuai

kolom yang sudah disediakan, setelah di input kemudian dihitung dan dibandingkan

untuk mencari 3 data tertinggi yang lebih mirip dari data training dan di simpan.

6. Tampilan Menu Report

Implementasi antar muka pada menu login dapat dilihat pada gambar 5.7.

Gambar 5.7 Tampilan Menu Report

Berdasarkan gambar 5.7, dapat dijelaskan bahwa menu report merupakan menu

yang dapat menampilkan hasil data warga yang sudah di input di data testing secara

keseluruhan dan ada 2 pilihan untuk menampilkan warga yang mampu dan tidak

mampu, serta di menu report dapat menjalankan untuk proses menyimpan data

berupa pdf dan bisa dicetak langsung.

Page 86: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

67

7. Tampilan Menu User

Implementasi antar muka pada menu user dapat dilihat pada gambar 5.8.

Gambar 5.8 Tampilan Menu User

Berdasarkan gambar 5.8, dapat dijelaskan bahwa menu user berfungsi untuk

menampilkan data user yang hanya bisa dinput, ubah, dan hapus oleh admin.

5.1.3 Implementasi Algoritma KNN

Proses pengumpulan data dilakukan dengan cara mengunjungi Wilayah

RW 13 untuk melakukan penelitian dan pengumpulan data yang dilakukan dengan

cara observasi dan wawancara. Berdasarkan hasil observasi dan wawancara

tersebut dilakukan analisa system untuk mengetahui keterbaharuan pada penelitian

ini.

Analisis Sistem Berdasarkan proses observasi dan wawancara diperoleh

data bahwa dalam proses seleksi penerima Bantuan Sosial yang diterapkan di

Wilayah RW 13 masih terdapat banyak kekurangan, dimana proses seleksi masih

di lakukan manual yaitu dengan cara menilai calon penerima Bantuan Sosial dengan

Page 87: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

68

beberapa kriteria diantaranya adalah Pekerjaan Orang Tua, Penghasilan Orang Tua,

dan Tanggungan Orang Tua.

Sehingga dari banyaknya kriteria penilian maka membutuhkan tingkat

ketelitian dan waktu yang relatif lama dalam proses perhitungan. Selain itu, dengan

menerapkan proses tersebut tidak jarang jika setiap seleksi penerima Bantuan Sosial

di Wilayah RW 13 tidak tepat sasaran, dikarenakan tidak adanya bantuan sistem

yang lebih akurat didalam melakukan proses seleksi penerima Bantuan Sosial di

Wilayah RW 13.

Dari hasil tersebut diperlukan sebuah sistem klasifikasi data yang akan

memudahkan staff rw 13 dalam menyeleksi penerimaan Bantuan Sosial di Wilayah

RW 13, serta perlunya aplikasi khusus untuk pengimputan semua data, penilaian,

pembobotan serta laporan yang terjamin kevalidannya. Berdasarkan hasil dari

observasi, wawancara dan studi literatur dapat dihasilkan beberapa parameter

penilaian yang dijadikan acuan dalam proses seleksi dalam penentuan penerima

Bantuan Sosial di Wilayah RW 13.

Algoritma K-Nearest Neighbor adalah pendekatan untuk mencari kasus

dengan menghitung kedekatan antara data baru dengan data lama, yaitu

berdasarkan pada pencocokan bobot dari sejumlah fitur yang ada. Misalkan

diinginkan untuk mencari solusi terhadap seorang pasien baru dengan

menggunakan solusi dari pasien terdahulu. Untuk mencari kasus pasien mana

yang akan digunakan, maka dihitung kedekatan kasus pasien baru dengan kasus

pasien lama. Kasus pasien lama dengan kedekatan terbesarlah yang akan diambil

solusinya untuk digunakan pada kasus pasien baru.

Adapun rumus untuk melakukan perhitungan kedekatan antara dua kasus

adalah sebagai berikut:

Similarity (T, S) = ∑ 𝑓(𝑇𝑖 ,𝑆𝑖 ) ∗ 𝑊𝑖

𝑛𝑖=1

𝑊𝑖

Page 88: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

69

Keterangan:

T : Data Baru

S : Data Lama

n : Jumlah Atribut Dalam Setiap Kasus

i : Atribut Individu Antara 1 s.d.n

f : Fungsi Similarity Atribut I Antara Kasus T Dan Kasus S

w : Bobot Yang Diberikan Pada Atribut Ke-I

Kedekatan biasanya berada pada nilai antara 0 s.d 1. Nilai 0 artinya kedua

kasus mutlak tidak mirip, sebaliknya untuk nilai 1 kasus mirip dengan mutlak

(Kusrini,2009).

Setiap atribut memiliki bobot nilai, seperti terlihat pada table dibawah ini

(Syaifuddin, Mohammad. 2017):

Tabel 5.2 Pembobotan Atribut

No. Atribut Bobot

1 Pekerjaan (b) 1

2 Tanggungan (d) 0,75

3 Penghasilan (f) 0,5

Berdasarkan Tabel 5.2 di atas penulis mengutip Atribut serta Bobot dari

Jurnal Mohammad Syaifuddin, dapat dijelaskan bahwa Atribut Pekerjaan

memperoleh Bobot 1 atau sangat mempengaruhi proses klasifikasi penerima

bantuan sosial, untuk Atribut Tanggungan memperoleh Bobot 0,75 yang berarti

penting atau berpengaruh dalam proses klasifikasi penerima bantuan sosial,

sedangkan Atribut Penghasilan memperoleh Bobot 0,5 yang berarti kurang

mempengaruhi dalam proses klasifikasi penerima bantuan sosial.

Page 89: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

70

Setiap pekerjaan memiliki bobot nilai, seperti terlihat pada table dibawah

ini (Syaifuddin, Mohammad. 2017):

Tabel 5.3 Pekerjaan

Pekerjaan (a)

PNS 1

KARYAWAN SWASTA 0,6

WIRASWASTA 0,4

BURUH 0

Berdasarkan Tabel 5.3 di atas penulis mengutip Pekerjaan serta Bobot dari

Jurnal Mohammad Syaifuddin, dapat dijelaskan bahwa Atribut Pekerjaan sangat

mempengaruhi proses klasifikasi, kemudian diurutkan dari bobot terbesar yaitu

PNS memiliki bobot 1 yang berarti sangat mempengaruhi proses klasifikasi

penerima bantuan sosial, kemudian Karyawan Swasta memiliki bobot 0,6 dan

Wiraswasta memiliki bobot 0,4 yang berarti penting atau berpengaruh dalam proses

klasifikasi penerima bantuan sosial, sedangkan Buruh memiliki Bobot 0 yang

berarti kurang mempengaruhi dalam proses klasifikasi penerima bantuan sosial.

Setiap tanggungan memiliki bobot nilai, seperti terlihat pada table dibawah

ini (Syaifuddin, Mohammad. 2017):

Tabel 5.4 Tanggungan

Tanggungan (c)

1 Orang 1

2 Orang 0,6

3 Orang 0,2

>3 Orang 0

Berdasarkan Tabel 5.4 di atas penulis mengutip Tanggungan serta Bobot

dari Jurnal Mohammad Syaifuddin, dapat dijelaskan bahwa Atribut Tanggungan

memiliki 4 kriteria dalam mengklasifikasi data yaitu tanggungan 1 orang, memiliki

bobot nilai 1, tanggungan 2 orang memiliki bobot nilai 0,6, tanggungan 3 orang

memiliki bobot nilai 0,2 serta jika tanggungan lebih dari 3 orang maka bobot nilai

Page 90: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

71

yang diperoleh adalah 0 yang berarti sangat tidak berpengaruh dalam proses

klasifikasi data warga yang mendapatkan bantuan sosial.

Setiap penghasilan memiliki bobot nilai, seperti terlihat pada table

dibawah ini (Syaifuddin, Mohammad. 2017):

Tabel 5.5 Penghasilan

Penghasilan (e)

< 750000 1

< 1500000 0,6

< 2500000 0,2

>2500000 0

Berdasarkan Tabel 5.5 di atas penulis mengutip Tanggungan serta Bobot

dari Jurnal Mohammad Syaifuddin, dapat dijelaskan bahwa Atribut Penghasilan

memiliki 4 kriteria dalam mengklasifikasi data yaitu Penghasilan kurang dari

750.000 memiliki bobot nilai 1, penghasilan kurang dari 1.500.000 memiliki

bobot nilai 0.6, penghasilan kurang dari 2.500.000 memiliki bobot nilai 0,2 serta

jika penghasilan lebih dari 2.500.000 maka bobot nilai yang diperoleh adalah 0

yang berarti sangat tidak berpengaruh dalam proses klasifikasi data warga yang

mendapatkan bantuan sosial.

Setelah dijelaskan Bobot dan Atribut di dalam tabel masing-masing, maka

tahap selanjutnya yaitu dilakukan pendekatan untuk mencari kasus dengan

menghitung kedekatan antara data baru dengan data lama, yaitu berdasarkan pada

pencocokan bobot dari sejumlah atribut yang ada seperti terlihat pada table

dibawah ini:

Tabel 5.6 Pekerjaan (a)

Data Lama

PNS Buruh Wiraswasta

Karyawan

Swasta

PNS 1 0 0,4 0,6

BURUH 0 1 0,2 0

WIRASWASTA 0,4 0,2 1 0,2

KARYAWAN SWASTA 0,6 0 0,2 1 D

ata

Bar

u

Page 91: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

72

Berdasarkan Tabel 5.6 di atas penulis mengutip Tabel Pekerjaan dari

Jurnal Mohammad Syaifuddin, dapat dijelaskan bahwa di dalam tabel pekerjaan

terdapat 2 kategori yaitu Data Lama dengan Data Baru yang digunakan sebagai

perbandingan untuk menghasilkan nilai dari data training dengan data testing yang

akan dihitung saat proses klasifikasi. Contohnya data baru yang bernama Vino

memiliki pekerjaan PNS, kemudian data baru akan dibandingkan dengan data

training atau data lama yang bisa di lihat pada Tabel 5.9 Budi memiliki pekerjaan

PNS sehingga nilai perbandingan yang diperoleh dari data lama dengan data baru

adalah 1 yang berarti sangat mempunyai kemiripan.

Tabel 5.7 Tanggungan (c)

Data Lama

1 2 3 >3

1 1 0,6 0,2 0

2 0,6 1 0,6 0,2

3 0,2 0,6 1 0,6

>3 0 0,2 0,6 1

Berdasarkan Tabel 5.7 di atas penulis mengutip Tabel Tanggungan dari

Jurnal Mohammad Syaifuddin, dapat dijelaskan bahwa di dalam tabel tanggungan

terdapat 2 kategori yaitu Data Lama dengan Data Baru yang digunakan sebagai

perbandingan untuk menghasilkan nilai dari data training dengan data testing yang

akan dihitung saat proses klasifikasi. Contohnya data baru yang bernama Vino

memiliki tanggungan 3, kemudian data baru akan dibandingkan dengan data

training atau data lama yang bisa di lihat pada Tabel 5.9 Budi memiliki tanggungan

1 sehingga nilai perbandingan yang diperoleh dari data lama dengan data baru

adalah 0,2 yang berarti belum mempunyai kemiripan.

Tabel 5.8 Penghasilan Orangtua (e)

Data Lama

<750000 <1500000 <2500000 >2500000

<750000 1 0,6 0,2 0

<1500000 0,6 1 0,4 0,2

<2500000 0,2 0,4 1 0,6

>2500000 0 0,2 0,6 1

Dat

a B

aru

Dat

a B

aru

Page 92: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

73

Berdasarkan Tabel 5.8 di atas penulis mengutip Tabel Penghasilan

Orangtua dari Jurnal Mohammad Syaifuddin, dapat dijelaskan bahwa di dalam tabel

penghasilan terdapat 2 kategori yaitu Data Lama dengan Data Baru yang digunakan

sebagai perbandingan untuk menghasilkan nilai dari data training dengan data

testing yang akan dihitung saat proses klasifikasi. Contohnya data baru yang

bernama Vino memiliki penghasilan 3.000.000 atau leih dari 2.500.000, kemudian

data baru akan dibandingkan dengan data training atau data lama yang bisa di lihat

pada Tabel 5.9 Budi memiliki penghasilan lebih dari 2.500.000 sehingga nilai

perbandingan yang diperoleh dari data lama dengan data baru adalah 1 yang berarti

sangat mempunyai kemiripan.

Tabel 5.9 Sample Data Training

Nama Pekerjaan Tanggungan Penghasilan Status

Budi PNS 1 >2500000 Mampu

Ika Swasta 2 <750000 Kurang Mampu

Dinda Buruh 1 <2500000 Mampu

Tomy Buruh 2 <1500000 Kurang Mampu

Tasya Swasta 1 <1500000 Mampu

Sarah PNS 3 >2500000 Kurang Mampu

Berdasarkan Tabel 5.9 di atas penulis mengutip Tabel Sample Data Training

dari Jurnal Mohammad Syaifuddin, dapat dijelaskan bahwa tabel data training

digunakan sebagai acuan perbandingan dengan data baru. Misalkan ada kasus baru

pada data testing dengan nilai atribut seperti pada tabel 5.10. Kasus baru tersebut

akan dihitung kedekatannya dengan kasus lama yang terdapat pada data training

tabel 5.9 dan hasil yang diperoleh dari tingkat kemiripan data baru dengan data lama

bisa dilihat pada tabel 5.11.

Tabel 5.10 Sample Data Testing

Siswa Pekerjaan Tanggungan Penghasilan Status

Vino PNS 3 3000000

Page 93: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

74

Berdasarkan tabel 5.10 di atas, dapat dijelaskan bahwa Sample data testing

diperoleh dari salah satu data hasil observasi di Wilayah RW 13 yang akan

digunakan untuk perbandingan dengan data lama atau data training. Kemudian

proses klasfikasi data lama dengan data baru dapat dijelaskan dibawah ini:

Jarak Budi

1. Budi = (axb) + (cxd) + (exf)

b+d+f

= (1x1) + (0,2x0,75) + (1x0,5)

1 + 0.75 + 0.5

= 1.65

2.25

= 0,73333333

Jarak Ika

2. Ika = (axb) + (cxd) + (exf)

b+d+f

= (0,6x1) + (0,6x0,75) + (0x0,5)

1 + 0.75 + 0.5

= 1.05

2.25

= 0,46666667

Jarak Dinda

3. Dinda = (axb) + (cxd) + (exf)

b+d+f

= (0x1) + (0,2x0,75) + (0,6x0,5)

1 + 0.75 + 0.5

= 0.45

2.25

= 0,2

Jarak Tomy

4. Tomy = (axb) + (cxd) + (exf)

b+d+f

= (0x1) + (0,6x0,75) + (0,2x0,5)

1 + 0.75 + 0.5

= 0.55

2.25

= 0,24444

Page 94: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

75

Jarak Tasya

5. Tasya = (axb) + (cxd) + (exf)

b+d+f

= (0,6x1) + (0,2x0,75) + (0,2x0,5)

1 + 0.75 + 0.5

= 0.85

2.25

= 0,3777

Jarak Sarah

6. Sarah = (axb) + (cxd) + (exf)

b+d+f

= (1x1) + (1x0,75) + (1x0,5)

1 + 0.75 + 0.5

= 2.25

2.25

= 1

Dari ke 6 (enam) data diatas merupakan contoh perhitungan manual

kedekatan antara data baru dengan data lama. Jadi, kesimpulannya dari 1 contoh

sample data testing warga yang bernama Vino, masuk ke dalam klasifikasi data

berstatus Tidak Mampu. Dari ke-6 data training, Vino mempunyai kemiripan

dengan 3 data yang paling tertinggi atau paling mirip yaitu Budi berstatus (Mampu),

Ika berstatus (Tidak Mampu), dan Sarah berstatus (Tidak Mampu).

5.1.4 Confusion Matrix

Confusion Matrix merupakan salah satu cara untuk menganalisis kinerja

model klasifikasi.

Tabel 5.11 Hasil Klasifikasi Data Testing

No. NIK NAMA PENGHASI

LAN

TANGGU

NGAN PEKERJAAN

Actual

Class

Predict

Class

1 3173071707650000 Ir. C. Y.

Satyagraha >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

2 3173070704670000 Erlis Nirza >2.500.000 2 Wiraswasta Tidak

Mampu

Tidak

Mampu

3 3173072207780000 Dinar Agung

Setyono >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

Page 95: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

76

4 3173071108800000 Yadi >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

5 3173071509700000 Ilham >2.500.000 2 Swasta Mampu Mampu

6 3173075111660000 Hamimah <1.500.000 2 Buruh Tidak

Mampu

Tidak

Mampu

7 3173070110670000 Prasetiyo

Indroharto >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

8 3173071403750000 Bayu

Parikesit >2.500.000 2 Swasta Mampu

Tidak

Mampu

9 3173070707760000 Widodo >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

10 3173072203780000 Basuki Pujiyanto

<2.500.000 3 Wiraswasta Mampu Tidak

Mampu

11 3173071902800000 Endang

Suherman >2.500.000 2 Swasta Mampu

Tidak

Mampu

12 3173075204830000 Afrianti <1.500.000 3 Buruh Tidak

Mampu

Tidak

Mampu

13 3173073112650010 Budiman <2.500.000 3 Wiraswasta Mampu Tidak

Mampu

14 3174051004920000 Zaenaldi

Prima >2.500.000 2 Swasta Mampu

Tidak

Mampu

15 3173070703810010 Kudih >2.500.000 2 Wiraswasta Tidak

Mampu

Tidak

Mampu

16 3171042904910000 Bias Arthony >2.500.000 2 Swasta Mampu Tidak

Mampu

17 3674040202900000 Ken

Bramantyo >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

18 3173072206720000 Rudy

Hartono >2.500.000 3 Wiraswasta

Tidak

Mampu

Tidak

Mampu

19 3173070411760000 Darmawan >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

20 3316063008750000 Slamet >2.500.000 2 Swasta Mampu Tidak

Mampu

21 3175090606750010 Muidin >2.500.000 2 Swasta Mampu Tidak

Mampu

22 3173071912480000 Muhamad

Sidik <1.500.000 2 Buruh

Tidak

Mampu

Tidak

Mampu

23 3203120105740000 Burhanudin <2.500.000 3 Wiraswasta Mampu Tidak

Mampu

24 3173071911670000 Amirudin >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

25 3173081409790000 Hilmi

Rachmatulloh >2.500.000 2 Swasta Mampu

Tidak

Mampu

26 3173076202720000 Purtiningsih <1.500.000 3 Buruh Tidak

Mampu

Tidak

Mampu

27 3173072212700000 Joko

Mulyono >2.500.000 2 Swasta Mampu

Tidak

Mampu

28 3173050603910010

Devito

Aditya

Warisman

>2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

29 3171032509760000 Imam Slamet

Riyadi >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

30 3173054305850010 Dina

Mayilina <750.000 3 Buruh

Tidak

Mampu

Tidak

Mampu

Page 96: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

77

31 3173051408860000 A Siswanto >2.500.000 2 Swasta Mampu Tidak

Mampu

32 3174031507650000 Hambali >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

33 3173072512680000 Fauzi >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

34 3173071704640000 Andreas

Parjan >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

35 3173071208720010 Adji Agus

Salim >2.500.000 2 Swasta Mampu

Tidak

Mampu

36 3173075201430000 Suparmi >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

37 3173071705610000 Sudibyo >2.500.000 2 Swasta Mampu Tidak

Mampu

38 3173072803710000 Burhanuddin >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

39 3173070207730010 Marsono >2.500.000 1 Swasta Mampu Mampu

40 3173070301510000 Djoko

Laksono >2.500.000 3 PNS

Tidak

Mampu

Tidak

Mampu

41 3174105502830000 Saodah >2.500.000 2 Swasta Mampu Tidak

Mampu

42 3173072901930000 Luthfi

Pradityo >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

43 3202130605980000 Dasep

Indrawan >2.500.000 1 Swasta Mampu Mampu

44 3173051002710000 Sadiman <2.500.000 2 Wiraswasta Mampu Mampu

45 3173072512820010 Irpan >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

46 3173072106760000 Buhori >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

47 3173077112720020 Masuroh <750.000 3 Buruh Tidak

Mampu

Tidak

Mampu

48 3173072507640000 Murodi >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

49 3173071907620000 Usman <1.500.000 2 Buruh Tidak

Mampu

Tidak

Mampu

50 3173070301740000 Sarmili >2.500.000 2 Swasta Mampu Mampu

51 3173072303780000 Anton

Sumarlin >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

52 3173071111740010 Abdul Rosid >2.500.000 3 Swasta Tidak

Mampu Tidak

Mampu

53 3173051312640000 Rusli >2.500.000 3 PNS Tidak

Mampu

Tidak

Mampu

54 3322101902700000 Fx. Mardi

Hartono >2.500.000 2 Swasta Mampu Mampu

55 3173085908880000 Sri Rizkiyah >2.500.000 2 Swasta Mampu Mampu

56 3174052805910000 Amirudin >2.500.000 1 Swasta Mampu Mampu

57 3173072704680000 A Tarmizi >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

58 3173051410850010 Darullah >2.500.000 1 Swasta Mampu Mampu

59 3173077112491000 Sawiyah <750.000 3 Buruh Tidak

Mampu

Tidak

Mampu

Page 97: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

78

60 3173073003750000 Ahmad Rivai >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

61 3173070109760000 Rinto Virgo

Ginting >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

62 3173071608740000 Agus Susanto >2.500.000 2 Swasta Mampu Mampu

63 3173074707790000 Devi

Ernawati <750.000 2 Buruh

Tidak

Mampu

Tidak

Mampu

64 3173076002460000 Jublina A.Pah

Mooy <750.000 2 Buruh

Tidak

Mampu

Tidak

Mampu

65 3173021708780020 M. Bayu

Romadon <2.500.000 3 Wiraswasta Mampu

Tidak

Mampu

66 3173070807750000 Ferry Saputra >2.500.000 3 Swasta Tidak

Mampu Tidak

Mampu

67 3173076506770000 Melawati <750.000 2 Buruh Tidak

Mampu

Tidak

Mampu

68 3173071202740000 Semuel

Onmani >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

69 3173070707750010 Kasmuri <1.500.000 3 Buruh Tidak

Mampu

Tidak

Mampu

70 3173072005700010 Syahrizal

Lubis >2.500.000 1 Swasta Mampu Mampu

71 3173072606720000 Suyono >2.500.000 2 Swasta Mampu Mampu

72 3173071710740000 Mistar

Iriyanto <750.000 3 Buruh

Tidak

Mampu

Tidak

Mampu

73 3173072412630000 Dirun <2.500.000 3 Swasta Tidak

Mampu Tidak

Mampu

74 3173070606761000 Tiswan >2.500.000 2 Swasta Mampu Mampu

75 3173070109660000 Budi

Sjafrudin >2.500.000 2 Swasta Mampu Mampu

76 3173030504760000 Idris >2.500.000 2 Swasta Mampu Mampu

77 3173071510580000 Sudiyanto >2.500.000 3 Buruh Tidak

Mampu Tidak

Mampu

78 3173070806700010 Asep

Suherman >2.500.000 1 Swasta Mampu Mampu

79 3173070212700000

Tohom

Parasian

Situmea

>2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

80 3173070704760000 Ujang

Lukman >2.500.000 2 Swasta Mampu Mampu

81 3204120305780010 Wahyudi <2.500.000 2 Wiraswasta Mampu Mampu

82 3173070409640000 Makmun >2.500.000 3 Pns Tidak

Mampu

Tidak

Mampu

83 3173071607480000 Ramli Ahmad <2.500.000 2 Wiraswasta Mampu Mampu

84 3173075911510000 Tatty Pudji

Haryati <1.500.000 3 Buruh

Tidak

Mampu

Tidak

Mampu

85 3173051507820010 Mohamad

Ilham >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

86 3518091702780000 Ali Thohir >2.500.000 1 Wiraswasta Mampu Mampu

87 3173070506790000 Joni Anto >2.500.000 2 Swasta Mampu Mampu

88 3173073010740000 Omer

Heranova >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

Page 98: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

79

89 3173071809580000 Umar <1.500.000 2 Buruh Tidak

Mampu

Tidak

Mampu

90 317070708460002 Sudrajat >2.500.000 2 Wiraswasta Tidak

Mampu Mampu

91 3173072210650000 Abdul Latip <1.500.000 3 Buruh Tidak

Mampu

Tidak

Mampu

92 3173070308730000 Muhadi >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

93 3173070905790000 Mat Nuh >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

94 3173074209750000

Vanda

Bahruddin

Putri

>2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

95 3173072607640000 Taufik, Sh >2.500.000 3 Wiraswasta Tidak

Mampu

Tidak

Mampu

96 3173072007770010 Syarifulloh >2.500.000 3 Wiraswasta Tidak

Mampu

Tidak

Mampu

97 3173077011310000 Maisyaroh <1.500.000 1 Buruh Mampu Mampu

98 3173070902650000 Fachrudin >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

99 3171073007800000 Muhammad

Irfan Fatony >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

100 3173070307710000 Lili Gozali

Siregar >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

101 3173074106670000 Yuniar

Siregar <1.500.000 3 Buruh

Tidak

Mampu

Tidak

Mampu

102 3173071203510000 Muhamad

Ropi Effendi <1.500.000 3 PNS

Tidak

Mampu

Tidak

Mampu

103 3173076112501000 Hj. Hilmiyah <1.500.000 1 Buruh Mampu Tidak

Mampu

104 3173072106610000 Mohammad

Nur <1.500.000 3 Buruh

Tidak

Mampu

Tidak

Mampu

105 3173071506760010 Sugiharto >2.500.000 3 Wiraswasta Tidak

Mampu Tidak

Mampu

106 3173072705570000 M. Zen >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

107 3173070201420000 Rahman

Arifin >2.500.000 3 PNS

Tidak

Mampu

Tidak

Mampu

108 3173076407790000 Titah

Anggraeni <1.500.000 2 Buruh

Tidak

Mampu

Tidak

Mampu

109 3173070308590000 Husin >2.500.000 2 Wiraswasta Tidak

Mampu Mampu

110 360328201880005 Muhammad

Hafiz Thobar >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

111 3173072106880000 Abdul Ajis >2.500.000 3 Swasta Tidak

Mampu

Tidak

Mampu

112 3173071208691000 Karsa Wijaya >2.500.000 3 Wiraswasta Tidak

Mampu

Tidak

Mampu

113 3173077112610000 Saniah <1.500.000 1 Buruh Mampu Tidak

Mampu

114 3173075204680000 Muanah <1.500.000 3 Buruh Tidak

Mampu

Tidak

Mampu

115 3173074704380000 Ny. Kartini

Tamba Sh <1.500.000 1 Buruh Mampu

Tidak

Mampu

Page 99: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

80

116 3173020606400000 Drs. Peter Vc

Renjut <1.500.000 2 PNS

Tidak

Mampu

Tidak

Mampu

117 3173072208410000 Drs. M. Jamil

Usman <1.500.000 2 PNS

Tidak

Mampu

Tidak

Mampu

118 3174056203590000 Nasilah <1.500.000 1 Buruh Mampu Tidak

Mampu

119 3173076003680000 Tri Vetriyati

Halim <1.500.000 3 Buruh

Tidak

Mampu

Tidak

Mampu

120 3173070702640000 Abdul

Rahman >2.500.000 3 Swasta

Tidak

Mampu

Tidak

Mampu

Dari hasil 120 Data Proses Klasifikasi yang disajikan pada tabel diatas maka

dapat dikonversi kedalam bentuk tabel confussion matrix seperti dibawah:

Tabel 5.12 Pengujian Confusion Matrix

Record: 25 Data

Predicted:

Mampu

Predicted:

Tidak Mampu Total

Actual: Mampu TP = 22 FN = 20 P = 42

Actual: Tidak Mampu FP = 2 TN = 76 N = 78

Total P = 24 N = 96 P+N = 120

Berdasarkan tabel conffussion matrix diatas maka kinerja dari penggunaan

metode klasifikasi K-Nearest Neighbor dapat diukur dengan menghitung nilai

Sensitivity, Specificity, Precission dan Accuracy.

Sensitivity : 𝑇𝑃

𝑃=

22

24= 0,9166

Specificity : 𝑇𝑁

𝑁=

76

96= 0,7916

Precision : 𝑇𝑃

𝑇𝑃+𝐹𝑃=

22

22+2=

22

24= 0,9166

Accuracy : 𝑇𝑃+𝑇𝑁

𝑃+𝑁𝑥 100% =

22+76

120𝑥 100% =

98

120𝑥 100% = 81,66%

Berdasarkan perhitungan di atas, maka diperoleh jumlah True Negative

sebanyak 76, dan False Positive sebanyak 2. Hasil True Positive sebanyak 22, dan

False Negative sebanyak 20. Maka tingkat akurasi yang diperoleh menggunakan

Algoritma K-Nearest Neighbor untuk Klasifikasi Warga sebesar 81,66%.

Page 100: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

81

5.2 Pengujian Sistem

Pada tahapan ini akan dilakukan pengujian sistem untuk memeriksa

apakah suatu perangkat lunak yang dihasilkan sudah dapat dijalankan sesuai dengan

standar tertentu. Pengujian sistem merupakan hal terpenting yang bertujuan untuk

menemukan kesalahan-kesalahan atau kekurangan-kekurangan pada perangkat

lunak yang diuji.

Tabel 5.13 Black Box

No. Input Event Fungsi Hasil Sistem Hasil Uji

1. Klik Menu Login Langkah awal untuk

mengakses ke Form

Data Testing

Ditampilkan Form

Data Testing

Sesuai

2. Klik Menu Bobot Untuk menampilkan

Form Bobot

Ditampilkan Form

Bobot

Sesuai

3. Klik Menu

Attribute

Untuk menampilkan

Form Menu Attribute

Ditampilkan Form

Attribute

Sesuai

4. Klik Menu Data

Training

Untuk menampilkan

Form Data Training

Ditampilkan Form

Data Training

Sesuai

5. Klik Menu Data

Testing

Untuk menampilkan

Form Data Testing

Ditampilkan Form

Data Testing

Sesuai

6. Klik Menu Report Untuk menampilkan

Form Report

Ditampilkan Form

Report

Sesuai

7. Klik Menu User Untuk menampilkan

Form User

Ditampilkan Form

User

Sesuai

Page 101: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

82

BAB VI

PENUTUP

6.1 Kesimpulan

Berdasarkan penelitian yang telah dilakukan oleh penulis mengenai

Implementasi Algoritma K-Nearest Neighbor Untuk Mengklasifikasi Warga Yang

Layak Mendapatkan Bantuan Sosial, maka dapat diambil kesimpulan sebagai

berikut:

1. Dengan adanya aplikasi klasifikasi penerima Bantuan Sosial ini untuk

kedepannya para Staff menjadi lebih cepat dalam input data, serta

memproses pemilihan warga yang berhak mendapatkan Bantuan

Sosial.

2. Menggunakan metode K-Nearest Neighbor dalam aplikasi penerima

Bantuan Sosial ini untuk menghindari terjadinya kesalahan dalam

menentukan warga yang dapat menerima Bantuan Sosial.

3. Dari hasil test Confusion Matrix, maka diperoleh jumlah True

Negative sebanyak 5, dan False Positive sebanyak 5. Hasil True

Positive sebanyak 10, dan False Negative sebanyak 5. Maka tingkat

akurasi yang diperoleh menggunakan Algoritma K-Nearest Neighbor

sebesar 60%.

4. Adanya Aplikasi KNN ini, Para Staff bisa dapat menyimpan laporan

data warga dengan terstruktur baik soft copy maupun hard copy.

5. Dan aplikasi KNN ini bisa digunakan di berbagai platform manapun

sehingga memudahkan Staff untuk menginput data,bisa digunakan

pada browser di Hp, Laptop dan nanti akan ada instruksi untuk

menginstal di android atau di desktop yang akan digunakan.

6.2 Saran

Penulis menyadari penelitian klasifikasi Algoritma K Nearest

Neighbor yang telah dibuat masih memiliki banyak kekurangan. Oleh

Page 102: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

83

karena itu, ada beberapa hal yang dapat dipertimbangkan untuk

mengembangkan penelitian ini agar lebih baik yaitu:

1. Untuk penelitian selanjutnya menggunakan metode selain K-Nearest

Neighbor, atau dapat membandingkan antara dua metode dalam satu

studi kasus. Contohnya bisa menggunakan Metode K-Nearest

Neighbor dan Learning Vector Quantization

2. Proses klasifikasi Perhitungan Data yang dilakukan oleh penulis saat

ini masih 1 per satu data, maka dari itu diharapkan untuk penelitian

selanjutnya untuk melakukan perhitungan data secara bersamaan

sesuai banyaknya data yang diperoleh dari hasil observasi.

3. Diharapkan untuk penelitian selanjutnya agar ditingkat kan lagi

banyaknya data saat proses pengujian data yang akan digunakan.

Karena semakin banyak data yang digunakan, akan semakin akurat

hasilnya.

Page 103: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

84

DAFTAR PUSAKA

Julisman, Agung. 2014. Aplikasi Travel dengan AngularJS & Codeigniter. Penerbit

Lokomedia. Yogyakarta 2014

Suntoro, Joko. 2019. Data Mining: Algoritma dan Implementasi dengan

Pemrograman PHP. Penerbit PT Elex Media Komputindo. Jakarta 2019

Abdulloh, Rohi. 2018. Mudah Membuat Aplikasi Android dengan Ionic 3. Penerbit

PT Elex Media Komputindo. Jakarta 2018

Badan Pusat Statistik Provinsi DKI Jakarta (BPS-Statistics of DKI Jakarta

Province) https://jakarta.bps.go.id/pressrelease/2019/07/15/358/persentase

penduduk-miskin-dki-jakarta-maret-2019-sebesar-3-47-persen.html Diakses

Pada: Desember 2019

Riswan Abidin. 2015 https://teknojurnal.com/ionic-framework-tool-untuk-

membuat-aplikasi-mobile-lintas-platform/ Diakses pada: 26 Januari 2020

Rifqi Mulyawan, 2019 https://rifqimulyawan.com/blog/pengertian-xampp/ Diakses

pada: 26 Januari 2020

Mughnifar Ilham, 2019 https://materibelajar.co.id/pengertian-wawancara-menurut-

para-ahli/ Diakses pada: 26 Januari 2020

Riduan, 2004 http://www.sarjanaku.com/2013/04/pengertian-metode-observasi-

definisi.html Diakses pada: 26 Januari 2020

Takagi Fujimaru, 2018 https://www.codepolitan.com/10-plugin-visual-studio-

code-untuk-buat-kodingmu-lebih-menyenangkan-5ac1ee2fd97c9 Diakses

pada: 27 Januari 2020

Inna Alvi Nikmatun dan Indra Waspada. 2019 Diakses Pada: 27 Januari 2020

https://jurnal.umk.ac.id/index.php/simet/article/view/2882/1855

http://penapersada.com/humanika/index.php/humanika/article/view/38

Page 104: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

85

Haditsah Annur 2018 ILKOM Jurnal Ilmiah Volume 10 Nomor 2 Agustus 2018 p-

ISSN 2087-1716 e-ISSN 2548-7779

Dwi Rahayu Utami. 2018. Aplikasi Monitoring Keluarga Miskin Menggunakan

Metode K Means Clustering Berbasis Mobile GIS

Muhamad Jabal Tursina. 2019. Sentimen Analisis Sistem Zonasi Sekolah Pada

Media Sosial Youtube Menggunakan Metode K-Nearest Neighbor Dengan

Algoritma Levensthein Distance

Haditsah Annur dan Moh. Efendi Lasulika. 2019. JURNAL INFORMATIKA

UPGRIS Vol. 5, No. 2 Desember 2019 P/E-ISSN: 2460-4801/2447-6645

Fatkur Rhohman, M.Pd. dan Patmi Kasih, M.Kom. 2017. Sistem Bantu Pemilihan

Penerima Bantuan Siswa Miskin Menggunakan KNN (K-NEAREST

NEIGHBOR.

Page 105: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

86

LAMPIRAN I

HASIL WAWANCARA

Hari, Tanggal : Jum’at, 29 November 2019

Waktu : 19.30 WIB

Tempat : Kediaman Ketua RW 13 Kelurahan Palmerah Kecamatan

Palmerah Jakarta Barat

Narasumber : Bapak Muhamad Zen, S.E Selaku Ketua RW 13

1. Apakah di Wilayah RW 13 Kelurahan Palmerah Kecamatan Palmerah Jakarta

Barat sudah ada Program untuk menyalurkan Bantuan Sosial? Apabila ada,

apakah sudah tersedia aplikasi Untuk Porgam Bantuan Sosial?

Jawab : Program Bantuan Sosial di Wilayah RW 13 sudah ada sejak 2017,

namun untuk pengurusan dokumen masih manual yaitu dalam pencatatan

dokumen, penyimpanan dokumen, serta pemilihan warga yang layak

mendapatkan bantuan sosial.

2. Sejak kapan Program Bantuan Sosial di Wilayah RW 13 berjalan?

Jawab : Program Bantuan Sosial di Wilayah RW 13 sudah berjalan

terhitung sejak tahun 2017 hingga saat ini dan program Bantuan Sosial

diadakan rutin setiap tahun nya.

3. Dimana sajakah lokasi / tempat yang dituju untuk menyalurkan Bantuan

Sosial?

Jawab : Wilayah RW 13 memiliki 8 RT yaitu RT 001 – 008, dan saat ini

Program Bantuan Sosial hanya 8 RT saja yang dijadikan tempat untuk

penerima Bantuan Sosial.

Page 106: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

87

4. Siapa sajakah yang ikut berpartisipasi dalam Program Bantuan Sosial? Dan

siapa sajakah yang berhak mendapatkan Bantuan Sosial?

Jawab : Selain Staff RT 001 -008, Ibu-ibu Kader pun juga ikut

berpartisipasi dalam Program Bantuan Sosial ini, dan Banyaknya Donatur dari

dalam wilayah RW 13 juga yang ikut berpartisipasi.

Warga yang berhak mendapatkan Bantuan Sosial apabila dilihat dari

Identitasnya, apabila warga tersebut bukan warga wilayah RT 001-008 maka

tidak berhak mendapatkan bantuan sosial ini, dan semua dipertimbangkan

mulai dari penghasilan orang tua, tanggungan orang tua dan yang paling utama

adalah pekerjaan orang tua.

5. Mengapa warga tersebut bisa mendapatkan Bantuan Sosial?

Jawab : Karena setiap tahun meningkatnya jumlah kemiskinan di wilayah

RW 13 sehingga, Staff Rt 001-008, Ibu-ibu kader dan Pak RW 13 membentuk

Program Bantuan Sosial ini untuk meringangkan beban sekaligus membantu

ekonomi warga di Wialayah RW 13 agar tercukupi.

6. Bagaimana cara untuk mengurangi tingkat kemiskinan di Wilayah RW 13 ini

selain menjalankan Program Bantuan Sosial? Dan Bagaimana harapan untuk

kedepannya?

Jawab : Selain mengadakan Program Bantuan Sosial rutin setiap tahunnya,

Para Staff RW 13 mengadakan program untuk anak Yatim Piatu yang masih

sekolah dari tingkat SD – SMA. Program ini berupa penyaluran Uang Saku/

Uang SPP untuk membantu biaya Sekolah / Pendidikan bagi anak yatim piatu

tersebut.

Besar harapan Bapak Muhamad Zen, selaku ketua RW 13 untuk Program

Bantuan Sosial ini agar diciptakan aplikasi yang digunakan untuk

mempermudah dalam penginputan data, menyimpan data agar tidak tercecer

banyaknya data.

Page 107: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

88

LAMPIRAN II

IMPLMENTASI CODE

1. Data_training.php

<?php

if (!defined('BASEPATH'))

exit('No direct script access allowed');

class Data_training extends CI_Controller

{

function __construct()

{

parent::__construct();

$this->load->model('Data_training_model');

$this->load->library('form_validation');

}

/**

* ini untuk menampilkan data training dan nilai bobot dan attrib

ute

*/

public function index()

{

header("Access-Control-Allow-Origin: *");

header('Content-Type: application/json');

$data_training = $this->db-

>query("SELECT * FROM data_training")->result();

$nilai_atribut = $this->db-

>query("SELECT na.*,b.nilaibobot FROM nilai_attribut na Inner Join B

obot b On na.idbobot=b.idbobot")->result();

$bobot = $this->db->query("SELECT * FROM bobot")-

>result();

echo json_encode(array('Status'=>200,'Data_training'=>$d

ata_training,'Nilai_atribut'=>$nilai_atribut,'Bobot'=>$bobot), JSON_

PRETTY_PRINT);

}

function comparator($a, $b) {

return $a->hasilsetelah < $b->hasilsetelah;

}

/**

Page 108: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

89

* ini untuk mengkalkukasi perhitungan dari data testing dan dat

a training

*/

public function hitung()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input"));

$list = array();

foreach($data as $m)

{

$m->penghasilan = $m->resultpenghasilan-

>nilaibobot * $m->resultpenghasilan->nilai;

$m->kerjaan = $m->resultpekerjaan-

>nilaibobot * $m->resultpekerjaan->nilai;

$m->tanggungan = $m->resulttanggungan-

>nilaibobot * $m->resulttanggungan->nilai;

$m->totalbobot = $m->resultpenghasilan->nilaibobot+$m-

>resultpekerjaan->nilaibobot+$m->resulttanggungan->nilaibobot;

$m->hasilsebelumbobot = $m->kerjaan+$m->tanggungan+$m-

>penghasilan;

$m->hasilsetelah = $m->hasilsebelumbobot / $m-

>totalbobot;

array_push($list,$m);

}

usort($list,array($this, "comparator"));

echo json_encode(array('Status'=>200,'Data'=>$list), JSON_PR

ETTY_PRINT);

}

/**

* ini untuk menyimpan data testing yang sudah diinput

*/

public function Simpan()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input"));

$this->db->trans_begin();

$this->db-

>query("INSERT INTO data_testing(nip,nama,tempat_lahir,tgl_lahir,jen

is_kelamin,tanggungan,pekerjaan,penghasilan,status) VALUES ('$data-

>nip','$data->nama','$data->tempat_lahir','$data->tgl_lahir','$data-

Page 109: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

90

>jenis_kelamin','$data->tanggungan','$data->pekerjaan','$data-

>penghasilan','$data->nilai')");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'Input

failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'Input

success'), JSON_PRETTY_PRINT);

}

}

/**

* ini memunculkan data testing kedalam halaman report

*/

public function GetDataTesting()

{

header("Access-Control-Allow-Origin: *");

header('Content-Type: application/json');

$data_testing = $this->db-

>query("SELECT * FROM `data_testing`")->result();

echo json_encode(array('Status'=>200,'Data_testing'=>$da

ta_testing), JSON_PRETTY_PRINT);

}

}

/* End of file Data_training.php */

/* Location: ./application/controllers/Data_training.php */

/* Please DO NOT modify this information : */

/* Generated by Harviacode Codeigniter CRUD Generator 2019-09-

12 18:38:09 */

/* http://harviacode.com */

Page 110: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

91

2. Master.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Master extends CI_Controller {

function __construct()

{

parent::__construct();

$this->load->model('Master_data_model');

$this->load->library('form_validation');

}

/**

* ini memunculkan data bobot kehalaman bobot /get atau lis

t

*/

public function index()

{

header("Access-Control-Allow-Origin: *");

header('Content-Type: application/json');

$data = $this->db-

>query("SELECT * FROM bobot order by idbobot asc")->result();

echo json_encode(array('Status'=>200,'Data'=>$data),

JSON_PRETTY_PRINT);

}

/**

* ini untuk menyimpan data bobot

*/

public function Simpan()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db-

>query("INSERT INTO bobot(idbobot,namabobot,nilaibobot) VALUES ('$da

ta->idbobot','$data->namabobot','$data->nilaibobot')");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

Page 111: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

92

echo json_encode(array('Status'=>500,'Data'=>'I

nput failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'I

nput success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk mengubah data bobot

*/

public function Ubah()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db->query("UPDATE bobot SET namabobot='$data-

>namabobot',nilaibobot='$data->nilaibobot' WHERE idbobot='$data-

>idbobot'");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'U

pdate failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'U

pdate success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk menghapus data bobot

*/

public function Hapus()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

Page 112: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

93

$this->db->trans_begin();

$this->db-

>query("Delete FROM bobot WHERE idbobot='$data->idbobot'");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'D

elete failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'D

elete success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk menampilkan data training dihalaman data trai

ning

*/

public function GetdataTraining()

{

header("Access-Control-Allow-Origin: *");

header('Content-Type: application/json');

$data = $this->db-

>query("SELECT * FROM data_training")->result();

echo json_encode(array('Status'=>200,'Data'=>$data),

JSON_PRETTY_PRINT);

}

/**

* ini untuk menyimpan data training

*/

public function SimpantdataTraining()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db-

>query("INSERT INTO data_training(nip,nama,tempat_lahir,tgl_lahir,je

nis_kelamin,tanggungan,pekerjaan,penghasilan,status) VALUES ('$data-

>nip','$data->nama','$data->tempat_lahir','$data->tgl_lahir','$data-

Page 113: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

94

>jenis_kelamin','$data->tanggungan','$data->pekerjaan','$data-

>penghasilan','$data->status')");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'I

nput failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'I

nput success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk merubah data training

*/

public function UbahdataTraining()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db-

>query("UPDATE data_training SET nip='$data->nip',nama='$data-

>nama',tempat_lahir='$data->tempat_lahir',tgl_lahir='$data-

>tgl_lahir',jenis_kelamin='$data->jenis_kelamin',tanggungan='$data-

>tanggungan',pekerjaan='$data->pekerjaan',penghasilan='$data-

>penghasilan',status='$data->status' WHERE id_data_training='$data-

>id_data_training'");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'U

pdate failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'U

pdate success'), JSON_PRETTY_PRINT);

}

}

Page 114: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

95

/**

* ini untuk menghapus data training

*/

public function HapusdataTraining()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db-

>query("Delete FROM data_training WHERE id_data_training='$data-

>id_data_training'");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'D

elete failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'D

elete success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk menampilkan data attribute kehalaman attribute

*/

public function GetNilaiAttribute()

{

header("Access-Control-Allow-Origin: *");

header('Content-Type: application/json');

$data = $this->db-

>query("SELECT * FROM nilai_attribut ORDER BY no DESC")->result();

echo json_encode(array('Status'=>200,'Data'=>$data),

JSON_PRETTY_PRINT);

}

/**

* ini untuk menyimpan attribute

*/

public function SimpantAttribute()

{

Page 115: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

96

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db-

>query("INSERT INTO nilai_attribut(idbobot,namabobot,data_baru,data_

lama,nilai) VALUES ('$data->idbobot','$data->namabobot','$data-

>data_baru','$data->data_lama','$data->nilai')");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'I

nput failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'I

nput success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk merubah attribute

*/

public function UpdateAttribute()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db-

>query("UPDATE nilai_attribut SET idbobot='$data-

>idbobot',namabobot='$data->namabobot',data_baru='$data-

>data_baru',data_lama='$data->data_lama',nilai='$data-

>nilai' WHERE no='$data->no'");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'I

nput failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

Page 116: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

97

echo json_encode(array('Status'=>200,'Data'=>'I

nput success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk menghapus attribute

*/

public function DeleteAttribute()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db-

>query("Delete FROM nilai_attribut WHERE no='$data->no'");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'I

nput failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'I

nput success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk menampilkan data user

*/

public function GetdataUser()

{

header("Access-Control-Allow-Origin: *");

header('Content-Type: application/json');

$data = $this->db->query("SELECT * FROM user")-

>result();

echo json_encode(array('Status'=>200,'Data'=>$data),

JSON_PRETTY_PRINT);

}

/**

* ini untuk menyimpan user

Page 117: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

98

*/

public function SimpantUser()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db-

>query("INSERT INTO user(username,password) VALUES ('$data-

>username','$data->password')");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'I

nput failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'I

nput success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk merubah data user

*/

public function UpdateUser()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db->query("UPDATE user SET username='$data-

>username',password='$data->password' WHERE iduser='$data-

>iduser'");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'I

nput failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

Page 118: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

99

echo json_encode(array('Status'=>200,'Data'=>'I

nput success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk menghapus data user

*/

public function DeleteUser()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input")

);

$this->db->trans_begin();

$this->db-

>query("Delete FROM user WHERE iduser='$data->iduser'");

if ($this->db->trans_status() === FALSE)

{

$this->db->trans_rollback();

echo json_encode(array('Status'=>500,'Data'=>'I

nput failed'), JSON_PRETTY_PRINT);

}

else

{

$this->db->trans_commit();

echo json_encode(array('Status'=>200,'Data'=>'I

nput success'), JSON_PRETTY_PRINT);

}

}

/**

* ini untuk validasi

*/

public function Login()

{

header("Access-Control-Allow-Origin: *");

$data = json_decode(file_get_contents("php://input"))

;

$this->db->trans_begin();

$cek = $this->db-

>query("SELECT * FROM user WHERE username='$data-

>username' AND password='$data->password'")->row();

if ($cek == null)

{

Page 119: KLASIFIKASI WARGA YANG LAYAK MENDAPATKAN BANTUAN SOSIAL …

100

echo json_encode(array('Status'=>500,'Data'=>nu

ll), JSON_PRETTY_PRINT);

}

else

{

echo json_encode(array('Status'=>200,'Data'=>$c

ek), JSON_PRETTY_PRINT);

}

}

}