sistem pakar identifikasi mustahik zakat …
TRANSCRIPT
SISTEM PAKAR IDENTIFIKASI MUSTAHIK ZAKAT
MENGGUNAKAN METODE CERTAINTY FACTOR
Skripsi
Oleh :
Yulianti
NIM : 11140910000050
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2019 M / 1440 H
ii
SISTEM PAKAR IDENTIFIKASI MUSTAHIK ZAKAT
MENGGUNAKAN METODE CERTAINTY FACTOR
Skripsi
Diajukan sebagai salah satu syarat untuk memperoleh
gelar Sarjana Komputer (S.Kom)
Oleh :
Yulianti
NIM : 11140910000050
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2019 M / 1440 H
iii
PERNYATAAN ORISINALITAS
Dengan ini saya menyatakan bahwa:
1. Skripsi ini merupakan hasil karya asli saya yang diajukan untuk memenuhi
salah satu persyaratan memperoleh gelar strata 1 di UIN Syarif Hidayatullah
Jakarta.
2. Semua sumber yang saya gunakan dalam penulisan ini telah saya
cantumkan sesuai dengan ketentuan yang berlaku di UIN Syarif
Hidayatullah Jakarta.
3. Jika di kemudian hari terbukti bahwa karya ini bukan hasil karya asli saya
atau merupakan hasil jiplakan dari karya orang lain, maka saya bersedia
menerima sanksi yang berlaku di UIN Syarif Hidayatullah Jakarta.
Ciputat, Januari 2019
Yulianti
iv
HALAMAN PENGESAHAN
Skripsi berjudul Sistem Pakar Identifikasi Mustahik Zakat Menggunakan Metode
Certainty Factor telah diujikan dalam sidang munaqasyah Fakultas Sains dan
Teknologi UIN Syarif Hidayatullah Jakarta pada 23 Januari 2019. Skripsi ini telah
diterima sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer
(S.Kom) pada Program Studi Teknik Informatika.
Jakarta, 23 Januari 2019
Tim Penguji,
Penguji I Penguji II
Husni Teja Sukmana, Ph. D
NIP. 19771030 200112 1 003
Rayi Pradono Iswara, M. Sc.
NIDN. 0426086501
Tim Pembimbing,
Pembimbing I Pembimbing II
Victor Amrizal, M. Kom
NIP. 19740624 200710 1 001
Nurul Faizah Rozy, M.TI.
NIDN. 2009027202
Mengetahui,
Dekan Fakultas Sains dan Teknologi Ketua Prodi Teknik Informatika
v
vi
KATA PENGANTAR
Puji syukur penulis panjatkan ke hadirat Allah SWT yang telah memberikan
rahmat, hidayah, dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi
dengan judul Sistem Pakar Identifikasi Mustahik Zakat Menggunakan Metode
Certainty Factor sebagai syarat dalam menyelesaikan program S1 pada Program
Studi Teknik Informatika di Universitas Islam Negeri Syarif Hidayatullah Jakarta.
Shalawat serta salam tak lupa penulis haturkan kepada baginda nabi Muhammad
SAW.
Keberhasilan dalam pelaksanaan dan penyelesaian skripsi ini tidak luput
dari bimbingan dan motivasi dari berbagai pihak. Oleh karena itu penulis ingin
menyampaikan terima kasih kepada:
1. Bapak Dr. Agus Salim, M.Si., selaku Dekan Fakultas Sains dan
Teknologi.
2. Ibu Arini, M.T., selaku ketua Program Studi Teknik Informatika dan
Bapak Feri Fahrianto, M.Sc. selaku sekretaris Program Studi Teknik
Informatika.
3. Bapak Victor Amrizal M.Kom selaku dosen pembimbing I dan Ibu
Nurul Faizah Rozy, M.TI. selaku dosen pembimbing II yang telah
meluangkan waktu dan membimbing penulis selama penulis
mengerjakan skripsi ini.
4. Orang tua tercinta, mama dan alm. bapa, yang selalu menjadi motivasi
terbesar untuk penulis agar bisa menjadi pribadi yang lebih baik lagi.
Terima kasih untuk semua doa, cinta, dan kasih sayang yang selalu
diberikan.
5. Seluruh dosen serta staf karyawan Fakultas Sains dan Teknologi yang
telah memberikan bantuan selama perkuliahan.
6. Diah Agustin dan Feilla Sukrida, sepupu penulis yang selalu membantu
dari masalah ngeprint sampai keliling kesana kemari. Terima kasih
untuk waktu dan tenaganya.
vii
7. Tasya Nabilah Putri, teman seperempongan. Terima kasih sudah
menjadi sahabat baik penulis dan segala kebaikan yang diberikan.
8. Alfat Nursyahban, teman yang terngeselin. Terima kasih sudah menjadi
sahabat baik penulis dan pendengar yang baik.
9. Amir Buldan yang telah membantu penulis selama penyusunan skripsi
ini. Terima kasih untuk ilmu serta waktunya. Terima kasih sudah
menjadi sahabat baik penulis.
10. Seluruh teman-teman TI angkatan 2014, khususnya teman-teman TI B
yang sudah setia menemani hari-hari penulis selama kuliah.
11. Rahmi Elyunusyah dan Tiara Ramadhaniyah, yang selalu memberi
semangat serta motivasi untuk menyelesaikan skripsi ini. Terima kasih
untuk selalu ada.
12. Seluruh pihak baik secara langsung maupun tidak langsung yang telah
membantu penulis dalam menyelesaikan skripsi ini.
Dengan segala kerendahan hati penulis menyadari masih banyaknya
kekurangan dalam penulisan skripsi ini. Akhir kata semoga laporan ini dapat
memberikan banyak manfaat bagi semua.
Ciputat, Januari 2019
Penulis
viii
PERNYATAAN PERSETUJUAN PUBLIKASI SKRIPSI
Sebagai sivitas akademik UIN Syarif Hidayatullah Jakarta, saya yang bertanda
tangan di bawah ini:
Nama : Yulianti
NPM : 11140910000050
Program Studi : Teknik Informatika
Fakultas : Sains dan Teknologi
Jenis Karya : Skripsi
demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada
Universitas Islam Negeri Syarif Hidayatullah Jakarta Hak Bebas Royalti
noneksklusif (Non-exclusive Royalty Free Right) atas karya ilmiah saya yang
berjudul :
Sistem Pakar Identifikasi Mustahik Zakat
Menggunakan Metode Certainty Factor
beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti
Noneksklusif ini Universitas Islam Negeri Syarif Hidayatullah Jakarta berhak
menyimpan, mengalihmedia/formatkan, mengelola dalam bentuk pangkalan data
(database), merawat, dan memublikasikan tugas akhir saya selama tetap
mencantumlkan nama saya sebagai penulis/pencipta dan sebagai pemilik Hak
Cipta.
Demikian pernyataan ini saya buat dengan sebenarnya.
Dibuat di Jakarta
Pada tanggal 23 Januari 2019
Yang menyatakan
(Yulianti)
ix UIN Syarif Hidayatullah Jakarta
Penulis : Yulianti
Program Studi : Teknik Informatika
Judul : Sistem Pakar Identifikasi Mustahik Zakat
Menggunakan Metode Certainty Factor
ABSTRAK
Zakat merupakan salah satu kewajiban bagi setiap muslim, dan termasuk salah satu
dari lima rukun Islam. Zakat dapat disalurkan melalui organisasi pengelola zakat.
Pengelolaan zakat yang lebih baik akan menolong warga miskin dan para mustahik
lainnya. Sistem yang berjalan pada BAZNAS Kota Tangerang Selatan dan LPM
Dompet Dhuafa yang masih manual menyebabkan terjadinya kecurangan yang
dilakukan oleh beberapa mustahik dan pengindentifikasian manual yang tidak
efektif. Selain itu hasil dari kuesioner yang diberikan kepada 30 masjid Jami’ di
Kota Tangerang Selatan menunjukkan bahwa sistem yang manual pun masih
digunakan di hampir 30 masjid Jami’ di Kota Tangerang Selatan. Sistem pakar
merupakan sistem yang dapat membantu untuk pengambilan keputusan atau
pemecahan persoalan dalam bidang yang spesifik. Pada penelitian ini penulis
menggunakan metode certainty factor, yang merupakan salah satu metode yang
terdapat dalam sistem pakar. Metode pengembangan sistem yang penulis gunakan
yaitu Rapid Application Development (RAD) dengan membangun sebuah sistem
berbasis website. Hasil penelitian berupa sistem pakar dengan 11 kriteria, 6 asnaf,
dan 12 rule. Dari hasil pengujian dapat dikatakan bahwa sistem yang dibangun
dapat membantu proses pengidentifikasian, dan hasil yang dikeluarkan telah sesuai
dengan 11 kriteria yang disediakan.
Kata kunci : Zakat, Mustahik Zakat, Sistem Pakar, Metode Certainty
Factor, RAD
Jumlah Pustaka : 42 (2011-2018)
Jumlah Halaman : VI Bab + xix Halaman + 164 Halaman + 75 Gambar + 50
Tabel + 1 Bagan + 10 Lampiran
x UIN Syarif Hidayatullah Jakarta
Penulis : Yulianti
Program Studi : Teknik Informatika
Judul : Sistem Pakar Identifikasi Mustahik Zakat
Menggunakan Metode Certainty Factor
ABSTRACT
Zakat is an obligation for every muslims and a part of five pillars of Islam. Zakat
can be distributed through zakat agency. A good management of zakat will help the
poor ones and other mustahik. Manual system that run in National Zakat Agency
(BAZNAS) South Tangerang and LPM Dompet Dhuafa was inefficient and causing
fraud which was conducted by some mustahik. Based on questionnaire results, there
were almost 30 mosques in South Tangerang still using the manual system. Expert
system is a system that can support in decision making or problem solving in a
specific field. In this research the author used one of methods in expert system
which was certainty factor method and it was built into a website system using
Rapid Application Development (RAD). The results of this research is an expert
system with 11 criteria, 6 asnaf, and 12 rules. Based on testing results the system
can support identification process and results issued were in accordance with the
criteria provided.
Key words : Zakat, Mustahik Zakat, Expert System, Certainty Factor
Method, RAD
Bibliography : 42 (2011-2018)
Page of research : VI Chapters + xix Pages + 164 Pages + 75 Pictures + 50
Table + 1 Blueprint + 10 Attachment
xi UIN Syarif Hidayatullah Jakarta
DAFTAR ISI
HALAMAN PERSETUJUAN ................................ Error! Bookmark not defined.
PERNYATAAN ORISINALITAS ...................................................................... iii
HALAMAN PENGESAHAN .............................................................................. iv
KATA PENGANTAR ............................................................................................ v
PERNYATAAN PERSETUJUAN PUBLIKASI SKRIPSI ............................ viii
ABSTRAK ............................................................................................................ ix
ABSTRACT ............................................................................................................. x
DAFTAR ISI ......................................................................................................... xi
DAFTAR GAMBAR .......................................................................................... xiv
DAFTAR TABEL .............................................................................................. xvi
DAFTAR BAGAN ............................................................................................ xviii
DAFTAR LAMPIRAN ...................................................................................... xix
BAB I PENDAHULUAN ....................................................................................... 1
1.1. Latar Belakang ......................................................................................... 1
1.2. Rumusan Masalah .................................................................................... 6
1.3. Tujuan Penelitian ...................................................................................... 6
1.4. Manfaat Penelitian .................................................................................... 6
1.4.1. Manfaat Bagi Penulis ........................................................................ 6
1.4.2. Manfaat Bagi Pengguna .................................................................... 7
1.4.3. Manfaat Bagi Universitas .................................................................. 7
1.5. Batasan Masalah ....................................................................................... 7
1.6. Metodologi Penelitian .............................................................................. 8
1.6.1. Metode Pengumpulan Data ............................................................... 8
1.6.2. Metode Pengembangan Sistem ......................................................... 8
1.7. Sistematika Penulisan ............................................................................... 8
BAB II LANDASAN TEORI .............................................................................. 10
2.1. Sistem Pakar ........................................................................................... 10
2.1.1. Ciri-ciri Sistem Pakar ...................................................................... 11
2.1.2. Keuntungan Sistem Pakar ............................................................... 11
2.1.3. Kelemahan Sistem Pakar................................................................. 12
2.1.4. Struktur Sistem Pakar ...................................................................... 12
2.1.5. Perbandingan Sistem Pakar dengan Sistem Konvensional ............. 14
2.2. Metode Certainty Factor ........................................................................ 16
2.2.1. Pengertian Faktor Kepastian (Certainty Factor)............................. 16
2.2.2. Kelebihan Metode Certainty Factor ............................................... 17
2.2.3. Kekurangan Metode Certainty Factor ............................................ 17
2.2.4. Perbandingan dengan Metode Lain ................................................. 17
2.3. Zakat ....................................................................................................... 19
2.4. Muzaki .................................................................................................... 19
2.5. Mustahik ................................................................................................. 20
2.6. Software Development Life Cycle (SDLC) ............................................ 21
2.6.1. Perbandingan Model-Model SDLC ................................................ 21
xii UIN Syarif Hidayatullah Jakarta
2.6.2. Rapid Application Development (RAD) ......................................... 26
2.7. Hypertext Preporcessor (PHP) ............................................................... 27
2.7.1. Fungsi PHP ..................................................................................... 27
2.7.2. Keunggulan PHP ............................................................................. 28
2.8. CodeIgniter (CI) ..................................................................................... 28
2.8.1. Keunggulan CodeIgniter ................................................................. 29
2.9. My Structure Query Language (MySQL) .............................................. 29
2.9.1. Keunggulan MySQL ....................................................................... 29
2.10. HyperText Markup Language (HTML) .............................................. 30
2.11. Cascading Style Sheet (CSS) .............................................................. 30
2.12. JavaScript ............................................................................................ 30
2.13. JQuery ................................................................................................. 31
2.13.1. Kemampuan JQuery ........................................................................ 31
2.13.2. Kelebihan JQuery ............................................................................ 31
2.14. Bootstrap ............................................................................................. 32
2.15. Pemodelan Unified Modeling Language (UML) ................................ 32
2.15.1. Class Diagram ................................................................................ 33
2.15.2. Use Case Diagram .......................................................................... 34
2.15.3. Activity Diagram ............................................................................. 36
2.15.4. Sequence Diagram .......................................................................... 37
2.16. Metode Pengumpulan Data ................................................................. 39
2.16.1. Angket (Questionnaire) .................................................................. 40
2.16.2. Wawancara (Interview) ................................................................... 41
2.16.3. Pengamatan (Observation) .............................................................. 42
2.17. Pengujian Perangkat Lunak ................................................................ 42
2.18. Studi Literatur Sejenis ........................................................................ 45
BAB III METODOLOGI PENELITIAN .......................................................... 58
3.1. Metode Pengumpulan Data .................................................................... 58
3.1.1. Data Primer ..................................................................................... 58
3.1.2. Data Sekunder ................................................................................. 59
3.2. Metode Pengembangan Sistem .............................................................. 59
3.2.1. Requirement Planning ..................................................................... 59
3.2.2. Design Workshop ............................................................................ 59
3.2.3. Implementation ................................................................................ 60
3.3. Kerangka Berpikir .................................................................................. 61
BAB IV ANALISA DAN PERANCANGAN SISTEM ..................................... 62
4.1. Requirement Planning ............................................................................ 62
4.1.1. Tahap Identifikasi Sistem ................................................................ 62
4.2. Design Workshop ................................................................................... 63
4.2.1. Desain Sistem .................................................................................. 63
4.2.2. Pengkodean ................................................................................... 134
4.3. Implementation ..................................................................................... 135
4.3.1. Perangkat Keras (Hardware) ........................................................ 135
4.3.2. Perangkat Lunak (Software) .......................................................... 135
4.3.3. Pengujian Sistem ........................................................................... 135
xiii UIN Syarif Hidayatullah Jakarta
BAB V HASIL DAN PEMBAHASAN ............................................................. 136
5.1. Hasil Source Code Metode Certainty Factor ....................................... 136
5.2. Hasil Pengujian Sistem ......................................................................... 138
5.2.1. Hasil Pengujian Integration Testing ............................................. 138
5.2.2. Hasil Pengujian User Acceptance Testing .................................... 139
5.2.3. Hasil Pengujian Manual dan Sistem ............................................. 147
5.4. Hasil Tampilan User Interface ............................................................. 148
5.4.1. Desain Interface Halaman Awal ................................................... 148
5.4.2. Desain Interface Login .................................................................. 149
5.4.3. Desain Interface Register .............................................................. 150
5.4.4. Desain Interface Halaman Utama Admin ..................................... 151
5.4.5. Desain Interface Halaman Utama User ........................................ 151
5.4.6. Desain Interface Kelola User ........................................................ 152
5.4.7. Desain Interface Kelola Kriteria dan Asnaf .................................. 153
5.4.8. Desain Interface History User ...................................................... 154
5.4.9. Desain Interface Profil Admin ...................................................... 155
5.4.10. Desain Interface Identifikasi Mustahik ......................................... 156
5.4.11. Desain Interface History ............................................................... 156
5.4.12. Desain Interface Profil User ......................................................... 157
5.4.13. Desain Interface Logout ................................................................ 158
BAB VI PENUTUP ............................................................................................ 159
6.1. Kesimpulan ........................................................................................... 159
6.2. Saran ..................................................................................................... 159
DAFTAR PUSTAKA ......................................................................................... 160
LAMPIRAN ........................................................................................................ 164
xiv UIN Syarif Hidayatullah Jakarta
DAFTAR GAMBAR
Gambar 1.1 Perkembangan Kemiskinan di Indonesia ............................................ 1
Gambar 1.2 Peningkatan Anggaran Bantuan Sosial ............................................... 2
Gambar 1.3 Pengumpulan Zakat Berdasarkan Organisasi Pengelola Zakat Tahun
2017 ......................................................................................................................... 3
Gambar 2.1 Konsep Dasar Sistem Pakar .............................................................. 10
Gambar 2.2 Proses Forward Chaining ................................................................. 13
Gambar 2.3 Proses Backward Chaining ............................................................... 14
Gambar 2.4 Tahapan Proses pada RAD ................................................................ 27
Gambar 2.5 Diagram UML ................................................................................... 33
Gambar 2.6 Pengujian Perangkat Lunak ............................................................... 42
Gambar 4.1 Pohon Keputusan............................................................................... 66
Gambar 4.2 Use Case Diagram ............................................................................ 70
Gambar 4.3 Class Diagram pada Sistem .............................................................. 93
Gambar 4.4 Sequence Diagram Login .................................................................. 94
Gambar 4.5 Sequence Diagram Daftar ................................................................. 95
Gambar 4.6 Sequence Diagram Logout ................................................................ 96
Gambar 4.7 Sequence Diagram Hapus Daftar User ............................................. 96
Gambar 4.8 Sequence Diagram Edit Kriteria ....................................................... 97
Gambar 4.9 Sequence Diagram Tambah Kriteria ................................................. 98
Gambar 4.10 Sequence Diagram Hapus Kriteria .................................................. 99
Gambar 4.11 Sequence Diagram Edit Asnaf ...................................................... 100
Gambar 4.12 Sequence Diagram Tambah Asnaf ................................................ 101
Gambar 4.13 Sequence Diagram Hapus Asnaf................................................... 102
Gambar 4.14 Sequence Diagram Edit Rules ....................................................... 103
Gambar 4.15 Sequence Diagram Tambah Rules ................................................ 104
Gambar 4.16 Sequence Diagram Hapus Rules ................................................... 105
Gambar 4.17 Sequence Diagram Detail History User........................................ 106
Gambar 4.18 Sequence Diagram Input Mustahik ............................................... 107
Gambar 4.19 Sequence Diagram Detail History Hasil ....................................... 108
Gambar 4.20 Sequence Diagram Edit Profil....................................................... 108
Gambar 4.21 Activity Diagram Login ................................................................. 109
Gambar 4.22 Activity Diagram Daftar ................................................................ 110
Gambar 4.23 Activity Diagram Logout ............................................................... 111
Gambar 4.24 Activity Diagram Hapus Daftar User ............................................ 111
Gambar 4.25 Activity Diagram Edit Kriteria ...................................................... 112
Gambar 4.26 Activity Diagram Tambah Kriteria ................................................ 113
Gambar 4.27 Activity Diagram Hapus Kriteria .................................................. 114
Gambar 4.28 Activity Diagram Edit Asnaf ......................................................... 115
Gambar 4.29 Activity Diagram Tambah Asnaf .................................................. 116
Gambar 4.30 Activity Diagram Hapus Asnaf ..................................................... 117
Gambar 4.31 Activity Diagram Edit Rules .......................................................... 118
Gambar 4.32 Activity Diagram Tambah Rules ................................................... 119
Gambar 4.33 Activity Diagram Hapus Rules ...................................................... 120
Gambar 4.34 Activity Diagram Detail History User .......................................... 121
xv UIN Syarif Hidayatullah Jakarta
Gambar 4.35 Activity Diagram Input Mustahik .................................................. 121
Gambar 4.36 Activity Diagram Detail History Hasil .......................................... 122
Gambar 4.37 Activity Diagram Edit Profil ......................................................... 123
Gambar 4.38 Desain Interface Halaman Awal ................................................... 127
Gambar 4.39 Desain Interface Login .................................................................. 128
Gambar 4.40 Desain Interface Register .............................................................. 128
Gambar 4.41 Desain Interface Halaman Utama Admin ..................................... 129
Gambar 4.42 Desain Interface Halaman Utama User ........................................ 129
Gambar 4.43 Desain Interface Kelola User ........................................................ 130
Gambar 4.44 Desain Interface Kelola Kriteria dan Asnaf .................................. 131
Gambar 4.45 Desain Interface History User....................................................... 132
Gambar 4.46 Desain Interface Profil Admin ...................................................... 132
Gambar 4.47 Desain Interface Identifikasi Mustahik ......................................... 133
Gambar 4.48 Desain Interface History ............................................................... 133
Gambar 4.49 Desain Interface Profil User ......................................................... 134
Gambar 4.50 Desain Interface Logout ................................................................ 134
Gambar 5.1 Source Code Metode Certainty Factor (1) ..................................... 136
Gambar 5.2 Source Code Metode Certainty Factor (2) ..................................... 138
Gambar 5.3 Desain Interface Halaman Awal ..................................................... 148
Gambar 5.4 Desain Interface Login Admin ........................................................ 149
Gambar 5.5 Desain Interface Login User ........................................................... 149
Gambar 5.6 Desain Interface Register ................................................................ 150
Gambar 5.7 Desain Interface Halaman Utama Admin ....................................... 151
Gambar 5.8 Desain Interface Halaman Utama User .......................................... 151
Gambar 5.9 Desain Interface Kelola User .......................................................... 152
Gambar 5.10 Desain Interface Kelola Kriteria dan Asnaf .................................. 153
Gambar 5.11 Desain Interface History User....................................................... 154
Gambar 5.12 Desain Interface Profil Admin ...................................................... 155
Gambar 5.13 Desain Interface Identifikasi Mustahik ......................................... 156
Gambar 5.14 Desain Interface History ............................................................... 156
Gambar 5.15 Desain Interface Profil User ......................................................... 157
Gambar 5.16 Desain Interface Logout ................................................................ 158
xvi UIN Syarif Hidayatullah Jakarta
DAFTAR TABEL
Tabel 2.1 Perbedaan Sistem Pakar dengan Sistem Konvensional ........................ 15
Tabel 2.2 Istilah dan Interpretasi Ketidakpastian .................................................. 16
Tabel 2.3 Tabel Perbandingan dengan Metode Lain ............................................ 17
Tabel 2.4 Tabel Perbandingan Model SDLC ........................................................ 21
Tabel 2.5 Simbol-simbol Diagram Kelas .............................................................. 34
Tabel 2.6 Simbol-simbol Usecase Diagram .......................................................... 35
Tabel 2.7 Simbol-simbol Diagram Aktivitas ........................................................ 37
Tabel 2.8 Simbol-simbol Diagram Sekuen ........................................................... 38
Tabel 2.9 Metode dan Instrumen Pengumpulan Data ........................................... 40
Tabel 2.10 Tabel Studi Literatur Sejenis .............................................................. 45
Tabel 2.11 Tabel Perbandingan Antara Studi Literatur ........................................ 54
Tabel 4.1 Kriteria dalam Sistem Pakar ................................................................. 64
Tabel 4.2 Asnaf dalam Sistem Pakar .................................................................... 65
Tabel 4.3 Relasi dalam Sistem Pakar .................................................................... 65
Tabel 4.4 Identifikasi Actor................................................................................... 69
Tabel 4.5 Narasi Use Case Login .......................................................................... 71
Tabel 4.6 Narasi Use Case Daftar ......................................................................... 72
Tabel 4.7 Narasi Use Case Logout ........................................................................ 74
Tabel 4.8 Narasi Use Case Hapus Daftar User ..................................................... 74
Tabel 4.9 Narasi Use Case Edit Kriteria ............................................................... 76
Tabel 4.10 Narasi Use Case Tambah Kriteria ...................................................... 77
Tabel 4.11 Narasi Use Case Hapus Kriteria ......................................................... 78
Tabel 4.12 Narasi Use Case Edit Asnaf ................................................................ 80
Tabel 4.13 Narasi Use Case Tambah Asnaf ......................................................... 81
Tabel 4.14 Narasi Use Case Hapus Asnaf ............................................................ 82
Tabel 4.15 Narasi Use Case Edit Rules ................................................................ 84
Tabel 4.16 Narasi Use Case Tambah Rules .......................................................... 85
Tabel 4.17 Narasi Use Case Hapus Rules ............................................................. 86
Tabel 4.18 Narasi Use Case Detail History User ................................................. 88
Tabel 4.19 Narasi Use Case Input Mustahik ........................................................ 89
Tabel 4.20 Narasi Use Case Detail History Hasil................................................. 90
Tabel 4.21 Narasi Use Case Edit Profil ................................................................ 91
Tabel 4.22 Tabel Admin ..................................................................................... 124
Tabel 4.23 Tabel User ......................................................................................... 124
Tabel 4.24 Tabel Asnaf ....................................................................................... 125
Tabel 4.25 Tabel Kriteria .................................................................................... 125
Tabel 4.26 Tabel Rules ........................................................................................ 125
Tabel 4.27 Tabel Identifikasi .............................................................................. 126
Tabel 4.28 Tabel Rules Kriteria .......................................................................... 126
Tabel 4.29 Tabel Relasi Identifikasi ................................................................... 127
Tabel 5.1 Hasil Pengujian Menu Login .............................................................. 139
Tabel 5.2 Hasil Pengujian Menu Kelola User .................................................... 140
xvii UIN Syarif Hidayatullah Jakarta
Tabel 5.3 Hasil Pengujian Menu Kelola Kriteria dan Asnaf .............................. 140
Tabel 5.4 Hasil Pengujian Menu History User ................................................... 144
Tabel 5.5 Hasil Pengujian Menu Profil Admin ................................................... 144
Tabel 5.6 Hasil Pengujian Menu Identifikasi Mustahik...................................... 145
Tabel 5.7 Hasil Pengujian Menu History ............................................................ 146
Tabel 5.8 Hasil Pengujian Menu Profil User ...................................................... 146
Tabel 5.9 Hasil Pengujian Menu Logout User .................................................... 146
Tabel 5.10 Hasil Pengujian Manual dan Sistem ................................................. 147
xviii UIN Syarif Hidayatullah Jakarta
DAFTAR BAGAN
Bagan 3.1 Kerangka Berpikir ................................................................................ 61
xix UIN Syarif Hidayatullah Jakarta
DAFTAR LAMPIRAN
Lampiran 1. Surat Dosen Pembimbing Skripsi ..................................................... A1
Lampiran 2. Surat Penelitian Skripsi ke BAZNAS Kota Tangerang Selatan ....... A2
Lampiran 3. Surat Penelitian Skripsi ke LPM Dompet Dhuafa ............................ A3
Lampiran 4. Surat Penelitian Skripsi ke BAZNAS Republik Indonesia .............. A4
Lampiran 5. Hasil Wawancara dengan BAZNAS Kota Tangerang Selatan ......... B5
Lampiran 6. Hasil Wawancara dengan LPM Dompet Dhuafa ............................. B8
Lampiran 7. Hasil Pengujian Integration Tetsing ............................................... C12
Lampiran 8. Tanda Bukti Pengujian User Acceptance Testing .......................... C40
Lampiran 9. Salah Satu Hasil Kuesioner Analisis Kebutuhan ............................ D41
Lampiran 10. Salah Satu Hasil Kuesioner Analisis Sistem ................................ D43
1 UIN Syarif Hidayatullah Jakarta
BAB I
PENDAHULUAN
1.1. Latar Belakang
Zakat merupakan salah satu kewajiban bagi seorang muslim, dan termasuk
salah satu dari lima rukun Islam. Menurut Majdah Amir (2018: 286) zakat
berbeda dari rukun-rukun Islam yang lain mengingat tidak ada syarat baligh
dan berakal sehat. Setiap muslim yang memiliki harta yang telah mencapai
nishab (jumlah minimal tertentu yang ditetapkan atas setiap harta) diwajibkan
mengeluarkan zakatnya (Bagir, 2016: 280). Zakat disebutkan sebanyak tiga
puluh kali di dalam Al-Qur’an, dan juga dalam hadits Nabi SAW (Bagir,
2016: 278). Di antaranya firman Allah SWT yang berarti:
“….dirikanlah sholat, tunaikanlah zakat, dan rukuklah bersama orang-orang
yang rukuk.” (QS. Al-Baqarah: 43). Dan sabda Nabi SAW yang dirawikan
oleh Ali r.a yang berarti:
“Sesungguhnya Allah SWT. telah mewajibkan atas para hartawan Muslim
(mengeluarkan zakat dan sedekah) dari harta mereka sekadar yang memenuhi
kebutuhan para fakir-miskin di antara mereka. Dan tidaklah para fakir-miskin
itu menderita kekurangan makanan atau pun pakaian, kecuali akibat
perbuatan (kebakhilan) para hartawan. Maka ketahuilah bahwa Allah SWT.
akan menghisab mereka dengan hisab yang tegas dan cermat, lalu menyiksa
mereka dengan siksaan yang pedih”. (HR. Thabrani)
Gambar 1.1 Perkembangan Kemiskinan di Indonesia
(Sumber: BPS, 2018)
2
UIN Syarif Hidayatullah Jakarta
Penduduk miskin di Indonesia pada Maret 2018 mengalami penurunan
menjadi 9,82% (BPS, 2018). Angka kemiskinan tersebut merupakan yang
terendah sejak tahun 1998. Salah satu realitas dibalik keberhasilan
menekannya angka kemiskinan, yaitu anggaran bantuan sosial yang
meningkat tajam dalam dua tahun terakhir (Katadata, 2018).
Gambar 1.2 Peningkatan Anggaran Bantuan Sosial
(Sumber: Katadata, 2018)
Menteri Perencanaan Pembangunan Nasional atau Kepala Badan
Perencanaan Pembangunan Nasional Bambang Brodjonegoro mengatakan
dana zakat bisa sebagai tambahan bagi warga miskin yang selama ini sudah
menerima bantuan dari pemerintah. Menurutnya pengelolaan zakat yang
lebih baik akan menolong warga miskin yang selama ini sudah dicover APBN
(Tempo, 2017).
Dalam Undang-Undang No. 23 Tahun 2011 tentang pengelolaan zakat,
dijelaskan bahwa zakat adalah harta yang wajib dikeluarkan oleh seorang
muslim atau badan usaha untuk diberikan kepada yang berhak menerimanya
sesuai dengan syariat Islam. Seorang muslim atau badan usaha yang
berkewajiban menunaikan zakat disebut muzaki, dan orang yang berhak
menerima zakat disebut mustahik. Sesuai dengan Peraturan Badan Amil
Zakat Nasional No. 1 Tahun 2016 tentang pedoman penyusunan rencana
3
UIN Syarif Hidayatullah Jakarta
kerja dan anggaran tahunan Badan Amil Zakat Nasional, Badan Amil Zakat
Nasional Provinsi, dan Badan Amil Zakat Nasional Kabupaten/Kota bahwa
asnaf adalah 8 (delapan) golongan yang berhak menerima zakat yang terdiri
dari fakir, miskin, amil, riqab, gharimin, fi sabilillah, ibnu sabil, dan mualaf.
Zakat dapat disalurkan melalui organisasi pengelola zakat. Di Indonesia
organisasi pengelola zakat nasional yaitu BAZNAS (Badan Amil Zakat
Nasional). Menurut Peraturan Badan Amil Zakat Nasional No. 1 Tahun 2016
tentang pedoman penyusunan rencana kerja dan anggaran tahunan Badan
Amil Zakat Nasional, Badan Amil Zakat Nasional Provinsi, dan Badan Amil
Zakat Nasional Kabupaten/Kota, selain BAZNAS yang mengelola zakat
secara nasional, terdapat juga BAZNAS Provinsi yang melaksanakan
pengelolaan zakat di tingkat provinsi, BAZNAS Kabupaten/Kota yang
melakukan pengelolaan zakat di tingkat kabupaten/kota, Lembaga Amil
Zakat (LAZ) yang membatu pengumpulan, pendistribusian dan
pendayagunaan zakat, dan Unit Pengumpul Zakat (UPZ) yang membantu
mengumpulkan zakat.
Gambar 1.3 Pengumpulan Zakat Berdasarkan Organisasi Pengelola Zakat Tahun 2017
(Sumber: BAZNAS, 2018)
Berdasarkan wawancara yang penulis lakukan dengan Bapak H. Tohir,
selaku Wakil Ketua IV BAZNAS Kota Tangerang Selatan pada 26 Juni 2018,
bahwa terdapat beberapa mustahik yang melakukan kebohongan karena
sistem yang masih sangat manual. Kebohongan yang dilakukan diantaranya
memakai cadar ataupun memotong rambut, sehingga para petugas tidak
mengenali jika sebenarnya mustahik tersebut telah menerima bantuan. Selain
itu belum diadakannya survei langsung dalam penentuan mustahik di
4
UIN Syarif Hidayatullah Jakarta
BAZNAS Kota Tangerang Selatan. Hal ini menyebabkan pendistribusian
zakat menjadi tidak merata. Sehingga dibutuhkannya sistem yang dapat
menyimpan data para mustahik untuk meminimalisir terjadinya kebohongan.
Sistem yang masih manual juga masih berjalan di layanan LPM Dompet
Dhuafa. Menurut wawancara yang penulis lakukan pada 14 November 2018
dengan Bapak Nur Taufan, yang sebelumnya pernah ditempatkan di bagian
LaMusta (layanan mustahik) Dompet Dhuafa yang kini beliau ditempatkan di
bagian partnership, sistem yang berjalan saat ini masih manual, yaitu berupa
wawancara atau beliau menyebutnya silaturahmi, dan form survei.
Pengidentifikasian mustahik yang dilakukan di LPM Dompet Dhuafa dengan
menanyakan maksud awal mustahik datang ke Dompet Dhuafa. Menurutnya
diperlukan sistem yang dapat mengidentifikasikan kategori mustahik,
sehingga tidak perlu repot lagi mengkategorikannya secara manual. Namun
menurut beliau hal yang perlu diperhatikan yaitu kerancuan mustahik yang
nantinya akan menimbulkan hasil yang lebih dari satu kategori mustahik.
Sebagai contoh beliau menjelaskan orang yang berhutang secara tidak
langsung juga termasuk kategori fakir atau miskin, karena orang yang
berhutang tidak bisa mencukupi kebutuhannya.
Selain itu menurut hasil dari penyebaran kuesioner yang telah penulis
lakukan terhadap 30 Masjid Jami’ yang berada di Kota Tangerang Selatan,
hampir semuanya masih menggunakan sistem manual, yaitu berupa data yang
ditulis, dan data yang diolah di Microsoft Excel. Proses pengidentifikasian
yang berjalan pun hanya berdasarkan data dari RT atau RW setempat.
Pendistribusian masjid-masjid tersebut ternyata berbeda-beda, ada yang
memang sudah berbentuk UPZ (berkoordinasi dengan BAZNAS Kota
Tangerang Selatan), ada masjid yang hanya untuk lingkungannya, dan ada
juga masjid yang untuk lingkungannya dan untuk umum. Hasil kuesioner
menyatakan 50% masjid belum memerlukan sistem untuk pengidentifikasian
mustahik zakat, dikarenakan mereka merasa sistem yang sudah berjalan tidak
terkendala apapun, dan mereka merasa kenal dengan para mustahik tersebut.
Selain itu kurangnya sumber daya manusia dan pemahaman mengenai
5
UIN Syarif Hidayatullah Jakarta
komputer yang belum memadai pun menjadi alasan mereka. Hal ini berbeda
dengan 50% lainnya yang mengatakan perlu adanya sistem
pengidentifikasian, agar lebih tepat sasaran dan lebih efisien. Hal tersebut pun
didukung oleh kuesioner yang penulis sebar ketiga lembaga, yaitu BAZNAS
Republik Indonesia, LPM Dompet Dhuafa dan Baznas Kota Tangerang
Selatan. Ketiga lembaga tersebut mengatakan perlunya dibuat sistem yang
dapat mengidentifikasikan mustahik zakat untuk menghemat waktu dan
memudahkan sistem kerja, selain itu jika sistem pengidentifikasian akurat
maka dapat meminimalisir terjadinya kesalahan dalam pengidentifikasian.
Sistem pakar atau Expert System biasa disebut juga Knowledge Based
System yaitu suatu aplikasi komputer yang ditunjukkan untuk membantu
pengambilan keputusan atau pemecahan persoalan dalam bidang yang
spesifik (Hayadi dan Rukun, 2016: 1). Penyelesaian pada sistem pakar bisa
digunakan dengan beberapa metode, salah satunya yaitu metode certainty
factor. Metode certainty factor ini dipilih ketika dalam menghadapi suatu
masalah yang sering ditemukan jawaban yang tidak memiliki kepastian penuh
(Ramadhan dan Pane, 2017).
Berdasarkan penelitian sebelumnya yang dilakukan oleh Ramadhan dan
Pane (2017) yang menganalisa perbandingan beberapa metode, yaitu metode
certainty factor, dempster shafer, dan teorema bayes untuk mendiagnosa
penyakit inflamasi dermatitis imun pada anak dudapatkan hasil bahwa
metode certainty factor memiliki nilai probabilitas lebih tinggi disbanding
dengan dua metode lainnya. Selain itu dalam kasus mengidentifikasi jenis
penyakit inflamasi dermatitis imun pada anak, metode certainty factor dan
teorema bayes memiliki kesamaan pola, ini terlihat dari hasil yang diperoleh
yaitu jika gejala semakin banyak maka nilai probabilitas jenis penyakit akan
semakin tinggi, berbeda halnya dengan metode dempster shafer yang semakin
banyak gejala yang dipilih maka akan menghasilkan nilai probabilitas yang
semakin kecil pula, bahkan nilai probabilitas satu gejala dapat lebih tinggi
dibandingkan dengan nilai probabilitas dengan gejala yang lebih dari satu.
Namun untuk metode teorema bayes nilai probabilitas yang diperoleh lebih
6
UIN Syarif Hidayatullah Jakarta
kecil dibandingkan dengan nilai probabilitas metode certainty factor. Dalam
penelitian lainnya yang dilakukan oleh Panjaitan, dkk (2018) mengenai
Analisis Perbandingan Metode Dempster Shafer dengan Metode Certainty
Factor untuk Mendiagnosa Penyakit Stroke, didapatkan hasil bahwa metode
certainty factor mendiagnosis penyakit stroke lebih baik dibandingkan
metode dempster shafer, dengan tingkat keakuratan hasil diagnosis sistem
pakar 90%, dan untuk metode demster shafer memiliki nilai keakuratan 80%.
Berdasarkan latar belakang di atas, penulis akan melakukan penelitian
dengan judul “SISTEM PAKAR IDENTIFIKASI MUSTAHIK ZAKAT
MENGGUNAKAN METODE CERTAINTY FACTOR”.
1.2. Rumusan Masalah
Berdasarkan latar belakang yang telah dipaparkan sebelumnya dapat
dirumuskan bahwa permasalahan yang ada adalah bagaimana
mengimplementasikan sistem pakar identifikasi mustahik zakat
menggunakan metode certainty factor?
1.3. Tujuan Penelitian
Berdasarkan permasalahan yang telah disebutkan di atas, maka tujuan dari
penelitian ini adalah untuk mengimplementasikan sistem pakar identifikasi
mustahik zakat menggunakan metode certainty factor.
1.4. Manfaat Penelitian
Penyusunan tugas akhir memiliki manfaat dalam tiga kategori sebagai
berikut:
1.4.1. Manfaat Bagi Penulis
− Mengaplikasikan ilmu-ilmu akademis yang didapat selama
perkuliahan ke dalam program sistem pakar identifikasi mustahik
zakat menggunakan metode certainty factor.
7
UIN Syarif Hidayatullah Jakarta
− Untuk memenuhi salah satu syarat dalam meraih gelar sarjana dalam
Fakultas Sains dan Teknologi jurusan Teknik Informatika Universitas
Islam Negeri Syarif Hidayatullah Jakarta.
1.4.2. Manfaat Bagi Pengguna
− Mempermudah untuk menentukan mustahik zakat yang dilengkapi
dengan pengidentifikasian golongannya, sehingga penyaluran zakat
bisa lebih merata dan tepat sasaran.
1.4.3. Manfaat Bagi Universitas
− Mengetahui tingkat kemampuan mahasiswa dalam menerapkan ilmu-
ilmu yang telah diperoleh selama perkuliahan.
1.5. Batasan Masalah
Beberapa batasan masalah dalam penelitian ini adalah sebagai berikut:
1. Pada sistem pakar ini mustahik yang diidentifikasikan ada 6 golongan,
yaitu fakir, miskin, gharimin, fii sabilillah, ibnu sabil, dan muallaf. Riqab
tidak dimasukkan pada sistem ini karena menurut wawancara yang penulis
lakukan golongan ini sudah tidak ada lagi dan amil tidak dimasukkan pada
sistem ini karena amil merupakan orang yang akan menggunakan sistem
ini.
2. Data mustahik yang dimasukkan saat pengidentifikasian berdasarkan data
saat mustahik tersebut di wawancarai atau tahap awal sebelum penentuan
kelayakan mustahik.
3. Proses : Proses pada sistem ini yaitu terbagi menjadi dua, untuk admin dan
user. Pada admin terdapat proses login, logout, profil, kelola user, history
user serta kelola kriteria dan asnaf. Pada user terdapat proses register,
login, logout, profil, identifikasi mustahik dan history.
4. Metode : Penulis menggunakan metode pengembangan sistem Rapid
Application Development (RAD) dan pengujian sistem dengan metode
unit testing dan user acceptance testing.
8
UIN Syarif Hidayatullah Jakarta
5. Tools : Tools yang digunakan yaitu Balsamiq Mockups 3 untuk pembuatan
mockup, bahasa pemrograman PHP dengan framework CodeIgniter untuk
pembuatan sistem, Microsoft Visio 2013 untuk pembuatan konsep sistem,
dan MyQSL sebagai manajemen database.
1.6. Metodologi Penelitian
Pada penyusunan skripsi dengan judul “Sistem Pakar Identifikasi
Mustahik Zakat Menggunakan Metode Certainty Factor”, penulis
mengumpulkan data-data dan bahan materi yang dibutuhkan dengan metode
antara lain:
1.6.1. Metode Pengumpulan Data
1.6.1.1. Wawancara
1.6.1.2. Kuesioner
1.6.1.3. Studi Pustaka
1.6.2. Metode Pengembangan Sistem
Penulis menggunakan metode pengembangan sistem Rapid Application
Development (RAD) yang memiliki tahapan-tahapan sebagai berikut :
1.6.2.1. Requirement Planning
1.6.2.2. Design Workshop
1.6.2.3. Implementation
1.7. Sistematika Penulisan
Dalam penulisan skripsi ini, penulis membagi sistematika penulisan
skripsi ke dalam enam bab yang secara singkat akan peneliti uraikan sebagai
berikut.
BAB I PENDAHULUAN
Pada bab ini dijelaskan mengenai latar belakang, rumusan
masalah, batasan masalah, tujuan penelitian, manfaat penelitian,
metodologi penelitian, dan sistematika penulisan.
BAB II LANDASAN TEORI
9
UIN Syarif Hidayatullah Jakarta
Pada bab ini berisi mengenai teori-teori yang berkaitan dan
digunakan dalam penelitian.
BAB III METODOLOGI PENELITIAN
Pada bab ini berisi tentang langkah-langkah metodologi penelitian
serta metode pengembangan sistem yang digunakan.
BAB IV ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini membahas mengenai analisis kebutuhan sistem dan
perancangan aplikasi.
BAB V HASIL DAN PEMBAHASAN
Pada bab ini dijelaskan mengenai hasil dan pembahasan penelitian
yang dilakukan penulis.
BAB VI PENUTUP
Pada bab ini dijelaskan mengenai kesimpulan dari hasil penelitian
dan saran yang dapat digunakan untuk pengembangan sistem yang
lebih baik di masa yang akan datang.
10 UIN Syarif Hidayatullah Jakarta
BAB II
LANDASAN TEORI
2.1. Sistem Pakar
Sistem Pakar adalah sebuah sistem yang kinerjanya mengadopsi keahlian
yang dimiliki seorang pakar dalam bidang tertentu ke dalam sistem atau
program komputer yang disajikan dengan tampilan yang dapat digunakan
oleh pengguna yang bukan seorang pakar sehingga dengan sistem tersebut
pengguna dapat membuat sebuah keputusan atau menentukan kebijakan
layaknya seorang pakar (Andriani, 2016: 9). Sistem pakar memungkinkan
pengetahuan ditransfer lebih mudah dengan biaya lebih rendah (Hayadi dan
Rukun, 2016: 2).
Gambar 2.1 Konsep Dasar Sistem Pakar
(Sumber: Andriani, 2016: 10)
Menurut Andriani (2016:10) dalam konsep sistem pakar tersebut, user atau
pengguna menyampaikan fakta atau informasi ke dalam sistem pakar, yang
selanjutnya fakta dan informasi tersebut akan disimpan ke knowledge-base
dan diolah oleh mesin inferensi, sehingga sistem dapat memberikan timbal
balik kepada user berupa keahlian atau jawaban berdasarkan pengetahuan
yang disampaikan sebelumnya.
11
UIN Syarif Hidayatullah Jakarta
2.1.1. Ciri-ciri Sistem Pakar
Menurut Andriani (2016: 11) ciri-ciri sistem pakar yang membedakan
dengan sitem informasi biasa adalah sebagai berikut:
1. Memiliki dan memberikan informasi yang andal.
2. Mudah untuk dimodifikasi.
3. Terbatas pada domain keahlian tertentu.
4. Dapat memberikan penalaran untuk data-data yang sifatnya tidak pasti.
5. Sistem berdasarkan pada kaidah/rule tertentu.
6. Memiliki kemampuan untuk belajar beradaptasi.
7. Keluarannya bersifat anjuran.
Selain itu menurut Hayadi dan Rukun (2016: 4) ciri-ciri lain sistem
pakar, yaitu:
1. Dapat mengemukakan rangkaian alasan yang diberikannya dengan cara
yang dapat dipahami.
2. Dirancang untuk dikembangkan secara bertahap.
3. Pengetahuan dan mekanisme inferensi jelas terpisah.
4. Sistem dapat mengaktifkan kaidah secara searah yang sesuai yang
dituntun oleh dialog dengan pemakai.
2.1.2. Keuntungan Sistem Pakar
Adapun keuntungan dari penggunaan sistem pakar antara lain
(Andriani, 2016: 12):
1. Memungkinkan pengguna yang bukan seorang pakar pada bidang
tertentu dapat mengerjakan tugas dari seorang pakar.
2. Bisa melakukan proses yang sama secara berulang.
3. Sistem pakar dapat menyimpan pengetahuan dan keahlian dari pakar.
4. Dengan adanya sistem pakar produktivitas dan output sistem dapat
ditingkatkan.
5. Meningkatkan kualitas.
6. Mampu mengambil dan melestarikan keahlian pakar.
7. Mampu beroperasi dalam lingkungan yang berbahaya.
8. Memiliki kemampuan untuk mengakses pengetahuan.
12
UIN Syarif Hidayatullah Jakarta
9. Memiliki rebilitas.
10. Meningkatkan kapabilitas sistem komputer.
11. Memiliki kemampuan untuk bekerja dengan informasi yang tidak
lengkap dan mengandung ketidakpastian.
12. Sebagai media pelengkap dalam pelatihan.
13. Meningkatkan kapabilitas dalam penyelesaian masalah.
14. Menghemat waktu dalam pengambilan keputusan.
2.1.3. Kelemahan Sistem Pakar
Sistem pakar juga mempunyai kelemahan diantaranya (Andriani,
2016:12):
1. Biaya yang diperlukan untuk membuat, memelihara, dan
mengembangkan sistem pakar sangat mahal.
2. Sulit dikembangkan, karena ketersediaan pakar dibidangnya dan
kepakaran sulit diekstrak dari manusia karena terkadang sulit bagi
seorang pakar untuk menjelaskan langkah mereka dalam menangani
masalah.
3. Sistem pakar tidak 100% benar karena seseorang yang terlibat dalam
pembuatan sistem pakar tidak selalu benar. Oleh karena itu setelah
pembuatan sistem pakar harus dilakukan pengujian terlebih dahulu
secara teliti sebelum digunakan.
4. Pendekatan oleh setiap pakar untuk suatu situasi atau problem bisa
berbeda-beda, meskipun sama-sama benar.
5. Transfer pengetahuan dapat bersifat subjektif dan bias.
6. Kurangnya rasa percaya pengguna dapat menghalangi pemakaian
sistem pakar.
2.1.4. Struktur Sistem Pakar
Sistem pakar mempunyai komponen utama pada strukturnya, antara
lain (Andriani, 2016: 14-16):
13
UIN Syarif Hidayatullah Jakarta
1. Basis Pengetahuan (Knowledge Base)
Inti dari suatu sistem pakar adalah basis pengetahuan yang merupakan
representasi pengetahuan yang dimiliki oleh seorang pakar yang
tersusun oleh fakta dan kaidah.
2. Mesin Inferensi (Inferensi Engine)
Otak dari sebuah sistem pakar adalah mesin inferensi yang berfungsi
untuk memandu proses penalaran terhadap suatu kondisi berdasarkan
pada basis pengetahuan yang tersedia. Di dalam mesin inferensi terjadi
proses untuk memanipulasi dan mengarahkan kaidah, model, dan fakta
yang disimpan dalam basis pengetahuan dalam rangka mencapai solusi
atau kesimpulan. Dalam proses tersebut mesin inferensi menggunakan
strategi penalaran dan strategi pengendalian. Terdapat dua penalaran
yang dapat dilakukan dalam melakukan inferensi, yaitu:
a. Forward Chaining
Merupakan cara penalaran dengan memulai dari fakta terlebih
dahulu untuk menguji kebenaran hipotesis atau mencocokkan fakta
atau pernyataan dimulai dari bagian sebelah kiri dulu (IF dulu).
Forward Chaining merupakan grup dari multiple inferensi yang
melakukan pencarian dari suatu masalah kepada solusinya. Forward
Chaining cocok digunakan untuk suatu aplikasi yang menghasilkan
tree yang lebar dan tidak dalam.
Gambar 2.2 Proses Forward Chaining
(Sumber: Hayadi dan Rukun, 2016: 8)
b. Backward Chaining
Merupakan cara penalaran dengan memulai dari hipotesis
(ekspektasi apa yang diinginkan terjadi) terlebih dahulu, dan untuk
14
UIN Syarif Hidayatullah Jakarta
menguji kebenaran hipotesis tersebut harus dicari fakta-fakta yang
ada dalam basis pengetahuan. Backward Chaining cocok digunakan
untuk suatu aplikasi yang menghasilkan tree yang sempit dan cukup
dalam.
Gambar 2.3 Proses Backward Chaining
(Sumber: Hayadi dan Rukun, 2016: 8)
3. Basis Data (Database)
Basis data merupakan kumpulan data yang terdiri dari semua fakta yang
diperlukan, di mana fakta-fakta tersebut digunakan untuk memenuhi
kondisi dari kaidah-kaidah dalam sistem. Basis data yang akan
digunakan untuk memperoleh pengetahuan sebagai dasar dalam
membuat sistem pakar harus menyimpan semua fakta, baik fakta awal
pada saat sistem mulai beroperasi, maupun fakta-fakta yang diperoleh
pada saat proses penarikan kesimpulan sedang dilaksanakan. Basis data
digunakan untuk menyimpan data hasil observasi dan data lain yang
dibutuhkan selama pemrosesan.
4. Antarmuka Pemakai (User Interface)
Antarmuka pemakai merupakan fasilitas yang dapat digunakan sebagai
perantara komunikasi antara pemakai dengan komputer dalam
menggunakan sistem pakar. Antarmuka ini memudahkan pengguna
sistem pakar yang bukan merupakan seorang pakar dapat bekerja dan
bertindak atau membuat keputusan layaknya seorang pakar.
2.1.5. Perbandingan Sistem Pakar dengan Sistem Konvensional
Menurut Andriani (2016: 13) perbedaan utama dari sistem pakar
dengan sistem konvensional adalah dasar pengetahuan (knowledge based)
15
UIN Syarif Hidayatullah Jakarta
yang menjadi dasar dari pembuatan sistem pakar tersebut. Berikut adalah
perbedaan antara sistem pakar dengan sistem konvensional:
Tabel 2.1 Perbedaan Sistem Pakar dengan Sistem Konvensional
Sistem Konvensional Sistem Pakar
Informasi dan pemrosesan pada
sistem konvensional biasanya jadi
satu dengan program.
Basis pengetahuan merupakan
bagian terpisah dari mekanisme
inferensi.
Program tidak pernah salah (kecuali
pemrogramannya yang salah)
dalam memberikan hasil
Program bisa saja melakukan
kesalahan dalam memberikan hasil
atau membuat kesimpulan.
Biasanya tidak bisa menjelaskan
mengapa suatu input data itu
dibutuhkan atau bagaimana output
diperoleh.
Penjelasan adalah bagian
terpenting dari sistem pakar.
Pengubahan pemrograman cukup
sulit dan merepotkan.
Perubahan pada aturan/kaidah
dapat dilakukan dengan mudah.
Sistem hanya akan bekerja jika
sistem tersebut sudah lengkap.
Sistem dapat bekerja hanya dengan
beberapa aturan saja.
Eksekusi dilakukan langkah demi
langkah secara algoritmik.
Eksekusi dilakukan pada
keseluruhan basis pengetahuan
secara heuristik dan logis.
Menggunakan data. Menggunakan pengetahuan.
Tujuan utamanya adalah efisiensi. Tujuan utamanya adalah
efektivitas.
(Sumber: Andriani, 2016: 13-14)
16
UIN Syarif Hidayatullah Jakarta
2.2. Metode Certainty Factor
2.2.1. Pengertian Faktor Kepastian (Certainty Factor)
Certainty Factor atau CF merupakan nilai untuk mengukur keyakinan
pakar. CF diperkenalkan oleh Shortliffe Buchanan dalam pembuatan
sistem pakar MYCIN yang merupakan nilai parameter klinis yang
diberikan MYCIN untuk mengukur besarnya kepercayaan. CF
menunjukkan ukuran kepastian terhadap suatu fakta atau aturan. Nilai
tertinggi dalam CF adalah +1,0 (pasti benar atau definitely), dan nilai
terndah dalam CF adalah -1,0 (pasti salah atau definitely not). Nilai positif
merepresentasikan derajat keyakinan, sedangan nilai negatif
merepresentasikan derajat ketidakyakinan (Andriani, 2016: 18).
Certainty Factor didefinisikan sebagai berikut (Andriani, 2016: 18-19):
Keterangan:
CF[h,e] = Faktor Kepastian
MB[h,e] = Ukuran kepercayaan/tingkat keyakinan terhadap hipotesis
h, jika diberikan/dipengaruhi evidence e (antara 0 dan 1)
MD[h,e] = ukuran ketidakpercayaan/tingkat ketidakyakinan terhadap
hipotesis h, jika diberikan/dipengaruhi evidence e (antara 0
dan 1)
Nilai certainty factor didapat dari interpretasi term sebagai berikut
(Andriani, 2016: 19):
Tabel 2.2 Istilah dan Interpretasi Ketidakpastian
Term Certainty Factor
Pasti tidak -1,0
Hampir pasti tidak -0,8
Kemungkinan besar tidak -0,6
Mungkin tidak -0,4
Tidak tahu -0,2 to +0,2
Mungkin +0,4
𝑪𝑭[𝒉, 𝒆] = 𝑴𝑩[𝒉, 𝒆] −𝑴𝑫[𝒉, 𝒆]
17
UIN Syarif Hidayatullah Jakarta
Term Certainty Factor
Kemungkinan besar +0,6
Hampir pasti +0,8
Pasti +1,0
(Sumber: Andriani, 2016: 19)
2.2.2. Kelebihan Metode Certainty Factor
Kelebihan dari metode Certainty Factor adalah (Sutojo, dkk, 2011:
204):
1. Metode ini cocok dipakai dalam sistem pakar yang mengandung
ketidakpastian.
2. Dalam sekali proses perhitungan hanya dapat mengolah 2 data saja
sehingga keakuratan data dapat terjaga.
2.2.3. Kekurangan Metode Certainty Factor
Kekurangan dari metode Certainty Factor adalah (Sutojo, dkk, 2011:
204):
1. Pemodelan ketidakpastian yang menggunakan perhitungan metode
certainty factor biasanya masih diperdebatkan.
2. Untuk data lebih dari 2 buah, harus dilakukan beberapa kali pengolahan
data.
2.2.4. Perbandingan dengan Metode Lain
Tabel 2.3 Tabel Perbandingan dengan Metode Lain
No. Metode Deskripsi Kelebihan Kekurangan
1. Teorema Bayes Teorema Bayes
merupakan satu
metode yang
digunakan untuk
menghitung
keidakpastiaan
data menjadi data
yang pasti dengan
Dalam
pengidentifikasian
teorema bayes dan
certainty factor
memiliki
persamaan. Jika
gejala semakin
banyak maka nilai
Nilai
probabilitas
yang
diperoleh
lebih kecil
dibandingkan
dengan nilai
probabilitas
18
UIN Syarif Hidayatullah Jakarta
No. Metode Deskripsi Kelebihan Kekurangan
membandingkan
antara data ya dan
tidak (Harijanto
dan Latif, 2016).
probabilitas jenis
penyakit akan
semakin tinggi
(Ramadhan dan
Pane, 2017).
certainty
factor
(Ramadhan
dan Pane,
2017).
2. Dempster-
Shafer
Metode
Dempster-Shafer
menunjukkan
suatu cara untuk
memberikan
bobot keyakinan
sesuai fakta yang
dikumpulkan
(Sinaga dan
Sembiring, 2016).
Teori Dempster-
Shafer adalah
representasi,
kombinasi
dan propogasi
ketidakpastian,
dimana teori ini
memiliki
beberapa
karakteristik yang
secara
instutitif sesuai
dengan cara
berfikir seorang
pakar, namun
dasar matematika
yang kuat
(Wahyuni dan
Prijodiprojo,
2013).
Semakin
banyak gejala
yang dipilih
maka akan
menghasilkan
nilai
probabilitas
yang semakin
kecil pula,
bahkan nilai
probabilitas
satu gejala
dapat lebih
tinggi
dibandingkan
dengan nilai
probabilitas
dengan gejala
yang lebih
dari satu
(Ramadhan
dan Pane,
2017).
19
UIN Syarif Hidayatullah Jakarta
2.3. Zakat
Zakat merupakan sedekah wajib yang diambil dari harta tertentu seperti
emas, perak (atau harta simpanan), dan binatang ternak. Di samping itu, zakat
diberikan kepada kalangan tertentu yang jumlahnya delapan (al-ashnaf ats-
tsamaniyah), dan pada waktu tertentu juga. Zakat lebih utama diberikan
secara terbuka agar bisa menjadi contoh bagi yang lainnya (Maafi, 2018: 75).
Sedangkan menurut Majdah Amir (2018: 285) zakat (sedekah wajib)
adalah suatu sistem yang mencakup bidang finansial, ekonomi, sosial, politik,
etika, dan religius.
1. Zakat bernilai religius karena merupakan salah satu rukun Islam,
melaksanakannya menjadi salah satu asas keimanan.
2. Zakat bernilai ekonomis karena fungsinya sebagai pajak khusus bagi harta
benda. Terlebih lagi, zakat menjadi sumber pendapatan abadi bagi
masyarakat di negara Islam. Dengan adanya sumber tersebut, kemakmuran
ekonomi akan terjamin.
3. Zakat bernilai sosial karena dapat menjadi semacam asuransi kesehatan
atau bencana bagi masyarakat. Zakat juga membantu meningkatkan
solidaritas, menghindarkan rasa iri, dan menyatukan hati.
4. Zakat bernilai politis karena negara turut ambil bagian dalam
mengumpulkan dan membagikannya kepada para mustahiq.
5. Zakat bernilai etis karena dengan berbagi kita dapat membersihkan jiwa
dan menghendaki kebaikan kepada sesama.
Menurut Bayinah (2015: 29) tujuan pengelolaan zakat meliputi kegiatan
untuk meningkatkan efektivitas dan efisiensi pelayanan dalam pengelolaan
zakat, serta dalam rangka meningkatkan manfaat zakat untuk mewujudkan
kesejahteraan masyarakat dan penanggulangan kemiskinan.
2.4. Muzaki
Muzaki adalah seorang muslim atau badan usaha yang berkewajiban
menunaikan zakat, sebagaimana disebutkan dalam pasal 1 angka 5 Undang-
Undang Zakat Nomor 23 Tahun 2011 (Bayinah, 2015: 32).
20
UIN Syarif Hidayatullah Jakarta
Menurut Bayinah (2015: 34) dalam sebuah hadits Hasan yang di-takhrij
dalam Kitab Alhadis Ash-Shahihah (hal. 61), terdapat ancaman bagi yang
tidak mau peduli dengan orang lain dan berkontribusi lewat sedikitnya
pembayaran zakat, sebagai berikut:
“Tidak seorang pun di antara suatu kaum yang enggan membayar zakat,
kecuali akan mendapat cobaan dari Allah SWT selama bertahun-tahun”.
2.5. Mustahik
Menurut Bayinah (2015: 40-41) mustahik ialah orang yang berhak
menerima zakat. Sebagaimana yang tertera dalam surat At-Taubah ayat 60
yang artinya:
“Sesungguhnya zakat-zakat itu hanyalah untuk orang-orang fakir, orang-
orang miskin, pengurus (amil) zakat, para muallaf yang dibujuk hatinya,
untuk memerdekakan budak, orang-orang yang berhutang, untuk (usaha) di
jalan Allah, dan untuk orang-orang yang sedang dalam perjalanan, sebagai
suatu ketepatan yang diwajibkan, dan Allah Maha Mengetahui lagi Maha
Bijaksana”.
Asnaf atau 8 (delapan) golongan yang berhak menerima zakat, yaitu
(Najieh, 2018: 495-496):
1. Fuqara’ (fakir) adalah orang-orang yang tidak mampu memenuhi
kebutuhan mereka (sehari-hari). Misalnya dalam sehari ia membutuhkan
uang belanja Rp. 10.000,- tetapi ia hanya mampu menghasilkan Rp.
2.000,- atau bahkan tidak mampu mendapatkannya sama sekali.
2. Masakin (miskin) adalah orang-orang yang tidak mampu memenuhi
kebutuhan mereka (sehari-hari) secara penuh. Misalnya (dalam sehari) ia
membutuhkan uang belanja Rp. 10.000,- tetapi ia hanya menghasilkan
uang Rp. 8.000,-.
3. Amilin (para petugas zakat) adalah orang-orang yang ditunjuk Imam untuk
mengurus zakat dan mendistribusikannya.
4. Muallaf adalah orang-orang yang keislamannya masih lemah sehingga
perlu dibujuk (dengan cara diberi zakat).
21
UIN Syarif Hidayatullah Jakarta
5. Riqab adalah budak yang sedang dalam proses pemerdekaan dengan cara
kitabah atau digunakan untuk memerdekakan budak.
6. Gharim adalah orang yang memiliki tanggungan utan dan belum mampu
meluasinya.
7. Sabilillah adalah para pejuang yang berperang membela agama Islam,
tetapi mendapat gaji dari kas negara.
8. Ibn Sabil adalah orang yang sedang berpergian dan memiliki niat untuk
kembali ke negaranya sendiri, tetapi ia kehabisan bekal sebelum sampai
ke tujuannya.
2.6. Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC) adalah proses mengembangkan
atau mengubah suatu sistem perangkat lunak dengan menggunakan model-
model dan metodologi yang digunakan orang untuk mengembangkan sistem-
sistem perangkat lunak sebelumnya (berdasarkan best practice atau cara-cara
yang sudah teruji baik) (Rossa dan Shalahuddin, 2016: 26).
2.6.1. Perbandingan Model-Model SDLC
Berikut adalah tabel perbandingan beberapa model SDLC:
Tabel 2.4 Tabel Perbandingan Model SDLC
Model Definisi Kelebihan Kekurangan
Waterfall Model air terjun
menyediakan
pendekatan alur
hidup perangkat
lunak secara
sekuensial atau
terurut dimulai
dari analisis,
desain,
pengkodean,
- Model air terjun
sangat cocok
digunakan ketika
kebutuhan
pelanggan sudah
sangat dipahami dan
kemungkinan
terjadinya perubahan
kebutuhan selama
pengembangan
- Perubahan spesifikasi
perangkat lunak terjadi di
tengah alur
pengembangan.
- Sangat sulit bagi
pelanggan untuk
mendefinisikan semua
spesifikasi di awal alur
pengembangan.
22
UIN Syarif Hidayatullah Jakarta
Model Definisi Kelebihan Kekurangan
pengujian, dan
tahap pendukung
(Rossa dan
Shalahuddin,
2016: 28).
perangkat lunak
sangat kecil (Rossa
dan Shalahuddin,
2016: 30).
- Struktur tahap
pengembangan
sistem jelas,
dokumentasi
dihasilkan di setiap
tahap
pengembangan, dan
sebuah tahap
dijalankan setelah
tahap sebelumnya
selesai dijalankan
(tidak ada tumpeng
tindih pelaksanaan
tahap) (Rossa dan
Shalahuddin, 2016:
31).
- Pelanggan tidak mungkin
bersabar mengakomodasi
perubahan yang
diperlukan di akhir alur
pengembangan.
(Rossa dan Shalahuddin,
2016: 30)
Prototipe Model prototipe
dapat digunakan
untuk
menyambungkan
ketidakpahaman
pelanggan
mengenai hal
teknis dan
memperjelas
spesifikasi
Model prototipe cocok
digunakan untuk
menjabarkan
kebutuhan pelanggan
secara lebih detail
(Rossa dan
Shalahuddin, 2016:
33).
- Pelanggan dapat sering
mengubah atau
menambahkan
spesifikasi kebutuhan
karena menganggap
aplikasi sudah dengan
cepat dikembangkan,
karena adanya iterasi ini
dapat menyebabkan
pengembang banyak
23
UIN Syarif Hidayatullah Jakarta
Model Definisi Kelebihan Kekurangan
kebutuhan yang
diinginkan
pelanggan
kepada
pengembang
perangkat lunak
(Rossa dan
Shalahuddin,
2016: 30).
mengalah dengan
pelanggan.
- Pengembang lebih sering
mengambil kompromi
dengan pelanggan untuk
mendapatkan prototipe
dengan waktu yang
cepat, sehingga
pengembang lebih sering
melakukan segala cara
(tanpa idealis) guna
menghasilkan prototipe
untuk didemonstrasikan.
Hal ini dapat
menyebabkan kualitas
perangkat yang kurang
baik atau bahkan
menyebabkan iteratif
tanpa akhir.
- Kurang cocok untuk
aplikasi dengan skala
besar karena akan sangat
memakan waktu dan
tenaga.
(Rossa dan Shalahuddin,
2016: 32-33)
Rapid
Application
Development
(RAD)
Rapid
Application
Development
(RAD) adalah
- Lebih fleksibel
karena pengembang
dapat melakukan
- Untuk pembuatan sistem
perangkat lunak dengan
skala besar maka model
RAD akan memerlukan
24
UIN Syarif Hidayatullah Jakarta
Model Definisi Kelebihan Kekurangan
model proses
pengembangan
perangkat lunak
yang bersifat
inkremental
terutama untuk
waktu pengerjaan
yang pendek.
Model RAD
adalah adaptasi
dari model air
terjun versi
kecepatan tinggi
dengan
menggunakan
model air terjun
untuk setiap
komponen
perangkat lunak
(Rosa dan
Shalahuddin,
2018: 34).
proses desain ulang
pada saat bersamaan.
- Mempercepat waktu
pengembangan
sistem secara
keseluruhan.
(Yurindra, 2017: 56)
sumber daya manusia
yang cukup besar untuk
membentuk tim-tim
yang mengembangkan
komponen-komponen.
- Jika tidak ada
persetujuan untuk
mengembangkan
perangkat lunak secara
dengan cepat (rapid)
maka proyek dengan
model ini akan gagal
karena hanya akan
bingung
mengidentifikasikan
kebutuhan pelanggan
(customer) atau user.
- Jika sistem perangkat
lunak yang akan dibuat
tidak bisa dimodulkan
(dibagi-bagi menjadi
beberapa komponen)
maka model RAD tidak
dapat digunakan untuk
membuat sistem
perangkat lunak ini
karena terlalu banyak
campur tangan tim.
- Model RAD tidak cocok
digunakan untuk sistem
25
UIN Syarif Hidayatullah Jakarta
Model Definisi Kelebihan Kekurangan
perangkat lunak yang
memiliki risiko teknis
sangat tinggi, misalnya
menggunakan teknologi
baru yang belum banyak
dikenal dan dikuasai
pengembang.
(Rosa dan Shalahuddin,
2018: 36)
Iteratif Model iteratif
mengkombinasi
proses-proses
pada model air
terjun dan model
prototipe. Model
inkremental
menghasilkan
produk/aplikasi
untuk setiap
tahapan inkremen
(Rossa dan
Shalahuddin,
2016: 38).
Sangat cocok
digunakan jika staf
yang dimiliki memiliki
pergantian (turnover)
yang tinggi, sehingga
staf tidak dapat terus
ikut dalam
pengembangan
perangkat lunak
(Rossa dan
Shalahuddin, 2016:
38).
Mekanisme tahapan
inkremental perlu
direncanakan terlebih
dahulu (Rossa dan
Shalahuddin, 2016: 38)
Spiral Model spiral
menyediakan
pengembangan
dengan cara cepat
dengan perangkat
lunak yang
memiliki versi
- Model spiral cocok
digunakan untuk
mengembangkan
sistem perangkat
lunak berskala besar
karena memiliki
proses analisis risiko
Setiap perubahan
spesifikasi pasti berisiko
pada molornya waktu
pengerjaan dan
membengkaknya biaya
proyek (Rossa dan
Shalahuddin, 2016: 41).
26
UIN Syarif Hidayatullah Jakarta
Model Definisi Kelebihan Kekurangan
yang terus
bertambah
fungsinya (Rossa
dan Shalahuddin,
2016: 39).
yang dapat
meminimalisir risiko
yang mungkin
terjadi.
- Model spiral
merupakan model
yang bisa memberi
jaminan kualitas
yang paling baik
untuk aplikasi
berskala besar.
(Rossa dan
Shalahuddin, 2016:
41)
2.6.2. Rapid Application Development (RAD)
Proses Rapid Application Development (RAD) memiliki 3 tahapan,
yaitu (Kendall & Kendall, 2012: 163-165):
1. Requirements Planning
Pada tahap ini analis dan user bertemu untuk mengidentifikasikan
tujuan-tujuan aplikasi atau sistem serta untuk mengidentifikasikan
syarat-syarat informasi yang ditimbulkan dari tujuan-tujuan tersebut.
2. Design Workshop
Tahap ini adalah tahap untuk merancang dan memperbaiki yang dapat
digambarkan sebagai workshop. Selama workshop desain RAD, user
menanggapi prototype yang telah dibuat dan analis memperbaiki
modul-modul yang dirancang berdasarkan tanggapan user.
3. Implementation
Berdasarkan tahap sebelumnya, analis dan user bekerja bersama secara
intens selama workshop untuk mendesain proses bisnis atau aspek-
27
UIN Syarif Hidayatullah Jakarta
aspek non-teknis dari aplikasi. Setelah aspek-aspek tersebut disepakati
dan sistem telah dibangun dan diperbaiki, aplikasi yang baru tersebut
diujicobakan (testing) dan diperkenalkan kepada organisasi.
Gambar 2.4 Tahapan Proses pada RAD
(Sumber: Kendall dan Kendall, 2012)
2.7. Hypertext Preporcessor (PHP)
PHP adalah singkatan dari PHP: Hypertext Preporcessor, dimana huruf
“P” pada kata PHP merupakan singkatan dari kata PHP itu sendiri. PHP
memang sengaja dirancang sebagai server side script untuk mengembangkan
aplikasi berbasis web. Berdasarkan berbagai macam survei dan fakta, PHP
merupakan bahasa pemrograman server-side yang paling popular
dibandingkan ASP.NET maupun dengan JAVA yang digunakan dalam
membuat website (Saputra, 2018: 2). Tujuan dari bahasa ini adalah membantu
para pengembang web untuk membuat web dinamis dengan cepat (Abdulloh,
2018: 127).
2.7.1. Fungsi PHP
Menurut Abdulloh (2018: 128) fungsi PHP dalam pemrograman web
diantaranya sebagai berikut:
1. Menghasilkan halaman dinamis pada website.
2. Membuat, membuka, menulis, membaca, menghapus, dan menutup file
pada server.
3. Memproses data yang dikirim dari form.
28
UIN Syarif Hidayatullah Jakarta
4. Mengirim dan mengakses cookie.
5. Modifikasi data pada database.
6. Mengontrol akses user.
7. Mengenkripsi data.
2.7.2. Keunggulan PHP
Menurut Nurcholish (2018: 20-21) keunggulan PHP diantaranya:
1. Gratis
Gratis dan handal serta relatif mudah dipahami menjadi keunggulan
dari PHP.
2. Cross Platform
PHP dapat digunakan diberbagai sistem operasi, seperti linux,
windows, Mac OS, dan OS lainnya.
3. Mendukung Banyak Database
PHP telah mendukung banyak databae, diantaranya Adabas D, dBase,
Empress, FilePro (read-only), FrontBase mSQL, Direct MS-SQL,
MySQL dan lainnya.
4. On The Fly
PHP sudah mendukung on the fly, dimana dapat membuat dokumen
text, word, excel, pdf, menciptakan image dan flash, juga menciptakan
file seperti zip, XML dan banyak lagi.
2.8. CodeIgniter (CI)
Menurut Sidik (2018: 3) CodeIgniter (CI) adalah framework
pengembangan aplikasi (Application Development Framework) dengan
menggunakan PHP, suatu kerangka untuk bekerja atau membuat program
dengan menggunakan PHP yang lebih sistematis. CodeIgniter memiliki
banyak fitur (fasilitas) yang membantu para pengembang (developer) PHP
untuk dapat membuat aplikasi web secara mudah dan cepat. Dibandingkan
dengan framework web PHP lainnya, harus diakui bahwa CodeIgniter
29
UIN Syarif Hidayatullah Jakarta
memiliki desain yang lebih sederhana dan bersifat fleksibel (tidak kaku)
(Raharjo, 2018: 4).
2.8.1. Keunggulan CodeIgniter
Adapun beberapa keunggulan framework CodeIgniter adalah sebagai
berikut (Raharjo, 2018: 4-5):
1. CodeIgniter adalah framework yang bersifat free dan open-source.
2. CodeIgniter memiliki ukuran yang kecil dibandingkan framework lain.
3. Aplikasi yang dibuat menggunakan CodeIgniter bisa berjalan cepat.
4. CodeIgniter menggunakan pola desain Model-View-Controller (MVC)
sehingga satu file tidak terlalu berisi banyak kode. Hal ini menjadikan
kode lebih mudah dibaca, dipahami, dan dipelihara di kemudian hari.
5. CodeIgniter dapat diperluas sesuai dengan kebutuhan.
6. CodeIgniter terdokumentasi dengan baik. Informasi tentang pustaka
kelas dan fungsi yang disediakan oleh CodeIgniter dapat diperoleh
melalui dokumentasi yang disertakan di dalam paket distribusinya.
2.9. My Structure Query Language (MySQL)
Menurut Radillah (2018: 14) MySQL merupakan perangkat lunak basis
data yang banyak digunakan baik untuk media pembelajaran maupun untuk
aplikasi komersial. MySQL adalah sebuah database server, dapat juga
berperan sebagai client/server, dimana kemampuannya dapat berjalan baik di
OS (Operating System) maupun dengan platform windows atau linux
(Radillah, 2018:15).
2.9.1. Keunggulan MySQL
Beberapa keunggulan MySQL dibanding database lain, diantaranya
(Radillah, 2018:15):
1. MySQL sebagai Database Management System (DBMS).
2. MySQL sebagai Relation Database Management System (RDBMS).
3. MySQl adalah sebuah software yang open source.
30
UIN Syarif Hidayatullah Jakarta
4. MySQL merupakan sebuah database server, sehingga dapat
menghubungkannya ke media internet dan dapat diakses dari jauh.
5. MySQL mampu menerima query yang bertumpuk dalam satu
permintaan atau Multi-Threding.
2.10. HyperText Markup Language (HTML)
HTML (HyperText Markup Language) adalah sebuah bahasa markah yang
digunakan untuk membuat sebuah halaman web, menampilkan berbagai
informasi seperti gambar, teks, video dan suara pada pada penjelajah web
internet, yang ditulis dalam berkas format ASCII agar dapat menghasilkan
tampilan wujud terintegrasi (Sulistiono, 2018: 2). HTML berperan sebagai
penyusun struktur halaman website yang menempatkan setiap elemen website
sesuai layout yang diinginkan (Abdulloh, 2018: 7).
2.11. Cascading Style Sheet (CSS)
Menurut Sulistiono (2018: 2) CSS (Cascading Style Sheet) merupakan
aturan untuk mengendalikan beberapa komponen dalam sebuah web sehingga
akan lebih terstruktur dan seragam. CSS berfungsi mengatur elemen HTML
dengan berbagai property yang tersedia sehingga dapat tampil dengan
berbagai gaya yang diinginkan. Cara kerja CSS dalam memodifikasi HTML
dengan memilih elemen HTML yang akan diatur kemudian memberikan
property yang sesuai dengan tampilan yang diinginkan. Dalam memberikan
aturan pada elemen HTML, skrip CSS terdiri atas 3 bagian yaitu selector
untuk memilih elemen yang akan diberi aturan, property yang merupakan
aturan yang diberikan, dan value sebagai nilai dari aturan yang diberikan
(Abdulloh, 2018: 45).
2.12. JavaScript
JQuery merupakan salah satu dari sekian banyak JavaScript library, yaitu
kumpulan fungsi JavaScript yang siap pakai, sehingga mempermudah dan
31
UIN Syarif Hidayatullah Jakarta
mempercepat dalam membuat kode JavaScript. Dengan menggunakan
JQuery, skrip JavaScript yang Panjang dapat disingkat menjadi beberapa
baris kode saja (Abdulloh, 2018: 233).
2.13. JQuery
JQuery merupakan salah satu dari sekian banyak JavaScript library, yaitu
kumpulan fungsi JavaScript yang siap pakai, sehingga mempermudah dan
mempercepat dalam membuat kode JavaScript. Dengan menggunakan
JQuery, skrip JavaScript yang Panjang dapat disingkat menjadi beberapa
baris kode saja (Abdulloh, 2018: 233).
2.13.1. Kemampuan JQuery
Berikut beberapa kemampuan yang dimiliki JQuery dalam pembuatan
aplikasi berbasis web (Abdulloh, 2018: 234):
1. Memanipulasi elemen HTML.
2. Memanipulasi CSS.
3. Penanganan event terhadap elemen HTML.
4. Membuat efek dan animasi.
5. Memudahkan penggunaan AJAX.
6. Menyederhanakan kode JavaScript lainnya.
2.13.2. Kelebihan JQuery
Berikut beberapa alasan mengapa harus memilih JQuery dibandingkan
lainnya (Abdulloh, 2018: 233-234):
1. JQuery telah banyak dipakai oleh website-website terkemuka di dunia.
2. Kompatibel dengan semua browser yang sering digunakan.
3. Kompatibel dengan semua versi CSS.
4. Dokumentasi, tutorial dan contoh-contohnya lengkap.
5. Didukung oleh komunikasi yang besar dan aktif.
6. Ketersediaan plugin yang sangat banyak jumlahnya.
7. File-nya hanya satu dan ukurannya kecil, sehingga cepat aksesnya.
32
UIN Syarif Hidayatullah Jakarta
8. Open source (gratis) dengan lisensi dari GNU General Public License
dan MIT License.
2.14. Bootstrap
Bootstrap merupakan salah satu framework, CSS paling popular dari
sekian banyak framework CSS yang ada. Bootstrap memungkinkan desain
sebuah web menjadi responsive sehingga dapat dilihat dari berbagai macam
ukuran device dengan tampilan tetap menarik. Bootstrap juga membuat
proses pengaturan desain menjadi lebih cepat karena tidak perlu lagi menulis
CSS, bahkan hampir tidak perlu kecuali jika memerlukan pengaturan desain
yang berbeda dengan style Bootstrap (Abdulloh, 2018: 261).
2.15. Pemodelan Unified Modeling Language (UML)
Menurut Rosa dan Shalahuddin (2018: 133) UML (Unified Modeling
Language) adalah standar bahasa yang banyak digunakan di dunia industri
untuk mendefinisikan requirement, membuat analisis dan desain, serta
menggambarkan arsitektur dalam pemrograman berrorientasi objek. Hal ini
sependapat dengan Sugiarti (2018: 100) yang mengatakan bahwa Unified
Modeling Language (UML) adalah sebuah bahasa yang telah menjadi standar
dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem
peranti lunak. UML merupakan bahasa visual untuk pemodelan dan
komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks-
teks pendukung (Rosa dan Shalahuddin, 2018: 137).
33
UIN Syarif Hidayatullah Jakarta
Gambar 2.5 Diagram UML
(Sumber: Rosa dan Shalahuddin, 2018: 140)
Menurut Rosa dan Shalahuddin (2018: 140-141) pada UML 2.3 terdiri dari
13 macam diagram yang dikelompokkan dalam 3 kategori. Pembagian ketiga
kategori tersebut diantaranya:
1. Structure diagrams merupakan kumpulan diagram yang digunakan untuk
menggambarkan suatu struktur statis dari sistem yang dimodelkan.
2. Behavior diagrams merupakan kumpulan diagram yang digunakan untuk
menggambarkan kelakuan sistem atau rangkaian perubahan yang terjadi
pada sebuah sistem.
3. Interaction diagrams merupakan kumpulan diagram yang digunakan
untuk menggambarkan interaksi sistem dengan sistem lain maupun
interaksi antar subsistem pada suatu sistem.
2.15.1. Class Diagram
Diagram kelas atau class diagram menggambarkan struktur sistem dari
segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem
(Rosa dan Shalahuddin, 2018: 141). Berikut adalah tabel simbol-simbol
yang ada pada diagram kelas:
34
UIN Syarif Hidayatullah Jakarta
Tabel 2.5 Simbol-simbol Diagram Kelas
Simbol Deskripsi
Kelas
nama_kelas
+atribut
+operasi()
Kelas pada struktur sistem
Antarmuka/Interface
Sama dengan konsep interface dalam
pemrograman berrorientasi objek
Asosiasi/Association
Relasi antarkelas dengan makna
umum, apsosiasi biasanya juga disertau
dengan multiplicity
Generalisasi
Relasi antarkelas dengan makna
generalisasi-spesialisasi (umum
khusus)
Kebergantungan/Dependency
Relasi antarkelas dengan makna
kebergantungan antarkelas
Agregasi/Aggregation
Relasi antarkelas dengan makna
semua-bagian (whole-part)
(Sumber: Rosa dan Shalahuddin, 2018: 146-147)
2.15.2. Use Case Diagram
Use case diagram atau diagram use case merupakan pemodelan untuk
menggambarkan behavior sistem yang akan dibuat. Diagram use case
mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan
nama_interface
35
UIN Syarif Hidayatullah Jakarta
sistem yang akan dibuat (Sugiarti, 2018: 109). Berikut adalah tabel simbol-
simbol yang pada diagram use case:
Tabel 2.6 Simbol-simbol Usecase Diagram
Simbol Deskripsi
Use Case
Fungsionalitas yang disediakan sistem
sebagai unit-unit yang saling bertukar
pesan antar unit atau actor,
menggunakan kata kerja di awal frase
nama use case
Aktor/Actor
Orang, proses, atau sistem lain yang
berinteraksi dengan sistem informasi
yang akan dibuat di luar sistem
informasi yang akan dibuat itu sendiri,
jadi walaupun simbol dari aktor adalah
gambar orang, tapi aktor belum tentu
merupakan orang, menggunakan kata
benda di awal frase nama aktor
Asosiasi/Association
Komunikasi antara aktor dan use case
yang berpartisipasi pada use case atau
use caase memiliki interaksi dengan
aktor
Ekstensi/Extend
Relasi use case tambahan ke sebuah
use case dimana use case yang
ditambahkan dapat berdiri sendiri
walau tanpa use case tambahan itu,
mirip dengan pinsip inheritance pada
pemrograman berrorientasi objek
nama use case
nama aktor
36
UIN Syarif Hidayatullah Jakarta
Simbol Deskripsi
Generalisasi/Generalization
Hubungan generalisasi dan spesialisasi
(umum-khusus) antara dua nuah use
case dimana fungsi yang satu adalah
fungsi yang lebih umum dari lainnya
Menggunakan/Include/Uses
Ada dua sudut pandang yang cukup
besar mengenai include di use case:
1. Include berarti use case yang
ditambahkan akan selalu
dipanggil saat use case
tambahan dijalankan
2. Include berarti use case yang
tambahan akan selalu
melakukan pengecekan apakah
use case yang ditambahkan
telah dijalankan sebelum use
case tambahan dijalankan
(Sumber: Rosa dan Shalahuddin, 2018: 156-158)
2.15.3. Activity Diagram
Activity diagram menggambarkan workflow (aliran kerja) atau aktivitas
dari sebuah sistem atau proses bisnis atau menu pada perangkat lunak
(Rosa dam Shalahuddin, 2018: 161). Berikut adalah tabel simbol-simbol
yang ada pada diagram aktivitas:
37
UIN Syarif Hidayatullah Jakarta
Tabel 2.7 Simbol-simbol Diagram Aktivitas
Simbol Deskripsi
Status Awal
Status awal aktivitas sistem, sebuah
diagram aktivitas memiliki sebuah
status awal
Aktivitas
Aktivitas yang dilakukan sistem,
aktivitas biasanya diawali dengan kata
kerja
Percabangan/Decision
Asosiasi percabangan dimana jika ada
pilihan aktivitas lebih dari satu
Penggabungan/Join
Asosiasi penggabungan dimana lebih
dari satu aktivitas digabungkan
menjadi satu
Status Akhir
Status akhir yang dilakukan sistem,
sebuah diagram aktivitas memiliki
sebuah status akhir
Swimlane
Memisahkan organisasi bisnis yang
bertanggung jawab terhadap aktivitas
yang terjadi
(Sumber: Rosa dan Shalahuddin, 2018: 162-163)
2.15.4. Sequence Diagram
Diagram sekuen menggambarkan kelakuan objek pada use case dengan
mendeskripsikan waktu hidup objek dan message yang dikirimkan dan
diterima antar objek (Rosa dan Shalahuddin, 2018: 165). Berikut tabel
simbol-simbol yang ada pada diagram sekuen:
aktivitas
38
UIN Syarif Hidayatullah Jakarta
Tabel 2.8 Simbol-simbol Diagram Sekuen
Simbol Deskripsi
Aktor
Atau
tanpa waktu aktif
Orang, proses, atau sistem lain yang
berinteraksi dengan sistem informasi
yang akan dibuat di luar sistem
informasi yang akan dibuat itu sendiri,
jadi walaupun simbol dari aktor adalah
gambar orang, tetapi aktor belum tentu
merupakan orang, dinyatakan
menggunakan kata benda di awal frase
nama aktor
Garis Hidup/Lifeline
Menyatakan kehidupan suatu objek
Objek
Menyatakan objek yang berinteraksi
pesan
Waktu Aktif
Menyatakan objek dalam keadaan aktif
dan berinteraksi, semua yang
terhubung dengan waktu aktif ini
adalah sebuah tahapan yang dilakukan
didalamnya
Pesan Tipe Create
Menyatakan suatu objek membuat
objek yang lain, arah panah mengarah
pada objek yang dibuat
nama aktor
nama aktor
nama objek : nama kelas
<<create>
>
39
UIN Syarif Hidayatullah Jakarta
Simbol Deskripsi
Pesan Tipe Call
Menyatakan suatu objek memanggil
operasi/metode yang ada pada objek
lain atau dirinya sendiri, arah panah
mengarah pada objek yang memiliki
operasi/metode, karena ini memanggil
operasi/metode maka operasi/metode
yang dipanggil harus ada pada diagram
kelas sesuai dengan kelas objek yang
berinteraksi
Pesan Tipe Send
Menyatakan bahwa suatu objek
mengirimkan data/masukan/informasi
ke objek lainnya, arah panah mengarah
pada objek yang dikirim
Pesan Tipe Return
Menyatakan bahwa suatu objek yang
telah menjalankan suatu operasi atau
metode menghasilkan suatu kembalian
ke objek tertentu, arah panah mengarah
pada objek yang menerima kembalian
Pesan Tipe Destroy
Menyatakan suatu objek mengakhiri
hidup objek yang lain, arah panah
mengerah pada objek yang diakhiri,
sebaiknya juka ada create maka ada
destroy
(Sumber: Rosa dan Shalahuddin, 2018: 165-167)
2.16. Metode Pengumpulan Data
Menurut Sudaryono (2015, 83) metode pengumpulan data adalah cara atau
teknik yang dapat digunakan oleh peneliti untuk mengumpulkan data.
Pengumpulan data dalam penelitian dimaksudkan untuk memperoleh bahan,
keterangan, kenyataan, dan informasi yang dapat dipercaya. Untuk
<<create>
>
1: masukan
1: keluaran
40
UIN Syarif Hidayatullah Jakarta
memperoleh data seperti yang dimaksudkan, dalam penelitian dapat
digunakan berbagai macam metode, di antaranya angket, pengamatan,
wawancara, tes, analisis dokumen, dan sebagainya. Berikut adalah tabel
metode dan instrument pengumpulan data:
Tabel 2.9 Metode dan Instrumen Pengumpulan Data
No. Jenis Metode Jenis Instrumen
1. Angket (questionnaire)
a. Angket
b. Daftar cek (checklist)
c. Skala (scala)
d. Inventori (inventory)
2. Wawancara (interview)
a. Pedoman wawancara
(interview guide)
b. Daftar cek
3. Pengamatan (observation)
a. Lembar pengamatan
(observation sheet)
b. Panduan pengamatan
(observation schedule)
c. Daftar cek
4. Ujian atau tes (test) a. Soal ujian (soal tes atau tes)
b. Inventori
5. Dokumentasi a. Daftar cek
b. Tabel
(Sumber: Sudaryono, 2015)
2.16.1. Angket (Questionnaire)
Menurut Sudaryono (2015, 84) angket/kuesioner (questionnaire)
adalah suatu teknik atau cara pengumpulan data secara tidak langsung
(peneliti tidak langsung bertanya-jawab dengan responden). Sedangkan
menurut Riduwan (2013: 71) angket adalah daftar pertanyaan yang
diberikan kepada orang lain yang bersedia memberikan respons
(responden) sesuai dengan permintaan pengguna. Dari kedua pendapat
41
UIN Syarif Hidayatullah Jakarta
tersebut dapat disimpulkan bahwa angket atau kuesioner ialah teknik
pengumpulan data secara tidak langsung berupa daftar pertanyaan yang
diberikan kepada responden sesuai dengan permintaan pengguna.
Tujuan penyebaran angket adalah untuk mencari informasi yang
lengkap mengenai suatu masalah dari responden tanpa merasa khawatir
bila responden memberikan jawaban yang tidak sesuai dengan kenyataan
dalam pengisian daftar pertanyaan (Sudaryono, 2015: 84).
2.16.2. Wawancara (Interview)
Menurut Sudaryono (2015: 88) wawancara atau interview adalah suatu
cara pengumpulan data yang digunakan untuk memperoleh informasi
langsung dari sumbernya. Sedangkan menurut Hikmawati (2017: 83)
wawancara merupakan pertemuan dua orang untuk bertukar informasi dan
ide melalui tanya jawab, sehingga dapat dikonstruksikan makna dalam
suatu topik tertentu. Dari kedua pendapat tersebut dapat disimpulkan
bahwa wawancara merupakan suatu cara pengumpulan data untuk
memperoleh informasi atau bertukar ide melalui tanya jawab yang
dilakukan melalui pertemuan diantara dua orang.
Menurut Hikmawati (2017: 83) ada beberapa macam wawancara,
diantaranya:
1. Wawancara Terstruktur (Structure Interview)
Peneliti atau pengumpul data telah mengetahui dengan pasti tentang
informasi apa yang akan diperoleh.
2. Wawancara Seniterstruktur (Semistructure Interview)
Menemukan permasalahan secara lebih terbuka, di mana pihak yang
diajak wawancara diminta pendapat dan ide-idenya.
3. Wawancara Tak Berstruktur (Unstructured Interview)
Wawancara yang bebas di mana peneliti tidak menggunakan pedoman
wawancara yang telah tersusun secara sistematis dan lengkap untuk
pengumpulan datanya.
42
UIN Syarif Hidayatullah Jakarta
2.16.3. Pengamatan (Observation)
Menurut Sudaryono (2015: 90) observasi adalah suatu cara untuk
mengumpulkan data dengan jalan mengamati kegiatan yang sedang
berlangsung. Sedangkan menurut Riduwan (2013: 76) observasi yaitu
melakukan pengamatan secara langsung ke objek penelitian untuk melihat
dari dekat kegiatan yang dilakukan. Dari kedua pendapat tersebut dapat
disimpulkan bahwa observasi adalah cara untuk mengumpulkan data
dengan mengamati kegiatan secara langsung ke objek penelitian.
2.17. Pengujian Perangkat Lunak
Menurut Rosa dan Shalahuddin (2018: 272) pengujian adalah suatu
aktivitas yang direncanakan dan sistematis untuk menguji atau mengevaluasi
kebenaran yang diinginkan. Pengujian perangkat lunak adalah sebuah elemen
topik yang memilik cangkupan yang luas dan sering dikaitkan dengan
verifikasi dan validasi.
Gambar 2.6 Pengujian Perangkat Lunak
(Sumber: Rosa dan Shalahuddin, 2018: 274)
1. Pengujian Unit
Pengujian unit biasanya dilakukan saat kode program dibuat. Unit yang
dimaksud secara fisik dapat berupa prosedur atau fungsi yang ada dalam
satu berkas (file) (Rosa dan Shalahuddin, 2018: 277). Beberapa kelebihan
unit testing, yaitu (softwaretestingfundamentals.com):
a. Untuk memungkinkan pengujian unit, kode harus modular. Ini berarti
bahwa kode lebih mudah digunakan kembali.
b. Pengembangannya lebih cepat dalam jangka panjang.
c. Biaya memperbaiki cacat yang terdeteksi selama pengujian unit lebih
rendah dibandingkan dengan cacat yang terdeteksi pada tingkat yang
lebih tinggi.
43
UIN Syarif Hidayatullah Jakarta
d. Debugging lebih mudah. Ketika tes gagal, hanya perubahan terbaru
yang perlu di-debug.
e. Kode lebih dapat diandalkan.
2. Pengujian Integrasi
Pengujian integrasi adalah tingkat pengujian perangkat lunak di mana
masing-masing unit digabungkan dan diuji sebagai suatu kelompok.
Tujuan dari tingkat pengujian ini adalah untuk mengekspos kesalahan
dalam interaksi antara unit terintegrasi
(softwaretestingfundamentals.com). Terdapat 3 teknik umum untuk
melakukan pengujian integrasi, yaitu (spaceku.com):
a. Big bang Integration Testing, teknik ini mencakup semua komponen
atau modul yang terintegrasi sekaligus dan akan diuji coba secara
keseluruhan. Kelebihan memakai teknik ini adalah cocok untuk
sistem yang lebih kecil.
b. Top-Down Integration Testing, kelebihan memakai teknik ini adalah
lebih mudah melacak bug atau cacat dalam desain utama.
c. Bottom-Up Integration Testing, kelebihan memakai teknik ini adalah
pengujian bisa lebih teliti dan mudah melacak bug jika terjadi
kegagalan di sistem.
3. Pengujian Sistem
Pengujian sistem adalah tingkat pengujian perangkat lunak di mana
perangkat lunak yang lengkap dan terintegrasi diuji. Tujuan dari tes ini
adalah untuk mengevaluasi kepatuhan sistem dengan persyaratan yang
ditentukan (softwaretestingfundamentals.com).
4. Pengujian Penerimaan
Pengujian penerimaan adalah tingkat pengujian perangkat lunak dimana
suatu sistem diuji untuk dapat diterima
(softwaretestingfundamentals.com). Pengujian penerimaan digunkaan
untuk mengetahui kepuasan pelanggan atau user terhadap perangkat
lunak yang sudah dibuat. Jika pelanggan sudah puas dengan perangkat
44
UIN Syarif Hidayatullah Jakarta
lunak, maka perangkat lunak dapat di serahkan kepada pelanggan
(customer) (Rossa dan Shalahuddin, 2016: 275).
45
UIN Syarif Hidayatullah Jakarta
2.18. Studi Literatur Sejenis
Dalam penelitian ini, penulis menggunakan literatur penelitian sejenis yang sudah ada sebelumnya. Hal ini dimaksudkan untuk
membandingkan studi literatur tersebut. Berikut ini tabel literatur sejenis yang penulis gunakan:
Tabel 2.10 Tabel Studi Literatur Sejenis
No. Judul Proses Metode Tools Kelebihan Kekurangan
1. Expert Systems
With Genetics
Probability
(Nelly Astuti
Hasibuan,
Kusnita
Yusmiarti, Fince
Tinus Warawu
& Rabbi Rahim,
2017)
Melakukan
perhitungan
menggunakan
formula
probabilitas
genetik. Dari
contoh
perhitungan
tersebut
didapatkan
kemungkinan
hasil diagnosa.
Genetic
Probability
Tidak
dijelaskan
Teori probabilitas genetik
yang diterapkan pada sistem
pakar, akan membuat proses
penarikan kesimpulan menjadi
lebih mudah dan kesimpulan
yang ditarik akan
dimaksimalkan.
- Tingkat kebenaran diagnosa
tidak dapat dibuktikan
karena bergantung pada nilai
kebenaran dari hipotesis dan
bukti.
- Belum dilakukan penelitian
ketika gejalanya serupa.
46
UIN Syarif Hidayatullah Jakarta
No. Judul Proses Metode Tools Kelebihan Kekurangan
2. Rickets Expert
System Diagnoses
and Treatment
(Hazem Awni Al
Rekhawi,
Abdullah A.
Ayyad & Samy
S. Abu Naser,
2017)
Menyajikan
sistem pakar
untuk
diagnosis
rakitis, dengan
diagnosis,
rekomendasi
dan
pengobatan.
Metode
Forward
Chaining
Bahasa SL5
Object
Sistem pakar ini menghemat
waktu dan upaya pasien
dengan memungkinkan pasien
mendiagnosa rakitis tanpa
hambatan dan mudah
digunakan dengan antarmuka
yang sederhana.
Sistem pakar ini masih terbatas
pada jenis rakhitis yang diteliti.
47
UIN Syarif Hidayatullah Jakarta
No. Judul Proses Metode Tools Kelebihan Kekurangan
3. Application for
Determining
Mustahiq based
on the Priority
using Weight
Product Method
(Case Study:
BAZIS DKI
Jakarta)
(Harry Okta
Maulana, Imam
M. Shofi, Nurul
Faizah Rozy &
Fenty Eka
Muzayyana
Agustin, 2017)
Menentukan
mustahiq di
BAZIS DKI
dengan metode
Weighted
Product dan
mengelola data
yang
diperlukan
untuk
menentukan
mustahiq
seperti data
mustahiq,
kriteria, nilai
kriteria,
pengguna, dan
master data.
Metode
Weighted
Product,
Rapid
Application
Development,
dan Black-
Box Testing
Bahasa
pemograman
HTML dan
PHP,
MySQL, dan
XAMPP
Aplikasi ini
mampu memfasilitasi
pemilihan mustahiq karena
keputusan
pembuat diberi pilihan
peringkat atau urutan prioritas
mustahiq.
Penentuan kriteria yang
digunakan belum diteliti.
48
UIN Syarif Hidayatullah Jakarta
No. Judul Proses Metode Tools Kelebihan Kekurangan
4. Expert System of
Catfish Disease
Determinant
Using Certainty
Factor Method
(Isnar
Sumantoro, Diki
Arisandi,
Andysah Putera
Utama Siahaan
& Mesran, 2017)
Pengguna
melakukan
interaksi
dengan sistem
pakar dengan
menjawab
pertanyaan
yang telah
disediakan,
kemudian akan
didapatkan
sebuah
kesimpulan.
Metode
Certainty
Factor
Tidak
dijelaskan
Algoritma faktor kepastian
adalah salah satu algoritma
yang baik untuk menentukan
persentase kemungkinan
penyakit ikan. Algoritma ini
sangat membantu para petani
untuk meningkatkan budidaya
ikan lele.
Metode ini mempunyai
kelemahan apabila gejala yang
dilampirkan kecil atau sedikit.
49
UIN Syarif Hidayatullah Jakarta
No. Judul Proses Metode Tools Kelebihan Kekurangan
5. Sistem
Pendukung
Keputusan (SPK)
Menentukan
Kelayakan Calon
Penerima Zakat
Menerapkan
Multi-Factor
Evaluation
Process (MFEP)
(Iis Afrianty &
Ravi Umbara,
2016)
User yang
bertindak
sebagai admin
membantu
dalam
mengoperasikan
sistem. Dimana
pada sistem ini
penentuan
kelayakannya
menggunakan
beberapa tabel
dalam
perancangannya.
Multi-Factor
Evaluation
Process
(MFEP),
Blackbox
Testing
(Metode
Pengujian
Sistem), User
Acceptance
Test
(Pengujian
dengan
Penyebaran
Kuesioner)
Bahasa
pemrograman
PHP
Pembobotan nilainya
dijelaskan dari tiap kriteria
yang diteliti.
- Data mustahik yang
dijadikan contoh untuk
penelitian ini hanya sedikit
yaitu 3.
- Interface yang ditampilkan
hanya hasil
perangkingannya saja.
- Perhitungan yang dilakukan
hanya kepada 3 mustahik
saja, namun di tampilan
hasil perangkingan ada 5
nama mustahik.
50
UIN Syarif Hidayatullah Jakarta
No. Judul Proses Metode Tools Kelebihan Kekurangan
6. Aplikasi E-Zakat
Penerimaan dan
Penyaluran
Menggunakan
Fuzzy C-Means
(Studi Kasus:
LAZISMU
Pekanbaru)
(Rudi Julian Eka
Putra, Nurliana
Nasution &
Yummastian,
2015)
User akan
menginput
data sekaligus
sebagai
penerima hasil
pengolahan
data. Hasil
pengolahan
data dapat
diketahui
layak atau
tidaknya
mustahik
menerima
zakat.
Metode
Fuzzy C-
Means
Tidak
dijelaskan
Perhitungan penentuan
kelayakannya dijelaskan
secara terperinci per-indeks
yang dijadikan parameter
untuk penelitian ini.
Tidak dijelaskan bagaimana
interface dari sistem ini, dan
proses lain selain penentuan
kelayakan mustahik.
51
UIN Syarif Hidayatullah Jakarta
No. Judul Proses Metode Tools Kelebihan Kekurangan
7. Sistem
Pendukung
Keputusan
Penerima Zakat
Dengan Metode
Simple Additive
Weighting
(Asni Furoida &
Sutikmo, 2017)
Sistem
pendukung
keputusan
menerima
masukan
berupa data
alternatif
mustahik. Data
alternatif
tersebut
disimpan ke
dalam
database,
kemudian
dilakukan
penghitungan
SAW.
Metode
Simple
Additive
Weighting
(SAW)
Tidak
dijelaskan
Sistem bersifat objektif dan
dipilih berdasarkan periode
bulanan, sedangkan pada
keputusan zakat di BAZNAS
kota Semarang, penerima
zakat diurutkan berdasarkan
tanggal mustahik mengajukan
bantuan.
Tidak dijelaskan bagaimana
perhitungan dari metode
Simple Additive Weighting
(SAW).
52
UIN Syarif Hidayatullah Jakarta
No. Judul Proses Metode Tools Kelebihan Kekurangan
8. Sistem
Pendukung
Keputusan Untuk
penentuan
mustahik
(Penerima Zakat)
Menggunakan
Metode Fuzzy
AHP (F-AHP)
(Roma Akbar
Iswara, Edy
Santoso, dan
Bayu Rahayudi,
2018)
Penerapan
metode F-AHP
dalam
penentuan
mustahik yaitu
dengan input
nilai matriks
perbandingan
berpasangan,
transformasi
skala AHP ke
skala TFN,
sampai
terakhir akan
menghasilkan
nilai bobot
alternatif yang
menentukan
Metode
Fuzzy AHP
(F-AHP)
Tidak
dijelaskan
- Perhitungan dalam
penentuan bobotnya
dijelaskan secara detail.
- Nilai akurasi yang
didapatkan dengan
menggunakan metode ini
cukup besar yaitu 91,67%
dengan 60 data dan 4
kriteria
Tampilan user interfacenya
tidak digambarkan, yang ada
hanya perhitungannya saja.
53
UIN Syarif Hidayatullah Jakarta
No. Judul Proses Metode Tools Kelebihan Kekurangan
berhak
tidaknya calon
mustahik
menerima
zakat.
Berdasarkan analisis yang telah dilakukan penulis dengan membandingkan 8 studi literatur sejenis, penulis menambahkan
beberapa poin untuk melengkapi kekurangan dan kelebihan yang sudah ada pada penelitian sebelumnya. Berikut ini beberapa
fitur yang penulis tambahkan pada aplikasi sistem pakar ini :
1. Pengidentifikasian Mustahik Zakat
Dari delapan penelitian yang penulis jadikan untuk studi literatur, lima diantaranya melakukan penelitian mengenai
mustahik zakat, dan kelima penelitian tersebut mengenai sistem pendukung keputusan untuk penentuan kelayakan mustahik.
Sementara itu, penulis melakukan penelitian mustahik zakat mengenai pengidentifikasian mustahik zakat termasuk ke dalam
asnaf atau suatu golongan yang mana.
2. Disediakannya dua user interface.
Dimana tampilan untuk admin akan berbeda dengan tampilan user. Di dalam tampilan admin terdapat proses login,
logout, profil, kelola user, serta kelola kriteria dan asnaf, sedangkan pada tampilan user terdapat proses register, login, logout,
profil, identifikasi dan history.
3. Berbasis web, sehingga lebih mudah diakses di mana saja.
54
UIN Syarif Hidayatullah Jakarta
Berdasarkan studi literatur dan analisa penulis, tabel berikut merupakan perbandingan antara studi literatur sebelumnya dengan
penelitian yang dilakukan penulis:
Tabel 2.11 Tabel Perbandingan Antara Studi Literatur
No. Judul Sistem Pakar Metode Certainty
Factor Mustahik Zakat
Implementasi
(Website)
1.
Expert Systems With Genetics Probability
(Nelly Astuti Hasibuan, Kusnita
Yusmiarti, Fince Tinus Warawu &
Rabbi Rahim, 2017)
✓ - - -
2.
Rickets Expert System Diagnoses and
Treatment
(Hazem Awni Al Rekhawi, Abdullah A.
Ayyad & Samy S. Abu Naser, 2017)
✓ - - -
55
UIN Syarif Hidayatullah Jakarta
No. Judul Sistem Pakar Metode Certainty
Factor
Mustahik
Zakat
Implementasi
(Website)
3.
Application for Determining Mustahiq
based on the Priority using Weight Product
Method (Case Study: BAZIS DKI Jakarta)
(Harry Okta Maulana, Imam M. Shofi,
Nurul Faizah Rozy & Fenty Eka
Muzayyana Agustin, 2017)
- - ✓
✓
4.
Expert System of Catfish Disease
Determinant Using Certainty Factor
Method
(Isnar Sumantoro, Diki Arisandi,
Andysah Putera Utama Siahaan &
Mesran, 2017)
✓ ✓ - -
56
UIN Syarif Hidayatullah Jakarta
No. Judul Sistem Pakar Metode Certainty
Factor Mustahik Zakat
Implementasi
(Website)
5.
Sistem Pendukung Keputusan (SPK)
Menentukan Kelayakan Calon Penerima
Zakat Menerapkan Multi-Factor
Evaluation Process (MFEP)
(Iis Afrianty & Ravi Umbara, 2016)
- -
✓
✓
6.
Aplikasi E-Zakat Penerimaan dan
Penyaluran Menggunakan Fuzzy C-Means
(Studi Kasus: LAZISMU Pekanbaru)
(Rudi Julian Eka Putra, Nurliana
Nasution & Yummastian, 2015)
- - ✓
-
57
UIN Syarif Hidayatullah Jakarta
No. Judul Sistem Pakar Metode Certainty
Factor Mustahik Zakat
Implementasi
(Website)
7.
Sistem Pendukung Keputusan Penerima
Zakat Dengan Metode Simple Additive
Weighting
(Asni Furoida & Sutikmo, 2017)
- - ✓
-
8.
Sistem Pendukung Keputusan Untuk
penentuan mustahik (Penerima Zakat)
Menggunakan Metode Fuzzy AHP (F-
AHP)
(Roma Akbar Iswara, Edy Santoso, dan
Bayu Rahayudi, 2018)
✓
9.
Sistem Pakar Identifikasi Mustahik Zakat
Menggunakan Metode Certainty Factor
(Yulianti, 2019)
✓ ✓ ✓
✓
58 UIN Syarif Hidayatullah Jakarta
BAB III
METODOLOGI PENELITIAN
3.1. Metode Pengumpulan Data
Dalam skripsi ini penulis menggunakan dua metode dalam pengumpulan
data, dimana studi pustaka dilakukan untuk memperoleh data sekunder, dan
untuk memperoleh data primer penulis melakukan wawancara dan kuesioner.
3.1.1. Data Primer
3.1.1.1. Wawancara
Pada metode ini penulis melakukan wawancara kepada Bapak H.
Tohir, selaku wakil ketua IV BAZNAS Kota Tangerang Selatan pada
Selasa, 26 Juni 2018. Wawancara ini dilakukan untuk memperoleh dan
mengumpulkan data yang dibutuhkan antara lain belum dilakukannya
survei langsung untuk penentuan mustahik, dan masih banyak mustahik
yang berbohong karena sistem yang masih sangat manual. Selain itu
penulis juga melakukan wawancara kepada Bapak Nur Taufan, selaku
bagian partnership LPM Dompet Dhuafa pada Rabu, 14 November
2018. Dari wawancara kedua ini, penulis mendapatkan data pendukung
untuk latar belakang. Penulis selanjutnya mewawancarai kembali
Bapak Nur Taufan pada 28 November 2018 untuk mendapatkan rule
dari kriteria.
3.1.1.2. Kuesioner
Pada metode ini penulis memberikan daftar pertanyaan kepada
responden. Penulis melakukan dua penyebaran kuesioner, yaitu untuk
menganalisis kebutuhan dan untuk menganalisis sistem yang telah
dibuat. Untuk kuesioner pertama, penulis melakukan penyebaran
kuesioner kepada 30 Masjid Jami’ yang berada di Kota Tangerang
Selatan dan 3 lembaga zakat, dengan 2 lembaga zakat berskala nasional
59
UIN Syarif Hidayatullah Jakarta
dan 1 lembaga zakat berskala Kota/Kabupaten. Untuk kuesioner kedua,
penulis melakukan penyebaran kuesioner ke 3 lembaga zakat tersebut.
3.1.2. Data Sekunder
3.1.2.1. Studi Pustaka
Pada metode pengumpulan data dengan cara studi pustaka, penulis
mencari data-data pendukung yang relevan dengan objek yang akan
diteliti. Data-data pendukung tersebut digunakan dalam penyusunan
latar belakang, landasan teori, metodologi penelitian, dan
pengembangan sistem. Pencarian bersumber dari buku berjumlah 24
buku, jurnal berjumlah 13 jurnal, dan website berjumlah 5 website.
3.2. Metode Pengembangan Sistem
Dalam penelitian ini, penulis menggunakan metode pengembangan sistem
Rapid Application Development (RAD). Proses metode RAD melingkupi
fase-fase sebagai berikut (Kendall & Kendall, 2012: 163-165):
3.2.1. Requirement Planning
Pada fase ini dilakukan pengidentifikasian sistem, serta tujuan dan
syarat-syarat dari pembuatan sistem tersebut.
Penulis melakukan pengidentifikasian sistem yang dibutuhkan melalui
hasil wawancara secara langsung yang telah dilakukan, serta pengumpulan
data yang menyangkut data-data terkait dengan permasalahan tersebut.
Setelah di analisis apa saja kebutuhan sistem, kemudian didapatkan tujuan
dan syarat-syarat dari sistem tersebut.
3.2.2. Design Workshop
Pada fase ini terdapat 2 tahap, yaitu:
1. Desain Sistem
Pada fase ini dirancang proses-proses yang akan terjadi di dalam sistem.
a. Perancangan proses-proses pada sistem yaitu mengunakan UML
dengan membuat 1 Use Case Diagram, 17 Activity Diagram, 17
Sequence Diagram, dan 1 Class Diagram.
b. Perancangan database sistem.
60
UIN Syarif Hidayatullah Jakarta
c. Perancangan user interface.
2. Pengkodean
Setelah tahap desain sistem selesai, kemudian dilakukan
pengimplementasiannya ke dalam sebuah program. Bahasa
pemrograman yang digunakan yaitu PHP dengan menggunakan
framework CodeIgniter dan MySQL sebagai database. Dalam proses
pengkodean dilakukan tahap pengujian menggunakan integration
testing.
3.2.3. Implementation
Setelah 2 tahapan design workshop, selanjutnya yaitu tahapan
pengujian sistem. Pengujian sistem dilakukan untuk melakukan
pengecekan dan menjamin bahwa sistem dapat berjalan dengan baik.
Teknik pengujian sistem yang diterapkan yaitu user acceptance testing.
61
UIN Syarif Hidayatullah Jakarta
3.3. Kerangka Berpikir
Mulai
Studi Pustaka
Wawancara
Identifikasi Masalah
Perumusan Masalah
Metode Pengumpulan Data
Requirement Planning
Design Workshop
Implementation
Metode PengembanganSistem
Kesimpulan dan Saran
Selesai
Pengujian SistemUser Acceptance
Testing
Identifikasi Sistem
Desain Sistem
Pengkodean
Perancangan Proses
Perancangan Database
Perancangan Interface
Use Case Diagram
Activity Diagram
Sequence Diagram
Class Diagram
Identifikasi Masalah
Identifikasi Tujuan Sistem
Integration Testing
Kuesioner
Bagan 3.1 Kerangka Berpikir
62 UIN Syarif Hidayatullah Jakarta
BAB IV
ANALISA DAN PERANCANGAN SISTEM
4.1. Requirement Planning
4.1.1. Tahap Identifikasi Sistem
4.1.1.1. Identifikasi Masalah
Berdasarkan wawancara yang telah penulis lakukan pada 26 Juni
2018 dengan Bapak H. Tohir, selaku wakil ketua IV BAZNAS Kota
Tangerang Selatan, sistem yang berjalan disana masih manual, dan
terdapat beberapa mustahik yang melakukan kebohongan akibat sistem
yang manual ini. Selain itu penulis juga melakukan wawancara dengan
Bapak Taufan, yang sebelumnya pernah ditempatkan di bagian
LaMusta (Layanan Mustahik) Dompet Dhuafa yang saat ini beliau
ditempatkan di bagian partnership pada 14 November 2018, dimana
sistem yang berjalan saat ini juga masih manual, yaitu berupa
wawancara atau silaturahmi, dan berupa form survei. Proses
pengidentifikasian mustahik yang dilakukan di LPM Dompet Dhuafa
dengan menanyakan maksud awal mustahik datang ke LPM Dompet
Dhuafa, sehingga menurutnya diperlukan sistem yang dapat
mengidentifikasikan kategori mustahik, agar tidak perlu repot lagi
mengkategorikannya secara manual. Menurut hasil dari penyebaran
kuesioner yang telah penulis lakukan terhadap 30 Masjid Jami’ yang
berada di Kota Tangerang Selatan, hampir semuanya masih
menggunakan sistem manual, yaitu berupa data yang ditulis, dan data
yang diolah di Microsoft Excel. Proses pengidentifikasian yang
berjalan pun hanya berdasarkan data dari RT atau RW setempat.
4.1.1.2. Identifikasi Tujuan Sistem
Sistem yang penulis kembangkan yaitu sistem pakar identifikasi
mustahik zakat berbasis web dengan metode certainty factor. Sistem
63
UIN Syarif Hidayatullah Jakarta
pakar ini dikembangkan dengan metode certainty factor untuk
mengidentifikasi mustahik termasuk kategori asnaf yang mana. Sistem
pakar ini dikembangkan untuk para amil memutuskan pengkategorian
asnaf. Berdasarkan tujuan tersebut, maka syarat-syarat informasi yang
dikembangkan, dapat terlihat dari beberapa fitur berikut:
1. Fitur Login, untuk admin/pakar dan user masuk ke sistem.
2. Fitur Register, dimana user harus terdaftar dalam sistem tersebut
untuk dapat melakukan pengidentifikasian.
3. Fitur Kelola User, dimana admin dapat mengahapus akun user.
4. Fitur Kelola Kriteria dan Asnaf, pada fitur ini admin memiliki hak
akses untuk menambahkan, menghapus, dan mengedit kriteria,
asnaf, dan rules pada sistem.
5. Fitur History User, pada fitur ini admin bisa melihat setiap harinya
user mana saja yang melakukan pengidentifikasian, dan bisa melihat
detail hasil dari pengidentifikasian tersebut.
6. Fitur Profil, untuk admin/pakar dan user melakukan pengeditan
terhadap profil yang dirasa perlu perubahan.
7. Fitur Identifikasi Mustahik, pada fitur ini user bisa melakukan
pengidentifikasian dengan memilih kriteria yang telah disediakan.
8. Fitur History, dimana hasil data pengidentifikasian mustahik
tersimpan pada fitur ini, sehingga memudahkan user ketika dirasa
perlu untuk melihat hasilnya kembali.
9. Fitur Logout, untuk admin/pakar dan user keluar dari sistem.
4.2. Design Workshop
4.2.1. Desain Sistem
4.2.1.1. Tahap Perancangan Proses
4.2.1.1.1. Representasi Pengetahuan
Untuk menentukan kriteria apa saja dan bagaimana aturan yang
terjadi pada sistem pakar ini, penulis kembali melakukan wawancara
dengan Bapak Nur Taufan pada 28 November 2018.
64
UIN Syarif Hidayatullah Jakarta
Berikut adalah kriteria untuk sistem pakar pengidentifikasian
mustahik zakat:
Tabel 4.1 Kriteria dalam Sistem Pakar
No. Kode Kriteria Kriteria
1. P001 Manula
2. P002 Penghasilan dari Rp. 0 – Rp. 200.000
3. P003 Penghasilan dari Rp. 201.000 – Rp. 400.000
4. P004 Islam sejak lahir
5. P005 Baru memeluk Islam <=2 tahun
6. P006 Tidak memiliki pekerjaan
7. P007 Tidak memiliki tempat tinggal tetap
8. P008 Mempunyai aktivitas rutin yang termasuk ke dalam
kegiatan keislaman atau sosial
9. P009 Sedang merantau dan sedang melaksanakan
pendidikan
10. P010 Sedang dalam perjalanan dan tidak mempunyai uang
untuk kembali pulang
11. P011 Berhutang dan tidak mampu membayarnya
Kriteria tersebut didapatkan dari beberapa sumber, yaitu
wawancara dengan pakar, buku, form survei LPM Dompet Dhuafa,
dan data dari BPS mengenai garis kemiskinan nasional yang
berpengaruh dalam penentuan penghasilan yang terdapat dalam
kriteria. Menurut BPS (2018), pada maret 2018 Indonesia memiliki
garis kemiskinan sebesar Rp. 401.202; angka tersebut yang penulis
jadikan acuan dalam kriteria penghasilan.
Selain kriteria pada representasi pengetahuan dijelaskan pula
mengenai kategori asnaf, berikut tabelnya:
65
UIN Syarif Hidayatullah Jakarta
Tabel 4.2 Asnaf dalam Sistem Pakar
No. Kode Asnaf Asnaf
1. A01 Fakir
2. A02 Miskin
3. A03 Mualaf
4. A04 Gharimin
5. A05 Fisabilillah
6. A06 Ibnu Sabil
Dari kedua tabel tersebut, maka didapatkanlah tabel relasi sebagai
berikut:
Tabel 4.3 Relasi dalam Sistem Pakar
Kode Kriteria A01 A02 A03 A04 A05 A06
P001 Manula X
P002 Penghasilan dari Rp. 0 – Rp.
200.000
X X
P003 Penghasilan dari Rp. 201.000
– Rp. 400.000
X X
P004 Islam sejak lahir X X X X X
P005 Baru memeluk Islam <=2
tahun
X
P006 Tidak memiliki pekerjaan X
P007 Tidak memiliki tempat tinggal
tetap
X X X X
P008 Mempunyai aktivitas rutin
yang termasuk ke dalam
kegiatan keislaman atau sosial
X
P009 Sedang merantau dan sedang
melaksanakan pendidikan
X
66
UIN Syarif Hidayatullah Jakarta
Kode Kriteria A01 A02 A03 A04 A05 A06
P010 Sedang dalam perjalanan dan
tidak mempunyai uang untuk
kembali pulang
X
P011 Berhutang dan tidak mampu
membayarnya
X
4.2.1.1.1.1. Mesin Inferensi
Mesin inferensi yang penulis gunakan yaitu metode forward
chaining, dimana sistem akan berjalan dengan mencari fakta-
fakta yang ada kemudian akan ditemukan suatu hipotesa atau
hasil.
{}
P004P005
P001 P006 P011 P009 P008 P010 P007
P002
P011
P003
P011
A03
A01 A01 A04 A05 A05 A06 A06
A01
A04 A04
A02
Gambar 4.1 Pohon Keputusan
Dari pohon keputusan tersebut didapatkanlah aturan-aturan
dalam sistem pakar ini, yaitu:
Rule 1 IF P005 THEN A03
Rule 2 IF P004, P001 THEN A01
Rule 3 IF P004, P006 THEN A01
67
UIN Syarif Hidayatullah Jakarta
Rule 4 IF P004, P011 THEN A04
Rule 5 IF P004, P009 THEN A05
Rule 6 IF P004, P008 THEN A05
Rule 7 IF P004, P010 THEN A06
Rule 8 IF P004, P007 THEN A06
Rule 9 IF P004, P007, P002 THEN A01
Rule 10 IF P004, P007, P002, P011 THEN A04
Rule 11 IF P004, P007, P003 THEN A02
Rule 12 IF P004, P007, P003, P011 THEN A04
4.2.1.1.1.2. Perhitungan Metode Certainty Factor (CF)
Dalam tahap ini dijelaskan bagaimana perhitungan yang
terjadi di dalam sistem melalui kriteria yang user pilih. Nilai CF
digunakan untuk mengetahui hasil identifikasi mustahik zakat.
Nilai CF terbesar merupakan nilai dengan tingkat faktor kepastian
yang paling besar yang mendekati suatu asnaf.
Rumus perhitungan metode certainty factor, yaitu:
𝑪𝑭[𝒉, 𝒆] = 𝑴𝑩[𝒉, 𝒆] −𝑴𝑫[𝒉, 𝒆]
Keterangan:
CF[h,e] = Faktor Kepastian
MB[h,e] = Ukuran kepercayaan/tingkat keyakinan terhadap
hipotesis h, jika diberikan/dipengaruhi evidence e
(antara 0 dan 1)
MD[h,e] = Ukuran ketidakpercayaan/tingkat ketidakyakinan
terhadap hipotesis h, jika diberikan/dipengaruhi
evidence e (antara 0 dan 1)
Untuk mendapatkan nilai MB dan MD, dapat diketahui
melalui pohon keputusan yang telah disediakan. Sebagai contoh,
user memilih kriteria P004 dan P007. Dimana pada pohon
keputusan ada percabangan lain yang bisa menjadi suatu
hipotesis. Maka cara menghitungnya, yaitu:
68
UIN Syarif Hidayatullah Jakarta
− Hipotesis 1 = A01 (P004, P001)
MB = ½ = 0, 5
MD = ½ = 0,5
CF = MB – MD = 0,5 – 0,5 = 0
− Hipotesis 2 = A01 (P004, P006)
MB = ½ = 0, 5
MD = ½ = 0,5
CF = MB – MD = 0,5 – 0,5 = 0
− Hipotesis 3 = A04 (P004, P011)
MB = ½ = 0, 5
MD = ½ = 0,5
CF = MB – MD = 0,5 – 0,5 = 0
− Hipotesis 4 = A05 (P004, P009)
MB = ½ = 0, 5
MD = ½ = 0,5
CF = MB – MD = 0,5 – 0,5 = 0
− Hipotesis 5 = A05 (P004, P008)
MB = ½ = 0, 5
MD = ½ = 0,5
CF = MB – MD = 0,5 – 0,5 = 0
− Hipotesis 6 = A06 (P004, P010)
MB = ½ = 0, 5
MD = ½ = 0,5
CF = MB – MD = 0,5 – 0,5 = 0
− Hipotesis 7 = A06 (P004, P007)
MB = 2/2 = 1
MD = 0
CF = MB – MD = 1 – 0 = 1
− Hipotesis 8 = A01 (P004, P007, P002)
MB = 2/3 = 0, 67
MD = 1/3 = 0, 33
69
UIN Syarif Hidayatullah Jakarta
CF = MB – MD = 0, 34
− Hipotesis 9 = A02 (P004, P007, P003)
MB = 2/3 = 0, 67
MD = 1/3 = 0, 33
CF = MB – MD = 0, 34
− Hipotesis 10 dan 11 = A04 (P004, P007, P002/P003, P011)
MB = 2/4 = 0, 5
MD = 2/4 = 0, 5
CF = MB – MD = 0, 5 – 0, 5 = 0
Dapat dilihat hasilnya, dari kemungkinan 11 hipotesis
didapatkan nilai CF yang paling tinggi yaitu 1 untuk hipotesis
A06. Maka dapat diputuskan hasil dari pengidentifikasiannya
yaitu mustahik termasuk ke dalam asnaf ibnu sabil.
4.2.1.1.2. Identifikasi Actor
Sistem pakar yang penulis rancang mengandung 2 actor, yaitu
admin/pakar dan user. Admin/pakar adalah seorang yang memiliki
hak akses dan memvaliditasi sistem, dan user adalah amil atau
petugas zakat yang menggunakan sistem ini untuk melakukan
pengidentifikasian mustahik zakat.
Tabel 4.4 Identifikasi Actor
No. Actor Deskripsi
1. User User adalah amil atau petugas zakat yang menggunakan sistem ini
untuk melakukan pengidentifikasian mustahik zakat.
2. Admin/Pakar Admin/Pakar adalah seseorang yang memiliki hak akses dan
memvaliditasi sistem.
70
UIN Syarif Hidayatullah Jakarta
4.2.1.1.3. Use Case Diagram
Admin/Pakar
User
Login
Daftar
Logout
Lihat Daftar User
Lihat Kriteria
Hapus Daftar User
Edit Kriteria
Tambah Kriteria
Hapus Kriteria
Lihat Asnaf
Edit Asnaf
Tambah Asnaf
Hapus Asnaf
Lihat Rules
Edit Rules
Tambah Rules
Hapus Rules
<<include>>
<<include>>
<<include>>
<<include>>
<<include>>
<<include>>
<<include>>
<<include>>
<<include>>
<<include>>
Lihat History User Detail History User<<include>>
Input Data Mustahik Lihat Hasil<<include>>
Lihat History Hasil Detail History Hasil<<include>>
Lihat Profil Edit Profil<<include>>
Gambar 4.2 Use Case Diagram
4.2.1.1.4. Use Case Scenario
Use case scenario merupakan penjelasan yang lebih terperinci
dari masing-masing use case. Use case scenario terdiri dari :
a. Use Case Name : nama Use Case
b. Actor yang terlibat
c. Description : deskripsi Use Case
d. Pre Condition : syarat penting bagi Use Case
memulai proses
e. Alternative Condition : kegiatan jika proses dalam Use Case
gagal
f. Action : proses yang dilakukan dalam
UselCase
71
UIN Syarif Hidayatullah Jakarta
g. Post Condition : output yang dihasilkan setelah
proses Use Case selesai dilakukan
1. Use Case Login
Tabel 4.5 Narasi Use Case Login
Use Case Name Login
Use Case Id
Actor User, Admin
Description Use case digunakan actor untuk masuk ke dalam sistem
Pre Condition Actor memilih mengisi field username dan password
Alternative Course Jika terdapat field yang belum terisi, maka akan muncul
peringatan untuk mengisi field tersebut, dan jika field
yang dimasukkan salah akan muncul peringatan bahwa
input yang dimasukkan salah
Typical Course of
Event
Actor Action System Response
Langkah 1 : Sistem
menampilkan halaman
utama sistem
Langkah 2 : Actor memilih
menu login dan memilih
submenu admin atau user
Langkah 3 : Sistem
menampilkan halaman
login
Langkah 4 : Actor mengisi
field username dan password
Langkah 5 : Actor menekan
tombol login
72
UIN Syarif Hidayatullah Jakarta
Langkah 6 : Sistem
mengecek data di
database
Langkah 7 : Sistem
menampilkan halaman
utama admin atau
halaman utama user
Post Condition Jika use case berhasil maka sistem akan ke halaman
utama admin atau halaman utama user
2. Use Case Daftar
Tabel 4.6 Narasi Use Case Daftar
Use Case Name Daftar
Use Case Id
Actor User
Description Use case digunakan actor untuk membuat akun agar
dapat mengakses sistem.
Pre Condition Actor mengklik create new account
Alternative Course Jika terdapat field yang belum terisi, maka akan muncul
peringatan untuk mengisi field tersebut
Typical Course of
Event
Actor Action System Response
Langkah 1 : Sistem
menampilkan halaman
utama sistem
73
UIN Syarif Hidayatullah Jakarta
Langkah 2 : Actor menekan
menu login dan memilih
submenu user
Langkah 3 : Sistem
menampilkan halaman
login
Langkah 4 : Actor mengklik
create new account
Langkah 5: Sistem
menampilkan halaman
register
Langkah 6 : Actor mengisi
field yang terdapat pada
halaman register
Langkah 7: Actor menekan
tombol register
Langkah 8 : Sistem
menyimpan data ke
database
Langkah 9: Sistem
masuk ke halaman utama
user
Post Condition Jika use case berhasil maka sistem akan ke halaman
utama user dan actor telah memiliki username dan
password untuk login ke sistem
74
UIN Syarif Hidayatullah Jakarta
3. Use Case Logout
Tabel 4.7 Narasi Use Case Logout
Use Case Name Logout
Use Case Id
Actor User, Admin
Description Use case digunakan agar actor dapat melakukan logout
Pre Condition Actor memilih menu logout
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1 : Actor memilih
menu logout
Lagkah 2: Sistem
menampilkan pesan
konfimasi logout
Langkah 3 : Actor menekan
tombol “Yes”
Langkah 4: Sistem
menampilkan halaman
utama sistem
Post Condition Jika use case berhasil maka actor berhasil keluar dari
sistem
4. Use Case Hapus Daftar User
Tabel 4.8 Narasi Use Case Hapus Daftar User
Use Case Name Hapus Daftar User
Use Case Id
Actor Admin
75
UIN Syarif Hidayatullah Jakarta
Description Use case digunakan actor untuk menghapus daftar user
Pre Condition Actor memilih menu kelola user
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu kelola user
Langkah 3 : Actor menekan
tombol delete
Langkah 2: Sistem
menampilkan halaman
kelola user
Langkah 4 : Sistem
menampilkan pesan
konfirmasi penghapusan
Langkah 5 : Actor menekan
tombol delete pada pesan
konfirmasi
Langkah 6 : Sistem
menghapus data dari
database
Langkah 7 : Sistem
kembali ke halaman
kelola user
Post Condition Jika use case berhasil maka actor dapat menghapus
daftar user
76
UIN Syarif Hidayatullah Jakarta
5. Use Case Edit Kriteria
Tabel 4.9 Narasi Use Case Edit Kriteria
Use Case Name Edit Kriteria
Use Case Id
Actor Admin
Description Use case digunakan actor untuk mengedit data kriteria
Pre Condition Actor memilih menu kelola kriteria dan asnaf
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu kelola kriteria dan
asnaf
Langkah 2: Actor memilih
submenu kriteria
Langkah 4 : Actor menekan
tombol edit
Langkah 3 : Sistem
menampilkan halaman
kriteria
Langkah 5 : Sistem
menampilkan halaman
edit kriteria
Langkah 6 : Actor
menginputkan data
Langkah 7 : Actor menekan
tombol update
77
UIN Syarif Hidayatullah Jakarta
Langkah 8 : Sistem
menyimpan data baru ke
database
Langkah 9 : Sistem
kembali ke halaman
kriteria
Post Condition Jika use case berhasil maka actor dapat mengedit data
kriteria
6. Use Case Tambah Kriteria
Tabel 4.10 Narasi Use Case Tambah Kriteria
Use Case Name Tambah Kriteria
Use Case Id
Actor Admin
Description Use case digunakan actor untuk menambahkan data
kriteria
Pre Condition Actor memilih menu kelola kriteria dan asnaf
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu kelola kriteria dan
asnaf
Langkah 2: Actor memilih
submenu kriteria
Langkah 3 : Sistem
menampilkan halaman
kriteria
78
UIN Syarif Hidayatullah Jakarta
Langkah 4 : Actor menekan
tombol add
Langkah 5 : Sistem
menampilkan halaman
tambah kriteria
Langkah 6 : Actor
menginputkan data
Langkah 7 : Actor menekan
tombol save
Langkah 8 : Sistem
menyimpan data baru ke
database
Langkah 9 : Sistem
kembali ke halaman
kriteria
Post Condition Jika use case berhasil maka actor dapat menambah data
kriteria
7. Use Case Hapus Kriteria
Tabel 4.11 Narasi Use Case Hapus Kriteria
Use Case Name Hapus Kriteria
Use Case Id
Actor Admin
Description Use case digunakan actor untuk menghapus data kriteria
Pre Condition Actor memilih menu kelola kriteria dan asnaf
Alternative Course -
79
UIN Syarif Hidayatullah Jakarta
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu kelola kriteria dan
asnaf
Langkah 2: Actor memilih
submenu kriteria
Langkah 4 : Actor menekan
tombol delete
Langkah 3 : Sistem
menampilkan halaman
kriteria
Langkah 5 : Sistem
menampilkan pesan
konfirmasi penghapusan
Langkah 6 : Actor menekan
tombol delete pada pesan
konfirmasi
Langkah 7 : Sistem
menghapus data dari
database
Langkah 8 : Sistem
kembali ke halaman
kriteria
Post Condition Jika use case berhasil maka actor dapat menghapus data
kriteria
80
UIN Syarif Hidayatullah Jakarta
8. Use Case Edit Asnaf
Tabel 4.12 Narasi Use Case Edit Asnaf
Use Case Name Edit Asnaf
Use Case Id
Actor Admin
Description Use case digunakan actor untuk mengedit data asnaf
Pre Condition Actor memilih menu kelola kriteria dan asnaf
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu kelola kriteria dan
asnaf
Langkah 2: Actor memilih
submenu asnaf
Langkah 4 : Actor menekan
tombol edit
Langkah 3 : Sistem
menampilkan halaman
asnaf
Langkah 5 : Sistem
menampilkan halaman
edit asnaf
Langkah 6 : Actor
menginputkan data
Langkah 7 : Actor menekan
tombol update
81
UIN Syarif Hidayatullah Jakarta
Langkah 8 : Sistem
menyimpan data baru ke
database
Langkah 9 : Sistem
kembali ke halaman
asnaf
Post Condition Jika use case berhasil maka actor dapat mengedit data
asnaf
9. Use Case Tambah Asnaf
Tabel 4.13 Narasi Use Case Tambah Asnaf
Use Case Name Tambah Asnaf
Use Case Id
Actor Admin
Description Use case digunakan actor untuk menambahkan data
asnaf
Pre Condition Actor memilih menu kelola kriteria dan asnaf
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu kelola kriteria dan
asnaf
Langkah 2: Actor memilih
submenu asnaf
Langkah 3 : Sistem
menampilkan halaman
asnaf
82
UIN Syarif Hidayatullah Jakarta
Langkah 4 : Actor menekan
tombol add
Langkah 5 : Sistem
menampilkan halaman
tambah asnaf
Langkah 6 : Actor
menginputkan data
Langkah 7 : Actor menekan
tombol save
Langkah 8 : Sistem
menyimpan data baru ke
database
Langkah 9 : Sistem
kembali ke halaman
asnaf
Post Condition Jika use case berhasil maka actor dapat menambah data
asnaf
10. Use Case Hapus Asnaf
Tabel 4.14 Narasi Use Case Hapus Asnaf
Use Case Name Hapus Asnaf
Use Case Id
Actor Admin
Description Use case digunakan actor untuk menghapus data asnaf
Pre Condition Actor memilih menu kelola kriteria dan asnaf
Alternative Course -
83
UIN Syarif Hidayatullah Jakarta
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu kelola kriteria dan
asnaf
Langkah 2: Actor memilih
submenu Asnaf
Langkah 4 : Actor menekan
tombol delete
Langkah 3 : Sistem
menampilkan halaman
asnaf
Langkah 5 : Sistem
menampilkan pesan
konfirmasi penghapusan
Langkah 6 : Actor menekan
tombol delete pada pesan
konfirmasi
Langkah 7 : Sistem
menghapus data dari
database
Langkah 8 : Sistem
kembali ke halaman
asnaf
Post Condition Jika use case berhasil maka actor dapat menghapus data
asnaf
84
UIN Syarif Hidayatullah Jakarta
11. Use Case Edit Rules
Tabel 4.15 Narasi Use Case Edit Rules
Use Case Name Edit Rules
Use Case Id
Actor Admin
Description Use case digunakan actor untuk mengedit data rules
Pre Condition Actor memilih menu kelola kriteria dan asnaf
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu kelola kriteria dan
asnaf
Langkah 2: Actor memilih
submenu rules
Langkah 4 : Actor menekan
tombol edit
Langkah 3 : Sistem
menampilkan halaman
rules
Langkah 5 : Sistem
menampilkan halaman
edit rules
Langkah 6 : Actor memilih
data
Langkah 7 : Actor menekan
tombol update
85
UIN Syarif Hidayatullah Jakarta
Langkah 8 : Sistem
menyimpan data baru ke
database
Langkah 9 : Sistem
kembali ke halaman
rules
Post Condition Jika use case berhasil maka actor dapat mengedit data
relasi
12. Use Case Tambah Rules
Tabel 4.16 Narasi Use Case Tambah Rules
Use Case Name Tambah Rules
Use Case Id
Actor Admin
Description Use case digunakan actor untuk menambahkan data
rules
Pre Condition Actor memilih menu kelola kriteria dan asnaf
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu kelola kriteria dan
asnaf
Langkah 2: Actor memilih
submenu rules
Langkah 3 : Sistem
menampilkan halaman
rules
86
UIN Syarif Hidayatullah Jakarta
Langkah 4 : Actor menekan
tombol add
Langkah 5 : Sistem
menampilkan halaman
tambah rules
Langkah 6 : Actor memilih
data
Langkah 7 : Actor menekan
tombol save
Langkah 8 : Sistem
menyimpan data baru ke
database
Langkah 9 : Sistem
kembali ke halaman
rules
Post Condition Jika use case berhasil maka actor dapat menambah data
rules
13. Use Case Hapus Rules
Tabel 4.17 Narasi Use Case Hapus Rules
Use Case Name Hapus Rules
Use Case Id
Actor Admin
Description Use case digunakan actor untuk menghapus data rules
Pre Condition Actor memilih menu kelola kriteria dan asnaf
Alternative Course -
87
UIN Syarif Hidayatullah Jakarta
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu kelola kriteria dan
asnaf
Langkah 2: Actor memilih
submenu rules
Langkah 4 : Actor menekan
tombol delete
Langkah 3 : Sistem
menampilkan halaman
rules
Langkah 5 : Sistem
menampilkan pesan
konfirmasi penghapusan
Langkah 6 : Actor menekan
tombol delete pada pesan
konfirmasi
Langkah 7 : Sistem
menghapus data dari
database
Langkah 8 : Sistem
kembali ke halaman
rules
Post Condition Jika use case berhasil maka actor dapat menghapus data
rules
88
UIN Syarif Hidayatullah Jakarta
14. Use Case Detail History User
Tabel 4.18 Narasi Use Case Detail History User
Use Case Name Detail History User
Use Case Id
Actor Admin
Description Use case digunakan actor untuk melihat secara lengkap
dari history user
Pre Condition Actor memilih menu history user
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu history user
Langkah 2: Actor menekan
tombol detail
Langkah 4 : Actor menekan
tombol back
Langkah 3 : Sistem
menampilkan halaman
detail history user
Langkah 5 : Sistem
kembali ke halaman
history user
Post Condition Jika use case berhasil maka actor dapat melihat detail
history user
89
UIN Syarif Hidayatullah Jakarta
15. Use Case Input Mustahik
Tabel 4.19 Narasi Use Case Input Mustahik
Use Case Name Input Data Mustahik
Use Case Id
Actor User
Description Use case digunakan actor untuk melakukan
pengidentifikasian
Pre Condition Actor memilih menu identifikasi mustahik
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu identifikasi mustahik
Langkah 2: Actor mengisi
field, dan memilih kriteria
Langkah 4 : Actor menekan
tombol finish
Langkah 3 : Sistem
memproses
pengidentifikasian dan
menampilkan hasil
identifikasi
Langkah 5 : Sistem
menyimpan data tersebut
dan dapat dilihat kembali
di menu history
90
UIN Syarif Hidayatullah Jakarta
Langkah 6 : Sistem
kembali ke halaman
identifikasi mustahik
Post Condition Jika use case berhasil maka actor dapat melakukan
pengidentifikasian mustahik
16. Use Case Detail History Hasil
Tabel 4.20 Narasi Use Case Detail History Hasil
Use Case Name Detail History Hasil
Use Case Id
Actor User
Description Use case digunakan actor untuk melihat secara lengkap
dari history hasil pengidentifikasian mustahik yang telah
dilakukan
Pre Condition Actor memilih menu history
Alternative Course -
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu history
Langkah 2: Actor menekan
tombol detail
Langkah 4 : Actor menekan
tombol back
Langkah 3 : Sistem
menampilkan halaman
detail history hasil
Langkah 5 : Sistem
kembali ke halaman
history
91
UIN Syarif Hidayatullah Jakarta
Post Condition Jika use case berhasil maka actor dapat melihat detail
history hasil
17. Use Case Edit Profil
Tabel 4.21 Narasi Use Case Edit Profil
Use Case Name Edit Profil
Use Case Id
Actor Admin, User
Description Use case digunakan actor untuk mengedit data pada
profil
Pre Condition Actor memilih menu profil
Alternative Course Jika ada field yang kosong, maka akan muncul pesan
peringatan untuk mengisi field tersebut
Typical Course of
Event
Actor Action System Response
Langkah 1: Actor memilih
menu profil
Langkah 2: Actor menekan
icon edit
Langkah 4 : Actor
menginputkan data yang
perlu diubah
Langkah 3 : Sistem
menampilkan halaman
edit profil
Langkah 5 : Actor menekan
tombol update
92
UIN Syarif Hidayatullah Jakarta
Langkah 6 : Sistem
menyimpan data baru ke
database
Langkah 7 : Sistem
kembali ke halaman
profil
Post Condition Jika use case berhasil maka actor dapat mengedit data
profil
93
UIN Syarif Hidayatullah Jakarta
4.2.1.1.5. Class Diagram
User
-id_user-nama-ttl-alamat-nama_lembaga-username-password-created_at-updatedd_at
+create()+read()+edit()+delete()
Identifikasi
-id_identifikasi-no_kk-nama-ttl-jenis_kelamin-kode_asnaf-nilai_cf-id_user-tgl_identifikasi
+create()+read()
Admin
-id_admin-username-password-nama-ttl-alamat
+edit()+delete()
Asnaf
-id_asnaf-kode_asnaf-asnaf-id_admin-created_at-updated_at
+create()+edit()+delete()
Rules
-id-kode_rule-id_asnaf
+create()+edit()+delete()
Kriteria
-id_kriteria-kode_kriteria-kriteria-id_admin-created_at-updated_at
+create()+edit()+delete()
1
1.n
1
1.n
1
1.n
1
1
1
1.n
1.n
1
1 1.n
Relasi Identifikasi
-id-kode_identifikasi-kode_kriteria
+create()+read()
Rules Kriteria
-id-id_rules-id_kriteria
+create()+read()+delete()
1
1.n
1.n
1.n
Gambar 4.3 Class Diagram pada Sistem
Pada gambar 4.3 menjelaskan bahwa admin memiliki hak akses
untuk mengelola kriteria, asnaf, dan rules. Dimana ketiga data
tersebut akan berhubungan dengan proses pengidentifikasian yang
akan dilakukan oleh user.
Class diagram tersebut didapatkan dengan melihat dari use case
diagram yang telah dibuat sebelumnya, kemudian untuk nama setiap
kelasnya diambil dari kata benda, sesuatu yang menunjukkan orang,
serta proses yang terdapat dalam use case diagram.
94
UIN Syarif Hidayatullah Jakarta
4.2.1.1.6. Sequence Diagram
1. Sequence Diagram Login
Admin / User Tampilan Aplikasi Database
1. Tampilan Halaman Utama Sistem
2. Pilih Menu Login
5. Tekan Tombol Login
5. Cek Data
6. Cek Data
3. Tampilan Halaman Login
4. Input Username dan Password
7. Tampilan Halaman Utama Admin / User
Gambar 4.4 Sequence Diagram Login
Pada gambar 4.4 menjelaskan pada saat admin dan user ingin
melakukan login. Admin dan user harus mengisi username dan
password pada field yang sudah disediakan. Selanjutnya sistem
akan melakukan pengecekan data pada database. Jika data yang
digunakan untuk login sudah terdaftar maka sistem akan
menampilkan halaman utama.
95
UIN Syarif Hidayatullah Jakarta
2. Sequence Diagram Daftar
User Tampilan Aplikasi Database
1. Tampilan Halaman Utama Sistem
2. Pilih Menu Login
8. Simpan Data
3. Tampilan Halaman Login
4. Klik Create New Account
11. Tampilan Halaman Utama User
5. Tampilan Halaman Register
6. Input Data Diri
7. Tekan Tombol Register
10. Kirim Pesan (Proses Regiter Telah Berhasil)
9. Simpan Data
Gambar 4.5 Sequence Diagram Daftar
Pada gambar 4.5 menjelaskan pada saat user ingin melakukan
pendaftaran. User dapat melakukan pendaftaran dengan memilih
menu login, dan mengklik create new account pada halaman
login. Kemudian user harus mengisi field-field mengenai data diri
yang telah disediakan. Setelah itu sistem akan menyimpan data
tersebut ke dalam database dan akan mengirim pesan bahwa
proses register telah berhasil. Selanjutnya sistem akan
menampilkan halaman utama user.
96
UIN Syarif Hidayatullah Jakarta
3. Sequence Diagram Logout
Admin / User Tampilan Aplikasi Database
1. Pilih Menu Logout
2. Tampilan Pesan Konfirmasi Logout
3. Tekan Tombol "Yes"
4. Tampilan Halaman Utama Sistem
Gambar 4.6 Sequence Diagram Logout
Pada gambar 4.6 menjelaskan pada saat admin dan user ingin
melakukan logout. Admin dan user dapat melakukan logout
dengan memilih menu logout, kemudian menekan tombol yes
pada pesan konfirmasi logout, dan sistem akan menampilkan
halaman awal sistem.
4. Sequence Diagram Hapus Daftar User
Admin Tampilan Aplikasi Database
1. Pilih Menu Kelola User
6. Hapus Data
2. Tampilan Halaman Kelola User
3. Tekan Tombol Delete
4. Tampilan Pesan Konfirmasi Penghapusan
5. Tekan Tombol Delete Pada Pesan Konfirmasi
7. Hapus Data
8. Tampilan Halaman Kelola User
Gambar 4.7 Sequence Diagram Hapus Daftar User
97
UIN Syarif Hidayatullah Jakarta
Pada gambar 4.7 menjelaskan pada saat admin akan
melakukan penghapusan daftar user. Admin dapat melakukannya
dengan cara memilih menu kelola user, dan menekan tombol
delete pada user yang ingin dihapus. Kemudian akan muncul
pesan konfirmasi penghapusan, dan admin dapat menekan tombol
delete pada pesan tersebut. Selanjutnya sistem akan melakukan
penghapusan data dari database.
5. Sequence Diagram Edit Kriteria
Admin Tampilan Aplikasi Database
1. Pilih Menu Kelola Kriteria dan Asnaf
8. Simpan Data
2. Pilih Submenu Kriteria
3. Tampilan Halaman Kriteria
4. Tekan Tombol Edit
9. Simpan Data
10. Tampilan Halaman Kriteria
5. Tampilan Halaman Edit Kriteria
6. Input Data Kriteria
7. Tekan Tombol Update
Gambar 4.8 Sequence Diagram Edit Kriteria
Pada gambar 4.8 menjelaskan pada saat admin akan
melakukan pengeditan terhadap kriteria. Admin dapat
melakukannya dengan cara memilih menu kelola kriteria dan
asnaf. Kemudian pilih submenu kriteria dan tekan tombol edit.
Setelah melakukan penginputan data, admin dapat menekan
98
UIN Syarif Hidayatullah Jakarta
tombol update. Selanjutnya sistem akan menyimpan data baru ke
dalam database.
6. Sequence Diagram Tambah Kriteria
Admin Tampilan Aplikasi Database
1. Pilih Menu Kelola Kriteria dan Asnaf
8. Simpan Data
2. Pilih Submenu Kriteria
3. Tampilan Halaman Kriteria
4. Tekan Tombol Add
9. Simpan Data
10. Tampilan Halaman Kriteria
5. Tampilan Halaman Tambah Kriteria
6. Input Data Kriteria
7. Tekan Tombol Save
Gambar 4.9 Sequence Diagram Tambah Kriteria
Pada gambar 4.9 menjelaskan pada saat admin akan
melakukan penambahan terhadap kriteria. Admin dapat
melakukannya dengan cara memilih menu kelola kriteria dan
asnaf. Kemudian pilih submenu kriteria dan tekan tombol add.
Setelah melakukan penginputan data, admin dapat menekan
tombol save. Selanjutnya sistem akan menyimpan data baru ke
dalam database.
99
UIN Syarif Hidayatullah Jakarta
7. Sequence Diagram Hapus Kriteria
Admin Tampilan Aplikasi Database
1. Pilih Menu Kelola Kriteria dan Asnaf
7. Hapus Data
2. Pilih Submenu Kriteria
3. Tampilan Halaman Kriteria
4. Tekan Tombol Delete
8. Hapus Data
9. Tampilan Halaman Kriteria
5. Tampilan Pesan Konfirmasi Penghapusan
6. Tekan Tombol DeletePada Pesan Konfirmasi
Gambar 4.10 Sequence Diagram Hapus Kriteria
Pada gambar 4.10 menjelaskan pada saat admin akan
melakukan hapus kriteria. Admin dapat melakukannya dengan
cara memilih menu kelola kriteria dan asnaf. Kemudian pilih
submenu kriteria dan tekan tombol delete pada salah satu kriteria
yang ingin dihapus. Setelah itu maka akan muncul pesan
konfirmasi penghapusan, dan admin dapat menekan tombol
delete pada pesan tersebut. Selanjutnya sistem akan menghapus
data tersebut dari database.
100
UIN Syarif Hidayatullah Jakarta
8. Sequence Diagram Edit Asnaf
Admin Tampilan Aplikasi Database
1. Pilih Menu Kelola Kriteria dan Asnaf
8. Simpan Data
2. Pilih Submenu Asnaf
3. Tampilan Halaman Asnaf
4. Tekan Tombol Edit
9. Simpan Data
10. Tampilan Halaman Asnaf
5. Tampilan Halaman Edit Asnaf
6. Input Data Asnaf
7. Tekan Tombol Update
Gambar 4.11 Sequence Diagram Edit Asnaf
Pada gambar 4.11 menjelaskan pada saat admin akan
melakukan pengeditan terhadap asnaf. Admin dapat
melakukannya dengan cara memilih menu kelola kriteria dan
asnaf. Kemudian pilih submenu asnaf dan tekan tombol edit.
Setelah melakukan penginputan data, admin dapat menekan
tombol update. Selanjutnya sistem akan menyimpan data baru ke
dalam database.
101
UIN Syarif Hidayatullah Jakarta
9. Sequence Diagram Tambah Asnaf
Admin Tampilan Aplikasi Database
1. Pilih Menu Kelola Kriteria dan Asnaf
8. Simpan Data
2. Pilih Submenu Asnaf
3. Tampilan Halaman Asnaf
4. Tekan Tombol Add
9. Simpan Data
10. Tampilan Halaman Asnaf
5. Tampilan Halaman Tambah Asnaf
6. Input Data Asnaf
7. Tekan Tombol Save
Gambar 4.12 Sequence Diagram Tambah Asnaf
Pada gambar 4.12 menjelaskan pada saat admin akan
melakukan penambahan terhadap asnaf. Admin dapat
melakukannya dengan cara memilih menu kelola kriteria dan
asnaf. Kemudian pilih submenu asnaf dan tekan tombol add.
Setelah melakukan penginputan data, admin dapat menekan
tombol save. Selanjutnya sistem akan menyimpan data baru ke
dalam database.
102
UIN Syarif Hidayatullah Jakarta
10. Sequence Diagram Hapus Asnaf
Admin Tampilan Aplikasi Database
1. Pilih Menu Kelola Kriteria dan Asnaf
7. Hapus Data
2. Pilih Submenu Asnaf
3. Tampilan Halaman Asnaf
4. Tekan Tombol Delete
8. Hapus Data
9. Tampilan Halaman Asnaf
5. Tampilan Pesan Konfirmasi Penghapusan
6. Tekan Tombol DeletePada Pesan Konfirmasi
Gambar 4.13 Sequence Diagram Hapus Asnaf
Pada gambar 4.13 menjelaskan pada saat admin akan
melakukan hapus asnaf. Admin dapat melakukannya dengan
cara memilih menu kelola kriteria dan asnaf. Kemudian pilih
submenu asnaf dan tekan tombol delete pada salah satu asnaf
yang ingin dihapus. Setelah itu maka akan muncul pesan
konfirmasi penghapusan, dan admin dapat menekan tombol
delete pada pesan tersebut. Selanjutnya sistem akan menghapus
data tersebut dari database.
103
UIN Syarif Hidayatullah Jakarta
11. Sequence Diagram Edit Rules
Admin Tampilan Aplikasi Database
1. Pilih Menu Kelola Kriteria dan Asnaf
8. Simpan Data
2. Pilih Submenu Rules
3. Tampilan Halaman Rules
4. Tekan Tombol Edit
9. Simpan Data
10. Tampilan Halaman Rules
5. Tampilan Halaman Edit Rules
6. Pilih Data antara Kriteria dan Asnaf
7. Tekan Tombol Update
Gambar 4.14 Sequence Diagram Edit Rules
Pada gambar 4.14 menjelaskan pada saat admin akan
melakukan pengeditan terhadap rules. Admin dapat
melakukannya dengan cara memilih menu kelola kriteria dan
asnaf. Kemudian pilih submenu rules dan tekan tombol edit.
Setelah melakukan pemilihan data, admin dapat menekan
tombol update. Selanjutnya sistem akan menyimpan data baru
ke dalam database.
104
UIN Syarif Hidayatullah Jakarta
12. Sequence Diagram Tambah Rules
Admin Tampilan Aplikasi Database
1. Pilih Menu Kelola Kriteria dan Asnaf
8. Simpan Data
2. Pilih Submenu Rules
3. Tampilan Halaman Rules
4. Tekan Tombol Add
9. Simpan Data
10. Tampilan Halaman Rules
5. Tampilan Halaman Tambah Rules
6. Pilih Data antara Kriteria dan Asnaf
7. Tekan Tombol Save
Gambar 4.15 Sequence Diagram Tambah Rules
Pada gambar 4.15 menjelaskan pada saat admin akan
melakukan penambahan terhadap rules. Admin dapat
melakukannya dengan cara memilih menu kelola kriteria dan
asnaf. Kemudian pilih submenu rules dan tekan tombol add.
Setelah melakukan pemilihan data, admin dapat menekan
tombol save. Selanjutnya sistem akan menyimpan data baru ke
dalam database.
105
UIN Syarif Hidayatullah Jakarta
13. Sequence Diagram Hapus Rules
Admin Tampilan Aplikasi Database
1. Pilih Menu Kelola Kriteria dan Asnaf
7. Hapus Data
2. Pilih Submenu Rules
3. Tampilan Halaman Rules
4. Tekan Tombol Delete
8. Hapus Data
9. Tampilan Halaman Rules
5. Tampilan Pesan Konfirmasi Penghapusan
6. Tekan Tombol DeletePada Pesan Konfirmasi
Gambar 4.16 Sequence Diagram Hapus Rules
Pada gambar 4.16 menjelaskan pada saat admin akan
melakukan hapus rules. Admin dapat melakukannya dengan
cara memilih menu kelola kriteria dan asnaf. Kemudian pilih
submenu rules dan tekan tombol delete pada salah satu rules
yang ingin dihapus. Setelah itu akan muncul pesan konfirmasi
penghapusan, dan admin dapat menekan tombol delete pada
pesan tersebut. Selanjutnya sistem akan menghapus data
tersebut dari database.
106
UIN Syarif Hidayatullah Jakarta
14. Sequence Diagram Detail History User
Admin Tampilan Aplikasi Database
1. Pilih Menu History User
2. Tekan Tombol Detail
3. Tampilan Halaman Detail History User
4. Tekan Tombol Back
5. Tampilan Halaman History User
Gambar 4.17 Sequence Diagram Detail History User
Pada gambar 4.17 menjelaskan pada saat admin akan
melakukan melihat detail history user. Admin dapat
melakukannya dengan cara memilih menu history user.
Kemudian menekan tombol detail pada salah satu history yang
ingin dilihat. Selanjutnya sistem akan menampilkan halaman
detail history user.
107
UIN Syarif Hidayatullah Jakarta
15. Sequence Diagram Input Mustahik
User Tampilan Aplikasi Database
1. Pilih Menu Identifikasi Mustahik2. Input Data Mustahikdan Pilih dari Kriteria
yang disediakan
4. Tampilan Hasil Identifikasi
3. Proses Pengidentifikasian
5. Simpan Hasil Pengidentifikasian
6. Simpan Data
7. Tampilan Halaman Identifikasi Mustahik
Gambar 4.18 Sequence Diagram Input Mustahik
Pada gambar 4.18 menjelaskan pada saat user akan
melakukan pengidentifikasian mustahik. User dapat
melakukannya dengan cara memilih menu identifikasi
mustahik. Kemudian user dapat menginputkan data diri
mustahik dan memilih kriteria yang sesuai dengan mustahik
yang telah disediakan sistem. Selanjutnya sistem akan
melakukan proses perhitungan menggunakan metode certainty
factor, dan hasilnya pun akan ditampilkan.
108
UIN Syarif Hidayatullah Jakarta
16. Sequence Diagram Detail History Hasil
User Tampilan Aplikasi Database
1. Pilih Menu History
2. Tekan Tombol Detail
3. Tampilan Halaman Detail History Hasil
4. Tekan Tombol Back
5. Tampilan Halaman History
Gambar 4.19 Sequence Diagram Detail History Hasil
Pada gambar 4.19 menjelaskan pada saat user akan melihat
detail history hasil. User dapat melakukannya dengan cara
memilih menu history. Kemudian menekan tombol detail pada
salah satu history yang ingin dilihat. Selanjutnya sistem akan
menampilkan halaman detail history hasil.
17. Sequence Diagram Edit Profil
Admin / User Tampilan Aplikasi Database
1. Pilih Menu Profil
6. Simpan Data
2. Tekan Icon Edit
3. Tampilan Halaman Edit Profil
7. Simpan Data
8. Tampilan Halaman Profil
4. Input Data yang Perludiubah
5. Tekan Tombol Update
Gambar 4.20 Sequence Diagram Edit Profil
109
UIN Syarif Hidayatullah Jakarta
Pada gambar 4.20 menjelaskan pada saat admin dan user
akan melakukan pengeditan profil. Admin dan user dapat
melakukannya dengan cara memilih menu profil dan menekan
icon edit. Kemudian setelah melakukan penginputan data yang
perlu diubah, admin dan user dapat menekan tombol update.
Selanjutnya sistem akan menyimpan data baru tersebut ke dalam
database.
4.2.1.1.7. Activity Diagram
1. Activity Diagram Login
Mulai
Halaman Utama Sistem
Memilih Menu Login
Menampilkan Halaman Login
Menginput Username dan Password
Menekan Tombol Login
Pengecekan Data
Menampilkan Halaman Utama Admin atau
Halaman Utama User
Berhasil
Gagal
Selesai Gambar 4.21 Activity Diagram Login
Pada gambar 4.21 merupakan activity diagram login yang
harus dilakukan admin dan user untuk dapat mengakses sistem
pakar ini. Langkah yang harus dilakukan yaitu mengisi field
username dan password. Kemudian admin dan user menekan
tombol login, apabila username dan password sesuai, maka
sistem akan menampilkan halaman utama user dan admin.
110
UIN Syarif Hidayatullah Jakarta
2. Activity Diagram Daftar
Mulai
Halaman Utama Sistem
Memilih Menu Login
Menampilkan Halaman Login
Mengklik Create New Account
Menampilkan Halaman Register
Menginput Data Pribadi
Menampilkan Halaman Utama User
Selesai
Menekan Tombol Register
Menyimpan Data Ke Database
Menampilkan Pesan Proses Register Telah Berhasil
Berhasil
Gagal
Gambar 4.22 Activity Diagram Daftar
Pada gambar 4.22 merupakan activity diagram daftar yang
harus dilakukan oleh user untuk dapat mengakses sistem pakar
ini. Langkah yang harus dilakukan yaitu memilih menu login,
kemudian mengklik create new account. Maka akan muncul
halaman register. Setelah tampil halaman register, kemudian user
harus mengisi beberapa field, selanjutnya user menekan tombol
register, dan sistem akan menginput data user ke database.
111
UIN Syarif Hidayatullah Jakarta
3. Activity Diagram Logout
Mulai
Memilih Menu Logout
Menampilkan Pesan Konfirmasi Logout
Menekan Tombol "Yes"
Menampilkan Halaman Utama Sistem
Selesai Gambar 4.23 Activity Diagram Logout
Pada gambar 4.23 merupakan activity diagram logout agar
admin dan user dapat keluar dari sistem ini. Langkah yang harus
dilakukan yaitu memilih menu logout dan menekan tombol yes
pada pesan konfirmasi logout.
4. Activity Diagram Hapus Daftar User
Mulai
Memilih Menu Kelola User
Menampilkan Halaman Kelola User
Menekan Tombol Delete
Menampilkan Pesan Konfirmasi Penghapusan
Selesai
Menghapus Data dari Database
Menampilkan Halaman Kelola User
Delete
Cancel
Gambar 4.24 Activity Diagram Hapus Daftar User
112
UIN Syarif Hidayatullah Jakarta
Pada gambar 4.24 merupakan activity diagram hapus daftar
user yang bisa dilakukan oleh admin. Langkah yang dilakukan
yaitu memilih menu kelola user. Kemudian admin menekan
tombol delete, dan akan muncul pesan konfirmasi penghapusan.
Apabila admin menekan tombol delete, maka data user tersebut
akan terhapus dari database.
5. Activity Diagram Edit Kriteria
Mulai
Memilih Menu Kelola Kriteria dan Asnaf
Memilih Submenu Kriteria
Menampilkan Halaman Kriteria
Menekan Tombol Edit
Selesai
Menampilkan Halaman Edit Kriteria
Menginput Data
Menyimpan Data Baru Ke Database
Menampilkan Halaman Kriteria
Update
Cancel
Gambar 4.25 Activity Diagram Edit Kriteria
Pada gambar 4.25 merupakan activity diagram edit kriteria.
Langkah yang dilakukan yaitu memilih menu kelola kriteria dan
asnaf. Halaman kelola kriteria dan asnaf terdiri dari 3 submenu,
yaitu kriteria, asnaf, dan relasi. Kemudian admin memilih menu
kriteria dan menekan tombol edit, maka admin pun dapat
menginputkan data baru, yang kemudian akan disimpan di dalam
database.
113
UIN Syarif Hidayatullah Jakarta
6. Activity Diagram Tambah Kriteria
Mulai
Memilih Menu Kelola Kriteria dan Asnaf
Memilih Submenu Kriteria
Menampilkan Halaman Kriteria
Menekan Tombol Add
Selesai
Menampilkan Halaman Tambah Kriteria
Menginput Data
Menyimpan Data Baru Ke Database
Menampilkan Halaman Kriteria
Save
Cancel
Gambar 4.26 Activity Diagram Tambah Kriteria
Pada gambar 4.26 merupakan activity diagram tambah
kriteria. Langkah yang dilakukan yaitu memilih menu kelola
kriteria dan asnaf. Halaman kelola kriteria dan asnaf terdiri dari 3
submenu, yaitu kriteria, asnaf, dan relasi. Kemudian admin
memilih menu kriteria dan menekan tombol add, maka admin pun
dapat menambahkan data baru, yang kemudian akan disimpan di
dalam database.
114
UIN Syarif Hidayatullah Jakarta
7. Activity Diagram Hapus Kriteria
Mulai
Memilih Menu Kelola Kriteria dan Asnaf
Memilih Submenu Kriteria
Menampilkan Halaman Kriteria
Menekan Tombol Delete
Selesai
Menampilkan Pesan Konfirmasi Penghapusan
Menghapus Data Dari Database
Menampilkan Halaman Kriteria
Delete
Cancel
Gambar 4.27 Activity Diagram Hapus Kriteria
Pada gambar 4.27 merupakan activity diagram hapus kriteria.
Langkah yang dilakukan yaitu memilih menu kelola kriteria dan
asnaf. Halaman kelola kriteria dan asnaf terdiri dari 3 submenu,
yaitu kriteria, asnaf, dan relasi. Kemudian admin memilih menu
kriteria dan menekan tombol delete, maka akan muncul pesan
konfirmasi penghapusan, selanjutnya menekan tombol yes dan
data akan terhapus dari database.
115
UIN Syarif Hidayatullah Jakarta
8. Activity Diagram Edit Asnaf
Mulai
Memilih Menu Kelola Kriteria dan Asnaf
Memilih Submenu Asnaf
Menampilkan Halaman Asnaf
Menekan Tombol Edit
Selesai
Menampilkan Halaman Edit Asnaf
Menginput Data
Menyimpan Data Baru Ke Database
Menampilkan Halaman Asnaf
Update
Cancel
Gambar 4.28 Activity Diagram Edit Asnaf
Pada gambar 4.28 merupakan activity diagram edit asnaf.
Langkah yang dilakukan yaitu memilih menu kelola kriteria dan
asnaf. Halaman kelola kriteria dan asnaf terdiri dari 3 submenu,
yaitu kriteria, asnaf, dan relasi. Kemudian admin memilih menu
asnaf dan menekan tombol edit, maka admin pun dapat
menginputkan data baru, yang kemudian akan disimpan di dalam
database.
116
UIN Syarif Hidayatullah Jakarta
9. Activity Diagram Tambah Asnaf
Mulai
Memilih Menu Kelola Kriteria dan Asnaf
Memilih Submenu Asnaf
Menampilkan Halaman Asnaf
Menekan Tombol Add
Selesai
Menampilkan Halaman Tambah Asnaf
Menginput Data
Menyimpan Data Baru Ke Database
Menampilkan Halaman Asnaf
Save
Cancel
Gambar 4.29 Activity Diagram Tambah Asnaf
Pada gambar 4.29 merupakan activity diagram tambah asnaf.
Langkah yang dilakukan yaitu memilih menu kelola kriteria dan
asnaf. Halaman kelola kriteria dan asnaf terdiri dari 3 submenu,
yaitu kriteria, asnaf, dan relasi. Kemudian admin memilih menu
asnaf dan menekan tombol add, maka admin pun dapat
menambahkan data baru, yang kemudian akan disimpan di dalam
database.
117
UIN Syarif Hidayatullah Jakarta
10. Activity Diagram Hapus Asnaf
Mulai
Memilih Menu Kelola Kriteria dan Asnaf
Memilih Submenu Asnaf
Menampilkan Halaman Asnaf
Menekan Tombol Delete
Selesai
Menampilkan Pesan Konfirmasi Penghapusan
Menghapus Data Dari Database
Menampilkan Halaman Asnaf
Delete
Cancel
Gambar 4.30 Activity Diagram Hapus Asnaf
Pada gambar 4.30 merupakan activity diagram hapus asnaf.
Langkah yang dilakukan yaitu memilih menu kelola kriteria dan
asnaf. Halaman kelola kriteria dan asnaf terdiri dari 3 submenu,
yaitu kriteria, asnaf, dan relasi. Kemudian admin memilih menu
asnaf dan menekan tombol delete, maka akan muncul pesan
konfirmasi penghapusan, selanjutnya menekan tombol yes, dan
data akan terhapus dari database.
118
UIN Syarif Hidayatullah Jakarta
11. Activity Diagram Edit Rules
Mulai
Memilih Menu Kelola Kriteria dan Asnaf
Memilih Submenu Rules
Menampilkan Halaman Rules
Menekan Tombol Edit
Selesai
Menampilkan Halaman Edit Rules
Memilih Data
Menyimpan Data Baru Ke Database
Menampilkan Halaman Rules
Update
Cancel
Gambar 4.31 Activity Diagram Edit Rules
Pada gambar 4.31 merupakan activity diagram edit rules.
Langkah yang dilakukan yaitu memilih menu kelola kriteria dan
asnaf. Halaman kelola kriteria dan asnaf terdiri dari 3 submenu,
yaitu kriteria, asnaf, dan rules. Kemudian admin memilih menu
rules dan menekan tombol edit, maka admin pun dapat
menginputkan data baru, yang kemudian akan disimpan di
dalam database.
119
UIN Syarif Hidayatullah Jakarta
12. Activity Diagram Tambah Rules
Mulai
Memilih Menu Kelola Kriteria dan Asnaf
Memilih Submenu Rules
Menampilkan Halaman Rules
Menekan Tombol Add
Selesai
Menampilkan Halaman Tambah Rules
Memilih Data
Menyimpan Data Baru Ke Database
Menampilkan Halaman Rules
Save
Cancel
Gambar 4.32 Activity Diagram Tambah Rules
Pada gambar 4.32 merupakan activity diagram tambah rules.
Langkah yang dilakukan yaitu memilih menu kelola kriteria dan
asnaf. Halaman kelola kriteria dan asnaf terdiri dari 3 submenu,
yaitu kriteria, asnaf, dan rules. Kemudian admin memilih menu
rules dan menekan tombol add, maka admin pun dapat
menambahkan data baru, yang kemudian akan disimpan di dalam
database.
120
UIN Syarif Hidayatullah Jakarta
13. Activity Diagram Hapus Rules
Mulai
Memilih Menu Kelola Kriteria dan Asnaf
Memilih Submenu Rules
Menampilkan Halaman Rules
Menekan Tombol Delete
Selesai
Menampilkan Pesan Konfirmasi Penghapusan
Menghapus Data Dari Database
Menampilkan Halaman Rules
Delete
Cancel
Gambar 4.33 Activity Diagram Hapus Rules
Pada gambar 4.33 merupakan activity diagram hapus rules.
Langkah yang dilakukan yaitu memilih menu kelola kriteria dan
asnaf. Halaman kelola kriteria dan asnaf terdiri dari 3 submenu,
yaitu kriteria, asnaf, dan rules. Kemudian admin memilih menu
rules dan menekan tombol delete, maka akan muncul pesan
konfirmasi penghapusan, selanjutnya menekan tombol yes, dan
data akan terhapus dari database.
121
UIN Syarif Hidayatullah Jakarta
14. Activity Diagram Detail History User
Mulai
Memilih Menu History User
Menekan Tombol Detail
Menampilkan Halaman Detail History User
Menekan Tombol Back
Selesai
Menampilkan Halaman History User
Gambar 4.34 Activity Diagram Detail History User
Pada gambar 4.34 merupakan activity diagram detail history
user. Langkah yang dilakukan yaitu memilih menu history user.
Kemudian admin menekan tombol detail, maka akan muncul
halaman detail history user.
15. Activity Diagram Input Mustahik
Mulai
Memilih Menu Identifikasi Mustahik
Menginput Data Mustahik dan Memilih Kriteria
Memproses Pengidentifikasian dan Menampilkan Hasil Identifikasi
Menyimpan Hasil Identifikasi Ke Database
Selesai
Menampilkan Halaman Identifikasi Mustahik
Gambar 4.35 Activity Diagram Input Mustahik
122
UIN Syarif Hidayatullah Jakarta
Pada gambar 4.35 merupakan activity diagram input
mustahik. Langkah yang dilakukan yaitu memilih menu
identifikasi mustahik. Kemudian user menginputkan data
mustahik dan memilih kriteria. Selanjutnya akan muncul hasil
pengidentifikasian dan data tersebut akan tersimpan di dalam
database.
16. Activity Diagram Detail History Hasil
Mulai
Memilih Menu History
Menekan Tombol Detail
Menampilkan Halaman Detail History Hasil
Menekan Tombol Back
Selesai
Menampilkan Halaman History
Gambar 4.36 Activity Diagram Detail History Hasil
Pada gambar 4.36 merupakan activity diagram detail history
hasil. Langkah yang dilakukan yaitu memilih menu history.
Kemudian user menekan tombol detail, maka akan muncul
halaman detail history hasil.
123
UIN Syarif Hidayatullah Jakarta
17. Activity Diagram Edit Profil
Mulai
Memilih Menu Profil
Menekan Icon Edit
Menampilkan Halaman Edit Profil
Menginput Data
Selesai
Menyimpan Data Baru Ke Database
Menampilkan Halaman Profil
Update
Cancel
Gambar 4.37 Activity Diagram Edit Profil
Pada gambar 4.37 merupakan activity diagram edit profil.
Langkah yang dilakukan yaitu memilih menu profil. Kemudian
admin dan user menekan icon edit, maka admin dan user pun
dapat menginputkan perubahan yang diperlukan pada profil.
Setelah itu menekan tombol update, maka data baru akan
tersimpan di dalam database.
4.2.1.2. Tahap Perancangan Database
1. Tabel Admin
Database name : mustahik
Table name : admin
Primary Key : id_admin
Foreign Key : -
124
UIN Syarif Hidayatullah Jakarta
Tabel 4.22 Tabel Admin
Nama Field Type Data Ukuran Keterangan
id_admin int 3 Nomor Id Admin
username varchar 100 Username Admin
password varchar 255 Password Admin
nama varchar 100 Nama Admin
ttl date - Tanggal Lahir Admin
alamat text - Alamat Admin
2. Tabel User
Database name : mustahik
Table name : user
Primary Key : id_user
Foreign Key : -
Tabel 4.23 Tabel User
Nama Field Type Data Ukuran Keterangan
id_user int 3 Nomor Id User
nama varchar 200 Nama User
ttl datetime - Tanggal Lahir User
alamat text - Alamat User
nama_lembaga varchar 150 Nama Lembaga dari User
username varchar 100 Username User
password varchar 255 Password User
created_at datetime - Tanggal akun dibuat
updated_at datetime - Tanggal akun di update
3. Tabel Asnaf
Database name : mustahik
Table name : asnaf
Primary Key : id_asnaf
Foreign Key : -
125
UIN Syarif Hidayatullah Jakarta
Tabel 4.24 Tabel Asnaf
Nama Field Type Data Ukuran Keterangan
id_asnaf int 3 Nomor Id Asnaf
kode_asnaf varchar 10 Kode Asnaf
asnaf varchar 100 Keterangan Asnaf
id_admin int 3 Nomor Id Admin
created_at datetime - Tanggal asnaf dibuat
updated_at datetime - Tanggal asnaf di update
4. Tabel Kriteria
Database name : mustahik
Table name : kriteria
Primary Key : id_kriteria
Foreign Key : -
Tabel 4.25 Tabel Kriteria
Nama Field Type Data Ukuran Keterangan
id_kriteria int 3 Nomor Id Kriteria
kode_kriteria varchar 10 Kode Kriteria
kriteria text - Keterangan Kriteria
id_admin int 3 Nomor Id Admin
created_at timestamp - Tanggal kriteria dibuat
updated_at timestamp - Tanggal kriteria di update
5. Tabel Rules
Database name : mustahik
Table name : rules
Primary Key : id
Foreign Key : -
Tabel 4.26 Tabel Rules
Nama Field Type Data Ukuran Keterangan
Id int 3 Nomor Id Rules
kode_rule varchar 10 Kode Rules
126
UIN Syarif Hidayatullah Jakarta
Nama Field Type Data Ukuran Keterangan
id_asnaf varchar 10 Nomor Id Asnaf
6. Tabel Identifikasi
Database name : mustahik
Table name : identifikasi
Primary Key : -
Foreign Key : -
Tabel 4.27 Tabel Identifikasi
Nama Field Type Data Ukuran Keterangan
id_identifikasi int 3 Nomor Id Identifikasi
no_kk varchar 30 Nomor KK Mustahik
Nama varchar 200 Nama Mustahik
Ttl date - Tanggal Lahir Mustahik
Alamat text - Alamat Mustahik
jenis_kelamin enum (pria,
wanita) -
Jenis Kelamin Mustahik
kode_asnaf int 3 Kode Asnaf
nilai_cf double - Nilai Hasil Perhitungan
id_user int 3 Nomor Id User
tgl_identifikasi date - Tanggal Pengidentifikasian
7. Tabel Rules Kriteria
Database name : mustahik
Table name : rules_ls_kriteria
Primary Key : -
Foreign Key : -
Tabel 4.28 Tabel Rules Kriteria
Nama Field Type Data Ukuran Keterangan
Id int 3 Nomor Id Rules Kriteria
id_rules int 3 Nomor Id Rules
id_kriteria int 3 Nomor Id Kriteria
127
UIN Syarif Hidayatullah Jakarta
8. Tabel Relasi Identifikasi
Database name : mustahik
Table name : relasi_identifikasi
Primary Key : -
Foreign Key : -
Tabel 4.29 Tabel Relasi Identifikasi
Nama Field Type Data Ukuran Keterangan
Id int 3 Nomor Id Relasi Identifikasi
kode_identifikasi int 3 Kode Identifikasi
kode_kriteria int 3 Kode Kriteria
4.2.1.3. Tahap Perancangan Interface
Penulis menggunakan software Balsamiq Mockup 3 untuk
merancang interface sistem pakar ini.
1. Desain Interface Halaman Awal
Gambar 4.38 Desain Interface Halaman Awal
Pada gambar 4.38 merupakan rancangan tampilan halaman awal.
Tampilan tersebut muncul ketika admin dan user membuka sistem
pakar ini. Pada halaman ini terdapat menu login untuk admin dan
user mengakses sistem.
128
UIN Syarif Hidayatullah Jakarta
2. Desain Interface Login
Gambar 4.39 Desain Interface Login
Pada gambar 4.39 merupakan rancangan tampilan halaman login.
Pada halaman ini admin dan user diminta untuk memasukkan
username dan password agar dapat masuk ke dalam sistem. Pada
halaman ini juga terdapat link create new account untuk ke halaman
register, sehingga user yang belum terdaftar bisa mengklik link
tersebut.
3. Desain Interface Register
Gambar 4.40 Desain Interface Register
Pada gambar 4.40 merupakan rancangan tampilan halaman
register. Dimana user yang belum terdaftar harus mengisi field-field
yang telah disediakan. Pada halaman ini juga terdapat tombol
register untuk memproses menyimpan data ke dalam database.
129
UIN Syarif Hidayatullah Jakarta
4. Desain Interface Halaman Utama Admin
Gambar 4.41 Desain Interface Halaman Utama Admin
Pada gambar 4.41 merupakan rancangan tampilan halaman utama
admin. Menu-menu yang terdapat pada halaman ini, yaitu kelola
user, kelola kriteria dan asnaf, history user, profil, dan logout.
5. Desain Interface Halaman Utama User
Gambar 4.42 Desain Interface Halaman Utama User
Pada gambar 4.42 merupakan rancangan tampilan halaman utama
user. Menu-menu yang terdapat pada halaman ini, yaitu identifikasi
mustahik, history, profil, dan logout.
130
UIN Syarif Hidayatullah Jakarta
6. Desain Interface Kelola User
Gambar 4.43 Desain Interface Kelola User
Pada gambar 4.43 merupakan rancangan tampilan halaman kelola
user. Pada halaman ini disediakan tombol delete untuk admin dapat
menghapus data user, dan apabila admin menekan tombol delete,
maka akan muncul pesan konfirmasi penghapusan. Admin dapat
memilih tombol delete untuk menghapus atau tombol cancel untuk
membatalkan penghapusan.
131
UIN Syarif Hidayatullah Jakarta
7. Desain Interface Kelola Kriteria dan Asnaf
Gambar 4.44 Desain Interface Kelola Kriteria dan Asnaf
132
UIN Syarif Hidayatullah Jakarta
Pada gambar 4.44 merupakan rancangan tampilan halaman kelola
kriteria dan asnaf. Pada halaman ini terdapat 3 submenu, yaitu
kriteria, asnaf, dan rules. Dimana pada setiap submenu tersebut
terdapat 3 action yang bisa dilakukan admin, diantaranya edit,
delete, dan add.
8. Desain Interface History User
Gambar 4.45 Desain Interface History User
Pada gambar 4.45 merupakan rancangan tampilan halaman
history user. Pada halaman ini disediakan tombol detail untuk admin
dapat melihat detail hasil dari history user, dan tombol back untuk
kembali ke halaman history user.
9. Desain Interface Profil Admin
Gambar 4.46 Desain Interface Profil Admin
Pada gambar 4.46 merupakan rancangan tampilan halaman profil
admin. Pada halaman ini terdapat icon edit untuk admin melakukan
perubahan data diri yang dirasa perlu. Pada halaman edit terdapat 2
tombol, yaitu update untuk menyimpan data perubahan, dan cancel
untuk membatalkan perubahan yang telah dilakukan.
133
UIN Syarif Hidayatullah Jakarta
10. Desain Interface Identifikasi Mustahik
Gambar 4.47 Desain Interface Identifikasi Mustahik
Pada gambar 4.47 merupakan rancangan tampilan halaman
identifikasi mustahik. Pada halaman ini user dapat menginputkan
data diri mustahik dan memilih dari kriteria yang telah disediakan.
Kemudian proses perhitungan akan dilakukan, dan mendapatkan
sebuah hasil. Hasil tersebut akan ditampilkan juga pada halaman ini.
11. Desain Interface History
Gambar 4.48 Desain Interface History
Pada gambar 4.48 merupakan rancangan tampilan halaman
history. Pada halaman ini disediakan tombol detail untuk user dapat
melihat detail hasil dari pengidentifikasian yang telah dilakukan, dan
tombol back untuk kembali ke halaman history.
134
UIN Syarif Hidayatullah Jakarta
12. Desain Interface Profil User
Gambar 4.49 Desain Interface Profil User
Pada gambar 4.49 merupakan rancangan tampilan halaman profil
user. Pada halaman ini terdapat icon edit untuk admin melakukan
perubahan data diri yang dirasa perlu. Pada halaman edit terdapat 2
tombol, yaitu update untuk menyimpan data perubahan, dan cancel
untuk membatalkan perubahan yang telah dilakukan.
13. Desain Interface Logout
Gambar 4.50 Desain Interface Logout
Pada gambar 4.50 merupakan rancangan tampilan halaman
logout. Ketika admin dan user memilih menu logout, maka akan
muncul pesan konfirmasi logout. Admin dan user dapat memilih
tombol yes untuk keluar dari sistem, dan dapat memilih tombol no
untuk membtalkan keluar dari sistem.
4.2.2. Pengkodean
Pada tahap ini, penulis melakukan pengkodean terhadap rancangan
sistem dan rancangan interface yang telah dibuat. Dalam pengkodean
penulis menggunakan bahasa pemrograman PHP dengan framework
135
UIN Syarif Hidayatullah Jakarta
CodeIgniter untuk pembuatan sistem, dan MySQL untuk pembuatan
database. Dalam proses pengkodean, penulis melakukan pengujian berupa
integration testing.
4.2.2.1.Penginputan Data
Dalam pembuatan sistem selain pengkodean diperlukannya
penginputan data. Penulis melakukan input data ke dalam database.
Data yang penulis gunakan adalah contoh data (dummy). Data dummy
tersebut penulis gunakan pada 1 database, yaitu db_mustahik yang
terdiri dari 8 tabel diantaranya ialah admin, asnaf, identifikasi, kriteria,
relasi_identifikasi, rules, rules_ls_kriteria, dan user.
4.3. Implementation
4.3.1. Perangkat Keras (Hardware)
Dalam pembuatan sistem ini penulis menggunakan perangkat keras
yaitu satu buah laptop dengan spesifikasi sebagai berikut:
1. Sistem operasi Windows 8.1 Pro.
2. Processor Intel® Core™ i5-4210U CPU @ 1.70GHz ~ 2.40GHz.
3. Memori RAM 4 GB.
4.3.2. Perangkat Lunak (Software)
Perangkat lunak yang penulis gunakan dalam pembuatan sistem ini,
yaitu:
1. Visual Studio Code.
2. XAMPP.
3. Google Chrome.
4.3.3. Pengujian Sistem
Selanjutnya penulis melakukan pengujian sistem menggunakan user
acceptance testing. Tahapan pengujian ini dilakukan dengan menjalankan
seluruh program yang telah dibuat. Tujuannya yaitu untuk memastikan
bahwa sistem yang dibuat telah sesuai dan berjalan dengan baik, serta
dapat digunakan oleh user.
136 UIN Syarif Hidayatullah Jakarta
BAB V
HASIL DAN PEMBAHASAN
5.1. Hasil Source Code Metode Certainty Factor
Penulis menggunakan bahasa pemrograman PHP dengan tools Visual
Studio Code. Berikut hasil penerapan source code metode certainty factor
pada sistem pakar ini:
Gambar 5.1 Source Code Metode Certainty Factor (1)
137
UIN Syarif Hidayatullah Jakarta
Pada gambar 5.1 penulis menggambarkan bagaimana proses
pengidentifikasian menggunakan metode certainty factor pada sistem pakar
ini, diantaranya sistem akan mencari id kriteria yang telah dipilih user
didalam rules. Setelah itu akan didapatkan nilai MB dan nilai MD dari kriteria
yang dipilih user, dengan nilai MB dari suatu rules yaitu jumlah kriteria yang
dipilih user atau ditemukan dibagi jumlah total kriteria yang tersedia pada
suatu rules dan nilai MD suatu rules adalah jumlah kriteria yang tidak dipilih
user atau tidak ditemukan dibagi jumlah total kriteria yang tersedia pada suatu
rules. Kemudian akan didapatkan hasil pengidentifikasian berupa nilai CF
dan termasuk ke dalam asnaf yang mana. Selain itu dilakukan juga
pengurutan nilai CF dari yang terbesar, dimana hasil yang diambil ialah nilai
CF yang terbesar.
138
UIN Syarif Hidayatullah Jakarta
Gambar 5.2 Source Code Metode Certainty Factor (2)
5.2. Hasil Pengujian Sistem
5.2.1. Hasil Pengujian Integration Testing
Berdasarkan hasil pengujian integration testing, seluruh proses yang
terdapat dalam sistem dapat dijalankan tanpa error. Hasil pengujian
terdapat pada halaman lampiran.
139
UIN Syarif Hidayatullah Jakarta
5.2.2. Hasil Pengujian User Acceptance Testing
Untuk memastikan pengujian yang telah dilakukan penulis telah sesuai,
penulis melakukan user acceptance testing ke tiga lembaga zakat, yaitu
BAZNAS Republik Indonesia, LPM Dompet Dhuafa, dan Baznas Kota
Tangerang Selatan. Untuk tanda bukti pengujian ini terdapat pada halaman
lampiran.
Selain itu untuk memastikan bahwa rule dan kriteria yang disediakan
telah benar penulis melakukan penyebaran kuesioner ke tiga lembaga
tersebut dan semuanya menyatakan bahwa rule dan kriteria yang
disediakan telah benar dan sesuai, nilai hasil pengidentifikasian pun dirasa
membantu pengidentifikasian mustahik zakat.
Berikut adalah hasil pengujian user acceptance testing yang telah
dilakukan:
1. Hasil Pengujian Menu Login
Tabel 5.1 Hasil Pengujian Menu Login
No. Skenario Pengujian Hasil yang Diharapkan Status
1. Admin dan user memilih
menu login
Sistem menampilkan
halaman login
Berhasil
2. Admin dan user mengisi
field username dan
password, kemudian
menekan tombol login
Sistem akan menampilkan
halaman utama admin dan
user apabila field yang
dimasukkan sudah sesuai
dengan data yang terdapat di
dalam database
Berhasil
3. User meng-klik link
create new accout
Sistem menampilkan
halaman register
Berhasil
4. User mengisi field data
diri yang telah
disediakan, kemudian
menekan tombol register
Sistem menyimpan data ke
database, dan menampilkan
halaman utama user
Berhasil
140
UIN Syarif Hidayatullah Jakarta
2. Hasil Pengujian Menu Kelola User
Tabel 5.2 Hasil Pengujian Menu Kelola User
No. Skenario Pengujian Hasil yang Diharapkan Status
1. Admin memilih menu
kelola user
Sistem menampilkan
halaman kelola user
Berhasil
2. Admin menekan tombol
delete
Sistem menampilkan pesan
konfirmasi penghapusan
Berhasil
3. Admin menekan tombol
delete pada pesan
konfirmasi penghapusan
Sistem menghapus data dari
database, dan kembali ke
halaman kelola user
Berhasil
4. Admin menekan tombol
cancel pada pesan
konfirmasi penghapusan
Sistem kembali
menampilkan halaman
kelola user
Berhasil
3. Hasil Pengujian Menu Kelola Kriteria dan Asnaf
Tabel 5.3 Hasil Pengujian Menu Kelola Kriteria dan Asnaf
No. Skenario Pengujian Hasil yang Diharapkan Status
1. Admin memilih menu
kelola kriteria dan asnaf
Sistem menampilkan drop-
down dari submenu
Berhasil
2. Admin memilih submenu
kriteria
Sistem menampilkan
halaman submenu kriteria
Berhasil
3. Admin menekan tombol
add pada halaman
submenu kriteria
Sistem menampilkan
halaman tambah kriteria
Berhasil
4. Admin mengisi form
tambah kriteria,
kemudian menekan
tombol save
Sistem menyimpan data ke
database, dan menampilkan
kembali halaman submenu
kriteria
Berhasil
141
UIN Syarif Hidayatullah Jakarta
No. Skenario Pengujian Hasil yang Diharapkan Status
5. Admin menekan tombol
cancel pada halaman
tambah kriteria
Sistem kembali
menampilkan halaman
submenu kriteria
Berhasil
6. Admin menekan tombol
edit pada halaman
submenu kriteria
Sistem menampilkan
halaman edit kriteria
Berhasil
7. Admin mengubah data
pada kriteria yang dirasa
perlu perubahan, dan
menekan tombol update
Sistem menyimpan data baru
ke dalam database, dan
menampilkan kembali
halaman submenu kriteria
Berhasil
8. Admin menekan tombol
cancel pada halaman edit
kriteria
Sistem kembali
menampilkan halaman
submenu kriteria
Berhasil
9. Admin menekan tombol
delete pada halaman
submenu kriteria
Sistem menampilkan pesan
konfirmasi penghapusan
Berhasil
10. Admin menekan tombol
delete pada pesan
konfirmasi penghapusan
kriteria
Sistem menghapus data dari
database, dan kembali ke
halaman submenu kriteria
Berhasil
11. Admin menekan tombol
cancel pada pesan
konfirmasi penghapusan
kriteria
Sistem kembali
menampilkan halaman
submenu kriteria
Berhasil
12. Admin memilih submenu
asnaf
Sistem menampilkan
halaman submenu asnaf
Berhasil
13. Admin menekan tombol
add pada halaman
submenu asnaf
Sistem menampilkan
halaman tambah asnaf
Berhasil
142
UIN Syarif Hidayatullah Jakarta
No. Skenario Pengujian Hasil yang Diharapkan Status
14. Admin mengisi form
tambah asnaf, kemudian
menekan tombol save
Sistem menyimpan data ke
database, dan menampilkan
kembali halaman submenu
asnaf
Berhasil
15. Admin menekan tombol
cancel pada halaman
tambah asnaf
Sistem kembali
menampilkan halaman
submenu asnaf
Berhasil
16. Admin menekan tombol
edit pada halaman
submenu asnaf
Sistem menampilkan
halaman edit asnaf
Berhasil
17. Admin mengubah data
pada asnaf yang dirasa
perlu perubahan, dan
menekan tombol update
Sistem menyimpan data baru
ke dalam database, dan
menampilkan kembali
halaman submenu asnaf
Berhasil
18. Admin menekan tombol
cancel pada halaman edit
asnaf
Sistem kembali
menampilkan halaman
submenu asnaf
Berhasil
19. Admin menekan tombol
delete pada halaman
submenu asnaf
Sistem menampilkan pesan
konfirmasi penghapusan
Berhasil
20. Admin menekan tombol
delete pada pesan
konfirmasi penghapusan
asnaf
Sistem menghapus data dari
database, dan kembali ke
halaman submenu asnaf
Berhasil
21. Admin menekan tombol
cancel pada pesan
konfirmasi penghapusan
asnaf
Sistem kembali
menampilkan halaman
submenu asnaf
Berhasil
143
UIN Syarif Hidayatullah Jakarta
No. Skenario Pengujian Hasil yang Diharapkan Status
22. Admin memilih submenu
rules
Sistem menampilkan
halaman submenu rules
Berhasil
23. Admin menekan tombol
add pada halaman
submenu rules
Sistem menampilkan
halaman tambah rules
Berhasil
24. Admin mengisi form
tambah rules, kemudian
menekan tombol save
Sistem menyimpan data ke
database, dan menampilkan
kembali halaman submenu
rules
Berhasil
25. Admin menekan tombol
cancel pada halaman
tambah rules
Sistem kembali
menampilkan halaman
submenu rules
Berhasil
26. Admin menekan tombol
edit pada halaman
submenu rules
Sistem menampilkan
halaman edit rules
Berhasil
27. Admin mengubah data
pada rules yang dirasa
perlu perubahan, dan
menekan tombol update
Sistem menyimpan data baru
ke dalam database, dan
menampilkan kembali
halaman submenu rules
Berhasil
28. Admin menekan tombol
cancel pada halaman edit
rules
Sistem kembali
menampilkan halaman
submenu rules
Berhasil
29. Admin menekan tombol
delete pada halaman
submenu rules
Sistem menampilkan pesan
konfirmasi penghapusan
Berhasil
30. Admin menekan tombol
delete pada pesan
konfirmasi penghapusan
rules
Sistem menghapus data dari
database, dan kembali ke
halaman submenu rules
Berhasil
144
UIN Syarif Hidayatullah Jakarta
No. Skenario Pengujian Hasil yang Diharapkan Status
31. Admin menekan tombol
cancel pada pesan
konfirmasi penghapusan
rules
Sistem kembali
menampilkan halaman
submenu rules
Berhasil
4. Hasil Pengujian Menu History User
Tabel 5.4 Hasil Pengujian Menu History User
No. Skenario Pengujian Hasil yang Diharapkan Status
1. Admin memilih menu
history user
Sistem menampilkan
halaman history user
Berhasil
2. Admin menekan tombol
detail
Sistem menampilkan
halaman detail history user
Berhasil
3. Admin menekan tombol
back pada halaman detail
history user
Sistem kembali
menampilkan halaman
history user
Berhasil
5. Hasil Pengujian Menu Profil Admin
Tabel 5.5 Hasil Pengujian Menu Profil Admin
No. Skenario Pengujian Hasil yang Diharapkan Status
1. Admin memilih menu
profil
Sistem menampilkan drop-
down dari submenu
Berhasil
2. Admin memilih submenu
profil
Sistem menampilkan
halaman submenu profil
Berhasil
3. Admin menekan icon edit
pada halaman submenu
profil
Sistem menampilkan
halaman edit profil
Berhasil
4. Admin melakukan
perubahan data, dan
menekan tombol update
pada halaman edit profil
Sistem menyimpan data baru
ke dalam database, dan
kembali menampilkan
halaman submenu profil
Berhasil
145
UIN Syarif Hidayatullah Jakarta
No. Skenario Pengujian Hasil yang Diharapkan Status
5. Admin menekan tombol
cancel pada halaman edit
profil
Sistem kembali
menampilkan halaman
submenu profil
Berhasil
6. Admin memilih submenu
logout
Sistem menampilkan pesan
konfirmasi logout
Berhasil
7. Admin menekan tombol
yes pada pesan
konfirmasi logout
Sistem menampilkan
halaman utama sistem, dan
admin berhasil keluar dari
sistem
Berhasil
8. Admin menekan tombol
no pada pesan konfirmasi
logout
Sistem menampilkan
kembali halaman yang
sedang dibuka saat itu
Berhasil
6. Hasil Pengujian Menu Identifikasi Mustahik
Tabel 5.6 Hasil Pengujian Menu Identifikasi Mustahik
No. Skenario Pengujian Hasil yang Diharapkan Status
1. User memilih menu
identifikasi mustahik
Sistem menampilkan
halaman identifikasi
mustahik
Berhasil
2. User mengisi field data
mustahik, dan memilih
dari kriteria yang telah
disediakan. Kemudian
menekan tombol
identifikasi
Sistem melakukan proses
perhitungan, dan
menampilkan hasil
perhitungan
Berhasil
3. User menekan tombol
finish
Sistem menyimpan data ke
dalam database
Berhasil
146
UIN Syarif Hidayatullah Jakarta
7. Hasil Pengujian Menu History
Tabel 5.7 Hasil Pengujian Menu History
No. Skenario Pengujian Hasil yang Diharapkan Status
1. User memilih menu
history
Sistem menampilkan
halaman history
Berhasil
2. User menekan tombol
detail
Sistem menampilkan
halaman detail history
Berhasil
3. User menekan tombol
back pada halaman detail
history
Sistem kembali
menampilkan halaman
history
Berhasil
8. Hasil Pengujian Menu Profil User
Tabel 5.8 Hasil Pengujian Menu Profil User
No. Skenario Pengujian Hasil yang Diharapkan Status
1. User memilih menu profil Sistem menampilkan menu
profil
Berhasil
2. User menekan icon edit
pada halaman profil
Sistem menampilkan
halaman edit profil
Berhasil
3. User melakukan
perubahan data, dan
menekan tombol update
pada halaman edit profil
Sistem menyimpan data baru
ke dalam database, dan
kembali menampilkan
halaman profil
Berhasil
5. User menekan tombol
cancel pada halaman edit
profil
Sistem kembali
menampilkan halaman profil
Berhasil
9. Hasil Pengujian Menu Logout User
Tabel 5.9 Hasil Pengujian Menu Logout User
No. Skenario Pengujian Hasil yang Diharapkan Status
1. User memilih menu
logout
Sistem menampilkan pesan
konfirmasi logout
Berhasil
147
UIN Syarif Hidayatullah Jakarta
No. Skenario Pengujian Hasil yang Diharapkan Status
2. User menekan tombol yes
pada pesan konfirmasi
logout
Sistem menampilkan
halaman utama sistem, dan
user berhasil keluar dari
sistem
Berhasil
3. User menekan tombol no
pada pesan konfirmasi
logout
Sistem menampilkan
kembali halaman yang
sedang dibuka saat itu
Berhasil
5.2.3. Hasil Pengujian Manual dan Sistem
Pengujian manual dan sistem dilakukan untuk membandingkan hasil
perhitungan metode dengan cara manual dan perhitungan metode pada
sistem. Pengujian ini digunakan untuk mendapatkan nilai akurasi antara
perhitungan manual dan perhitungan yang terdapat pada sistem. Data yang
digunakan untuk pengujian ini yaitu data yang terdapat pada pohon
keputusan yang terdapat pada gambar 4.1.
Tabel 5.10 Hasil Pengujian Manual dan Sistem
Kriteria Hasil
Manual
Hasil
Sistem
Nilai Cf
Manual
Nilai CF
Sistem
Status
P005 A03 A03 1 1 Sesuai
P004, P001 A01 A01 1 1 Sesuai
P004, P006 A01 A01 1 1 Sesuai
P004, P011 A04 A04 1 1 Sesuai
P004, P009 A05 A05 1 1 Sesuai
P004, P008 A05 A05 1 1 Sesuai
P004, P010 A06 A06 1 1 Sesuai
P004, P007 A06 A06 1 1 Sesuai
P004, P007, P002 A01 A01 1 1 Sesuai
P004, P007, P002,
P011
A04 A04 1 1 Sesuai
148
UIN Syarif Hidayatullah Jakarta
Kriteria Hasil
Manual
Hasil
Sistem
Nilai Cf
Manual
Nilai CF
Sistem
Status
P004, P007, P003 A02 A02 1 1 Sesuai
P004, P007, P003,
P011
A04 A04 1 1 Sesuai
5.4. Hasil Tampilan User Interface
5.4.1. Desain Interface Halaman Awal
Gambar 5.3 Desain Interface Halaman Awal
Pada gambar 5.3 merupakan tampilan halaman awal sistem. Pada
halaman ini terdapat menu login untuk user dan admin masuk ke dalam
sistem.
149
UIN Syarif Hidayatullah Jakarta
5.4.2. Desain Interface Login
Gambar 5.4 Desain Interface Login Admin
Gambar 5.5 Desain Interface Login User
Pada gambar 5.4 dan 5.5 merupakan tampilan halaman login. Pada
tampilan tersebut terdapat field yang harus diisi yaitu username dan
password.
150
UIN Syarif Hidayatullah Jakarta
5.4.3. Desain Interface Register
Gambar 5.6 Desain Interface Register
Pada gambar 5.6 merupakan tampilan halaman register. Dimana user
harus mengisi field nama, tanggal lahir, alamat, nama BAZ/LAZ,
username, password, dan confirm password.
151
UIN Syarif Hidayatullah Jakarta
5.4.4. Desain Interface Halaman Utama Admin
Gambar 5.7 Desain Interface Halaman Utama Admin
Pada gambar 5.7 merupakan tampilan halaman utama admin. Pada
tampilan tersebut terdapat drop-down dari menu kelola kriteria dan asnaf.
5.4.5. Desain Interface Halaman Utama User
Gambar 5.8 Desain Interface Halaman Utama User
152
UIN Syarif Hidayatullah Jakarta
Pada gambar 5.8 merupakan tampilan halaman utama user. Pada
tampilan tersebut terdapat menu identifikasi mustahik, history, profil, dan
logout.
5.4.6. Desain Interface Kelola User
Gambar 5.9 Desain Interface Kelola User
Gambar 5.9 merupakan tampilan halaman kelola user. Pada tampilan
ini terdapat tombol delete untuk admin menghapus data user.
153
UIN Syarif Hidayatullah Jakarta
5.4.7. Desain Interface Kelola Kriteria dan Asnaf
Gambar 5.10 Desain Interface Kelola Kriteria dan Asnaf
Pada gambar 5.10 merupakan tampilan halaman kelola kriteria dan
asnaf. Pada halaman tersebut terdapat 3 submenu yaitu asnaf, kriteria, dan
154
UIN Syarif Hidayatullah Jakarta
rules. Pada setiap submenu terdapat 3 action yang dapat dilakukan admin
yaitu add, edit, dan delete.
5.4.8. Desain Interface History User
Gambar 5.11 Desain Interface History User
Paada gambar 5.11 merupakan tampilan halaman history user. Pada
halaman tersebut terdapat tombol detail untuk melihat detail hasil dari
pengidentifikasian yang dilakukan user.
155
UIN Syarif Hidayatullah Jakarta
5.4.9. Desain Interface Profil Admin
Gambar 5.12 Desain Interface Profil Admin
Pada gambar 5.12 merupakan tampilan halaman profil admin. Pada
halaman tersebut terdapat icon edit untuk melakukan perubahan terhadap
data yang dirasa perlu.
156
UIN Syarif Hidayatullah Jakarta
5.4.10. Desain Interface Identifikasi Mustahik
Gambar 5.13 Desain Interface Identifikasi Mustahik
Pada gambar 5.13 merupakan tampilan halaman identifikasi mustahik.
Pada halaman tersebut user dapat melakukan pengidentifikasian dengan
melakukan pengisian data mustahik, pemilihan kriteria dan menekan
tombol identifikasi, maka akan menghasilkan output hasil
pengidentifikasian.
Pada hasil pengidentifikasian akan muncul semua kemungkinan yang
bisa menjadi kategori asnaf dari kriteria yang dipilih user. Hasil
pengidentifikasian tersebut telah diurutkan dari nilai yang paling besar ke
terkecil, sehingga akan mendapat kesimpulan dari nilai CF yang terbesar.
Dimana 1 merupakan nilai CF terbesar yang berarti pasti.
5.4.11. Desain Interface History
Gambar 5.14 Desain Interface History
157
UIN Syarif Hidayatullah Jakarta
Pada gambar 5.14 merupakan tampilan history. Hasil
pengidentifikasian mustahik yang telah dilakukan user akan langsung
tersimpan pada halaman ini. Pada tampilan ini terdapat tombol detail untuk
melihat secara keseluruhan hasil pengidentifikasian.
5.4.12. Desain Interface Profil User
Gambar 5.15 Desain Interface Profil User
Pada gambar 5.15 merupakan tampilan halaman profil user. Pada
tampilan tersebut terdapat icon edit untuk mengubah data diri yang perlu
perubahan.
158
UIN Syarif Hidayatullah Jakarta
5.4.13. Desain Interface Logout
Gambar 5.16 Desain Interface Logout
Pada gambar 5.16 merupakan tampilan logout untuk admin dan user
keluar dari sistem.
159 UIN Syarif Hidayatullah Jakarta
BAB VI
PENUTUP
6.1. Kesimpulan
Berdasarkan hasil penelitian yang telah penulis lakukan, maka dapat
ditarik kesimpulan bahwa sistem pakar identifikasi mustahik zakat
menggunakan metode certainty factor dapat membantu proses
pengidentifikasian di lembaga amil zakat. Hal itu sesuai dengan hasil
kuesioner yang penulis sebar ke lembaga amil zakat berskala nasional dan
berskala Kota/Kabupaten, yang didukung dari 7 responden menyatakan
bahwa sistem yang dibangun dapat membantu proses pengidentifikasian dan
hasil yang dikeluarkan telah sesuai dengan kriteria yang disediakan.
Nilai pengidentifikasian yang didapat melalui metode certainty factor
dapat membantu untuk pengidentifikasian mustahik zakat. Dengan 11
kriteria, 6 asnaf, dan 12 rule sistem pakar ini telah sesuai untuk
pengidentifikasian mustahik zakat. Berdasarkan pengujian menggunakan unit
testing dan user acceptance testing didapatkan hasil bahwa sistem dapat
berjalan dengan baik dan tanpa adanya error, sedangkan pengujian manual
dan sistem didapatkan hasil bahwa perhitungan manual dan perhitungan pada
sistem penerapan metode certainty factor semuanya telah sesuai antara
perhitungan manual dan perhitungan sistem.
6.2. Saran
Penulis menyadari dalam melakukan penelitian masih memiliki
kekurangan. Oleh karena itu, penulis menyarankan untuk mengembangkan
penelitian tersebut, antara lain:
1. Penelitian dilakukan menggunakan metode lain untuk sistem pakar.
2. Sistem dapat dikembangkan ke dalam aplikasi mobile.
3. Penelitian dilakukan dengan menambahkan jumlah kriteria serta rule.
160
160 UIN Syarif Hidayatullah Jakarta
DAFTAR PUSTAKA
Abdulloh, Rohi. 2018. 7 in 1 Pemrograman Web untuk Pemula. Jakarta: PT Elex
Media Komputindo.
Afrianty, Iis, dan Ravi Umbara. 2016. Sistem Pendukung Keputusan (SPK)
Menentukan Kelayakan Calon Penerima Zakat Menerapkan Multi-Factor
Evaluation Process.
Amir, Majdah. 2018. Fiqih Praktis Empat Mazhab. Jakarta: PT. Qaf Media
Kreativa.
Andriani, Anik. 2016. Pemrograman Sitem Pakar. Yogyakarta: MediaKom.
A.S, Rossa dan M. Shalahuddin. 2018. Rekayasa Perangkat Lunak Terstruktur dan
Berrorientasi Objek. Bandung: Informatika.
A.S, Rossa dan M. Shalahuddin. 2016. Rekayasa Perangkat Lunak (Terstruktur dan
Berrorientasi Objek). Bandung: Informatika.
Badan Amil Zakat Nasional. 2016. Peraturan Badan Amil Zakat Nasional No. 1
tentang Pedoman Penyusuan Rencana Kerja dan Anggaran Tahunan Badan
Amil Zakat Nasional, Badan Amil Zakat Nasional Provinsi, dan Badan Amil
Zakat Nasional Kabupaten/Kota.
Badan Pusat Statistik. Persentase Penduduk Miskin Maret 2018 Turun Menjadi 9,
82 Persen. Diperoleh 25 November 2018, dari
https://www.bps.go.id/pressrelease/2018/07/16/1483/persentase-penduduk-
miskin-maret-2018-turun-menjadi-9-82-persen.html
Bagir, Muhammad. 2016. Fiqih Praktis: Panduan Lengkap Ibadah Menurut Al-
Quran, Al-Sunnah, dan Pendapat Para Ulama. Bandung: PT Mizan Publika.
Bayinah, Ai Nur. 2015. Bayar Pajak Lebih Murah: Cara Tepat dan Mudah
Mengurangi Pajak dengan Zakat dan Sumbangan Agama. Jakarta: Visimedia
Pustaka.
BAZNAS. 2018. Statistik Zakat Nasional 2017. Jakarta: Bagian Laison dan
Pelaporan BAZNAS.
161
161 UIN Syarif Hidayatullah Jakarta
Furoida, Asni, dan Sutikno. 2017. Sistem Pendukung Keputusan Penerima Zakat
Dengan Metode Simple Additive Weighting. Semarang.
Hayadi, B. Herawan, dan Kasman Rukun. 2016. What Is Expert System.
Yogyakarta: Deepublish Publisher.
Hikmawati, Fenti. 2017. Metodologi Penelitian. Depok: PT RajaGrafindo Persada.
Harijanto, Budi, dan Reza Aliful Latif. 2016. Sistem Pakar Diagnosa Penyakit
Pada Kucing dengan Metode Teorema Bayes Berbasis Android.
Hasibuan, Nelly Astuti, Kusnita Yusmiarti, Fince Tinus Warawu, dan Rabbi Rahim.
2017. Expert Systems With Genetics Probability.
Iswara, Roma Akbar, Edy Santoso, dan Bayu Rahayudi. 2018. Sistem Pendukung
Keputusan Untuk Penentuan Mustahik (Penenrima Zakat) Menggunakan
Metode Fuzzy AHP (F-AHP).
Katadata. Realitas di Balik Keberhasilan Menekan Angka Kemiskinan. Diperoleh
25 November 2018, dari https://katadata.co.id/analisisdata/2018/07/28/realitas-
di-balik-keberhasilan-menekan-angka-kemiskinan
Kendall, Kenneth E, dan Julie E Kendall. 2012. Analisis dan Perancangan Sistem.
Jakarta: Index.
Maafi, Mahbub. 2018. Tanya Jawab Fikih Sehari-Hari. Jakarta: PT. Grasindo.
Maulana, Harry Okta, Imam M. Shofi, Nurul Faizah Rozy, dan Fenty Eka
Muzayyana Agustin. 2017. Application for Determining Musathiq based on the
Priority using Weight Product Method (Case Study: BAZIS DKI Jakarta).
Najieh, Abu Ahmad. 2018. Fikih Mazhab Syafi’i. Bandung: Penerbit Marja.
Nurcholish, Ahmad. 2018. Membangun Database Arsip Persuratan Menggunakan
Pemrograman PHP dan MySQL. Sukabumi: CV Jejak.
Panjaitan, Ira Lina Kendayto, Erwin Panggabean, dan Sulindawaty. 2018. Analisis
Perbandingan Metode Dempster Shafer dengan Metode Certainty Factor untuk
Mendiagnosa Penyakit Stroke. Medan.
Putra, Rudi Julian Eka, Nurliana Nasution, dan Yummastian. 2015. Aplikasi E-
Zakat Penerimaan dan Penyaluran Menggunakan Fuzzy C-Means (Studi
Kasus: LAZISMU Pekanbaru). Riau.
Radillah, Teuku. 2018. Visual Basic 6.0 Return. Yogyakarta: Deepublish.
162
162 UIN Syarif Hidayatullah Jakarta
Raharjo, Budi. 2018. Belajar Otodidak Framework CodeIgniter: Teknik
Pemrograman Web dengan PHP 7 dan Framework CodeIgniter 3. Bandung:
Informatika.
Ramadhan, Puji Sari, dan Usti Fatimah Sitorus Pane. 2017. Analisis Perbandingan
Metode (Certainty Factor, Dempster Shafer dan Teorema Bayes) untuk
Mendiagnosa Penyakit Inflamasi Dermatitis Imun pada Anak.
Republik Indonesia. 2011. Undang-Undang No. 23 Tahun 2011 tentang
Pengelolaan Zakat. Lembaran Negara RI Tahun 2011, No. 115. Sekretariat
Negara. Jakarta.
Rekhawi, Hazem Awni Al, Abdullah A. Ayyad, dan Samy S. Abu Naser. 2017.
Rickets Expert System Diagnoses and Treatment.
Riduwan. 2013. Belajar Mudah Penelitian. Bandung: Alfabeta.
Saputra, Agus. 2018. Project PHP: Menyelesaikan Website 30 Juta Secara
Profesional. Cirebon: CV. ASFA Solution.
Sidik, Betha. 2018. Framework CodeIgniter 3. Bandung: Informatika.
Sinaga, Mikha Dayan, dan Nita Sari Br. Sembiring. 2016. Penerapan Metode
Dempster Shafer Untuk Mendiagnosa Penyakit dari Bakteri Salmonella.
Software Testing Fundamentals. Integration Testing. Diperoleh 10 Januari 2019,
dari http://softwaretestingfundamentals.com/integration-testing/
Software Testing Fundamentals. System Testing. Diperoleh 10 Januari 2019, dari
http://softwaretestingfundamentals.com/system-testing/
Software Testing Fundamentals. Acceptance Testing. Diperoleh 10 Januari 2019,
dari http://softwaretestingfundamentals.com/acceptance-testing/
Spaceku.com. Pengertian Integration Testing. Diperoleh 27 Januari 2019, dari
https://spaceku.com/pengertian-integration-testing/
Sudaryono. 2015. Metodologi Riset di Bidang TI (Panduan Praktis, Teori dan
Contoh Kasus). Yogyakarta: ANDI.
Sugiarti, Yuni. 2018. Dasar-Dasar Pemrograman JAVA Netbeans: Database UML
dan Interface. Bandung: PT Remaja Rosdakarya.
Sulistiono, Heru. 2018. Coding Mudah dengan CodeIgniter, JQuery, Boostrap, dan
Datatable. Jakarta: PT Elex Media Komputindo.
163
163 UIN Syarif Hidayatullah Jakarta
Sumantoro, Isnar, Diki Arisandi, Andysah Putera Utama Siahaan, dan Mesran.
2017. Expert System of Catfish Disease Determinant Using Certainty Factor
Method.
Sutojo, T., Edi Mulyanto, dan Vincent Suhartono. 2011. Kecerdasan Buatan.
Yogyakarta: ANDI; Semarang: UDINUS.
Tempo. Pemerintah Ingin Penyaluran Dana Zakat Gunakan Data Kemiskinan.
Diperoleh 26 November 2018, dari
https://bisnis.tempo.co/read/903376/pemerintah-ingin-penyaluran-dana-zakat-
gunakan-data-kemiskinan
Wahyuni, Ellyza Gustri, dan Widodo Prijodiprojo. 2013. Prototype Sistem Pakar
untuk Mendeteksi Tingkat Resiko Penyakit Jantung Koroner dengan Metode
Dempster-Shafer (Studi Kasus: RS. PKU Muhammadiyah Yogyakarta).
Yurindra. 2017. Software Engineering. Yogyakarta: Deepublish.
A1 UIN Syarif Hidayatullah Jakarta
LAMPIRAN
Lampiran 1. Surat Dosen Pembimbing Skripsi
A2 UIN Syarif Hidayatullah Jakarta
Lampiran 2. Surat Penelitian Skripsi ke BAZNAS Kota Tangerang Selatan
A3 UIN Syarif Hidayatullah Jakarta
Lampiran 3. Surat Penelitian Skripsi ke LPM Dompet Dhuafa
A4 UIN Syarif Hidayatullah Jakarta
Lampiran 4. Surat Penelitian Skripsi ke BAZNAS Republik Indonesia
B5 UIN Syarif Hidayatullah Jakarta
Lampiran 5. Hasil Wawancara dengan BAZNAS Kota Tangerang Selatan
Hasil Wawancara
Narasumber : Bapak H. Tohir (Wakil Ketua IV BAZNAS Kota Tangerang
Selatan)
Tempat : BAZNAS Kota Tangerang Selatan
Hari/Tanggal : Selasa, 26 Juni 2018
1. Apakah ada form yang disediakan untuk menentukan mustahik?
Tujuan: Untuk mengetahui bagaimana penentuan mustahik.
Jawab: Belum ada formulir tetapnya, disini kalau ingin mengajukan hanya
membawa persyaratannya saja atau melalui LAZ/BAZ.
2. Apa saja persyaratan agar bisa diterima sebagai mustahik?
Tujuan: Untuk mengetahui persayatan apa saja yang harus dilengkapi oleh
calon mustahik.
Jawab: Surat pengantar dari RT/RW, SKTM asli dari kelurahan, fotocopy
KTP, fotocopy KK, surat keterangan sekolah (bagi Pendidikan), dan
membuat surat permohonan.
3. Apakah setelah persyaratan terpenuhi, kemudian dilakukan survey?
Tujuan: Untuk mengetahui sampai tahap mana calon mustahik bisa
diterima sebagai mustahik.
Jawab: Tidak, kami belum sampai ke survey langsung untuk penentuannya.
4. Ada berapa asnaf di BAZNAS Kota Tangerang Selatan ini?
Tujuan: Untuk mengetahui asnaf apa saja yang diterima disana.
Jawab: Fakir-miskin, amilin, mualaf, ghorimin, fisabilillah dan ibnu sabil.
UIN Syarif Hidayatullah Jakarta
5. Kenapa fakir dan miskin dijadikan satu kesatuan?
Tujuan: Untuk mengetahui alasan fakir dan miskin dijadikan satu golongan
asnaf.
Jawab: Karena penentuan dari berbagai lembaga untuk fakir dan miskin
pasti berbeda-beda.
6. Selain berdasarkan asnaf, berdasarkan apalagi penyaluran dari BAZNAS
Kota Tangerang Selatan?
Tujuan: Untuk mengetahui bagaimana penyaluran zakat selain dari asnaf.
Jawab: Peyalurannya juga bisa melalui berbagai bidang yang kami
sediakan, diantaranya bidang keagamaan, bidang ekonomi/usaha, bidang
pendidikan, bidang bencana dan bidang kesehatan.
7. Bagaimana seseorang bisa disebut fisabilillah dan ibnu sabil, dan berapa
tahun seseorang bisa dikatakan muallaf?
Tujuan: Untuk mengetahui definisi fisabilillah, ibnu sabil dan muallaf.
Jawab: Yang termasuk ke dalam fisabilillah yaitu guru mengaji dan marbot
masjid, sedangkan untuk ibnu sabil yaitu orang yang kehilangan dompet.
Dan ketentuan muallaf disini yaitu yang baru masuk islam maksimal 2
tahun.
8. Berapa kali mustahik bisa menerima bantuan dari BAZNAS Kota
Tangerang Selatan ini?
Tujuan: Untuk mengetahui berapa rutin mustahik dapat menerima bantuan.
Jawab: Satu tahun sekali
9. Setiap mustahik biasanya diberikan berapa?
Tujuan: Untuk mengetahui seberapa banyak mustahik menerima bantuan.
Jawab: Untuk besaran santunannya yang menentuka yaitu kepala/ketuanya.
UIN Syarif Hidayatullah Jakarta
10. Bagaimana permasalahan yang ada disini?
Tujuan: Untuk mencari tahu permasalahan apa yang ada pada BAZNAS
Kota Tangeraang Selatan.
Jawab: Permasalahan disini yaitu sistem yang masih sangat manual,
sehingga banyak calon mustahik yang datang tidak hanya sekali dalam
setahun, namun mereka memanipulasi dengan memakai cadar ataupun
potong rambut agar dapat bantuan kembali. Karena masih sangat manual
maka mereka dapat membohongi kami dengan mudah.
B8 UIN Syarif Hidayatullah Jakarta
Lampiran 6. Hasil Wawancara dengan LPM Dompet Dhuafa
Hasil Wawancara
Narasumber : Bapak Taufan (Bagian Partnership)
Tempat : LPM Dompet Dhuafa
Hari/Tanggal : Rabu, 14 November 2018
1. Apakah ada form yang disediakan untuk menentukan mustahik?
Jawab:
Untuk tahap awal kami melakukan wawancara. Jika dibutuhkan verifikasi
lanjut ada form surveinya.
2. Apa saja persyaratan agar bisa diterima sebagai mustahik?
Jawab:
Kartu identitas, seperti KTP atau KK. Persyaratan lain sesuai dengan apa
yang mereka ajukan, seperti untuk keperluan sekolah maka dibutuhkan surat
dari sekolah dan rincian biayanya.
3. Apakah setelah persyaratan terpenuhi, kemudian dilakukan survey?
Jawab:
Untuk survei biasanya dilakukan kepada bantuan seperti modal atau
kebutuhan khusus yang memang tidak langsung kami berikan. Untuk
keperluan lain yang kira-kira dibutuhkan saat itu juga maka langsung
diberikan, walaupun tidak seberapa.
4. Ada berapa pengkategorian asnaf di dompet dhuafa?
Jawab:
Ada 8 asnaf.
UIN Syarif Hidayatullah Jakarta
5. Bagaimana penentuan mustahik yang dilakukan di BAZNAS? Apakah
secara manual atau melalui sistem?
Jawab:
Sekarang masih manual, masih menggunakan form survei yang di print.
6. Apakah perlu adanya sistem yang mengidentifikasikan golongan penerima
zakat (asnaf)?
Jawab:
Kalo identifikasi sebenernya kami sudah mengidentifikasi sesuai pengajuan
para mustahik di awal.
7. Bagaimana kriteria seseorang bisa dikatakan termasuk mustahik kategori
fakir?
Jawab:
Tidak mempunyai penghasilan.
8. Bagaimana kriteria seseorang bisa dikatakan termasuk mustahik kategori
miskin?
Jawab:
Berpenghasilan tetapi tidak mencukupi.
9. Bagaimana kriteria seseorang bisa dikatakan termasuk mustahik kategori
amil?
Jawab:
Biasanya kalo di lembaga sosial itu karyawannya yang disebut amil.
10. Bagaimana kriteria seseorang bisa dikatakan termasuk mustahik kategori
riqab?
Jawab:
Kalo budak di zaman sekarang ini otomatis sudah tidak ada. Mungkin ada
tetapi di negara-negara yang basenya kerajaan.
UIN Syarif Hidayatullah Jakarta
11. Bagaimana kriteria seseorang bisa dikatakan termasuk mustahik kategori
gharimin?
Jawab:
Orang berhutang pada waktu yang ditentukan namun tidak dapat
membayarnya.
12. Bagaimana kriteria seseorang bisa dikatakan termasuk mustahik kategori fi
sabilillah?
Jawab:
Yang berjuang di jalan Allah, entah itu mengajar ngaji atau mengajar ilmu-
ilmu lain tanpa meminta bayaran. Biasanya kami support untuk
operasionalnya.
13. Bagaimana kriteria seseorang bisa dikatakan termasuk mustahik kategori
ibnu sabil?
Jawab:
Yang sedang dalam perjalanan.
14. Bagaimana kriteria seseorang bisa dikatakan termasuk mustahik kategori
muallaf?
Jawab:
Orang yang baru masuk Islam. Kami supportnya tergantung kebutuhan
mereka.
15. Bagaimana sistem yang diharapkan?
Jawab:
Perlunya sistem yang sudah mengidentifikasi mustahik, sehingga kami
tidak perlu repot lagi mengklasifikasikannya secara manual. Namun lebih
didetailkan lagi sistemnya, karena ada kerancuan dari mustahik yang
nantinya akan menimbulkan hasil yang lebih dari satu kategori mustahik.
UIN Syarif Hidayatullah Jakarta
Sebagai contoh orang yang berhutang secara tidak langsung juga termasuk
fakir atau miskin, karena orang yang berhutang tidak bisa mencukupi
kebutuhannya.
C12 UIN Syarif Hidayatullah Jakarta
Lampiran 7. Hasil Pengujian Integration Tetsing
Hasil Uji Integration Testing
No. Item Uji Kegiatan Hasil yang diharapkan Status Source Code
1. Login User
User
memilih
menu login
dan
submenu
User
Apabila user
menginput field
username dan
password yang tidak
sesuai, maka sistem
akan tetap di halaman
login, begitupun
ketika user salah atau
belum mengisi salah
satu field. Namun
ketika yang user input
adalah field yang
benar dan terdapat di
dalam database, maka
Sesuai
public function login() {
$this->twig->display('auth/login');
}
public function proses_login()
{
$uname = $this->input->post('username');
$pass = $this->input->post('password');
$data = $this->user->get(array('username' =>
$uname ));
if($data) { // cek username di database
// jika ada cek password
if($pass !== $data->password) { // jika
password salah redirect ke halaman login
$this->twig->display('auth/login',
['errors' => '<p>You have entered an invalid username
or password</p>']);
}
else {
// save session
$this->session->set_userdata(
array(
'id' => $data->id_user,
UIN Syarif Hidayatullah Jakarta
sistem akan masuk ke
halaman utama user.
'username' => $data->username,
'name' => $data->nama,
'admin' => FALSE,
)
);
$this->twig->addGlobal('session',
$this->session);
redirect('/');
}
}
else { // jika tidak ada redirect ke halaman
login
$this->twig->display('auth/login',
['errors' => '<p>You have entered an invalid username
or password</p>']);
}
}
2. Login
Admin
User
memilih
menu login
dan
submenu
Admin
Apabila admin
menginput field
username dan
password yang tidak
sesuai, maka sistem
akan tetap di halaman
Sesuai
public function login()
{
$this->twig->display('admin/login');
}
public function proses()
{
$username = $this->input->post('username');
$pass = $this->input->post('pass');
UIN Syarif Hidayatullah Jakarta
login, begitupun
ketika admin salah
atau belum mengisi
salah satu field.
Namun ketika yang
admin input adalah
field yang benar dan
terdapat di dalam
database, maka
sistem akan masuk ke
halaman utama
admin.
$data = $this->admin->get($username);
if(!empty($data)) {
// jika data user ada cek password
if($data->password == $pass) {
// jika password dan username cocok,
maka buat session
$this->session->set_userdata(
array(
'id' => $data->id_admin,
'username' => $data->username,
'name' => $data->nama,
'admin' => TRUE,
)
);
$this->twig->addGlobal('session',
$this->session);
$this->twig-
>display('welcome_message');
}
else {
redirect('/admin/login');
}
}
else {
UIN Syarif Hidayatullah Jakarta
redirect('/admin/login');
}
}
3. Register
User
memilih
menu login
dan
submenu
user,
kemudian
pilih create
new account
Apabila user tidak
mengisi semua field
yang disediakan,
maka sistem akan
tetap berada di
halaman register.
Namun apabila semua
field telah terisi dan
tidak terdapat
username yang sama
di database maka
sistem akan
menyimpan data
tersebut, dan user
Sesuai
public function register() {
$this->twig->display('auth/register');
}
public function create()
{
$this->_validation_rules();
if ($this->form_validation->run() == FALSE) {
$this->twig->display('auth/register',
['errors' => validation_errors()]);
}
else {
if( $this->input->post('password') !==
$this->input->post('password_confirm') ) {
UIN Syarif Hidayatullah Jakarta
akan masuk ke
halaman utama user.
$this->twig->display('auth/register',
['errors' => '<p>password does not match the confirm
password</p>']);
}
else {
$data = array(
'nama' => $this->input-
>post('nama'),
'ttl' => $this->input->post('ttl'),
'alamat' => $this->input-
>post('alamat'),
'nama_lembaga' => $this->input-
>post('bazlaz'),
'username' => $this->input-
>post('username'),
'password' => $this->input-
>post('password'),
);
$this->user->insert($data);
$id = $this->db->insert_id();
$this->session->set_userdata(
array(
'id' => $id,
'username' => $this->input-
>post('username'),
UIN Syarif Hidayatullah Jakarta
'name' => $this->input-
>post('nama'),
'admin' => FALSE,
)
);
$this->twig->addGlobal('session',
$this->session);
redirect('/');
}
}
}
4.
Kelola
Kriteria dan
Asnaf
Admin
memilih
menu kelola
kriteria dan
asnaf
Admin dapat
melakukan beberapa
action, yaitu tambah,
edit, dan delete pada
submenu asnaf,
kriteria, dan rule.
Sesuai
Asnaf public function create()
{
$this->twig->addGlobal('errors', $this-
>session->flashdata());
$kode = $this->generate_id();
$this->twig->display('asnaf/create', [
'last_id' => $kode
]);
}
public function store()
{
UIN Syarif Hidayatullah Jakarta
/* call function validation */
$this->validation();
if ($this->form_validation->run() == FALSE) {
$this->form_validation-
>set_error_delimiters('', '');
$this->session->set_flashdata('errors',
validation_errors());
return redirect('backend/asnaf/create');
}
else {
$data = array(
'kode_asnaf' => $this->input-
>post('kode'),
'asnaf' => $this->input->post('asnaf'),
'id_admin' => $this->session-
>userdata('id'),
'created_at' => mdate("%Y-%m-%d
%H:%i:%s"),
'updated_at' => mdate("%Y-%m-%d
%H:%i:%s")
);
$this->asnaf->insert($data);
if($this->db->affected_rows() > 0) {
UIN Syarif Hidayatullah Jakarta
return redirect('backend/asnaf');
}
else {
echo "input gagal!";
}
}
}
public function edit($id)
{
$this->twig->addGlobal('errors', $this-
>session->flashdata('errors'));
$data = $this->asnaf->get($id);
$this->twig->display('asnaf/edit', [
'data' => $data,
]);
}
public function update($id) {
$this->validation();
if ($this->form_validation->run() == FALSE) {
$this->form_validation-
>set_error_delimiters('', '');
UIN Syarif Hidayatullah Jakarta
$this->session->set_flashdata('errors',
validation_errors());
return redirect('backend/asnaf/edit/'.$id);
}
else {
$data = array(
'asnaf' => $this->input->post('asnaf'),
'updated_at' => mdate("%Y-%m-%d
%H:%i:%s")
);
$this->asnaf->update($id, $data);
if($this->db->affected_rows() > 0) {
return redirect('backend/asnaf');
}
else {
echo "update gagal!";
}
}
}
public function delete($id)
{
$this->asnaf->delete($id);
UIN Syarif Hidayatullah Jakarta
if($this->db->affected_rows() > 0) {
return redirect('backend/asnaf');
}
else {
echo "proses gagal!";
}
}
Kriteria
public function create()
{
$this->twig->addGlobal('errors', $this-
>session->flashdata());
$kode = $this->generate_id();
$this->twig->display('kriteria/create', [
'kode' => $kode
]);
}
public function store()
{
/* call function validation */
$this->validation();
if ($this->form_validation->run() == FALSE) {
$this->form_validation-
>set_error_delimiters('', '');
UIN Syarif Hidayatullah Jakarta
$this->session->set_flashdata('errors',
validation_errors());
return redirect('backend/kriteria/create');
}
else {
$data = array(
'kode_kriteria' => $this->input-
>post('kode'),
'kriteria' => $this->input-
>post('kriteria'),
'id_admin' => $this->session-
>userdata('id'),
);
$this->kriteria->insert($data);
if($this->db->affected_rows() > 0) {
return redirect('backend/kriteria');
}
else {
echo "input gagal!";
}
}
}
UIN Syarif Hidayatullah Jakarta
public function edit($id)
{
$data = $this->kriteria->get($id);
$this->twig->display('kriteria/edit', [
'data' => $data
]);
}
public function update($id)
{
$this->validation();
if ($this->form_validation->run() == FALSE) {
$this->form_validation-
>set_error_delimiters('', '');
$this->session->set_flashdata('errors',
validation_errors());
return
redirect('backend/kriteria/edit/'.$id);
}
else {
$data = array(
'kriteria' => $this->input-
>post('kriteria'),
'updated_at' => mdate("%Y-%m-%d
%H:%i:%s")
);
UIN Syarif Hidayatullah Jakarta
$this->kriteria->update($id, $data);
if($this->db->affected_rows() > 0) {
return redirect('backend/kriteria');
}
else {
echo "update gagal!";
}
}
}
public function delete($id)
{
$this->kriteria->delete($id);
if($this->db->affected_rows() > 0) {
return redirect('backend/kriteria');
}
else {
echo "proses gagal!";
}
}
Rules
public function create()
{
UIN Syarif Hidayatullah Jakarta
$ls_asnaf = $this->asnaf->all();
$ls_kriteria = $this->kriteria->all();
$kode = $this->generate_id();
$this->twig->display('rules/create', [
'kode' => $kode,
'asnaf' => $ls_asnaf,
'kriteria' => $ls_kriteria
]);
}
public function store()
{
print_r($this->input->post());
/**
* 1. save rules ke table rules
* 2. save list kriteria ke table
rules_ls_kriteria
*/
echo "<br>";
foreach ($this->input->post('kriteria') as $key
=> $value) {
echo $value . "<br>";
}
$data = array(
'kode_rule' => $this->input-
>post('kode_rule'),
UIN Syarif Hidayatullah Jakarta
'id_asnaf' => $this->input->post('asnaf'),
);
$this->db->trans_start();
$this->rules->insert($data);
$id_rules = $this->db->insert_id();
foreach ($this->input->post('kriteria') as $key
=> $value) {
$this->rulesKriteria->insert(array(
'id_rules' => $id_rules,
'id_kriteria' => $value
));
}
$this->db->trans_complete();
if ($this->db->trans_status() === FALSE) {
echo "error";
}
else {
redirect('/backend/rules');
}
}
public function edit($id)
{
$ls_asnaf = $this->asnaf->all();
UIN Syarif Hidayatullah Jakarta
$ls_kriteria = $this->kriteria->all();
$data = $this->rules->get($id);
$selected_kriteria = $this->rulesKriteria-
>get(array('id_rules' => $id));
$this->twig->display('rules/edit', [
'asnaf' => $ls_asnaf,
'kriteria' => $ls_kriteria,
'data' => $data,
'selected_kriteria' => $selected_kriteria,
]);
}
public function update($id)
{
/**
* 1. save rules ke table rules
* 2. save list kriteria ke table
rules_ls_kriteria
*/
$data = array(
'kode_rule' => $this->input-
>post('kode_rule'),
'id_asnaf' => $this->input->post('asnaf'),
UIN Syarif Hidayatullah Jakarta
);
$cond = array('id' => $id );
$this->db->trans_start();
$this->rules->update($data, $cond);
$this->rulesKriteria->delete(array('id_rules'
=> $id ));
foreach ($this->input->post('kriteria') as $key
=> $value) {
$this->rulesKriteria->insert(array(
'id_rules' => $id,
'id_kriteria' => $value
));
}
$this->db->trans_complete();
if ($this->db->trans_status() === FALSE) {
echo "error";
}
else {
redirect('/backend/rules');
}
}
public function delete($id)
{
UIN Syarif Hidayatullah Jakarta
$cond = array('id' => $id );
$this->db->trans_start();
$this->rules->delete($cond);
$this->rulesKriteria->delete(array('id_rules'
=> $id ));
foreach ($this->input->post('kriteria') as $key
=> $value) {
$this->rulesKriteria->insert(array(
'id_rules' => $id,
'id_kriteria' => $value
));
}
$this->db->trans_complete();
if ($this->db->trans_status() === FALSE) {
echo "error";
}
else {
redirect('/backend/rules');
}
}
5. Kelola User Admin
memilih
Apabila admin
menekan tombol Sesuai public function BackendUser()
{
UIN Syarif Hidayatullah Jakarta
menu kelola
user
delete, maka akan
muncul pesan
konfirmasi
penghapusan. Jika
admin menekan
tombol delete, maka
data user akan
terhapus dari
database.
if(!$this->session->has_userdata('username') &&
$this->session->userdata('admin') !== true){
redirect('admin/login');
}
else {
$this->twig->addGlobal('session', $this-
>session);
}
$users = $this->user->all();
$this->twig->display('users/index',[
'users' => $users
]);
}
6. History
User
Admin
memilih
menu
history user
Apabila admin
menekan tombol
detail, maka akan
ditampilkan detail
pengidentifikasian
yang telah dilakukan
user.
Sesuai
public function BackendHistory()
{
if(!$this->session->has_userdata('username') &&
$this->session->userdata('admin') !== true){
redirect('admin/login');
}
else {
$this->twig->addGlobal('session', $this-
>session);
}
$dt_history = $this->identifikasi->_history();
$this->twig->display('history/index',[
'histories' => $dt_history
UIN Syarif Hidayatullah Jakarta
]);
}
public function BackendHistoryDetail($id = null)
{
if(!$this->session->has_userdata('username') &&
$this->session->userdata('admin') !== true){
redirect('admin/login');
}
else {
$this->twig->addGlobal('session', $this-
>session);
}
$dt_history = $this->identifikasi->get($id);
// $ls_pilihan = $this->relasiIdentifikasi-
>join("kriteria", "kriteria.id_kriteria =
relasi_identifikasi.kode_kriteria");
$ls_pilihan = $this->relasiIdentifikasi-
>get($id);
$this->twig->display('history/detail', [
'history' => $dt_history,
'ls_pilihan' => $ls_pilihan
]);
}
public function delete($id)
{
UIN Syarif Hidayatullah Jakarta
$this->user->delete($id);
if($this->db->affected_rows() > 0) {
return redirect('backend/users');
}
else {
echo "proses gagal!";
}
}
7. Profil
Admin
Admin
memilih
submenu
profil
Apabila admin
menekan icon edit,
maka sistem akan
menampilkan
halaman edit profil
admin.
Sesuai
public function BackendAdminProfil()
{
$this->load->model('Admin_model', 'admin');
$this->twig->addGlobal('session', $this-
>session);
$admin = $this->admin->get($this->session-
>userdata('username'));
$this->twig->display('profil/index', ['data' =>
$admin]);
}
public function BackendAdminProfilEdit()
{
$this->load->model('Admin_model', 'admin');
$this->twig->addGlobal('session', $this-
>session);
$admin = $this->admin->get($this->session-
>userdata('username'));
UIN Syarif Hidayatullah Jakarta
$this->twig->display('profil/edit', ['data' =>
$admin]);
}
public function BackendAdminProsesEditProfil()
{
// echo $this->input->post('nama');
$this->load->model('Admin_model', 'admin');
$admin = $this->admin->get($this->session-
>userdata('username'));
$cond = array('id_admin' => $admin->id_admin );
$data = array(
'nama' => $this->input->post('nama'),
'ttl' => $this->input->post('ttl'),
'alamat' => $this->input->post('alamat'),
'username' => $this->input-
>post('username'),
'password' => $this->input-
>post('password'),
);
// echo "<pre>";
// print_r($data);
// echo "</pre>";
$result = $this->admin->update($cond, $data);
if($result) {
UIN Syarif Hidayatullah Jakarta
redirect('backend/profil');
}
else {
redirect('backend/profil/edit');
}
}
8. Identifikasi
Mustahik
User
memilih
menu
identifikasi
mustahik
Apabila user tidak
mengisi semua field
data diri mustahik,
maka sistem tidak
akan bisa ke halaman
pemilihan kriteria.
Namun apabila data
telah terisi semua,
maka ketika user
menekan tombol next
akan ke halaman
pemilihan kriteria,
dan apabila user
Sesuai
public function proses()
{
$ls_rules_asnaf = $this->rules->join('asnaf',
'rules.id_asnaf = asnaf.id_asnaf');
$ls_ra = array();
foreach ($ls_rules_asnaf as $key => $value) {
$ls_ra[$value->id] = $value;
}
$ls_rules = $this->rulesKriteria->all();
$pilihan = $_POST["pilihan"];
$rules = array();
foreach ($ls_rules as $key => $value) {
$rules[$value->id_rules][] = $value-
>id_kriteria;
}
/**
* cari id kriteria pada rules
UIN Syarif Hidayatullah Jakarta
menekan tombol
finish, maka data akan
tersimpan ke dalam
database.
*/
$choosen_rules = array();
foreach ($pilihan as $k => $v) {
foreach ($rules as $key => $value) {
if(array_search($v, $value ) !== FALSE)
{
$choosen_rules[$key] = $value;
// echo "ketemu di rules ke-".$key.
"<br>";
}
else {
// echo "tidak ditemukan di rules
ke-".$key. "<br>";
}
}
}
/**
* Hitung nilai mb dan md
* bandingkan array pilihan dan array rules
untuk mengetahui jumlah kriteria yang dipilih dari
rules tersebut
* mb = jumlah kriteria yang ditemukan / jumlah
total kriteria suatu rules
* md = jumlah kriteria yang tidak ditemukan /
jumlah total kriteria suatu rules (n: gunakan
array_diff())
UIN Syarif Hidayatullah Jakarta
*/
$n = 0;
$hasil_identifikasi = array();
foreach ($choosen_rules as $key => $rule) {
foreach ($pilihan as $id_pilihan) {
if(in_array($id_pilihan, $rule)) {
$n++;
}
}
$mb = $n / count($rule);
$md = (count($rule) - $n) / count($rule);
$cf = $mb - $md;
$n = 0;
$hasil_identifikasi[$key] = array(
"id_rule" => $key,
"mb" => $mb,
"md" => $md,
"cf" => $cf,
"id_asnaf" => $ls_ra[$key]->id_asnaf,
'hasil' => $ls_ra[$key]->asnaf,
);
}
usort($hasil_identifikasi, function($a, $b) {
return $a['cf'] <= $b['cf'];
});
UIN Syarif Hidayatullah Jakarta
echo json_encode($hasil_identifikasi);
}
9. History
User
memilih
menu
history
Apabila user menekan
tombol detail, maka
akan ditampilkan
detail
pengidentifikasian
yang telah dilakukan
user.
Sesuai
public function detail($id)
{
if($this->session->has_userdata('username') !==
null && $this->session->userdata('admin') !== false){
redirect('auth/login');
}
else {
$this->twig->addGlobal('session', $this-
>session);
}
$dt_history = $this->identifikasi->get($id);
$ls_pilihan = $this->relasiIdentifikasi-
>get($id);
$this->twig->display('home/history/detail', [
'history' => $dt_history,
'ls_pilihan' => $ls_pilihan
]);
}
UIN Syarif Hidayatullah Jakarta
10. Profil User
User
memilih
menu profil
Apabila user menekan
icon edit, maka sistem
akan menampilkan
halaman edit profil
admin.
Sesuai
public function edit()
{
if(!$this->session->has_userdata('username') &&
$this->session->userdata('admin') !== false){
redirect('auth/login');
}
else {
$this->twig->addGlobal('session', $this-
>session);
}
$data = $this->user->get(array('username' =>
$this->session->userdata('username') ));
$this->twig->display('home/profil/edit',
['user' => $data]);
}
11. Logout
User dan
admin
memilih
logout
Apabila user dan
admin memilih
logout, maka akan
muncul pesan
konfimasi untuk
keluar dari sistem.
Sesuai
public function logout() {
$this->session->sess_destroy();
redirect('/');
}
UIN Syarif Hidayatullah Jakarta
Apabila menekan
tombol yes, maka
akan keluar dari
sistem dan kembali ke
halaman awal sistem.
C40 UIN Syarif Hidayatullah Jakarta
Lampiran 8. Tanda Bukti Pengujian User Acceptance Testing
D41 UIN Syarif Hidayatullah Jakarta
Lampiran 9. Salah Satu Hasil Kuesioner Analisis Kebutuhan
UIN Syarif Hidayatullah Jakarta
D43 UIN Syarif Hidayatullah Jakarta
Lampiran 10. Salah Satu Hasil Kuesioner Analisis Sistem