DENGAN FITUR KLASIFIKASI MENGGUNAKAN METODE NAIVE BAYES
SKRIPSI
Disusunoleh :
NOVTORI WICAKSONO NPM : 0935010031
PROGRAM STUDI SISTEM INFORMASI FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” J AWA TIMUR
DAN SMS GATEWAY DI KANTOR KECAMATAN SEDATI SIDOARJ O DENGAN FITUR KLASIFIKASI MENGGUNAKAN METODE NAIVE
BAYES
Disusun Oleh: NOVTORI WICAKSONO
NPM : 0935010031
Telah dipertahankan dihadapan dan diterima oleh Tim Penguji Skr ipsi Pr ogram Studi Sistem Informasi Fakultas Teknologi Industri
Univer sitas Pembangunan Nasional “Veteran” J awa Timur Pada tanggal 31 J uli 2013
Pembimbing : 1.
Nur Cahyo Wibowo, S.Kom, M.Kom NIP/NPT. 379030401971
2.
Agung Brastama, S.Kom NIP/NPT. 38511303571
Tim Penguji : 1.
Ir. Mu’tasim Billah, MS.
NIP/NPT. 196005041987031001 2.
Pr iza Pandunata, S.Kom, M.Sc NIP/NPT. 383010602121
3.
Rizka Hadiwiyanti, S.Kom, M.Kom NIP/NPT. 386071303501
Mengetahui,
Dekan Fakultas Teknologi Industri
Univer sitas Pembangunan Nasional “Veteran” J awa Timur
Ir. Sutiyono, MT
Judul : SISTEM INFORMASI PENGADUAN MASYARAKAT BERBASIS WEB DAN SMS GATEWAY DI KANTOR KECAMATAN SEDATI SIDOARJO DENGAN FITUR KLASIFIKASI MENGGUNAKAN METODE NAIVE BAYES
Dosen Pembimbing I : Nur Cahyo Wibowo, S.Kom, M.Kom Dosen Pembimbing II : Agung Brastama, S.Kom
ABSTRAK
Pengaduan adalah saran atau keluhan yang disampaikan oleh masyarakat. Dengan adanya pengaduan, kantor Kecamatan Sedati dapat meningkatkan kinerjanya dan memajukan kecamatan sedati. Kantor Kecamatan Sedati selama ini menerima pengaduan dari masyarakat melalui kotak pengaduan atau manual. Hal tersebut dinilai tidak efisien karena membutuhkan waktu lama untuk menyampaikan pengaduan masyarakat kepada petugas. Berdasarkan dari permasalahan tersebut, dibuatlah sistem informasi pengaduan masyarakat dengan program fitur klasifikasi menggunakan metode naive bayes untuk menentukan pengaduan masyarakat sesuai kategori petugas. Dengan adanya Website ini, proses pengaduan masyarakat dapat dilakukan dengan cepat dan dapat menentukan pengaduan masyarakat sesuai kategori petugas. Website ini juga dapat menerima pengaduan melalui SMS (Short Message Service).
KATA PENGANTAR
Dengan memanjatkan puji dan syukur atas kehadirat Allah SWT atas segala Rahmat, Taufiq, serta Hidayah-Nya sehingga penyusun dapat menyelesaikan Tugas Akhir yang berjudul “Sistem Informasi Pengaduan Masyarakat dan SMS Gateway Di Kantor Kecamatan Sedati Sidoarjo Dengan Fitur Klasifikasi Menggunakan Metode Naive Bayes”.
Tugas Akhir ini untuk memenuhi persyaratan untuk menempuh ujian sarjana pada Fakultas Teknologi Industri Program Studi Sistem Informasi Universitas Pembangunan Nasional “Veteran” Jawa Timur.
Dengan selesainya tugas akhir dan laporan ini, tidak lupa penyusun mengucapkan terima kasih yang sebesar – besarnya, pada :
1. Ibu dan Bapak Saya yang telah banyak memberikan dukungan moril dan materiil dan do’a kepada saya sehingga semua dapat berjalan dengan lancar. 2. Prof. Dr. Ir. Teguh Soedarto, MP selaku Rektor UPN “Veteran” Jawa Timur. 3. Ir. Sutiyono, MT selaku Dekan Fakultas Teknologi Industri Universitas
Pembangunan Nasional “Veteran” Jawa Timur.
4. Nur Cahyo Wibowo, S.Kom, M.Kom, selaku Ketua Program Studi Sistem Informasi FTI Universitas Pembangunan Nasional "Veteran" Jawa Timur dan juga selaku Dosen Pembimbing I.
5. Agung Brastama, S.Kom , selaku Dosen Pembimbing II.
7. Dan Semua pihak yang tidak dapat saya sebutkan satu persatu yang telah membantu dalam penyusunan sampai terselesaikannya tugas akhir ini.
Penulis mengucapkan terima kasih kepada semua pihak yang telah membantu penyelesaian Tugas Akhir ini. Semoga Allah membalasnya dengan balasan sebaik-baiknya.
Penulis sebagai manusia biasa pasti mempunyai keterbatasan dan banyak sekali kekurangan, terutama dalam pembuatan laporan ini. Untuk itu penulis sangat membutuhkan kritik dan saran yang membangun dalam memperbaiki penulisan laporan ini.
Surabaya, 10 Juli 2013
DAFTAR ISI
ABSTRAK ... i
KATA PENGANTAR ... ii
DAFTAR ISI ... iv
DAFTAR GAMBAR ... viii
DAFTAR TABEL ... xiii
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang... 1
1.2 Perumusan Masalah ... 2
1.3 Batasan Masalah ... 2
1.4 Tujuan ... 3
1.5 Manfaat ... 3
1.6 Metode Penelitian ... 3
1.7 Sistematika Penulisan ... 5
BAB II TINJAUAN PUSTAKA ... 7
2.1 Pengertian Pengaduan ... 7
2.2 Naive Bayes Classifier (NBC) ... 8
2.3 PHP ... 11
2.3.2 Sintaks Dasar PHP ... 11
2.3.3 Percabangan atau Kondisi ... 12
2.3.4 Require ... 15
2.3.5 Include... 16
2.3.6 Session ... 17
2.4 Database MySql (Phpmyadmin) ... 21
2.4.1 Pengertian Database ... 21
2.4.2 Pengenalan MySQL ... 21
2.4.3 SQL ... 22
2.4.4 PHPMyAdmin ... 23
BAB III ANALISIS DAN PERANCANGAN SISTEM ... 24
3.1 Flowchart... 24
3.1.1 Flowchart Pengaduan Masyarakat ... 24
3.1.2 Flowchart Penentuan Kategori Pengaduan ... 25
3.2 Data Flow Diagram ... 27
3.2.1 Konteks Diagram Sistem Pengaduan ... 27
3.2.2 DFD level 0 Sistem Pengaduan ... 28
3.2.3 DFD level 1 Sistem Pengaduan ... 29
3.3 Perancangan CDM(Conceptual Data Model) ... 31
3.4 Perancangan PDM(Physical Data Model) ... 33
3.5.1 Tabel Petugas ... 35
3.5.2 Tabel Pengaduan ... 36
3.5.3 Tabel Kata-kata ... 36
3.5.4 Tabel Home ... 37
3.5.5 Tabel Bantuan... 37
3.5.6 Tabel Visi Misi ... 37
3.5.7 Tabel Ketentuan Pengaduan ... 38
3.6 Perancangan Antar Muka ... 38
3.6.1 Masyarakat ... 38
3.6.2 Petugas ... 43
3.6.3 Sekcam ... 45
BAB IV HASIL DAN PEMBAHASAN ... 48
4.1 Lingkungan Implementasi ... 48
4.1.1 Spesifikasi Sistem ... 48
4.2 Implementasi Antar Muka Masyarakat ... 49
4.2.1 Interface Home ... 49
4.2.2 Interface Bantuan ... 50
4.2.3 Interface Visi Misi ... 51
4.2.4 Form Pengaduan ... 53
4.2.5 Interface Lihat Pengaduan ... 62
4.3 Implementasi Antar Muka Petugas ... 65
4.3.1 Login Petugas ... 65
4.3.2 Lihat Pengaduan Masuk dan Jawab Pengaduan ... 67
4.3.3 Interface Ubah Password ... 70
4.4 Implementasi Antar Muka Sekcam ... 71
4.4.1 Interface Login Sekcam ... 72
4.4.2 Interface Konfirmasi Pengaduan ... 72
4.5 Pengaduan SMS ... 74
BAB V PENUTUP ... 79
5.1 Kesimpulan... 79
5.2 Saran ... 79
DAFTAR GAMBAR
Gambar 2.1Tahapan Proses Klasifikasi Dokumen dengan Algoritma Naïve
Bayes ... 10
Gambar 2.2phpMyAdmin ... 23
Gambar 3.1 Flowchart Pengaduan Masyarakat ... 25
Gambar 3.2 Flowchart Penentuan Kategori Pengaduan ... 26
Gambar 3.3 Konteks Diagram Sistem Pengaduan ... 27
Gambar 3.4 DFD Level 0 Sistem Pengaduan ... 28
Gambar 3.5 DFD Level 1 Proses Validasi Kata ... 29
Gambar 3.6 DFD Level 1 Proses View Pengaduan ... 30
Gambar 3.7 DFD Level 1 Proses Jawab Pengaduan ... 31
Gambar 3.8 CDM (Conceptual Data Model) ... 32
Gambar 3.9 CDM (Conceptual Data Model) Gammu ... 33
Gambar 3.10 PDM (Physical Data Model) ... 34
Gambar 3.11 PDM (Physical Data Model) Gammu ... 34
Gambar 3.12 Lanjutan PDM (Physical Data Model) Gammu ... 35
Gambar 3.14 Halaman Bantuan ... 39
Gambar 3.15 Halaman Visi Misi ... 40
Gambar 3.16 Form Pengaduan ... 41
Gambar 3.17 Lihat Pengaduan ... 42
Gambar 3.18 Ketentuan Pengaduan ... 42
Gambar 3.19 Login... 43
Gambar 3.20 Pengaduan Masyarakat ... 44
Gambar 3.21 Form Jawab Pengaduan ... 44
Gambar 3.22 Halaman Ubah Password ... 45
Gambar 3.23 Halaman Pemberitahuan Konfirmasi Pengaduan ... 46
Gambar 3.24 Form Konfirmasi Pengaduan ... 46
Gambar 3.25 Form Konfirmasi Pengaduan ... 47
Gambar 4.1 Interface Home ... 49
Gambar 4.2 Code Menu... 50
Gambar 4.3 Interface Bantuan ... 50
Gambar 4.4 Code Bantuan ... 51
Gambar 4.5 Interface Visi Misi ... 51
Gambar 4.7 Form Pengaduan ... 53
Gambar 4.8 Alert Nomor HP ... 54
Gambar 4.9 Alert Isi Pesan ... 54
Gambar 4.10 Code Alert ... 55
Gambar 4.11 Code Proses Kirim Pengaduan ... 56
Gambar 4.12 Contoh Perhitungan Penentuan Kategori Pengaduan ... 60
Gambar 4.13 Pengaduan Terkirim ... 61
Gambar 4.14 Pengaduan Tidak Valid ... 61
Gambar 4.15 Alert Pengaduan Gagal ... 62
Gambar 4.16 Code Pengaduan Gagal ... 62
Gambar 4.17 Lihat Pengaduan Masyarakat ... 63
Gambar 4.18 Hasil Pencarian Pengaduan Masyarakat ... 63
Gambar 4.19 Interface Ketentuan Pengaduan ... 64
Gambar 4.20 Code Ketentuan Pengaduan ... 64
Gambar 4.21 Login Petugas ... 65
Gambar 4.22 Alert Username dan Password Tidak Valid ... 66
Gambar 4.23 Code Proses Login ... 66
Gambar 4.25 Alert Berhasil Login ... 67
Gambar 4.26 Form Pengaduan Petugas ... 68
Gambar 4.27 Code Pengaduan Petugas ... 68
Gambar 4.28 Form Jawab Pengaduan ... 69
Gambar 4.29 Code Jawab Pengaduan ... 69
Gambar 4.30 Alert Pesan Dikirim ... 70
Gambar 4.31 Form Ubah Password ... 70
Gambar 4.32 Form Input Username dan Password ... 70
Gambar 4.33 Code Ubah Username dan Password ... 71
Gambar 4.34 Alert Username dan Password Berhasil Diubah... 71
Gambar 4.35 Interface Login Sekcam ... 72
Gambar 4.36 Interface Konfirmasi Pengaduan... 73
Gambar 4.37 Form Input Konfirmasi Jawaban ... 73
Gambar 4.38 Uji Coba Kirim SMS Pengaduan ... 74
Gambar 4.39 Code Ambil SMS Terbaru ... 75
Gambar 4.40 Code Kirim SMS Petugas ... 75
Gambar 4.41 Code Hapus SMS ... 76
Gambar 4.43 Petugas Terima SMS Pengaduan ... 76
Gambar 4.44 Form Terima Pengaduan Masyarakat ... 77
Gambar 4.45 Form Jawab Pengaduan Masyarakat ... 77
DAFTAR TABEL
Tabel 3.1 Petugas ... 36
Tabel 3.2 Pengaduan ... 36
Tabel 3.3 Kata-kata ... 36
Tabel 3.4 Home ... 37
Tabel 3.5 Bantuan ... 37
Tabel 3.6 Visi Misi ... 37
Tabel 3.7 Ketentuan Pengaduan ... 38
Tabel 4.1 Nilai Kategori ... 57
Tabel 4.1 Lanjutan Nilai Kategori ... 58
BAB I PENDAHULUAN
1.1 Latar Belakang
Dalam sebuah kantor kecamatan, pengaduan dari masyarakat merupakan hal terpenting untuk kantor kecamatan. Dengan adanya pengaduan masyarakat, suatu kecamatan dapat berkembang dan maju. Pada saat ini kantor kecamatan Sedati menerima pengaduan masyarakat melalui kotak pengaduan dan butuh proses untuk menyampaikan pada setiap petugas sesuai kategori pengaduan. Cara tersebut dapat dikatakan kurang efektif karena masyarakat ingin pengaduannya segera ditanggapi oleh setiap petugas sesuai kategori pengaduan.
Dengan semakin berkembangnya IT, semua kegiatan dapat dilakukan secara cepat contoh melalui website dan Short Message Service. Sebagai respon dari hal tersebut Kantor Kecamatan Sedati berkeinginan untuk membuat sebuah website pengaduan berbasis SMS Gateway untuk mempercepat penyampaian pengaduan dari masyarakat yang ditujukan untuk setiap petugas sesuai kategori pengaduan. Pada
website pengaduan Kecamatan Sedati nantinya terdapat berbagai fitur yang dapat
membantu masyarakat menyampaikan pengaduan.
1.2 Perumusan Masalah
Berdasarkan permasalahan diatas, maka masalah pokok yang akan diteliti adalah apakah pengaduan masyarakat dapat diketahui oleh petugas kecamatan sesuai kategori pengaduan.
Untuk mempermudah penyampaian pengaduan, secara bertahap perlu juga dijawab masalah-masalah sebagai berikut :
1) Bagaimana membuat sistem informasi pengaduan untuk menerima pengaduan masyarakat ?
2) Bagaimana menerapkan SMS Gateway pada sistem informasi pengaduan ? 3) Bagaimana masyarakat dapat menyampaikan pengaduan secara cepat sesuai
pengaduan yang ditujukan untuk masing-masing pegawai pada bidangnya ? 4) Bagaimana menerapkan algoritma Naive Bayes Classifier (NBC) ke dalam
sebuah sistem informasi pengaduan masyarakat untuk menentukan kategori pengaduan masyarakat ?
1.3 Batasan Masalah
Batasan-batasan masalah yang diberikan sesuai dengan permasalahan yang telah dijelaskan diatas, antara lain :
1) Sistem ini hanya untuk Kantor Kecamatan Sedati. 2) Hanya membahas pengaduan masyarakat.
4) Penentuan kategori pengaduan menggunakan Algoritma Naive Bayes
Classifier (NBC).
5) Petugas tidak dapat menjawab pengaduan melalui SMS.
1.4 Tujuan
Sesuai dengan perumusan masalah diatas, maka tujuan yang ingin dicapai dalam Tugas Akhir ini adalah sebagai berikut :
1) Mampu merancang dan membangun Sistem Informasi Pengaduan untuk membantu pegawai kecamatan mengetahui pengaduan masyarakat.
2) Mampu menerapkan SMS Gateway pada sistem informasi pengaduan.
3) Masyarakat dapat menyampaikan pengaduan secara cepat sesuai kategori pegawai yang dituju.
4) Mampu menerapkan metode Naive Bayes Classifier (NBC) pada sistem informasi pengaduan.
1.5 Manfaat
Adapun manfaat yang dapat diambil dari pembuatan Sistem Informasi Pengaduan Masyarakat di Kecamatan Sedati adalah :
1) Membantu masyarakat untuk menyampaikan pengaduan secara cepat sesuai kategori petugas kecamatan.
2) Pegawai kecamatan dapat secara cepat mengetahui pengaduan dari masyarakat.
1.6 Metode Penelitian
a. Studi Literatur
Mencari referensi dan bahan - bahan pustaka tentang teori-teori dan beberapa informasi yang berhubungan atau memiliki manfaat dalam pemecahan masalah berdasarkan permasalahan yang akan dikerjakan dalam tugas akhir ini.
b. Pengumpulan Data – Data Studi Kasus
Mencari contoh-contoh kasus serupa yang berhubungan dengan permasalahan yang dikerjakan dalam Tugas Akhir ini.
c. Analisis dan Perancangan :
Membuat analisa berdasarkan data-data yang sudah dimiliki, melakukan analisa kebutuhan sistem. Membuat konsep perancangan aplikasi dimulai dengan perancangan basis data dan desain antar muka aplikasi.
d. Implementasi Program :
Mengimplementasikan teknik dan metode yang akan digunakan. Detil mengenai implementasi program dilakukan sesuai dengan hasil analisa dan perancangan aplikasi.
e. Pengujian Aplikasi
1) Melakukan pengujian pada aplikasi yang telah dibuat. Menguji ketepatan data dan efektifitas sistem yang diterapkan pada aplikasi.
2) Evaluasi dan Penarikan kesimpulan.
1.7 Sistematika Penulisan
Tugas Akhir ini terdiri dari 5 bab dengan rincian sebagai berikut :
BAB I PENDAHULUAN
Bab ini berisi tentang pendahuluan dimana dilakukannya tugas akhir dan latar belakang yang menjelaskan tentang informasi dari instansi yang bersangkutan dimana berkaitan dengan permasalahan yang sedang dihadapi serta solusi pemecahannya, rumusan masalah, batasan masalah, tujuan, manfaat bagi pengguna serta sistematika penulisan yang digunakan dalam laporan Tugas Akhir ini.
BAB II TINJ AUAN PUSTAKA
Bab ini berisi landasan – landasan teori dan hal - hal yang bersifat informatif yang akan digunakan sebagai data pendukung dalam penyelesaian permasalahan.
BAB III ANALISIS DAN PERANCANGAN SISTEM
Bab ini berisi tentang analisa dan perancangan sistem dari sistem pengaduan masyarakat. Terdiri dari flowchart pengaduan masyarakat, rancangan proses berupa DFD dan rancangan database.
BAB IV HASIL DAN PEMBAHASAN
dan ketepatan datanya, kemudian melakukan evaluasi terhadap kinerja sistem.
BAB V PENUTUP
Berisi kesimpulan dan saran yang sudah diperoleh dari hasil penulisan Tugas Akhir.
DAFTAR PUSTAKA
BAB II
TINJ AUAN PUSTAKA
Pada bab ini akan dibahas beberapa teori dasar sebagai penunjang penyelesaian Tugas Akhir, antara lain: pengertian pengaduan, Naive Bayes
Classifier (NBC), PHP (Hypertext Preprocessor), database MySQL (Phpmyadmin), PHPMyAdmin.
2.1 Pengertian Pengaduan
Berikut ini beberapa pengertian pengaduan menurut Faisal Tamin (2003), pengaduan masyarakat adalah bentuk penerapan dari pengawasan masyarakat yang disampaikan oleh masyarakat, baik secara lisan maupun tertulis kepada Aparatur Pemerintah terkait, berupa sumbangan pikiran, saran, gagasan atau keluhan/pengaduan yang bersifat membangun.
Pengaduan berkadar pengawasan, adalah pengaduan masyarakat yang isinya mengandung informasi atau adanya indikasi,terjadinya penyimpangan atau penyalahgunaan wewenang oleh aparatur negara, yang dapat mengakibatkan kerugian masyarakat/negara dalam rangka penyelenggaraan pemerintahan.
2.2 Naive Bayes Classifier (NBC)
Menurut Hardinal Jais (2009), Naïve Bayes merupakan salah satu metode
machine learning yang menggunakan perhitungan probabilitas. Konsep dasar
yang digunakan oleh Naïve bayes adalah Teorema Bayes, yaitu melakukan klasifikasi dengan melakukan perhitungan nilai probabilitas p(C = ci | D = dj) , yaitu probabilitas kategori ci jika diketahui dokumen dj. Klasifikasi dilakukan untuk mementukan kategori c C dari suatu dokumen d D dimana C = {c1, c2,
c3, …, ci} dan D = {d1, d2, d3, …, dj}. Penentuan dari kategori sebuah dokumen
dilakukan dengan mencari nilai maksimum dari p(C = ci | D = dj) pada P={ p(C =
ci | D = dj) | c C dan d D}. Nilai probabilitas p(C = ci | D = dj) dapat dihitung
dengan persamaan (Mitchell, 2005):
( = | = ) = ( = ∩ = )
( = )
= ( = | = ) ( = )
( = )
keterangan :
p(D=dj|C=ci) : peluang interval i ke-j untuk kelas ci
p(C=ci|D=dj) : peluang kelas ci pada interval i ke-j
p(D=dj) : peluang sebuah interval ke-j pada semua interval yang terbentuk
p(C=ci) : peluang sebuah kelas ke-i untuk semua kelas yang ada di dataset
dengan p(D = dj |C = ci ) merupakan nilai probabilitas dari kemunculan dokumen
probabilitas kemunculan kategori ci, dan p(D = dj ) adalah nilai probabilitas kemunculan dokumen dj.
Naïve Bayes menganggap sebuah dokumen sebagai kumpulan dari kata-kata yang menyusun dokumen tersebut, dan tidak memperhatikan urutan kemunculan kata pada dokumen. Sehingga perhitungan probabilitas p(D = dj |C =
ci ) dapat dianggap sebagai hasil perkalian dari probabilitas kemunculan kata-kata
pada dokumen dj. Perhitungan probabilitas p(C = ci | D = dj) dapat dituliskan sebagai berikut:
( = | = ) = ∏ ( | = ) ( = )
( , , ,…, ,… )
dengan ∏ p(wk | C=ci) adalah hasil perkalian dari probabilitas kemunculan semua kata pada dokumen dj.
Proses klasifikasi dilakukan dengan membuat model probabilistik dari dokumen training, yaitu dengan menghitung nilai p(wk | c). Untuk wkj diskrit dengan wkj V = {v1, v2, v3, …, vm} maka p(wk | c) dicari untuk seluruh kemungkinan nilai wkj dan didapatkan dengan melakukan perhitungan (Mitchell, 2005):
( = | ) = D ( = , )
D ( )
dan
( ) = D ( ) | D|
jumlah seluruh training dokumen. Persamaan Db(wk = wkj ,c) sering kali dikombinasikan dengan Laplacian Smoothing untuk mencegah persamaan mendapatkan nilai 0, yang dapat menggangu hasil klasifikasi secara keseluruhan. Sehingga persamaan Db(wk = wkj ,c) dituliskan sebagai (Mitchell, 2005):
( = | ) = D = , + 1
D ( ) + | |
dengan |V| merupakan jumlah kemungkinan nilai dari wkj.
Pemberian kategori dari sebuah dokumen dilakukan dengan memilih nilai c yang memiliki nilai p(C = ci | D = dj) maksimum, dan dinyatakan dengan:
∗ = ∈ ( | ) ( )
Kategori c* merupakan kategori yang memiliki nilai p(C = ci | D = dj) maksimum. Nilai p(D = dj) tidak mempengaruhi perbandingan karena untuk setiap kategori nilainya akan sama. Berikut ini gambaran proses klasifikasi dengan algoritma Naïve Bayes:
2.3 PHP
2.3.1 Pengertian PHP
PHP (Hypertext Preprocessor) merupakan script yang menyatu dengan
HTML dan berada pada server (server side HTML embedded scripting). Dengan PHP ini dapat membuat beragam aplikasi berbasis web, mulai dari halaman web yang sederhana sampai aplikasi komplek yang membutuhkan koneksi ke database. PHP mengenal 6 macam tipe data, yaitu:
• Integer
• Floating Point
• String
• Array
• Object
• Boolean
• Resource
• Null
2.3.2 Sintaks Dasar PHP
Ada 4 macam cara penulisan kode PHP, yaitu :
• <? echo ("ini adalah script PHP\n"); ?>
• <?php echo("ini juga\n"); ?>
• <script language="php">
echo ("tulis pake ini jika html editor Anda tidak mengenali PHP"); </script>
Cara yang paling sering digunakan adalah cara pertama dan kedua. Perhatikan bahwa tiap akhir baris harus selalu diberi tanda titik koma (;).Seperti pada bahasa pemrograman lain, PHP bisa membuat baris komentar pada program. Pada PHP caranya adalah dengan meletakkan komentar tersebut dengan cara :
• Jika komentar hanya 1 baris maka di sebelah kanan diberi tanda //
• Jika leih dari satu baris maka komentar diletakkan di antara /* dan */
Contoh berikut adalah syntax komentar :
• File lab1.php
<?php
echo ("latihan PHP"); //ini adalah contoh komentar satu baris
/* kalau yang ini adalah komentar lebih dari satu baris */
echo ("memang mudah");
?>
2.3.3 Percabangan atau Kondisi
2.3.3.1 If
Konstruksi IF digunakan untuk melakukan eksekusi suatu statement secara bersyarat. Cara penulisannya adalah sebagai berikut:
if (syarat) {
}
atau:
if (syarat) {
statement }
else {
statement lain }
atau:
if (syarat pertama) {
statement pertama 65
}
elseif (syarat kedua) {
statement kedua }
else {
• File lab2.php: <?php
$a=4; $b=9; if ($a>$b) {
echo(“a lebih besar dari pada b”); }
elseif ($a<$b) {
echo(“a lebih kecil b”); }
else {
echo(“a sama dengan b”); }
?>
2.3.3.2 Switch
Statement SWITCH digunakan untuk membandingkan suatu variable dengan beberapa nilai serta menjalankan statement tertentu jika nilai variable sama dengan nilai yang dibandingkan. Struktur Switch adalah sebagai berikut: switch (variable)
case nilai:statement
• File lab3.php: <?php
$a=2; switch($a) {
case 1:
echo(“Nilai variable a adalah satu”); break;
case 2:
echo(“Nilai variable a adalah dua”); 66
break; case 3:
echo(“Nilai variable a adalah tiga”); break;
} ?>
2.3.4 Requir e
Statement Require digunakan untuk membaca nilai variable dan fungsifungsi dari sebuah file lain. Cara penulisan statement require adalah:
Statement Require ini tidak dapat dimasukkan diadalam suatu struktur looping misalnya while atau for. Karena hanya memperbolehkan pemangggilan file yang sama tersebut hanya sekali saja.
• File lab4.php: <?php
$teks=”Saya sedang belajar PHP”; function tulistebal($teks)
{
echo(“<b>$teks</b>”); }
?>
• File lab5.php: <?php
require(“contoh4.php”);
tulistebal(“Ini adalah tulisan tebal”); echo(“<br>”);
echo($teks); ?>
2.3.5 Include
Statement Include akan menyertakan isi suatu file tertentu. Include dapat diletakkan didalam suatu looping misalkan dalam statement for atau while.
• File lab6.php: <?php
echo(“PHP adalah bahasa scripting<br>”); echo(“---<br>”); echo(“<br>”);
?>
• File lab7.php: <?php
for ($b=1; $b<5; $b++) {
include(“contoh6.php”); }
?>
2.3.6 Session
Sesi atau session sangat penting sebagai alat untuk berinteraksi antara client dan web server dalam selang waktu tertentu. Hal yang dilakukan oleh session adalah menyimpan data pada server. Dengan demikian tidak ada perlu ada komunikasi bolak – balik antara web server dan client ketika web server membutuhkan data tersebut. Setiap kali suatu sesi dibentuk maka akan tercipta suatu referensi atau dapat disebut SID ( Session indentifier ) yang menunjuk ke sesi bersangkutan. Syntax yang mengatur untuk mengawali suatu session adalah :
session_start();
dan untuk mengakhiri sebuah sesi adalah :
sesi juga dapat diakhiri dengan menutup browser. Sesi destroy sering digunakan untuk memutuskan komunikasi antar client dan server seperti pada aplikasi logout. Untuk lebih jelasnya lihat script berikut :
session_start();
echo(“session_id : ”. session_id().”<br>\n”);
session_destroy();
echo(“sesi setelah di tutup <br>\n”);
echo(“session_id : “.session_id().”<br>\n”);
Dalam manajemen sesi terdapat juga cara untuk mendaftarkan variabel sesi yang akan dikenali pada sebuah sesi. Syntax berikut yang mengatur pendaftaran suatu sesi :
session_register(nama[,nama]);
contoh :
session_register(var_x);
Script ini akan mendaftarkan variabel sesi bernama var_x pada sesi awal. Variabel sesi hannya bisa dibentuk sebelum teks HTML dikirim, oleh karena itu bias akan membuat pendaftaran sesi pada awal – awal script.
<?php
echo(“pengenal sesi: ”. session_id().”<br>\n”); echo(“isi variabel sesi : $var_x”);
?>
Sebuah variabel yang telah dibentuk dimungkinkan untuk dapat diakses oleh script lain seperti pada contoh :
<?php
session_start();
echo(“SID : “. session_id().”<br>\n”); echo(“variabel sesi var_x <br>\n”); echo(“diakses dari scrip ini : <br>\n”); echo($var_x);
?>
Selain dapat melakukan pendaftaran sesi terdapat pula fungsi untuk mencabut variabel sesi yang telah teregistrasi. Menggunakan sintax :
session_unregister(nama_variabel_sesi);
Script berikut akan menjelaskan tentang sesi pencabutan variabel : <?php
session_start();
echo(“SID : “. session_id().”<br>\n”); echo(“variabel sesi var_x <br>\n”); echo(“diakses dari scrip ini : <br>\n”); echo(“$var_x <br>\n”);
session_unregister(“var_x”);
echo(“SID : ” .session_id() .”<br>\n”); ?>
Contoh script php dalam penanganan login tanpa akses MySQL : <html>
<body>
<form method=get action=proses.php>
Username : <input type=text name=nama><br> Password : <input type=password name=rahasia><br> <input type=”submit” value=”login”>
</form> </body> </html>
Hubungkan script php berikut sebagai pemroses script HTML di atas : <?php
if($nama==”sao” && $rahasia==”saocakep”) //hati-hati case sensitive
echo(“selamat datang bo’ ente berhasil login ”); else
echo(“wah gagal ente gagal ulangin aja proses loginnya”); ?>
2.4 Database MySql (Phpmyadmin)
2.4.1 Pengertian Database
Basis data (atau database) adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Database digunakan untuk menyimpan informasi atau data yang terintegrasi dengan baik di dalam komputer.
Untuk mengelola database diperlukan suatu perangkat lunak yang disebut DBMS (Database Management System). DBMS merupakan suatu sistem perangkat lunak yang memungkinkan user (pengguna) untuk membuat, memelihara, mengontrol, dan mengakses database secara praktis dan efisien. Dengan DBMS, user akan lebih mudah mengontrol dan memanipulasi data yang ada.
2.4.2 Pengenalan MySQL
MySQL (My Stucture Query Language) adalah salah satu Database Management System (DBMS) dari sekian banyak DBMS seperti Oracle, MS SQL, Postagre SQL, dan lainnya. MYSQL berfungsi untuk mengolah database menggunakan bahasa SQL. MySQL bersifat open source sehingga bisa menggunakannya secara gratis. Pemrograman PHP juga sangat mendukung dengan database MySQL.
Beberapa kelebihan MySQL antara lain :
• Free (bebas didownload)
• Fleksibel dengan berbagai pemrograman
• Security yang baik
• Dukungan dari banyak komunitas
• Kemudahan management database.
• Mendukung transaksi
• Perkembangan software yang cukup cepat.
2.4.3 SQL
SQL merupakan singkatan dari Structured Query Language. SQL atau juga sering disebut sebagai query merupakan suatu bahasa (language) yang digunakan untuk mengakses database. SQL dikenalkan pertama kali dalam IBM pada tahun 1970 dan sebuah standar ISO dan ANSII ditetapkan untuk SQL. Standar ini tidak tergantung pada mesin yang digunakan (IBM, Microsoft atau Oracle). Hampir semua software database mengenal atau mengerti SQL. Jadi, perintah SQL pada semua software database hampir sama.
Terdapat 2 (dua) jenis perintah SQL, yaitu :
1. DDL atau Data Definition Language DDL merupakan perintah SQL yang berhubungan dengan pendefinisian suatu struktur database, dalam hal ini
database dan table. Beberapa perintah dasar yang termasuk DDL ini
antara lain :
• CREATE
• ALTER
• RENAME
2. DML atau Data Manipulation Language DML merupakan perintah SQL yang berhubungan dengan manipulasi atau pengolahan data atau record dalam table. Perintah SQL yang termasuk dalam DML antara lain :
• SELECT
• INSERT
• UPDATE
• DELETE
2.4.4 PHPMyAdmin
PHPMyAdmin merupakan front-end MySQL berbasis web. PHPMyAdmin dibuat dengan menggunakan PHP. Saat ini, PHPMyAdmin banyak digunakan dalam hampir semua penyedia hosting yang ada di internet. PHPMyAdmin mendukung berbagai fitur administrasi MySQL termasuk manipulasi database, tabel, index dan juga dapat mengeksport data ke dalam berbagai format data. PHPMyAdmin juga tersedia dalam 50 bahasa lebih, termasuk bahasa Indonesia.
BAB III
ANALISIS DAN PERANCANGAN SISTEM
Untuk membuat Sistem Informasi Pengaduan Masyarakat Menggunakan Metode Naive Bayes Classifier Berbasis Web dan SMS Gateway di Kantor Kecamatan Sedati ini dibutuhkan suatu rangkaian kegiatan yaitu seperti survey untuk mendapatkan data dan informasi yang berhubungan dengan proses penyelesaian masalah. Selain itu juga telah melakukan observasi, wawancara, dan belajar literatur.
Setelah semua data terkumpul, langkah selanjutnya adalah membuat flowchart, data flow diagram, entity relationship dan kemudian diimplementasikan ke dalam program.
3.1 Flowchart
Flochart merupakan suatu arus data diagram yang digunakan untuk menggambarkan aliran kerja dari sistem manual. Berikut ini adalah gambaran flowchart Sistem Informasi Pengaduan Masyarakat Menggunakan Metode Naive Bayes Classifier Berbasis Web dan SMS Gateway di Kantor Kecamatan Sedati.
3.1.1 Flowchart Pengaduan Masyarakat
penjelasan proses pengaduan masyarakat dalam bentuk flowchart pada Gambar 3.1 :
Gambar 3.1 Flowchart Pengaduan Masyarakat
3.1.2 Flowchart Penentuan Kategori Pengaduan
Pada proses pengaduan masyarakat terdapat proses penentuan kategori pengaduan dengan memotong kata-kata pengaduan masyarakat untuk disamakan dengan kata-kata pada datebase. Apabila kata-kata pengadaun masyarakat sesuai dengan kata-kata pada database, akan diproses menggunakan Algoritma Naive
Bayes Classifier (NBC) untuk mencari kategori pengaduan masyarakat sesuai
3.2 Data Flow Diagr am
Dalam sub bab ini akan dijelaskan DFD sesuai dengan urutannya, yaitu : Diagram Konteks, DFD Level 0, dan DFD Level 1.
3.2.1 Konteks Diagram Sistem Pengaduan
DFD Level konteks adalah diagram yang mendeskripsikan gambaran umum dari sistem yang akan dibuat.
Gambar 3.3 Konteks Diagram Sistem Pengaduan
Diagram konteks pada Gambar 3.3 menjelaskan gambaran umum dari sistem aplikasi yang dibuat. Terdapat 9 entitas dalam diagram konteks ini, yaitu : masyarakat, sekcam, pelayanan, pertanian, KB, statistik, pengendali dan pengamat hama, perikanan dan peternakan. Entitas masyarakat dapat mengirim pengaduan dan view jawaban dari petugas. Entitas pelayanan, pertanian, KB, statistik, pengendali dan pengamat hama, perikanan dan peternakan dapat melakukan view pengaduan dan menjawab pengaduan masyarakat. Entitas sekcam dapat
melalukan konfirmasi jawaban, view pengaduan, maintenance data petugas, maintenance bantuan dan maintenance ketentuan pengaduan. Untuk lebih jelasnya dapat dilihat pada DFD level 0.
3.2.2 DFD level 0 Sistem Pengaduan
Data Flow diagram dibuat untuk menggambarkan sistem sebagai suatu kesatuan dari jaringan proses fungsional yang dihubungkan satu dengan yang lain menggunakan alur data sehingga pembuatan DFD ini memberikan penekanan hanya pada fungsi sistem. Pada DFD Level 0 terdapat 10 proses dimana diantaranya merupakan input dari user yaitu: proses validasi data, proses view pengaduan, proses jawab pengaduan, proses konfirmasi jawaban, proses view jawaban pengaduan, proses maintenance ketentuan pengaduan, proses view ketentuan pengaduan, proses maintenance bantuan, proses view bantuan, proses
maintenance petugas.
Gambar 3.4 DFD Level 0 Sistem Pengaduan
[jawab_pengaduan]
2 ketentuan_pengaduan 8
proses_mainten
ance_bantuan 4 bantuan
3.2.3 DFD level 1 Sistem Pengaduan
Berdasarkan DFD level 0 yang didalamya terdapat 9 proses, maka DFD level 1 terbagi menjadi 3 proses, yaitu :
a. Proses validasi kata
Proses validasi kata berjalan apabila ada pengaduan masyarakat yang dikirim masyarakat. Input dari proses ini adalah pengaduan masyarakat yang sesuai dengan kategori pengaduan. Berikut gambar DFD level 1 proses validasi kata :
Gambar 3.5 DFD Level 1 Proses Validasi Kata b. Proses view pengaduan
Proses view pengaduan dapat dilakukan oleh setiap petugas dan sekcam. Berikut gambar DFD level 1 proses view pengaduan:
[pengaduan]
pengaduan_valid
[data_pengaduan]
[data_pengaduan] masyarakat
1 pengaduan
7 kata_kata 4.1
validasi_kata
4.2 proses_input_pe
Gambar 3.6 DFD Level 1 Proses View Pengaduan c. Proses jawab pengaduan
Proses jawab pengaduan dapat dilakukan oleh setiap petugas. Berikut gambar DFD level 1 proses jawab pengaduan:
Gambar 3.7 DFD Level 1 Proses Jawab Pengaduan
3.3 Perancangan CDM(Conceptual Data Model)
Pembuatan CDM adalah suatu tahap dimana dilakukan proses identifikasi dan analisa kebutuhan-kebutuhan data dan ini disebut pengumpulan data dan analisa. Untuk menentukan kebutuhan-kebutuhan suatu sistem database, harus mengenal terlebih dahulu bagian-bagian lain dari sistem informasi yang akan berinteraksi dengan sistem database.
Gambar 3.8 CDM (Conceptual Data Model)
Gambar 3.9 di bawah adalah tabel Gammu yang sudah tersedia. Dimana dalam terdiri 9 tabel yang berisi tabel daemons, gammu, pbk, pbk group, inbox, outbox_multipart, outbox, phone, dan sentitem. Tabel ini digunakan untuk sebagai SMS gateway. Dimana tabel inbox digunakan sebagai tabel untuk menampung data sms masuk. Data tersebut mulai nomer pengirim, isi pesan, waktu, dan lain-lain. Sedangkan jika user akan mengirim SMS data akan disimpan pada tabel outbox. Jika sms berhasil terkirim maka secara otomatis data yang berada pada tabel outbox tadi akan berpindah masuk ke dalam tabel sentitems.
maintenance_home
Variable characters (5) Text
Variable characters (5) Variable characters (50) Variable characters (50) Variable characters (15) Variable characters (50)
pengaduan
Variable characters (20) Text
Timestamp Text
Variable characters (20) kata_kata
Gambar 3.9 CDM (Conceptual Data Model) Gammu
3.4 Perancangan PDM(Physical Data Model)
Pada perancangan PDM(Physical Data Model) hampir sama dengan perancangan CDM (Conceptual Data Model). Berikut gambar PDM(Physical
Data Model). # version Integer
pbk RecievingDateT i me T ext
Vari abl e characters (20) enum
T ext
Vari abl e characters (20) Integer
Vari abl e characters (160) T ext
Variable characters (160) Integer
Variable characters (20) enum
Text Integer
Variable characters (160) enum
Integer
Variable characters (255) Timestamp
Variable characters (35) Text Sendi ngDateT i me Deli veryDateTi me text SequencePosi ti on Status
StatusErorr T PMR
Relati veVal idity CreatorID
Variabl e characters (20) enum
T ext
Variabl e characters (20) Integer
Variabl e characters (160) Integer
Gambar 3.10 PDM (Physical Data Model)
Gambar 3.11 selanjutnya adalah PDM dari database Gammu, database Gammu tersebut mempunyai 9 tabel, dimana semua tabel itu memang tidak mempunyai relasi.
Gambar 3.11 PDM (Physical Data Model) Gammu
FK_MAINTENANCE_HOME
version int <pk>
Gambar 3.12 Lanjutan PDM (Physical Data Model) Gammu
3.5 Penyusunan Tabel Database
Database adalah media penyimpanan data-data yang dibutuhkan dalam
sistem. Pada sistem pengaduan masyarakat terdapat 7 tabel terdiri dari : tabel petugas, tabel pengaduan, tabel kata-kata, tabel home, tabel bantuan, tabel visi misi, tabel ketentuan pengduan
3.5.1 Tabel Petugas
Tabel petugas terdiri dari 5 field, berfungsi untuk menyimpan data admin dari setiap petugas kecamatan sedati menurut kategori.
Tabel 3.1 Petugas
Field Type Length Keterangan id_petugas Varchar 5 Primari Key
nama Varchar 50
pass_petugas Varchar 50 no_telp Varchar 15 hak_akses Varchar 50
3.5.2 Tabel Pengaduan
Tabel pengaduan terdiri dari 5 field, berfungsi untuk menyimpan pengaduan masyarakat dan jawaban petugas.
Tabel 3.2 Pengaduan
Field Type Length Keterangan
id_pengaduan Integer - Primari Key no_telp_masyarakat Varchar 20
pengaduan Text -
tanggal Timestamp -
jawaban Text -
status Varchar 20
3.5.3 Tabel Kata-kata
Tabel kata-kata terdiri dari 3 field, berfungsi untuk menyimpan kata-kata dari setiap kategori petugas dan menyimpan nilai dari setiap kata-kata yang sudah pasti nilainya.
Tabel 3.3 Kata-kata
Field Type Length Keterangan
id_kata Integer - Primari Key
kata_kata Varchar 50
3.5.4 Tabel Home
Tabel kata-kata terdiri dari 2 field, berfungsi untuk menyimpan data-data home.
Tabel 3.4 Home
Field Type Length Keterangan
id_home Integer - Primari Key
home Text -
3.5.5 Tabel Bantuan
Tabel kata-kata terdiri dari 2 field, berfungsi untuk menyimpan data-data bantuan.
Tabel 3.5 Bantuan
Field Type Length Keterangan
id_bantuan Integer - Primari Key
bantuan Text -
3.5.6 Tabel Visi Misi
Tabel kata-kata terdiri dari 2 field, berfungsi untuk menyimpan data-data visi misi.
Tabel 3.6 Visi Misi
Field Type Length Keterangan
id_bantuan Varchar 5 Primari Key
visi Text -
3.5.7 Tabel Ketentuan Pengaduan
Tabel kata-kata terdiri dari 2 field, berfungsi untuk menyimpan data-data ketentuan pengaduan.
Tabel 3.7 Ketentuan Pengaduan
Field Type Length Keterangan
id_ket_pengaduan Integer - Primari Key
ketentuan Text -
3.6 Perancangan Antar Muka
Pada sub bab ini akan dijelaskann perancangan antar muka sistem pengaduan masyarakat yang akan dibuat. Ada 3 kategori pengguna dalam menggunakan sistem ini, yaitu : masyarakat, petugas dari setiap kategori pegawai dan sekcam. Terdapat perbedaan dalam setiap masing – masing pengguna yang akan dijelaskan sebagai berikut :
3.6.1 Masyarakat
Berikut ini perancangan antar muka untuk masyarakat terdiri sebagai berikut:
a. Halaman Home
Gambar 3.13 Halaman Home b. Halaman Bantuan
Berikut ini gambar form bantuan:
Pada form bantuan akan dijelaskan cara untuk mengirim pengaduan melalui website ataupun SMS beserta nomor sistem pengaduan. Dengan begitu masyarakat diharapkan tidak salah untuk melakukan pengaduan.
c. HalamanVisi Misi
Form visi misi berisi tentang visi misi dari kantor kecamatan. Berikut
gambar form visi misi.
Gambar 3.15 Halaman Visi Misi d. Form Pengaduan
Form pengaduan berfungsi untuk mengirim pengaduan melalui website.
Gambar 3.16 Form Pengaduan
Untuk mengirim pengaduan, masyarakat diwajibkan mengisi data yang dibutuhkan yaitu : No HP, Isi Pengaduan, dan tanggal.
e. Halaman Lihat Pengaduan
Gambar 3.17 Lihat Pengaduan f. Halaman Ketentuan Pengaduan
Form ketentuan pengaduan berisi tentang peraturan-peraturan pengaduan
yang akan dikirim masyarakat. Berikut ini gambar form ketentuan pengaduan:
3.6.2 Petugas a. Login
Berikut ini form login untuk petugas. Pada form login terdapat username,
password dan Hak akses yang wajib diisi petugas untuk masuk halaman
selanjutnya.
Gambar 3.19 Login b. Halaman Pengaduan Masyarakaat
Gambar 3.20 Pengaduan Masyarakat c. Halaman Jawab Pengaduan
Halaman jawab pengaduan adalah halaman untuk menjawab pengaduan masyarakat yang terdapat textfield untuk mengisi id petugas, no hp, pengaduan, jawaban, maksimal karakter dan status. Textfield jawaban wajib diisi petugas untuk mengirim jawaban dan maksimal kata 160 karakter. Berikut ini gambar antar muka dari jawab pengaduan:
d. Halaman Ubah Password
Halaman ubah password berfungsi untuk mengganti username dan passord petugas. Berikut ini antar muka halaman ubah password:
Gambar 3.22 Halaman Ubah Password
3.6.3 Sekcam
a. Konfirmasi Pengaduan
Form konfirmasi pengaduan ini berfungsi untuk mensetujui jawaban yang
Gambar 3.23 Halaman Pemberitahuan Konfirmasi Pengaduan
Kolom konfirmasi pengaduan Gambar 3.23 berisi link untuk yang ditujukan pada halaman form konfirmasi pengaduan. Berikut ini gambar form konfirmasi pengaduan yang terdiri dari id petugas, no HP, isi pesan, jawaban, maksimal karakter dan status.
Textfield jawaban berfungsi untuk mengganti jawaban yang belum pasti
dan textfield status berfungsi untuk mengganti status dari pending menjadi terkirim untuk dikirim pada masyarakat.
b. Form Laporan Pengaduan
Form laporan pengaduan berfungsi untuk laporan sekcam yang berisi
tentang semua pengaduan masyarakat dan jawaban petugas. Form pengaduan terdapat tabel yang terdiri dari 5 kolom yaitu no, no HP, pengaduan, jawaban dan tanggal. Berikut ini gambar form pengaduan.
BAB IV
HASIL DAN PEMBAHASAN
Pada bab IV pembahasan dan hasil ini, akan dijelaskan secara terstruktur mengenai pembangunan sistem pengaduan masyarakat berbasis web yang dimana nantinya user akan lebih mudah memahami bagaimana cara menggunakan dan bagaimana website ini dibuat.
4.1 Lingkungan Implementasi
Lingkungan implementasi akan dibahas mengenai implementasi dari rancangan sistem yang telah dibuat pada bab sebelumnya. Untuk implementasi sistem tersebut diperlukan peralatan komputer yang berupa perangkat keras (hardware) dan perangkat lunak (software) yang mencukupi, yaitu sebagai berikut:
4.1.1 Spesifikasi Sistem
Untuk menjalankan website ini, dibutuhkan software sebagai pendukung kebutuhan fungsional, yang terdiri dari:
Software:
- Web browser (Mozilla Firefox 4+, IE 9+, Opera 9+, dan browser lain
pendukung CSS3) - Apache web server - MySQL database
Hardware:
- Keyboard
- Monitor
- RAM (minimal 256 MB) - Processor (Pentium 4 keatas)
- Hardisk (minimal 20 GB)
4.2 Implementasi Antar Muka Masyarakat
Dalam implementasi antar muka masyarakat ini terdapat beberapa tahapan yaitu perancangan interface dan penyusunan tiap menu yang ada. Berikut ini pembuatan antar muka masyarakat.
4.2.1 Interface Home
Interface home adalah halaman yang pertama kali tampil ketika membuka
website pengaduan masyarakata. Berikut ini tampilan dari halaman home.
Dalam interface home berisi tentang kecamatan sedati dan pengertian pengaduan. Pada interface home terdapat 6 menu yaitu home, bantuan, visi dan misi, form pengaduan, lihat pengaduan dan ketentuan pengaduan. Berikut ini code yang digunakan.
Gambar 4.2 Code Menu
4.2.2 Interface Bantuan
Pada Interface bantuan terdapat tata cara mengirim bantuan, baik melalui
website maupun melalui SMS (Short Message Service).
Berikut ini code dari interface bantuan.
Gambar 4.4 Code Bantuan
4.2.3 Interface Visi Misi
Interface visi misi berisi tentang visi misi kantor kecamatan sedati. Berikut ini
gambar interface visi misi.
Code visi misi untuk menampilkan data visi misi dari database. Berikut ini
gambar code visi misi.
4.2.4 Form Pengaduan
Form pengaduan berfungsi untuk mengirim pengaduan ke kantor
kecamatan dengan mengisi semua textfield yang sudah disediakan seperti Gambar 4.7.
Gambar 4.7 Form Pengaduan
Pada form pengaduan masyarakat terdapat 3 textfield yang wajib diisi yaitu no HP, isi pesan dan tanggal pengaduan. Berikut ini beberapa alert peringatan apabila textfield kosong.
1) Alert Nomor HP
Gambar 4.8 Alert Nomor HP
2) Alert Isi Pesan
Berikut ini gambar alert isi pesan yang kosong apabila dikirim.
Dari beberapa alert di atas, terdapat code proses dari setiap tampilan alert. Berikut ini gambar code dari beberapa alert yaitu alert nomor HP dan alert isi pesan.
Apabila semua textfield diisi semua, maka akan diproses kirim pengaduan masyarakat. Berikut ini code proses kirim pengaduan.
Gambar 4.11 Code Proses Kirim Pengaduan
Pet ernakan Perikanan Pengendali dan pengamat hama St at ist ik
KB Pert anian Pelayanan
Nilai-nilai tabel di atas didapatkan dari tabel data dokumen contoh.
Tabel 4.3 Data Dokumen Contoh
Kategori Kata dan jumlahnya
Pelayanan pelayanan(3), kartu(2), keluarga(4), KK(3), KTP(4), penduduk(5), akta(4), kelahiran(3), SKCK(3)
Pertanian pertanian(3), tanaman(4), tani(2), sawah(3), budidaya(2), padi (3)
KB keluarga(4), berencana(3), KB(4), posyandu (2), balita(3) Statistik sensus(5), penduduk(4), pertanian(2), ekonomi(3)
Pengendali dan pengamat hama
pengendali(3), pengamat(2), hama(3), tanaman(2), penyakit(2)
Perikanan perikanan(4), budidaya(2), ikan(3), penyakit(2)
Peternakan peternakan(3), ternak(2), binatang(4), kandang(3), penyakit(2)
Pengaduan masyarakat akan terkirim apabila pengaduan terdapat kata-kata yang sama denga kata-kata di database seperti tabel di atas dan akan menampilkan pesan seperti Gambar 4.13.
Gambar 4.13 Pengaduan Terkirim
Apabila kata-kata pengaduan tidak sesuai dengan kata-kata pada database seperti Gambar 4.14.
Maka akan menampilkan alert sebagai berikut :
Gambar 4.15 Alert Pengaduan Gagal
Code dari alert pengaduan gagal adalah sebagai berikut:
Gambar 4.16 Code Pengaduan Gagal
4.2.5 Interface Lihat Pengaduan
Interface lihat pengaduan berfungsi untuk melihat pengaduan dengan
Gambar 4.17 Lihat Pengaduan Masyarakat
Setelah melakukan pencarian, maka akan tampil gambar hasil pencarian pengaduan sebagai berikut.
4.2.6 Interface Ketentuan Pengaduan
Interface ketentuan pengaduan berisi tentang ketentuan-ketentuan
pengaduan yang sudah ditetapkan.
Gambar 4.19 Interface Ketentuan Pengaduan
Berikut ini code ketentuan pengaduan.
4.3 Implementasi Antar Muka Petugas
Kantor kecamatan Sedati terdapat 7 kategori petugas yaitu : petugas pelayanan, petugas prtanian, petugas keluarga berencana (KB), petugas statistik, peyugas pengendali dan pengamat hama, petugas perikanan dan petugas peternakan. Dalam implementasi antar muka petugas terdapat beberapa tahapan perancangan interface. Dari masing-masing petugas memiliki fitur-fitur yang sama yaitu menerima pengaduan melalui SMS dan menjawab pengaduan melalui website. Berikut ini contoh pembuatan antar muka dari salah satu petugas yaitu petugas pertanian.
4.3.1 Login Petugas
Berikut ini interface login petugas yang berfungsi untuk login setiap petugas. Apabila username atau password tidak sesuai seperti Gambar 4.21 maka akan menampilkan alert.
Berikut ini gambar alert username dan password tidak valid.
Gambar 4.22 Alert Username dan Password Tidak Valid
Code dari proses login.
Apabila username dan password sesuai dengan hak akses, petugas akan dapat masuk menurut hak akses.
Gambar 4.24 Password Benar
Berikut ini tampilan alert berhasil login.
Gambar 4.25Alert Berhasil Login
4.3.2 Lihat Pengaduan Masuk dan J awab Pengaduan
Form pengaduan pada petugas berisi tentang pengaduan yang baru masuk
Gambar 4.26 Form Pengaduan Petugas
Code untuk menampilkan pengaduan petugas menurut kategori pengaduan
masyarakat.
Apabila klik isi pengaduan, maka tampil form seperti Gambar 4.28. form jawab pengaduan terdapat 6 textfield terdiri dari id pengaduan, no telepon, pengaduan, jawaban, maksimal karakter dan status. Status terkirim untuk jawaban yang langsung dikirim kepada masyarakat, status pending untuk jawaban yang belum pasti dan akan dikirim kepada sekcam.
Gambar 4.28 Form Jawab Pengaduan
Berikut ini code jawab pengaduan.
Tampilan untuk pesan yang sudah terkirim.
Gambar 4.30 Alert Pesan Dikirim
4.3.3 Interface Ubah Password
Gambar 4.31 Form Ubah Password
Form ubah password diatas terdapat tabel terdiri 3 kolom yaitu no,
username dan edit data. Untuk dapat mengubah password, klik ubah username dan password. Berikut ini form input username dan password.
Berikut ini gambar code ubah username dan password.
Gambar 4.33 Code Ubah Username dan Password
Berikut gambar alert username dan password berhasil diubah.
Gambar 4.34 Alert Username dan Password Berhasil Diubah
4.4 Implementasi Antar Muka Sekcam
4.4.1 Interface Login Sekcam
Login sekcam terdapat textfield username dan textfield password. Berikut
ini gambar interface login sekcam.
Gambar 4.35 Interface Login Sekcam
4.4.2 Interface Konfirmasi Pengaduan
Interface konfirmasi pengaduan berfungsi untuk menampilkan jawaban
yang belum pasti dari setiap petugas. Interface konfirmasi pengaduan terdapat tabel yang terdiri dari 5 kolom yaitu no, no telp, pengaduan, jawaban dan konfirmasi pengaduan. Kolom konfirmasi pengaduan terdapat link konfirmasi yang berfungsi untuk menuju form input konfirmasi jawaban. Berikut ini gambar
Gambar 4.36 Interface Konfirmasi Pengaduan
Berikut ini gambar form input konfirmasi pengaduan.
Form input konfirmasi pengaduan terdiri dari 6 textfield yaitu id
pengaduan, no telepon, pengaduan, jawaban, maksimal karakter, dan status.
Textfiald jawaban dan status berfungsi untuk konfirmasi pengaduan. Apabila
jawaban tidak pasti, sekcam akan mengubah jawaban yang pasti dan mengubah status dari pending menjadi terkirim untuk dikirim kepada masyarakat yang kirim pengaduan.
4.5 Pengaduan SMS
Pengaduan SMS berfungsi untuk mempercepat kirim pengaduan melalui SMS tanpa mengunjungi website pengaduan masyarakat kantor kecamatan sedati. Berikut ini gambar uji coba kirim SMS pengaduan.
Gambar 4.39 Code Ambil SMS Terbaru
Gambar 4.39 berfungsi untuk mengambil nomor HP dan pengaduan masyarakat.
Gambar 4.40 Code Kirim SMS Petugas
Gambar 4.41 Code Hapus SMS
Proses-proses di atas akan refresh setiap 10 detik untuk mengambil SMS terbaru. Berikut ini gambar code refresh.
Gambar 4.42 Code Refresh
SMS pengaduan terkirim kepada petugas.
Petugas melalukan jawab pengaduan melalui website.
Gambar 4.44 Form Terima Pengaduan Masyarakat
Baris kolom yang warna merah adalah pengaduan yang dikirim melalui SMS.
Textfield yang berwarna merah adalah jawaban yang akan dikirim petugas
kepada masyarakat.
Berikut ini gambar SMS jawaban dari petugas kepada masyarakat yang kirim pengaduan.
BAB V
PENUTUP
Pada bab ini dibahas kesimpulan dari seluruh proses pengerjaan Tugas Akhir beserta saran untuk proses pengembangan sistem selanjutnya.
5.1 Kesimpulan
Berdasarkan hasil uji coba yang telah dilakukan sebelumnya, maka laporan Tugas Akhir yang berjudul “SISTEM INFORMASI PENGADUAN MASYARAKAT BERBASIS WEB DAN SMS GATEWAY DI KANTOR KECAMATAN SEDATI SIDOARJO DENGAN FITUR KLASIFIKASI MENGGUNAKAN METODE NAIVE BAYES ” ini dapat ditarik kesimpulan sebagai berikut :
1) Website ini dapat mempercepat masyarakat kecamatan Sedati menyampaikan pengaduan kepada petugas kecamatan Sedati sesuai kategori pengaduan.
2) Website pengaduan masyarakat ini dapat menerima pengaduan melalui
SMS.
3) Website ini dapat menentukan kategori pengaduan secara otomatis
menggunakan algoritma Naive Bayes Classifier (NBC).
5.2 Sar an
Website pengaduan masyarakat ini petugas kecamatan tidak dapat
DAFTAR PUSTAKA
Ari, Rosihan. 2013. Panduan Praktis SMS Gateway. Solo.
Distiawan, Bayu dan Jais, Hardinal. 2009. Klasifikasi Dokumen menggunakan
Algoritma Naive Bayes dengan Penambahan Parameter Probabilitas
Parent Category. Tugas Akhir.
"http://xa.yimg.com/kq/groups/19540100/1177216621/name/Laporan+Akhi r+Tugas+Machine+Learning.pdf". Diakses tanggal 22 April 2013 / 19:50
Natalius, Samuel. 2010. Metoda Naïve Bayes Classifier dan Penggunaannya pada
Klasifikasi Dokumen. Bandung. Diakses tanggal 22 April 2013 / 19:50
Solichin, Achmad. 2005. Pemrograman Web dengan PHP dan MySQL. Jakarta. http://www.informatika.unsyiah.ac.id/arie/pbw/Pemrograman_Web_dengan _PHP_MySQL.pdf . Diakses tanggal 7 Mei 2013 / 14:15
Tamin, Faisal. 2003. PEDOMAN UMUM PENANGANAN PENGADUAN
MASYARAKAT. Jakarta.
Ari, Rosihan. 2013. Panduan Praktis SMS Gateway. Solo.
Distiawan, Bayu dan Jais, Hardinal. 2009. Klasifikasi Dokumen menggunakan
Algoritma Naive Bayes dengan Penambahan Parameter Probabilitas
Parent Category. Tugas Akhir.
"http://xa.yimg.com/kq/groups/19540100/1177216621/name/Laporan+Akhi r+Tugas+Machine+Learning.pdf". Diakses tanggal 22 April 2013 / 19:50
Natalius, Samuel. 2010. Metoda Naïve Bayes Classifier dan Penggunaannya pada
Klasifikasi Dokumen. Bandung. Diakses tanggal 22 April 2013 / 19:50
Solichin, Achmad. 2005. Pemrograman Web dengan PHP dan MySQL. Jakarta. http://www.informatika.unsyiah.ac.id/arie/pbw/Pemrograman_Web_dengan _PHP_MySQL.pdf . Diakses tanggal 7 Mei 2013 / 14:15
Tamin, Faisal. 2003. PEDOMAN UMUM PENANGANAN PENGADUAN
MASYARAKAT. Jakarta.