i
PENERAPAN METODE CERTAINTY FACTOR DALAM SISTEM PAKAR PENDETEKSI PENYAKIT KULIT BERBASIS ANDROID
SKRIPSI
Puput Marlin 1411500013
PROGRAM STUDI TEKNIK INFORMATIKA
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER ATMA LUHUR
PANGKALPINANG 2017/2018
ii
PENERAPAN METODE CERTAINTY FACTOR DALAM SISTEM PAKAR PENDETEKSI PENYAKIT KULIT BERBASIS ANDROID
SKRIPSI
Diajukan Untuk Melengkapi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer
Oleh : Puput Marlin
1411500013
PROGRAM STUDI TEKNIK INFORMATIKA
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER ATMA LUHUR
PANGKALPINANG 2017/2018
iii
LEMBAR PERNYATAAN
Yang bertanda tangan di bawah ini :
NIM : 1411500013
Nama : Puput Marlin
Judul Skripsi : PENERAPAN METODE CERTAINTY FACTOR DALAM
SISTEM PAKAR PENDETEKSI PENYAKIT KULIT
BERBASIS ANDROID
Menyatakan bahwa Laporan Tugas Akhir saya adalah hasil karya sendiri dan bukan plagiat. Apabila ternyata ditemukan didalam laporan Tugas Akhir saya terdapat unsur plagiat, maka saya siap untuk mendapatkan sanksi akademik yang terkait dengan hal tersebut.
Pangkalpinang, Agustus 2018
(Puput Marlin)
iv
LEMBAR PENGESAHAN SKRIPSI
PENERAPAN METODE CERTAINTY FACTOR DALAM SISTEM PAKAR PENDETEKSI PENYAKIT KULIT BERBASIS ANDROID
Yang dipersiapkan dan disusun oleh Puput Marlin
1411500013
Telah dipertahankan di depan Dewan Penguji Pada Tanggal 07 Agustus 2018
v
KATA PENGANTAR
Puji syukur Alhamdulillah kehadirat Allah SWT yang telah melimpahkan segala rahmat dan karuniaNya, sehingga penulis dapat menyelesaikan laporan skripsi yang merupakan salah satu persyaratan untuk menyelesaikan jenjang strata satu (S1) pada Program Studi Teknik Informatika STMIK Atma Luhur.
Penulis menyadari bahwa laporan skripsi ini masih jauh dari sempurna.
Karena itu, kritik dan saran akan senantiasa penulis terima dengan senang hati.
Dengan segala keterbatasan, penulis menyadari pula bahwa laporan skripsi ini takkan terwujud tanpa bantuan, bimbingan, dan dorongan dari berbagai pihak.
Untuk itu, dengan segala kerendahan hati, penulis menyampaikan ucapan terima kasih kepada :
1. Allah SWT yang telah menciptakan dan memberikan kehidupan di dunia.
2. Bapak dan Ibu tercinta yang telah mendukung penulis baik spirit maupun materi.
3. Bapak Drs. Djaetun Hs yang telah mendirikan Atma Luhur.
4. Bapak Prof. Dr. Moedjiono, Msc, selaku Ketua STMIK Atma Luhur.
5. Bapak R. Burham Isnanto Farid, S.Si., M.Kom selaku Kaprodi Teknik Informatika
6. Ibu Delpiah Wahyuningsih, M.Kom selaku dosen pembimbing.
7. Bapak Laurentinus, S.Kom., M.T. yang telah membantu dalam menyelesaikan skripsi ini.
8. Saudara dan sahabat-sahabatku terutama kawan-kawan Angkatan 2014 yang telah memberikan dukungan moral untuk terus menyelesaikan skripsi ini.
Semoga Tuhan Yang Maha Esa membalas kebaikan dan selalu mencurahkan hidayah serta taufikNya, Amin.
Pangkalpinang, Agustus 2018
Penulis
vi ABSTRACT
The skin is the largest organ of the human body, which performs various tasks in maintaining human health as a whole. So the bacteria that contaminate the skin can live and then cause skin diseases. If not handled quickly and accurately it can cause death. Lack of knowledge and awareness of the community to cause insensitivity to the symptoms of people who experienced it. Based on the above problems, built an expert system that can help people in diagnosing skin diseases by knowing the possible value of the disease. In building this expert system using a prototype model that uses the approach to make things quickly and gradually so that it can be evaluated by the user. While the method of system development using object-oriented programming method and using unified modeling language as its tools. As in this expert system applied certainty factor method as a reasoning method to determine the results of diagnosis based on the symptoms shown. The system also provides treatment advice based on the type of skin disease experienced. The results of this study is an expert system that can detect 12 types of skin diseases with 40 types of skin disease symptoms by giving the percentage of the possible occurrence of a type of skin disease.
Keywords : Expert System, Certainty Factor, Skin Disease, Android
vii ABSTRAK
Kulit adalah organ terbesar pada tubuh manusia, yang menjalankan berbagai tugas dalam memelihara kesehatan manusia secara utuh. Sehingga bakteri yang mengontaminasi kulit dapat hidup dan kemudian menimbulkan penyakit kulit.
Apabila tidak ditangani dengan cepat dan tepat maka dapat menyebabkan kematian. Kurangnya pengetahuan dan kesadaran masyarakat menjadi penyebab tidak pekanya masyarakat terhadap gejala yang dialaminya. Berdasarkan permasalahan diatas, dibangun sebuah sistem pakar yang dapat membantu masyarakat dalam mendiagnosis penyakit kulit dengan mengetahui nilai kemungkinan dari penyakit tersebut. Dalam membangun sistem pakar ini menggunakan model prototype yang menggunakan pendekatan untuk membuat sesuatu program dengan cepat dan bertahap sehingga segera dapat dievaluasi oleh pemakai. Sedangkan metode pengembangan sistem menggunakan metode object oriented programming dan menggunakan unified modelling language sebagai tools-nya. Adapun dalam sistem pakar ini diterapkan metode certainty factor sebagai metode penalaran untuk menentukan hasil diagnosa berdasarkan gejala yang ditunjukkan. Sistem juga memberikan saran pengobatan berdasarkan jenis penyakit kulit yang dialami. Hasil dari penelitian ini adalah sebuah sistem pakar yang dapat mendeteksi 12 jenis penyakit kulit dengan 40 jenis gejala penyakit kulit dengan memberikan hasil persentasi kemungkinan terjadinya suatu jenis penyakit kulit.
Kata Kunci : Sistem Pakar, Certainty Factor, Penyakit Kulit, Android
viii DAFTAR ISI
LEMBAR JUDUL ... i
LEMBAR PERNYATAAN ... iii
LEMBAR PENGESAHAN SKRIPSI ... iv
KATA PENGANTAR ... v
ABSTRACT ... vi
ABSTRAK ... vii
DAFTAR ISI ... viii
DAFTAR GAMBAR ... xi
DAFTAR TABEL ... xiv
DAFTAR SIMBOL ... xv
DAFTAR LAMPIRAN ... xix
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang ... 1
1.2 Rumusan Masalah ... 3
1.3 Tujuan dan Manfaat Penelitian ... 3
1.3.1 Tujuan Penilitan ... 3
1.3.2 Manfaat Penilitan ... 4
1.4 Batasan Masalah... 4
1.5 Sistematika Penelitian ... 4
BAB II LANDASAN TEORI ... 6
2.1 Model Pengembangan Perangkat Lunak ... 6
2.2 Metode Pengembangan Perangkat Lunak ... 7
2.3 Tools Pengembangan Perangkat Lunak... 8
2.3.1 Use Case Diagram ... 8
2.3.2 Activity Diagram ... 8
2.3.3 Class Diagram ... 9
2.3.4 Sequence Diagram ... 10
ix
2.4 Teori Pendukung ... 10
2.4.1 Kulit ... 10
2.4.1.1 Fungsi Kulit ... 10
2.4.1.2 Penyakit Kulit ... 11
2.4.1.3 Jenis-jenis Penyakit Kulit ... 11
2.4.2 Artificial Intelligence (AI) ... 15
2.4.3 Sistem Pakar ... 16
2.4.3.1 Struktur Sistem Pakar ... 17
2.4.3.2 Mesin Inferensi ... 18
2.4.4 Metode Certainty Factor (CF)... 19
2.4.5 Java ... 20
2.4.6 Android ... 20
2.4.6.1 Karakteristik Android ... 20
2.4.7 PHP ... 21
2.4.8 MySQL ... 22
2.4.9 Pengujian Black Box ... 22
2.5 Penelitian Terdahulu ... 22
BAB III METODOLOGI PENELITIAN ... 25
3.1 Model Pengembangan Sistem... 25
3.2 Metode Pengembangan Sistem ... 26
3.3 Tools Pengembangan Sistem ... 26
3.3.1 Use Case Diagram ... 26
3.3.2 Activity Diagram ... 26
3.3.3 Class Diagram ... 26
3.3.4 Sequence Diagram ... 27
3.4 Certainty Factor ... 27
BAB IV HASIL DAN PEMBAHASAN ... 28
4.1 Tempat Riset ... 28
x
4.2 Analisis Masalah ... 28
4.2.1 Analisis Kebutuhan ... 28
4.2.2 Analisis Sistem Berjalan ... 29
4.2.3 Analisis Metode Certainty Factor ... 31
4.2.3.1 Penentuan Relasi Penyakit dan Gejala ... 31
4.2.3.2 Nilai Kepastian ... 34
4.2.3.3 Perhitungan Metode Certainty Factor ... 36
4.3 Perancangan Sistem ... 38
4.3.1 Identifikasi Sistem Usulan ... 38
4.3.2 Rancangan Sistem ... 38
4.3.3 Rancangan Layar ... 51
4.4 Implementasi... 63
4.4.1 Coding ... 63
4.4.2 Tampilan Layar ... 65
4.4.3 Pengujian Sistem ... 77
4.4.3.1 Pengujian Black Box Perbandingan ... 77
4.4.3.2 Pengujian Black Box Admin ... 80
4.4.3.3 Pengujian Black Box User ... 83
BAB V KESIMPULAN DAN SARAN ... 85
5.1 Kesimpulan ... 85
5.2 Saran ... 85 DAFTAR PUSTAKA
LAMPIRAN
xi
DAFTAR GAMBAR
Gambar 2.1 Model Prototype ... 6
Gambar 2.2 Contoh Use Case Diagram... 8
Gambar 2.3 Contoh Activity Diagram... 9
Gambar 2.4 Contoh Class Diagram ... 9
Gambar 2.5 Contoh Sequence Diagram ... 10
Gambar 2.6 Kusta ... 11
Gambar 2.7 Tinea Nigra Palmaris ... 12
Gambar 2.8 Herpes Zoster ... 12
Gambar 2.9 Varisela ... 12
Gambar 2.10 Dermatitis Atopik ... 13
Gambar 2.11 Dermatitis Stasis ... 13
Gambar 2.12 Psoriasis ... 13
Gambar 2.13 Melanoma ... 14
Gambar 2.14 Hemangioma ... 14
Gambar 2.15 Rosacea ... 14
Gambar 2.16 Lupus Eritematosus Kutan ... 15
Gambar 2.17 Vitiligo... 15
Gambar 2.18 Tahap-tahap pengembangan sistem pakar ... 16
Gambar 2.19 Struktur Sistem Pakar ... 17
Gambar 2.20 Metode Net Belief ... 19
Gambar 4.1 Activity Diagram Sistem Berjalan ... 30
Gambar 4.2 Use Case Diagram Admin ... 39
Gambar 4.3 Use Case Diagram Masyarakat ... 42
Gambar 4.4 Class Diagram ... 44
Gambar 4.5 Sequence Diagram Admin Login ... 45
Gambar 4.6 Sequence Diagram Admin Home... 46
Gambar 4.7 Sequence Diagram Admin Data Penyakit ... 46
Gambar 4.8 Sequence Diagram Admin Data Gejala ... 47
Gambar 4.9 Sequence Diagram Admin Data Metode Kepastian... 47
xii
Gambar 4.10 Sequence Diagram Admin Diagnosa ... 48
Gambar 4.11 Sequence Diagram Admin Logout ... 48
Gambar 4.12 Sequence Diagram Masyarakat Panduan ... 49
Gambar 4.13 Sequence Diagram Masyarakat Diagnosa ... 49
Gambar 4.14 Sequence Diagram Masyarakat Istilah Gejala ... 50
Gambar 4.15 Sequence Diagram Masyarakat Istilah Penyakit ... 50
Gambar 4.16 Sequence Diagram Masyarakat Profil ... 51
Gambar 4.17 Rancangan Layar Login... 52
Gambar 4.18 Rancangan Layar Home ... 52
Gambar 4.19 Rancangan Layar Data Penyakit ... 53
Gambar 4.20 Rancangan Layar Tambah Data Penyakit ... 53
Gambar 4.21 Rancangan Layar Edit Data Penyakit ... 54
Gambar 4.22 Rancangan Layar Data Gejala ... 54
Gambar 4.23 Rancangan Layar Tambah Data Gejala ... 55
Gambar 4.24 Rancangan Layar Edit Data Gejala ... 55
Gambar 4.25 Rancangan Layar Data Metode Kepastian ... 56
Gambar 4.26 Rancangan Layar Tambah Metode Kepastian... 56
Gambar 4.27 Rancangan Layar Edit Data Metode Kepastian ... 57
Gambar 4.28 Rancangan Layar Diagnosa ... 57
Gambar 4.29 Rancangan Layar Hasil Diagnosa ... 58
Gambar 4.30 Rancangan Layar Detail Hasil Diagnosa ... 58
Gambar 4.31 Rancangan Layar Splash Screen ... 59
Gambar 4.32 Rancangan Layar Home ... 59
Gambar 4.33 Rancangan Layar Panduan ... 60
Gambar 4.34 Rancangan Layar Diagnosa ... 60
Gambar 4.35 Rancangan Layar Hasil Diagnosa ... 61
Gambar 4.36 Rancangan Layar Istilah Gejala ... 61
Gambar 4.37 Rancangan Layar Istilah Penyakit ... 62
Gambar 4.38 Rancangan Layar Detail Istilah Penyakit ... 62
Gambar 4.39 Rancangan Layar Profil ... 63
Gambar 4.40 Coding Menampilkan Daftar Gejala ... 64
xiii
Gambar 4.41 Coding Mengambil Data Gejala Yang Dipilih ... 64
Gambar 4.42 Coding Mengambil Data Penyakit Berdasarkan Gejala Yang Dipilih ... 64
Gambar 4.43 Coding Perhitungan Metode CF ... 65
Gambar 4.44 Tampilan Layar Admin Login ... 65
Gambar 4.45 Tampilan Layar Admin Home ... 66
Gambar 4.46 Tampilan Layar Admin Data Penyakit ... 66
Gambar 4.47 Tampilan Layar Admin Tambah Data Penyakit ... 67
Gambar 4.48 Tampilan Layar Admin Edit Data Penyakit ... 67
Gambar 4.49 Tampilan Layar Admin Data Gejala ... 68
Gambar 4.50 Tampilan Layar Admin Tambah Data Gejala ... 68
Gambar 4.51 Tampilan Layar Admin Edit Data Gejala ... 69
Gambar 4.52 Tampilan Layar Admin Data Metode Kepastian ... 69
Gambar 4.53 Tampilan Layar Admin Tambah Data Metode Kepastian ... 70
Gambar 4.54 Tampilan Layar Admin Edit Data Metode Kepastian ... 70
Gambar 4.55 Tampilan Layar Admin Diagnosa ... 71
Gambar 4.56 Tampilan Layar Admin Hasil Diagnosa ... 71
Gambar 4.57 Tampilan Layar Admin Detail Hasil Diagnosa ... 72
Gambar 4.58 Tampilan Layar Masyarakat Splash Screen ... 73
Gambar 4.59 Tampilan Layar Masyarakat Home ... 73
Gambar 4.60 Tampilan Layar Masyarakat Panduan ... 74
Gambar 4.61 Tampilan Layar Masyarakat Diagnosa ... 74
Gambar 4.62 Tampilan Layar Masyarakat Hasil Diagnosa ... 75
Gambar 4.63 Tampilan Layar Masyarakat Istilah Gejala ... 75
Gambar 4.64 Tampilan Layar Masyarakat Istilah Penyakit ... 76
Gambar 4.65 Tampilan Layar Masyarakat Detail Istilah Penyakit ... 76
Gambar 4.66 Tampilan Layar Masyarakat Profil ... 77
xiv
DAFTAR TABEL
Tabel 2.1 Rule term ... 20
Tabel 4.1 Spesifikasi Perangkat Keras (Hardware) ... 28
Tabel 4.2 Tabel Spesifikasi Smartphone Android ... 29
Tabel 4.3 Tabel Relasi Penyakit Kulit dan Gejala ... 31
Tabel 4.4 Nilai CF Gejala Penyakit Kulit ... 35
Tabel 4.5 Penyakit yang terhubung dengan gejala yang dipilih ... 37
Tabel 4.6 Deskripsi Use Case Login ... 39
Tabel 4.7 Deskripsi Use Case Home ... 40
Tabel 4.8 Deskripsi Use Case Data Penyakit ... 40
Tabel 4.9 Deskripsi Use Case Data Gejala ... 40
Tabel 4.10 Deskripsi Use Case Data Metode Kepastian ... 41
Tabel 4.11 Deskripsi Use Case Diagnosa ... 41
Tabel 4.12 Deskripsi Use Case Logout ... 42
Tabel 4.13 Deskripsi Use Case Panduan ... 43
Tabel 4.14 Deskripsi Use Case Diagnosa ... 43
Tabel 4.15 Deskripsi Use Case Istilah Gejala ... 43
Tabel 4.16 Deskripsi Use Case Istilah Penyakit ... 44
Tabel 4.17 Deskripsi Use Case Profil ... 44
Tabel 4.18 Pengujian Black Box Perbandingan ... 78
Tabel 4.19 Pengujian Black Box Admin ... 80
Tabel 4.20 Pengujian Black Box User ... 83
xv DAFTAR SIMBOL
UML (Unified Modelling Language) 1. Use Case Diagram
No. Simbol Keterangan
1.
Actor
Actor adalah pengguna sistem.
Actor tidak terbatas hanya manusia saja, jika sebuah sistem berkomunikasi dengan aplikasi lain dan membutuhkan input atau memberikan output, maka aplikasi tersebut juga bisa dianggap sebagai actor.
2.
Use Case
Use case digambarkan sebagai lingkaran elips dengan nama use case dituliskan didalam elips tersebut.
3.
Association
Asosiasi digunakan untuk menghubungkan actor dengan use case. Asosiasi digambarkan dengan sebuah garis yang menghubungkan antara Actor dengan Use Case.
4.
Include
Menunjukkan bahwa suatu usecase seluruhnya merupakan fungsionalitas dari use case lainnya.
5.
Extend
Menunjukkan suatu usecase merupakan tambahan fungsional dari use case lainnya jika suatu kondisi terpenuhi.
xvi 2. Activity Diagram
No. Simbol Keterangan
1. Titik Awal
2. Titik Akhir
3.
Activity
4. Pilihan untuk mengambil
Keputusan
5.
Fork. Digunakan untuk menunjukkan kegiatan yang dilakukan secara parallel atau untuk menggabungkan dua kegiatan peralel menjadi satu.
6.
Rake. Menunjukkan adanya dekomposisi
7. Tanda Waktu
8. Tanda pengiriman
9. Tanda penerimaan
10. Aliran akhir (flow final)
3. Sequence Diagram
No. Simbol Keterangan
1.
Actor
Actor juga dapat berkomunikasi dengan object, maka actor dapat diurutkan sebagai kolom.
Simbol Actor sama dengan simbol pada Actor Use Case Diagram.
xvii 2.
Entity class
Menggambarkan hubungan
kegiatan yang akan dilakukan.
3.
Boundary Class
Menggambarkan sebuah
penggambaran dari form.
4.
Control Class
Menggambarkan penghubung antara boundary dengan tabel.
5.
Lifeline
Menggambarkan tempat mulai
dan berakhirnya sebuah
message.
6.
Message
Message, digambarkan dengan anak panah horizontal antara
Activation. Message
mengindikasikan komunikasi antara object-object.
4. Class Diagram
No. Simbol Keterangan
1.
Class
Class adalah blok - blok pembangun pada pemrograman berorientasi obyek.
Sebuah class digambarkan sebagai sebuah kotak yang terbagi atas 3 bagian. Bagian atas adalah bagian nama dari class. Bagian tengah mendefinisikan property/atribut class. Bagian akhir mendefinisikan method dari sebuah class.
xviii 2.
Association
Sebuah asosiasi merupakan sebuah relationship paling umum antara 2 class, dan dilambangkan oleh sebuah garis yang menghubungkan antara 2 class.
Garis ini bisa melambangkan tipe-tipe
relationship dan juga dapat
menampilkan hukum-hukum
multiplisitas pada sebuah relationship (Contoh: One-to- one, one-to-many, many-to- many).
xix
DAFTAR LAMPIRAN
Lampiran I Kartu Bimbingan
Lampiran II Biodata
Lampiran III Surat Riset
Lampiran IV Data Wawancara
Lampiran V Berita Acara Sidang Pendadaran Skripsi Lampiran VI Lembar Revisi Sidang Pendadaran Skripsi