TA : Sistem Pakar Identifikasi Penyakit Kulit Anjing Menggunakan Metode Certainty Factor.
SISTEM PAKAR IDENTIFIKASI PENYAKIT KULIT
ANJING MENGGUNAKAN METODE CERTAINTY
FACTOR
TUGAS AKHIR
Program Studi S1 Sistem Informasi
Oleh:
ARNAZ MALIKUL HAKIM 08410100450
FAKULTAS TEKNOLOGI DAN INFORMATIKA
INSTITUT BISNIS DAN INFORMATIKA STIKOM SURABAYA 2015
(2)
x
DAFTAR ISI
Halaman
ABSTRAK ... vii
KATA PENGANTAR ... viii
DAFTAR ISI ... x
DAFTAR TABEL ... xiii
DAFTAR GAMBAR ... xv
DAFTAR LAMPIRAN ... xvii
BAB I PENDAHULUAN ... 1
1.1Latar Belakang Masalah ... 1
1.2Rumusan Masalah ... 3
1.3Batasan Masalah ... 3
1.4Tujuan ... 4
1.5Manfaat ... 4
1.6Sistematika Penulisan ... 4
BAB II LANDASAN TEORI ... 6
2.1Sistem Pakar ... 6
2.2Konsep Dasar Sistem Pakar ... 6
2.3Kategori Masalah Sistem Pakar ... 7
2.4Bagan Sistem Pakar ... 9
2.5Certainty Factor ... 10
2.6Perhitungan Certainty Factor ... 10
2.7Probabilitas Dalam Kedokteran ... 12
(3)
xi
Halaman
BAB III METODE PENELITIAN... 15
3.1Studi Kelayakan Sistem ... 16
3.2Perencanaan Kebutuhan Perangkat Lunak ... 17
3.3Desain Produk Diagram Blok ... 18
3.3.1 Komponen User Pada Diagram Blok ... 19
3.3.2 Komponen Interface Pada Diagram Blok ... 19
3.3.3 Komponen Knowladge-base Pada Diagram Blok ... 20
3.3.4 Komponen Inference Engine Pada Diagram Blok ... 29
3.4Desain Terperinci ... 31
3.4.1 Diagram Alir Sistem Pakar ... 31
3.4.2 Conceptual Data Model ... 35
3.4.3 Physical Data Model ... 36
3.4.4 Struktur Tabel ... 36
3.4.5 Desain Antarmuka ... 38
3.4.6 Desain Uji Coba... 49
3.5Rancangan Kode Aplikasi ... 53
3.5.1 Mengelola Data Penyakit ... 53
3.5.2 Mengelola Data Gejala ... 57
3.5.3 Mengelola Data CF ... 61
3.5.4 Form Konsultasi ... 65
BAB IV IMPLEMENTASI DAN EVALUASI ... 68
4.1Kebutuhan Sistem ... 68
(4)
xii
4.2Implementasi Aplikasi ... 69
4.2.1 Implementasi Aplikasi Untuk Admin ... 69
4.2.2 Implementasi Aplikasi Untuk Pemelihara Anjing ... 76
4.3Uji Coba Sistem ... 81
4.4Evaluasi Sistem ... 85
4.2.1 Perhitungan CF ... 85
4.2.2 Tingkat Akurasi Aplikasi ... 87
BAB V PENUTUP ... 88
5.1Kesimpulan ... 88
5.2Saran ... 88
DAFTAR PUSTAKA ... 89
(5)
1
BAB I PENDAHULUAN
1.1 Latar Belakang
Anjing merupakan salah satu hewan yang umum dijadikan peliharaan. Anjing menjadi hewan peliharaan favorit karena dinilai sebagai hewan yang cerdas dan setia. Anjing banyak digunakan untuk membantu tugas manusia seperti menjaga rumah, karena memiliki kelebihan pada indera pengelihatan, penciuman dan pendengaran. Anjing dapat menjadi teman bermain dan menjadi sahabat bagi manusia karena sifatnya yang setia. Penyakit kulit adalah masalah umum pada anjing. Kondisi kulit pada anjing dapat menunjukkan kesehatan umum anjing. Kulit anjing lebih tipis dan sensitif terhadap cedera dari kulit manusia. Kulit anjing mudah rusak akibat penanganan yang buruk dengan kesalahan memilih peralatan perawatan. Kondisi kulit rusak yang disebabkan luka berat atau gangguan lainnya cenderung lebih mudah menyebar dan menjadi masalah besar (M. Eldredge, 2007).
Indonesia merupakan negara beriklim tropis dengan kelembaban udara yang tinggi sehingga jamur dan parasit mudah berkembangbiak, dimana jamur dan parasit merupakan salah satu penyebab penyakit kulit pada anjing. Penyakit kulit pada anjing dapat mengurangi nilai keindahan serta mengakibatkan perubahan perilaku, sehingga tidak dapat membantu kegiatan manusia secara maksimal. Penyakit kulit anjing dapat menyebabkan infeksi sehingga dapat menyiksa kondisi anjing, jika tidak ditangani secara cepat dapat berakhir dengan
(6)
amputasi. Penyakit kulit pada anjing membutuhkan penanganan secara cepat karena dapat menular pada hewan lain dan manusia serta dapat menyebabkan munculnya jenis penyakit lainnya secara bersamaan bahkan dapat berakhir dengan kematian.
Penyakit kulit anjing memiliki kesamaan gejala antara satu dengan yang lainnya. Gejala yang sama bisa berasal dari penyebab yang berbeda, sehingga sebagai orang awam sangat sukar dalam melakukan identifikasi terhadap penyakit berdasarkan gejala yang ditemukan. Hubungan antara gejala terhadap suatu penyakit dapat diketahui oleh pakar dengan mengukur tingkat keyakinan pakar pada gejala yang ditemukan terhadap suatu penyakit. Perkembangan ilmu kedokteran hewan pada penyakit kulit berdampak pada ditemukannya gangguan kulit baru yang mengakibatkan ditemukannya penyakit kulit baru. Kurangnya sarana yang mampu memberikan informasi tentang penyakit kulit anjing serta cara menanganinya menjadikan alasan dibutuhkannya alat bantu untuk melakukan identifikasi terhadap penyakit kulit anjing agar kondisi anjing tidak bertambah buruk.
Sistem pakar merupakan solusi yang diberikan menanggapi permasalahan tersebut. Sistem pakar tersebut dirancang bertugas untuk mengidentifikasi penyakit kulit anjing layaknya seorang dokter hewan yang bisa diakses tanpa terbatas waktu dan tempat. Berdasarkan banyaknya kesamaan gejala yang dapat ditemukan diberbagai macam penyakit serta untuk menampilkan tingkat kepercayaan pakar terhadap suatu penyakit berdasarkan gejala yang ditemukan sehingga untuk mempermudah identifikasi terhadap penyakit maka sistem pakar dirancang menggunakan metode CF (certainty factor). Informasi yang diberikan
(7)
adalah daftar peringkat penyakit yang diurutkan berdasarkan tingkat kepercayaan pakar dengan saran pengobatan berupa tindakan awal yang harus dilakukan. Sistem pakar tersebut diharapkan dapat bermanfaat bagi pemilik anjing dalam melakukan identifikasi penyakit kulit serta mampu memberikan informasi tindakan awal yang harus dilakukan.
1.2 Rumusan Masalah
Berdasarkan latar belakang yang telah diuraikan diatas, maka dapat dirumuskan permasalahan sebagai berikut:
1. Bagaimana merancang sistem pakar untuk mengidentifikasi penyakit kulit
anjing menggunakan metode certainty factor.
2. Bagaimana membangun sistem pakar yang dapat memberikan informasi
penanganan awal terhadap penyakit kulit yang telah teridentifikasi.
1.3 Batasan Masalah
Batasan masalah dalam penelitian ini adalah sebagai berikut:
1. Penyakit kulit yang dibahas merupakan penyakit kulit yang disebabkan oleh
jamur dan parasit.
2. Identifikasi penyakit kulit dilakukan berdasarkan gejala yang ditemukan pada
anjing.
3. Rule yang dipakai dalam metode certainty factor menggunakan single premise.
4. Tidak membahas tahapan operasi dan pemeliharaan pada proses
(8)
1.4 Tujuan
Tujuan dalam penelitian ini yaitu sebagai berikut:
1. Merancang sistem pakar untuk mengidentifikasi penyakit kulit anjing
menggunakan metode certainty factor.
2. Membangun sistem pakar yang dapat memberikan informasi penanganan awal
terhadap penyakit kulit yang telah teridentifikasi.
1.5 Manfaat
Manfaat dari aplikasi yang dibangun adalah untuk membantu pemelihara anjing dalam mengidentifikasi penyakit kulit anjing berdasarkan gejala yang ditemukan, serta memberikan informasi tentang penanganan awal yang harus dilakukan. Sistem pakar ini juga bertujuan untuk menyebarkan informasi berupa pengetahuan dari pakar agar dapat berguna bagi pemilik anjing serta bermanfaat sebagai sarana pembelajaran untuk mengidentifikasi penyakit kulit anjing.
1.6 Sistematika Penulisan
Sistematika yang digunakan dalam penyuunan laporan ini dibedakan dengan pembagaian bab sebagai berikut:
Bab I : Pendahuluan
Bab ini membahas latar belakang, rumusan masalah, batasan masalah, tujuan dan manfaat dibangunnya sistem pakar identifikasi penyakit kulit anjing, serta membahas sistematika penulisan laporan.
(9)
Bab II : Landasan Teori
Bab ini membahas teori yang digunakan dalam penelitain tugas akhir yang dilakukan, diantaranya teori sistem pakar, konsep dasar sistem pakar, kategori masalah sistem pakar, metode
certainty factor dan perhitunan certainty factor.
Bab III : Metode Penelitian
Bab ini menjelaskan tahapan-tahapan yang dilakukan dalam membangun sistem pakar identifikasi penyakit kulit. Tahapan tersebut adalah studi kelayakan sistem, perencanaan kebutuhan perangkat lunak, desain produk, desain terperinci dan pengkodean.
Bab IV : Implementasi dan Evaluasi
Bab ini menjelaskan tahapan uji coba dan implementasi untuk mengetahui kesesuaian antara hasil yang diberikan sistem pakar dengan tujuan yang diharapkan melalui pengujian bersama dokter berdasarkan catatan riwayat penyakit kulit anjing.
Bab V : Penutup
Bab ini berisi penarikan kesimpulan berdasarkan hasil evaluasi sistem dan saran yang dapat digunakan dalam pengembangan sistem pakar.
(10)
6
LANDASAN TEORI
2.1 Sistem Pakar
Sistem pakar adalah suatu sistem komputer yang menyamai kemampuan pengambilan keputusan dari seorang pakar, istilah menyamai berarti bahwa sistem pakar diharapkan dapat bekerja dalam semua hal seperti seorang pakar. Sistem pakar berfungsi sangat baik dalam batasan domainnya. Hal ini dapat dibuktikan bahwa sistem pakar telah banyak diaplikasikan dalam berbagai bidang seperti bisnis, kedokteran, ilmu pengetahuan dan teknik (Arhami, 2004).
Pengalihan keahlian dari para ahli untuk kemudian dialihkan lagi ke orang lain yang bukan ahli merupakan tujuan utama dari sistem pakar. Proses ini membutuhkan empat aktivitas yaitu:
1. Tambahan pengetahuan dari para ahli atau sumber lainnya.
2. Representasi pengetahuan ke komputer.
3. Inferensi pengetahuan atau kemampuan untuk menalar pengetahuan.
4. Pengalihan pengetahuan ke pengguna.
2.2 Konsep Dasar Sistem Pakar
Bagian dalam sistem pakar terdiri dari dua komponen utama yaitu
knowledge-base (basis pengetahuan) yang berisi knowledge (pengetahuan) dan inference engine (mesin inferensi) yang menggambarkan kesimpulan. Pengguna
menyampaikan fakta atau informasi untuk sistem pakar dan kemudian menerima saran dari pakar.
(11)
Basis pengetahuan mengandung pengetahuan untuk pemahaman, formulasi dan penyelesaian masalah. Komponen sistem pakar ini disusun atas dua elemen dasar, yaitu fakta dan aturan. Fakta merupakan informasi tentang obyek dalam area permasalahan tertentu, sedangkan aturan merupakan informasi tentang cara bagaimana memperoleh fakta baru dari fakta yang sudah ada. Mesin inferensi mengandung mekanisme pola pikir dan penalaran yang digunakan oleh pakar dalam menyelesaikan suatu masalah.
Pengetahuan dari sistem pakar bersifat khusus untuk satu domain masalah saja. Domain masalah adalah bidang atau ruang lingkup yang khusus seperti bisnis, kedokteran, ilmu pengetahuan dan teknik.Sistem pakar menyerupai kepakaran manusia yang secara umum dirancang untuk menjadi pakar dalam satu domain masalah saja. Tabel dibawah ini akan menjelaskan perbandingan kemampuan antara seorang pakar dengan sebuah sistem pakar:
Tabel 2.1. Perbandingan Kemampuan Seorang Pakar Dengan Sistem Pakar
Faktor Seorang Pakar Sistem Pakar Time availability Hari kerja Setiap saat
Geografis Lokal/tertentu Di mana saja
Keamanan Tidak tergantikam Dapat diganti
Perishable (dapat habis) Ya Tidak
Performansi Variable Konsisten
Kecepatan Variable Konsisten
Biaya Tinggi Terjangkau
2.3 Kategori Masalah Sistem Pakar
Sistem pakar saat ini telah dibuat untuk memecahkan berbagai macam permasalahan dalam berbagai bidang. Secara umum ada beberapa kategori dan area permasalahan dalam sistem pakar, yaitu :
(12)
1. Interpretasi, yaitu pengambilan keputusan atau deskripsi tingkat tinggi dari sekumpulan data mentah.
2. Proyeksi, yaitu memprediksi akibat-akibat yang dimungkinkan dari
situasi-situasi tertentu.
3. Diagnosis, yaitu menentukan sebab malfungsi dalam situasi kompleks yang
didasarkan gejala-gejala yang teramati.
4. Desain, yaitu menentukan konfigurasi komponen-komponen sistem yang
cocok dengan tujuan-tujuan tertentu yang memenuhi kendala-kendala tertentu.
5. Perencanaan, yaitu merrncanakan serangkaian tindakan yang akan dapat
mencapai sejumlah tujuan dengan kondisi awal tertentu.
6. Monitoring, yaitu membandingkan tingkah laku suatu sistem yang teramati
dengan tingkah laku yang diharapkan.
7. Debugging and repair, yaitu menentukan dan mengimplementasikan
cara-cara untuk mengatasi malfungsi.
8. Instruksi, yaitu mendeteksi dan mengoreksi defisiensi dalam pemahaman
domain subjek.
9. Pengendalian, yaitu mengatur tingkah laku suatu environment yang kompleks
seperti kontrol terhadap interpretasi-interpretasi, prediksi, perbaikan dan
monitoring kelakuan sistem.
10. Seleksi, mengidentifikasi pilihan terbaik dari sekumpulan kemungkinan.
(13)
2.4 Bagan Sistem Pakar
Bagian dalam sistem pakar terdiri dari dua komponen utama yaitu
knowledge-base (basis pengetahuan) yang berisi knowledge (pengetahuan) dan inference engine (mesin inferensi) yang menggambarkan kesimpulan (Arhami,2004). Gambar 2.1 dibawah ini merupakan bagan konsep dasar fungsi sistem pakar.
Gambar 2.1 Bagan Sistem Pakar
User atau pengguna memasukkan fakta pada sistem pakar, sistem pakar
akan mengakses knowledge-base yang berisi pengetahuan untuk di proses pada
inference engine. Fakta yang merupakan masukan dari user akan mengeluarkan output berupa keahlian setelah diproses dalam inference engine.
Knowledge-base atau basis pengetahuan mengandung pengetahuan untuk
pemahaman, formulasi, dan penyelesaian masalah. Komponen sistem pakar ini disusun atas dua elemen dasar, yaitu fakta dan aturan. Fakta merupakan informasi tentang obyek dalam area permasalahn tertentu, sedangkan aturan merupakan informasi tentang cara bagaimana memperoleh fakta baru dari fakta yang telah diketahui (Arhami,2004).
Inference engine atau mesin inferensi adalah penerjemah pengetahuan
(14)
knowledge-base serta akumulasi data tentang masalah saat ini dari data tambahan
dan kesimpulan (Gonzalez, 1993).
2.5 Certainty Factor
Certainty factor merupakan cara dari penggabungan kepercayaan dan
ketidakpercayaan dalam bilangan yang tunggal. Dalam mengekspresikan derajat keyakinan, certainty theory menggunakan suatu nilai yang disebut certainty factor untuk mengasumsikan derajat keyakinan seorang pakar terhadap suatu data.
Certainty factor memperkenalkan konsep belief/keyakinan dan
disbelief/ketidakyakinan. Konsep ini kemudian diformulasikan dalam rumusan
dasar sebagai berikut:
CF[H,E] = MB[H,E] –MD[H,E]………..(1)
Keterangan:
CF = Certainty Factor dalam hipotesis H yang dipengaruhi oleh fakte E.
MB = Measure of Belief, merupakan ukuran kenaikan dari kepercayaan
hipotesis H dipengaruhi oleh fakta E.
MD = Measure of Disbelief, merupakan kenaikan dari ketidakpercayaan
hipotesis H dipengaruhi oleh fakta E.
2.6 Perhitungan Certainty Factor
Selama knowledge base dieksekusi, beberapa aturan biasanya mampu menurunkan hipotesis atau kesimpulan yang sama. Akibatnya, harus ada beberapa mekanisme untuk menggabungkan setiap aturan CF dengan yang lain yang telah diturunkan untuk menghasilkan CF tunggal untuk hipotesis tersebut. Rumus CF
(15)
yang digunakan untuk melakukan penggabungan agar menghasilan nilai CF baru menggunakan persamaan berikut:
jika dan > 0 ………...(2)
jika dan < 0 ………...(3)
jika salah satu dan
< 0
………...(4)
Semua aturan yang diketahui menjadi kebenaran dengan keyakinan mutlak, maka setiap aturan akan mendapatkan nilai CF masing-masing, seperti contoh berikut:
IF A then Q (CF = 0.75)
Aturan tersebut memiliki nilai CF sebesar 0.75, dimana aturan tersebut bersifat single premise, maksudnya aturan tersebut hanya memiliki satu sebab dan satu akibat tanpa adanya kata hubung seperti pernyataan majemuk. Nilai CF yang dihasilkan dari aturan tersebut akan menjadi hasil dari CF hipotesis yang dinyatakan dalam aturan dan CF evidence dengan rumus sebagai berikut:
……….(5)
Keterangan:
: Nilai CF yang menjadi CF Hipotesis.
: Nilai CF berdasarkan aturan yang diperoleh dari pakar. : Nilai CF berdasarkan masukan dari pengguna
Nilai CF rule dan CF evidence tersebut diperoleh berdasarkan nilai yang terdapat pada tabel 2.2 tentang interpretasi nilai CF berikut ini:
(16)
Tabel 2.2. Interpretasi Nilai CF
Uncertain Term CF
Definitely not (pasti tidak) -1.0
Almost certainly not (hampir pasti tidak) -0.8
Probably not (kemungkinan besar tidak) -0.6
Maybe not(mungkin tidak) -0.4
Unknown (tidak tahu) -0.2 sampai 0.2
Maybe (mungkin) 0.4
Probably (kemungkinan besar) 0.6
Almost certainly (hampir pasti) 0.8
Definitely (pasti) 1.0
Sumber: Buku Kecerdasan Buatan (Sutojo, Mulyanto & Suhartono,2010,195-196)
Tabel 2.2 menampilkan interpretasi nilai CF untuk menunjukkan tingkat keyakinan terhadap suatu fakta. Tingkat keyakinan yang mengandung kepastian tinggi memiliki nilai CF yang bernilai positif, sedangkan tingkat keyakinan yang mengandung kepastian rendah memiliki nilai CF negatif.
2.7 Probabilitas Dalam Kedokteran
Instrumen berpikir dokter adalah logika dan probabilitas. Dokter mengambil kesimpulan, misalnya merumuskan diagnosis pasien dengan data yang tidak menentu atau tidak pasti. Dokter tidak mungkin memberikan kepastian 100% bahwa diagnosis benar dan terapi berhasil. Prevalensi merupakan salah satu pemanfaatan probabilitas dalam konteks berpikir dokter. Pervalensi menunjukkan jumlah penderita atau kasus dalam lingkup populasi tertentu dalam satuan waktu tertentu misalnya setahun. Dekat dengan pengertian prevalensi adalah insidensi artinya kasus baru dalam lingkup populasi tertentu dalam satuan waktu tertentu.
Probabilitas berkisar antara 0 dan 1. Bila kejadian yang diramalkan pasti
terjadi contohnya pernyataan “manusia pasti akan mati” maka hal tersebut tidak
(17)
diramalkan tidak akan terjadi maka bukan juga probabilitas. Contohnya jika langit bersih tanpa awan tidak akan terjadi hujan. Selain menakar besarnya peluang yang akan terjadi pada suatu peristiwa, probabilitas diberi makna pula sebagai ukuran kepercayaan bahwa suatu peristiwa akan terjadi atau measurement of belief (Hardjodisastro, 2006).
Diagnosa dokter yang menggunakan prinsip measure of belief dapat digunakan dalam menentukan nilai CF terhadap munculnya suatu gejala terhadap suatu penyakit. Probabilitas tersebut didapatkan berdasarkan munculnya suatu gejala pada suatu penyakit terhadap beberapa pasien
2.8 Penyakit Kulit Anjing
Penyakit kulit dapat disebabkan oleh berbagai masalah mendasar. Banyak penyakit berbeda memiliki penampilan klinis yang serupa, hal ini bisa membuat frustrasi karena beberapa tes diagnostik mungkin diperlukan untuk samapi pada diagnosis definitif, dan pemelihara yang tidak mengerti mungkin kecewa dan berpindah dari satu dokter hewan ke yang lain untuk mencari obat bagi hewan peliharaannya. Untuk mencapai keberhasilan, penting untuk menggunakan pendekatan sistematis untuk hewan dengan penyakit kulit (Miller, 2013).
Penyakit kulit adalah masalah umum pada anjing. Kondisi kulit pada anjing dapat menunjukkan kesehatan umum anjing. Kulit anjing lebih tipis dan sensitif terhadap cedera dari kulit manusia. Kulit anjing mudah rusak akibat penanganan yang buruk dengan kesalahan memilih peralatan perawatan. Kondisi kulit rusak yang disebabkan luka berat atau gangguan lainnya cenderung lebih mudah menyebar dan menjadi masalah besar (M. Eldredge, 2007).
(18)
Gejala yang paling umum ditemukan pada penyakit kulit anjing adalah kerontokan rambut (alopecia) dan gatal-gatal (pruritus). Gejala tersebut sering muncul bersamaan dengan beberapa gejala lainnya seperti kulit kemerahan, munculnya benjolan dan sebagainya. Kedua gejala ini menjadi indikasi bahwa hewan terserang penyakit kulit.
Alopecia didefinisikan sebagai kerontokan rambut, bervariasi dari parsial
sampai menyeluruh. Penyebab alopecia banyak, namun penyabab yang paling sering pada anjing terutama pada kucing adalah melukai dirinya sendiri yang bercampur dengan gatal. Pruritus didefinisikan sebagai sensasi yang memunculkan keinginan untuk menggaruk, mengunyah atau melukai diri sendiri. Menjilat, mengunyah, menggosok, rambut rontok, cepat marah dan bahkan perubahan kepribadian kurangnya toleransi dan lebih agresif dapat disebabkan oleh gejala pruritus (Ettinger, 2009).
(19)
15
METODE PENELITIAN
Salah satu metode utama rekayasa perangkat lunak adalah siklus hidup. Siklus hidup perangkat lunak adalah periode waktu yang dimulai dengan konsep awal dari perangkat lunak dan berakhir dengan penggunaan (Giarratano, 2004). Pengembangan sistem dibangun berdasarkan siklus hidup perangkat lunak melalui tahapan studi kelayakan, perencanaan kebutuhan perangkat lunak, desain produk, desain terperinci, pengkodean, integrasi dan implementasi serta operasi dan pemeliharaan. Pengembangan sistem yang dibahas pada bab ini adalah tahapan studi kelayakan sampai pengkodean. Gambar 3.1 dibawah ini merupakan tahapan pengembangan sistem yang digunakan dalam membangun sistem pakar identifikasi penyakit kulit.
(20)
3.1 Studi Kelayakan Sistem
Tahapan menentukan kelayakan sistem dilakukan dengan cara wawancara pada dokter hewan di RSH Unair Surabaya mengenai kelayakan dibangunnya sistem pakar identifikasi penyakit kulit anjing. Berdasarkan hasil wawancara dengan Dr. Wiwik Misaco Yuniarti, M.Kes, drh penyakit kulit anjing memiliki gejala yang dapat diamati, namun dalam satu penyakit kulit dapat ditemukan banyak gejala dengan tingkat kemunculan yang berbeda-beda. Seorang pakar memiliki tingkat keyakinan yang berbeda mengenai munculnya suatu gejala terhadap beberapa penyakit. Tingkat kemunculan gejala yang berbeda tersebut mempengaruhi tingkat keyakinan seorang pakar berdasarkan pengalamannya untuk melakukan identifikasi penyakit kulit anjing. Penyakit kulit anjing juga dapat menular pada hewan lain dan manusia. Penyakit kulit anjing yang tidak ditangani secara cepat dapat mengakibatkan amputasi bahkan bisa berakhir dengan kematian. Penyakit kulit anjing membutuhkan penanganan secara cepat agar tidak menyiksa kondisi anjing dimana cara memberikan penanganan tersebut sangat sukar dilakukan oleh orang awam yang belum mengetahui informasi mengenai cara memberikan tindakan awal pada anjing yang terserang penyakit kulit.
Wawancara juga dilakukan di RSH. Setail Surabaya dengan narasumber drh. Liang Kaspe. Berdasarkan penjelasan dari drh. Liang Kaspe penyakit kulit anjing yang sering ditemukan di Indonesia disebabkan oleh jamur dan parasit, hal tersebut terjadi karena Indonesia merupakan negara beriklim tropis dengan kelembaban udara yang tinggi sehingga menyebabkan jamur dan parasit mudah berkembangbiak. Penyakit kulit anjing memiliki kesamaan gejala antara satu
(21)
penyakit dengan penyakit lainnya dimana hal tersebut tidak mudah dilakukan oleh orang awam. Penyakit kulit anjing yang tidak ditangani secara cepat dapat menyebabkan munculnya berbagai jenis penyakit kulit lainnya. Penyakit kulit juga dapat muncul secara bersamaan dengan penyakit anemia, dimana penyakit kulit tersebut disebabkan oleh parasit berupa kutu yang menghisap darah anjing dalam jumlah yang banyak sehingga menyebabkan anjing terserang penyakit kulit dan anemia secara bersamaan.
3.2 Perencanaan Kebutuhan Perangkat Lunak
Spesifikasi kebutuhan didapatkan berdasarkan hasil analisa masalah yang dilakukan setelah tahap kelayakan sistem. Berdasarkan hasil wawancara di RSH Unair Surabaya dan RSH Setail Surabaya dapat disimpulkan bahwa jamur dan parasit merupakan salah satu penyebab penyakit kulit anjing di daerah tropis yang memiliki kelembaban udara yang tinggi seperti di Indonesia. Penyakit kulit anjing dapat menyiksa kondisi anjing karena dapat mengakibatkan munculnya berbagai jenis penyakit lain secara bersamaan. Penyakit kulit anjing juga dapat menular pada hewan lain bahkan manusia. Tindakan awal yang tepat dibutuhkan untuk menangani penyakit kulit anjing, karena jika tidak ditangani secara cepat dapat berakhir dengan amputasi dan kematian.
Identifikasi penyakit kulit anjing harus dilakukan secara tepat, karena akan mempengaruhi tindakan awal yang harus dilakukan. Identifikasi penyakit kulit harus dilakukan oleh seorang pakar dengan mempertimbangkan dua kriteria. Kriteria pertama adalah penyakit kulit memiliki kesamaan gejala antara satu dengan yang lainnya, kriteria kedua adalah tingkat keyakinan seorang pakar
(22)
terhadap munculnya suatu gejala terhadap beberapa penyakit. Kedua kriteria tersebut digunakan untuk menyesuaikan sistem pakar identifikasi penyakit kulit yang akan dibangun, sehingga untuk mengakomodasi kedua kriteria tersebut maka sistem pakar dibangun dengan metode CF (certainty factor). Sistem pakar diharapkan mampu memberikan informasi layaknya pakar dalam mengidentifikasi penyakit kulit anjing serta cara penanganannya.
Sistem pakar identifikasi penyakit kulit anjing dibangun berbasis web bertujuan agar para pemelihara anjing dapat diakses tanpa terbatas oleh waktu dan tempat, sehingga pemelihara anjing dapat memberikan penanganan awal pada anjing peliharaannya. Sistem pakar dibangun menggunakan bahasa pemrograman PHP dengan menggunakan database MySQL.
3.3 Desain Produk Diagram Blok
Tahapan desain produk bertujuan untuk memberikan penjelasan meliputi siapa saja yang akan berinteraksi dengan sistem pakar serta komponen-komponen yang ada pada sistem pakar dalam melakukan identifikasi penyakit kulit anjing. Desain produk yang dikembangkan dapat digambarkan melalui diagram blok seperti gambar 3.2 berikut :
(23)
Interface Pemelihara Anjing User: Pemelihara Anjing Sistem Pakar Daftar Penyakit Daftar Gejala Penyakit Knowledge Base Gejala CF Interface Admin Mengelola Penyakit Mengelola Gejala Mengelola CF Konsultasi Identifikasi Penyakit dan Penanganan Inference Engine Perhitungan CF User: Admin
Gambar 3.2 Diagram Blok Sistem Pakar
Penjelasan mengenai diagram blok sistem pakar identifikasi penyakit kulit anjing diatas adalah sebagai berikut:
3.3.1 Komponen User Pada Diagram Blok
User atau pengguna merupakan komponen yang berinteraksi dengan
sistem, pengguna sistem pakar ini adalah admin dan pemelihara anjing. Admin berinteraksi dengan cara mengelola data penyakit, gejala dan CF pakar. Pemilik anjing berinteraksi dengan memberikan masukan pada sistem berupa gejala yang akan diproses oleh sistem untuk menghasilkan informasi yang dibutuhkan.
3.3.2 Komponen Interface Pada Diagram Blok
Interface atau antarmuka merupakan bagian yang menjadi penghubung
komunikasi antara user dengan sistem pakar. Antarmuka untuk admin berfungsi untuk mengelola data penyakit, gejala dan CF pakar. Antarmuka untuk pemelihara anjing berfungsi untuk menerima masukan (input) berupa gejala dan sistem akan
(24)
memproses untuk memberikan keluaran (output) informasi berupa penyakit serta saran penanganan berupa tindakan awal.
3.3.3 Komponen Knowledge-base Pada Diagram Blok
Knowledge-base atau basis pengetahuan adalah bagian yang berisi fakta
dan aturan yang diperoleh dari pakar digunakan untuk melakukan identifikasi penyakit berdasarkan gejala yang ditemukan melalui masukan dari user.
Knowledge-base merupakan reperesentasi pengetahuan yang diperoleh dari pakar
berdasarkan tahapan akuisisi pengetahuan melalui proses wawancara.
Knowledge-base yang berisi pengetahuan dari pakar berposisi sebagai pakar dalam sistem
yang akan melakukan identifikasi penyakit kulit anjing.
Data yang digunakan dalam membangun aturan pada knowledge-base adalah data gejala dan data penyakit. Data penyakit yang digunakan adalah jenis penyakit yang disebabkan oleh jamur dan parasit, daftar penyakit tersebut dapat dilihat pada tabel 3.1. Daftar gejala akan disajikan dalam bentuk tabel penyakit yang dapat dilihat pada tabel 3.2. Data gejala dan data penyakit digunakan dalam membuat aturan yang disajikan dalam bentuk tabel identifikasi penyakit kulit anjing yang dapat dilihat pada tabel 3.3.
Tabel 3.1 Daftar Penyakit Kulit Anjing
Kode Penyakit Penyakit
P01 Acral Lick Granuloma
P02 Acute Moist Dermatitis
P03 Dermatitis Atopic
P04 Follicular Dysplasia
P05 Malassezia Dermatitis
P06 Sarcoptic Mange
P07 Dermatophytosis
(25)
Kode Penyakit Penyakit
P09 Demodicosis
P10 Pediculosis
Tabel 3.2 Daftar Gejala Penyakit Kulit Anjing
Kode Gejala Gejala
G01 Gatal
G02 Kekurangan nafsu makan (Anoreksia)
G03 Kekurangan antusiasme (Lesu)
G04 Pembengkakan
G05 PenebalanKulit
G06 Benjolan
G07 Kulit berwarna kemerahan
G08 Area Kulit tertentu tampak lebih gelap (Hiperpigmentasi)
G09 Kulit bernanah
G10 Kerontokan rambut
G11 Bersin-bersin
G12 Hidung mengeluarkan cairan
G13 Mata berair
G14 Bercak kasar pada kulit
G15 Rambut tampak memiliki warna dan struktur yang sedikit berbeda
G16 Kulit kering dan kasar atau kusam
G17 Luka pada hidung
G18 Kulit bersisik
G19 Kebotakan
G20 Luka pada wajah
Tabel 3.3 Identifikasi Penyakit Kulit Anjing
Gejala Penyakit
P01 P02 P03 P04 P05 P06 P07 P08 P09 P10
G01 √ √ √ √ √ √ √ √ √
G02 √ √ √ √
G03 √ √ √
G04 √
G05 √ √ √
G06 √ √ √ √
G07 √ √ √ √ √ √ √
G08 √ √ √ √ √ √
G09 √ √ √
G10 √ √ √ √ √ √ √ √ √
G11 √
G12 √
(26)
Gejala Penyakit
P01 P02 P03 P04 P05 P06 P07 P08 P09 P10
G14 √ √ √ √ √
G15 √ √ √
G16 √ √ √ √ √ √ √
G17 √ √
G18 √ √ √ √ √ √
G19 √ √ √ √ √ √ √ √
G20 √ √ √
Tabel 3.3 menampilkan gejala-gejala yang ditemukan pada masing-masing penyakit kulit. Gejala tersebut memiliki nilai CF yang berbeda berdasarkan tingkat keyakinan dari pakar. Tabel 3.4 berikut merupakan daftar nilai CF gejala berdasarkan penyakit yang diperoleh dari hasil wawancara bersama Dr. Wiwik Misaco Yuniarti M.Kes.,drh. Nilai CF tersebut didapatkan berdasarkan asumsi pakar terhadap ditemukannya suatu gejala pada penyakit kulit tertentu. Semakin tinggi nilai CF menandakan bahwa pakar berasumsi bahwa gejala tersebut besar peluangnya untuk ditemukan pada penyakit kulit tertentu.
Tabel 3.4 Nilai CF Pakar
Nama Penyakit Nama Gejala Nilai
CF Acral Lick Granuloma 1. Gatal.
2. Kekuranan nafsu makan (anoreksia).
3. Kekurangan antusiasme (lesu).
4. Benjolan.
5. Kulit berwarna kemerahan.
6. Area kulit tertentu tampak lebih gelap
(Hiperpigmentasi).
7. Kerontokan rambut.
8. Rambut tampak memiliki warna dan
struktur yang sedikit berbeda.
9. Kulit kering dan kasar atau kusam.
10.Kebotakan. 0.8 0.6 0.6 0.5 0.5 0.6 0.3 0.5 0.5 0.3
Acute Moist Dermatitis 1. Gatal.
2. Penebalan kulit.
3. Kulit berwarna kemerahan.
4. Kerontokan rambut.
0.7 0.4 0.8 0.8
(27)
Nama Penyakit Nama Gejala Nilai CF
5. Kulit kering dan kasar atau kusam.
6. Kebotakan.
0.5 0.5
Atopic Dermatitis 1. Gatal.
2. Benjolan.
3. Kulit berwarna kemerahan.
4. Kerontokan rambut.
5. Bersin-bersin.
6. Hidung mengeluarkan cairan.
7. Mata berair.
8. Bercak kasar pada kulit.
9. Kulit kering dan kasar atau kusam.
10.Kebotakan. 0.8 0.5 0.7 0.5 0.5 0.5 0.5 0.3 0.5 0.4
Follicular Dysplasia 1. Area kulit tertentu tampak lebih gelap (Hiperpigmentasi).
2. Kerontokan rambut.
3. Bercak kasar pada kulit.
4. Rambut tampak memiliki warna dan
struktur yang sedikit berbeda.
5. Kulit kering dan kasar atau kusam.
6. Kulit bersisik.
7. Kebotakan. 0.8 0.8 0.5 0.6 0.6 0.6 0.6
Malassezia Dermatitis 1. Gatal.
2. Kekuranan nafsu makan (anoreksia).
3. Kekurangan antusiasme (lesu).
4. Pembengkakan.
5. Kerontokan rambut.
6. Kulit kering dan kasar atau kusam.
7. Kulit bersisik.
8. Kebotakan. 0.8 0.8 0.7 0.5 0.7 0.5 0.5 0.5
Sarcoptic Mange 1. Gatal.
2. Benjolan.
3. Kulit berwarna kemerahan.
4. Area kulit tertentu tampak lebih gelap
(Hiperpigmentasi).
5. Kulit bernanah.
6. Kerontokan rambut.
7. Bercak kasar pada kulit.
8. Kulit bersisik.
9. Kebotakan. 0.8 0.3 0.7 0.4 0.4 0.5 0.6 0.7 0.5
Dermatophytosis 1. Gatal.
2. Kulit berwarna kemerahan.
3. Area kulit tertentu tampak lebih gelap
(Hiperpigmentasi).
4. Kulit bernanah.
5. Kerontokan rambut.
6. Bercak kasar pada kulit.
0.5 0.8 0.8 0.8 0.5 0.6
(28)
Nama Penyakit Nama Gejala Nilai CF
7. Kulit bersisik.
8. Kebotakan.
9. Luka pada wajah.
0.5 0.5 0.3
Pemphigus Foliaceus 1. Gatal.
2. Kekurangan nafsu makan (anoreksia).
3. Penebalan kulit.
4. Kulit berwarna kemerahan.
5. Luka pada hidung.
6. Kulit bersisik.
7. Luka pada wajah.
0.8 0.8 0.5 0.8 0.7 0.4 0.7
Demodicosis 1. Gatal.
2. Kekuranan nafsu makan (anoreksia).
3. Kekurangan antusiasme (lesu).
4. Kulit berwarna kemerahan.
5. Area kulit tertentu tampak lebih gelap
(Hiperpigmentasi).
6. Kerontokan rambut.
7. Luka pada hidung.
8. Kulit bersisik.
9. Kebotakan.
10.Luka pada wajah.
0.8 0.4 0.4 0.5 0.5 0.7 0.5 0.3 0.7 0.5
Pediculosis 1. Gatal.
2. Penebalan kulit.
3. Benjolan
4. Area kulit tertentu tampak lebih gelap
(Hiperpigmentasi).
5. Kulit bernanah.
6. Kerontokan rambut.
7. Bercak kasar pada kulit.
8. Rambut tampak memiliki warna dan
struktur yang sedikit berbeda.
9. Kulit kering dan kasar atau kusam.
0.8 0.7 0.4 0.4 0.4 0.5 0.4 0.5 0.5
Penyakit yang teridentifikasi berdasarkan gejala-gejala yang ditemukan akan dilakukan tindakan agar dapat memulihkan penyakit yang diderita anjing, tindakan yang dilakukan seperti pada tabel 3.5. Data tersebut diperoleh dari RSH Unair yang diberikan oleh Dr. Wiwik Misaco Yuniarti M.Kes.,drh.
(29)
Tabel 3.5 Data Pengobatan.Penyakit Kulit Anjing
PENYAKIT GEJALA PENGOBATAN
Acral Lick Granuloma
1. Gatal.
2. Kekuranan nafsu makan
(anoreksia).
3. Kekurangan antusiasme
(lesu).
4. Benjolan.
5. Kulit berwarna
kemerahan.
6. Area kulit tertentu
tampak lebih gelap (Hiperpigmentasi).
7. Kerontokan rambut.
8. Rambut tampak
memiliki warna dan struktur yang sedikit berbeda.
9. Kulit kering dan kasar
atau kusam.
10.Kebotakan.
1. Gunakan obat
antihistamin (hidroxyzine, chlorpheniramine,
dexopin).
2. Gunakan obat topikal
kortikosteroid.
Acute Moist Dermatitis
1. Gatal.
2. Penebalan kulit.
3. Kulit berwarna
kemerahan.
4. Kerontokan rambut.
5. Kulit kering dan kasar
atau kusam.
6. Kebotakan.
1. Cukur rambut sampai
bersih pada permukaan kulit.
2. Gunakan obat
kortikosteroid seperti dexametasone untuk anti
inflamasi adanya radang.
3. Gunakan obat
antihistamin seperti vetadryll.
Atopic Dermatitis 1. Benjolan.
2. Kulit berwarna
kemerahan.
3. Kerontokan rambut.
4. Bersin-bersin.
5. Hidung mengeluarkan
cairan.
6. Mata berair.
7. Bercak kasar pada kulit.
8. Kulit kering dan kasar
atau kusam.
9. Kebotakan.
1. Gunakan shampo
mengandung benzoyl
peroxida (4-7 hari).
2. Gunakan spray atau lotion
yang mengandung
hydrocortisone.
3. Beri makanan yang
mengandung suplemen
fatty acid, omega-3 dan
omega-6.
4. Gunakan obat anti radang
dan anti alergi.
5. Gunakan anastesi lokal
dan topikal untuk
menghilangkan gatal dan sakit yang muncul.
(30)
PENYAKIT GEJALA PENGOBATAN
mengandung asam linoleat atau asam lemak omega-3 untuk
memperbaiki kondisi kulit.
7. Gunakan antihistamin dan
kortikosteroid
(dexametasone).
Follicular Dysplasia
1. Area kulit tertentu
tampak lebih gelap (Hiperpigmentasi).
2. Kerontokan rambut.
3. Bercak kasar pada kulit.
4. Rambut tampak
memiliki warna dan struktur yang sedikit berbeda.
5. Kulit kering dan kasar
atau kusam.
6. Kulit bersisik.
7. Kebotakan.
1. Berikan suplemen yang
mengandung asam lemak essensial.
2. Gunakan shampoo
antimikroba topikal, lalu bilas dengan conditioner.
Malassezia Dermatitis
1. Gatal.
2. Kekuranan nafsu makan
(anoreksia).
3. Kekurangan antusiasme
(lesu).
4. Pembengkakan.
5. Kerontokan rambut.
6. Kulit kering dan kasar
atau kusam.
7. Kulit bersisik.
8. Kebotakan.
Mandi dengan shampo dengan kandungan sulfur 0,5% dan chlorhexadin 0,5% (2x seminggu).
Sarcoptic Mange 1. Gatal.
2. Benjolan.
3. Kulit berwarna
kemerahan.
4. Area kulit tertentu
tampak lebih gelap (Hiperpigmentasi).
5. Kulit bernanah.
6. Kerontokan rambut.
7. Bercak kasar pada kulit.
8. Kulit bersisik.
9. Kebotakan.
1. Mandi dengan shampo
atau sabun dengan kandungan sulfur 2-3% , 7 hari sekali sampai sembuh, minimal 6-8x.
2. Salep topikal dioleskan
pada daerah rontok, kerak, dan gatal (salep
scabisid),sebelumnya
dibersihkan dengan air hangat 2-3x dalam seminggu.
3. Cukur bagian rambut
yang gatal, lalu mandikan dengan shampo dengan
(31)
PENYAKIT GEJALA PENGOBATAN
kandungan benzoyl
peroxide.
4. Mandi menggunakan
amitraz 1:100 ml.
5. Gunakan invermectin peroral. Kontradiksi
untuk anjing ras collie dan anjing gembala, dapat menyebabkan kematian jika penggunaan dengan dosis tinggi.
6. Gunakan mulbemycin oxime, jika kontradiksi
terhadap obat
invermectin.
7. Gunakan kortikosteroid
untuk mengurangi rasa gatal (1-3 hari).
8. Sebagai tindakan
preventif sebaiknya anjing diletakkan di lingkungan tertutup (indoor).
Dermatophytosis 1. Gatal.
2. Kulit berwarna
kemerahan.
3. Area kulit tertentu
tampak lebih gelap (Hiperpigmentasi).
4. Kulit bernanah.
5. Kerontokan rambut.
6. Bercak kasar pada kulit.
7. Kulit bersisik.
8. Kebotakan.
9. Luka pada wajah.
1. Gunakan shampoo yang
mengandung
chlorhexidine dan miconazole.
2. Gunakan obat anti jamur
(griseofulvin, ketoconazole, itraconazole) Pemphigus Foliaceus 1. Gatal.
2. Kekurangan nafsu
makan (anoreksia).
3. Penebalan kulit.
4. Kulit berwarna
kemerahan.
5. Luka pada hidung.
6. Kulit bersisik.
7. Luka pada wajah.
1. Gunakan kortikosteroid
(prednisone,
dexametasone).
2. Gunakan antibiotik
tetrasiulin, dekosiulin
untuk menghindari infeksi sekunder.
3. Jika anjing diobati dengan
kortikosteroid sebaiknya pakan diubah menjadi rendah lemak agar hewan terhindar dari
(32)
PENYAKIT GEJALA PENGOBATAN pancreatitis.
Demodicosis 1. Gatal.
2. Kekuranan nafsu makan
(anoreksia).
3. Kekurangan antusiasme
(lesu).
4. Kulit berwarna
kemerahan.
5. Area kulit tertentu
tampak lebih gelap (Hiperpigmentasi).
6. Kerontokan rambut.
7. Luka pada hidung.
8. Kulit bersisik.
9. Kebotakan.
1. Gunakan invermectin
seminggu sekali.
2. Gunakan amitraz 1:100
ml untuk mandi.
3. Gunakan obat anti bakteri
seperti erythromycin.
Pediculosis 1. Gatal.
2. Penebalan kulit.
3. Benjolan
4. Area kulit tertentu
tampak lebih gelap (Hiperpigmentasi).
5. Kulit bernanah.
6. Kerontokan rambut.
7. Bercak kasar pada kulit.
8. Rambut tampak
memiliki warna dan struktur yang sedikit berbeda.
9. Kulit kering dan kasar
atau kusam.
1. Gunakan shampoo yang
mengandung pyrethrin.
2. Gunakan spray
insektisida seperti fipronil dan selamectin.
3. Mencukur bulu yang
terserang oleh kutu.
Gejala yang terdapat pada tabel 3.2 merupakan gejala yang dapat diamati oleh pemelihara anjing. Gejala tersebut terkadang tidak diketahui secara pasti oleh pemelihara anjing dan beberapa gejala dapat diketahui secara pasti oleh pemelihara anjing. Berdasarkan kemungkinan jawaban atas tingkat keyakinan pengguna terhadap gejala yang ditemukan dan dapat diamati maka dapat ditentukan pilihan jawaban berupa tidak ditemukan, ragu-ragu dan ditemukan dengan nilai CF evidence yang terdapat pada tabel 3.6. Nilai tersebut mengacu
(33)
pada tabel 2.2 mengenai interpretasi nilai CF, dimana nilai tersebut didapatkan berdasarkan pengujian perhitungan CF untuk menyesuaikan identifikasi penyakit kulit yang dilakukan oleh sistem pakar dengan diagnosa dari pakar.
Tabel 3.6 Nilai CF Evidence
Uncertain Term CF
Tidak ditemukan -0.4
Ragu-ragu 0.2
Ditemukan 0.6
Data nilai CF yang terdapat pada tabel 3.4 digunakan dalam perhitungan CF yang berada pada bagian inference engine. Proseses perhitungan CF akan menghasilkan tiga peringkat teratas penyakit yang teridentifikasi serta saran tindakan awal yang diperoleh berdasarkan tabel 3.5, dimana cara penanganan yang ditampilkan adalah penyakit yang memiliki nilai CF tertinggi. Tiga peringkat teratas proses identifikasi penyakit kulit dapat menghasilkan beberapa nilai CF yang lebih besar dari 0.9, jika hal tersebut terjadi maka saran tindakan awal yang ditampilkan adalah semua penanganan dari tiga peringkat teratas penyakit yang teridentifikasi, namun jika perhitungan CF menghasilkan nilai negatif maka nilai CF tetap ditampilkan tanpa memberikan cara penanganan.
3.3.4 Komponen Inference Engine Pada Diagram Blok
Inference engine atau mesin inferensi merupakan bagian yang digunakan
sebagai proses penalaran oleh pakar dalam melakukan identifikasi penyakit, dimana pada bagian ini sistem pakar menggunakan metode certainty factor dalam proses identifikasi penyakit. Pertanyaan yang ditampilkan pada bagian interface akan dijawab oleh pengguna, dimana ketika semua pertanyaan telah dijawab oleh pengguna maka dilanjutkan dengan proses perhitungan CF. Proses perhitungan CF
(34)
dari penyakit dimulai dengan proses perkalian antara nilai CF dari masing-masing gejala dengan nilai CF evidence yang diperoleh dari jawaban pengguna. Hasil dari perhitungan tersebut kemudian dikombinasikan dengan mencari hasil dari perhitungan CF dari gejala pertama dengan CF dari gejala kedua. Perhitungan nilai CF kombinasi akan diulang sampai seluruh gejala telah diproses. Proses tersebut akan diulang sampai seluruh penyakit mendapatkan nilai CF dari proses perhitungan tersebut, seperti pada gambar 3.3
Mulai int JumlahPenyakit Int JumlahGejala int CF String Gejala(JumlahGejala) Double Penyakit(JumlahPenyakit) Double CF_Pakar(JumlahPenyakit,JumlahGejala) i = 1
i <= JumlahGejala
Masuk : Gejala(i) Ya
i = i + 1
i = 1 j = 2
Tidak
i <= JumlahPenyakit
CF = Gejala(1) * CF_Pakar(i,1) Ya
j <= JumlahGejala
CF > 0 and CF_Temp > 0 CF_Temp = Gejala(j) * CF_Pakar(i,j)
Ya
CF = CF + (CF_Temp * (1 - CF)) Ya
Penyakit (i) = CF j = j + 1
CF < 0 and CF_Temp < 0
CF = CF + (CF_Temp * (1+ CF)) Tidak
Ya i = i + 1
j = 2 Tidak
CF = (CF + CF_Temp) / (1 – min (|CF|,|CF_Temp|))
Tidak
Tampilkan Seluruh Penyakit(JumlahPenyakit)
Tidak
Selesai
Gambar 3.3 Diagram Alir Certainty Factor.
3.4 Desain Terperinci
Desain terperinci bertujuan untuk menggambarkan proses-proses yang terdapat dalam pembangunan sistem pakar identifikasi penyakit kulit anjing. Pada tahapan ini dilakukan perancangan database menggunakan CDM (conceptual
(35)
data model) dan PDM (physical data model). Tahapan ini juga dilengkapi dengan
desain antarmuka dan desain uji coba.
3.4.1 Diagram Alir Sistem Pakar A. Mengelola data penyakit
Proses mengelola data penyakit dilakukan oleh admin. Admin memasukkan data penyakit dan cara melakukan tindakan awal kemudian akan disimpan dalam database. Jika terjadi perubahan data maka admin akan memilih kode penyakit yang datanya akan dilakukan perubahan, kemudian admin akan melakukan perubahan data untuk merevisi data yang ada pada database. Diagram alir dari proses ini dapat dilihat pada gambar 3.4.
Mulai
Tampilkan Data Penyakit
Daftar Data Penyakit
Penyakit
Apakah ada penambahan data ?
Masukkan Data Penyakit
Ya
Simpan
Apakah ada pengubahan data ? Tidak
Pilih Kode Penyakit
Ya
Selesai
Tidak
(36)
B. Mengelola data gejala
Proses mengelola data gejala bertujuan untuk memasukkan data gejala yang ditemukan pada penyakit kulit anjing. Proses ini dilakukan oleh admin. Jika terdapat perubahan data, maka admin memilih kode gejala kemudian mengubah data yang diperlukan untuk merevisi data yang ada pada database. Diagram alir mengelola data gejala dapat dilihat pada gambar 3.5.
Mulai
Tampilkan Data Gejala
Daftar Data Gejala
Gejala
Apakah ada penambahan data ?
Masukkan Data Gejala
Ya
Simpan
Apakah ada pengubahan data ? Tidak
Pilih Kode Gejala
Ya
Selesai
Tidak
(37)
C. Mengelola Data CF
Proses pengelolaan data CF dilakukan dengan memilih kode penyakit, kemudian mengisikan nilai CF untuk masing-masing gejala. Proses ini dilakukan oleh admin. Diagram alir dari proses ini dapat dilihat pada gambar 3.6.
Mulai
int countGejala = Jumlah_Gejala CF_Gejala(countGejala) = 0
Pilih
Kode Penyakit Penyakit
i =1
i <= countGejala
CF_Gejala(i) Ya
i = i + 1
Simpan CF_Gejala()
Tampil Gejala(i) Tidak
Selesai Gejala
CF_Pakar
Gambar 3.6 Diagram Alir Mengelola Data CF.
D. Form Konsultasi
Konsultasi merupakan tahapan dimana pemelihara anjing menjawab pertanyaan dari sistem pakar berupa gejala yang ditemukan pada anjing. Jawaban yang diberikan oleh pemelihara anjing memiliki nilai CF yang akan dihitung dengan perhitungan CF. Perhitungan CF merupakan proses identifikasi penyakit kulit anjing dimana proses ini akan menghasilkan tiga peringkat penyakit yang teridentifikasi serta cara penanganannya. Proses konsultasi dapat dilihat pada diagram alir pada gambar 3.7.
(38)
Mulai
countGejala = Jumlah_Gejala CF_Gejala(countGejala) = 0
i =1
i <= countGejala
CF_Gejala(i)
i = i + 1
Tampil Gejala(i)
Selesai Gejala
Hitung CF
Gambar 3.7 Diagram Alir Konsultasi.
3.4.2 Conceptual Data Model
Pemodelan database diawali dengan pembuatan conceptual data model (CDM). Pada pemodelan ini terdapat dua tabel yaitu tabel penyakit dan tabel gejala. Pemodelan CDM sistem pakar identifikasi penyakit kulit anjing dapat dilihat pada gambar 3.8.
CF Penyakit
KodePenyakit NamaPenyakit KeteranganPenyakit Pengobatan
GambarPenyakit StatusPenyakit
Gejala KodeGejala NamaGejala KeteranganGejala Pertanyaan GambarGejala StatusGejala PilihanJawaban
(39)
3.4.3 Physical Data Model
Skema physical data model (PDM) didapatkan berdasarkan hasil generate dari skema CDM. Terdapat tiga tabel pada pemodelan PDM yaitu tabel penyakit, gejala dan CF. Tabel CF terbentuk karena adanya relasi many-to-many antara tabel penyakit dan tabel gejala. Skema PDM dapat dilihat pada gambar 3.9.
KODEGEJALA = KODEGEJALA KODEPENYAKIT = KODEPENYAKIT
PENYAKIT
KODEPENYAKIT char(4)
NAMAPENYAKIT varchar(50)
KETERANGANPENYAKIT varchar(1500)
PENGOBATAN varchar(1500)
GAMBARPENYAKIT varchar(50)
STATUSPENYAKIT integer
GEJ ALA
KODEGEJ ALA char(4)
NAMAGEJ ALA varchar(50)
KETERANGANGEJ ALA varchar(1500)
PERTANYAAN varchar(150)
GAMBARGEJALA varchar(50)
STATUSGEJALA integer
PILIHANJ AWABAN integer
CF
KODEPENYAKIT char(4)
KODEGEJ ALA char(4)
NILAI_CF float
Gambar 3.9 Physical Data Model (PDM)
3.4.4 Struktur Tabel
Struktur tabel berisi penjabaran dari tabel yang ada dalam database. Penjabaran yang dimaksud adalah menjelaskan fungsi tabel, menjabarkan field yang ada pada tabel dengan menyertakan tipe data dan konstrain. Struktur tabel dari sistem pakar identifikasi penyakit kulit anjing yang dibangun adalah sebagai berikut:
A. Tabel Penyakit
Nama Tabel : Penyakit
Primary Key : KodePenyakit
Foreign Key : -
(40)
Tabel 3.7 Struktur Tabel Penyakit
No Nama Field Tipe
Data Panjang Key Keterangan
1 KodePenyakit Varchar 4 PK Primary key
2 NamaPenyakit Varchar 50 - Nama penyakit
3 KeteranganPenyakit Varchar 1500 - Penjelasan penyakit
4 Pengobatan Varchar 1500 - Penanganan penyakit
5 GambarPenyakit Varchar 50 - Gambar penyakit
6 StatusPenyakit Integer - - 1 = Aktif, 0 = Tidak
Aktif
B. Tabel Gejala
Nama Tabel : Gejala
Primary Key : KodeGejala
Foreign Key : -
Fungsi : Penyimpanan data gejala
Tabel 3.8 Struktur Tabel Gejala
No Nama Field Tipe
Data Panjang Key Keterangan
1 KodeGejala Varchar 4 PK Primary key
2 NamaGejala Varchar 50 - Nama gejala
3 KeteranganGejala Varchar 1500 - Penjelasan gejala
4 Pertanyaan Varchar 150 - Pertanyaan gejala
5 GambarGejala Varchar 50 - Gambar gejala
6 StatusGejala Integer - - 1 = Aktif, 0 = Tidak
Aktif
7 PilihanJawaban Integer - - 2 = Untuk jawaban
ditemukan dan tidak ditemukan
3 = Untuk jawaban ditemukan, ragu-ragu dan tidak ditemukan.
(41)
C. Tabel CF
Nama Tabel : CF
Primary Key : KodePenyakit, KodeGejala
Foreign Key : KodePenyakit, KodeGejala
Fungsi : Penyimpanan nilai CF
Tabel 3.9 Struktur Tabel CF
No Nama Field Tipe
Data Panjang Key Keterangan
1 KodePenyakit Char 4 PK,
FK
Primary key,
Foreign key dari tabel Penyakit
2 KodeGejala Char 4 PK,
FK
Primary key,
Foreign key dari tabel Gejala
3 NilaiCF Float - - Nilai CF Pakar
3.4.5 Desain Antarmuka
a) Login
Login hanya digunakan untuk admin agar dapat melakukan pengolahan data. Admin yang berhasil login akan langsung diarahkan ke halaman utama untuk admin agar bisa melakukan pengolahan data. Tampilan antarmuka login dapat dilihat pada gambar 3.10.
(42)
b) Halaman Utama Admin
Halaman utama admin hanya bisa diakses setelah pengguna melakukan login sebagai admin. Pada halaman ini terdapat pilihan menu untuk menegelola data penyakit, data gejala dan data CF. Gambar 3.11 merupakan desain antarmuka untuk halaman utama admin.
Gambar 3.11 Halaman Utama Admin
c) Halaman Menu Data Penyakit
Halaman menu data penyakit adalah halaman yang berfungsi untuk mengelola data penyakit. Tombol tambah data pada halaman ini berfungsi untuk menambahkan data penyakit, apabila data telah tersimpan maka data akan ditampilkan dalam bentuk tabel. Pada tabel disertakan tombol ubah yang digunakan untuk melakukan perubahan data, dan tombol tampil yang berfungsi untuk melihat detail dari data. Desain halaman menu data penyakit dapat dilihat pada gambar 3.12.
(43)
Gambar 3.12 Halaman Menu Data Penyakit
Tombol tampil yang berfungsi untuk melihat detail data dari penyakit akan menampilkan data penyakit pada halaman yang baru. Data yang ditampilkan adalah keterangan berupa penjelasan singkat dari penyakit dan cara penanganan. Tampilan detail data penyakit tersebut seperti pada gambar 3.13.
(44)
d) Halaman Form Data Penyakit
Form data penyakit digunakan untuk melakukan pengisian terhadap data
penyakit. Data yang diisikan pada form ini dapat berupa penambahan data baru atau perubahan data. Gambar 3.14 dibawah merupakan desain untuk halaman
form data penyakit
Gambar 3.14 Halaman Form Data Penyakit
e) Halaman Menu Data Gejala
Data gejala yang akan diolah akan ditampilkan pada halaman ini dalam bentuk tabel. Tombol tambah data pada halaman ini berfungsi untuk menambahkan data gejala, dimana setalah data tersimpan maka data akan ditampilkan pada tabel. Pada tabel disertakan tombol ubah yang digunakan untuk melakukan perubahan data, dan tombol tampil yang berfungsi untuk melihat detail dari data. Desain tampilan halaman menu data gejala dapat dilihat pada gambar 3.15.
(45)
Gambar 3.15 Halaman Menu Data Gejala
Tombol tampil yang berfungsi untuk melihat detail data dari gejala akan menampilkan data gejala pada halaman yang baru. Data yang ditampilkan adalah pertanyaan untuk gejala dan keterangan berupa penjelasan singkat dari gejala. Gambar 3.16 adalah tampilan detail data gejala:
(46)
f) Halaman Form Data Gejala
Penambahan data baru dan perubaan data gejala dilakukan pada form ini.
Form gejala ini digunakan untuk mengelola data gejala yang digunakan dalam
melakukan identifikasi penyakit kulit anjing. Gambar 3.17 merupakan desain untuk halaman form gejala.
Data Gejala
Kode Gejala
Nama Gejala Pertanyaan
Status Aktif Tidak Aktif Gambar
Pilih Gambar Keterangan Gejala
Simpan Batal
Pilihan Jawaban
2 (Ya - Tidak) 3 (Ya – Ragu - Tidak)
Gambar 3.17 Halaman Form Data Gejala
g) Halaman Menu Data CF
Data CF adalah data yang berisi nilai CF dari pakar untuk mengidentifikasi penyakit kulit anjing. Halaman ini menampilkan data penyakit dengan menyertakan tombol ubah untuk mengubah nilai CF. Tampilan halaman menu data CF dapat dilihat pada gambar 3.18.
(47)
Gambar 3.18 Halaman Menu Data CF
h) Halaman Form Data CF
Form data CF digunakan untuk memberikan nilai CF dari pakar dengan
mengisikan nilai CF pada gejala. Nilai CF gejala yang diisi tergantung tingkat keyakinan pakar terhadap munculnya suatu gejala pada penyakit yang akan dikelola. Berikut gambar 3.19 adalah desain untuk halaman form data CF:
(48)
i) Halaman Utama Pemelihara Anjing
Halaman utama pemelihara anjing berisi menu untuk melihat daftar penyakit, daftar gejala dan menu konsultasi. Halaman ini disertakan pula menu tentang kami yang berisi pihak-pihak yang yang memberikan data mengenai cara mengidentifikasi penyakit kulit anjing dan menu login yang digunakan untuk login sebagai admin. Gambar 3.20 merupakan desain antarmuka untuk halaman utama pemelihara anjing.
Gambar 3.20 Halaman Utama Pemelihara Anjing
j) Halaman Menu Penyakit
Halaman menu penyakit berfungsi untuk menampilkan data penyakit. Data yang ditampilkan berupa nama penyakit dan gambar. Data penyakit yang ditampilkan hanya data penyakit yang memiliki status bernilai satu, yang artinya data penyakit tersebut aktif dan digunakan dalam proses identifikasi penyakit. Gambar 3.21 adalah tampilan untuk halaman menu penyakit:
(49)
Gambar 3.21 Halaman Menu Penyakit
Jika pengguna memilih salah satu gambar dari data penyakit yang ditampilkan, maka akan tampil halaman yang berisi informasi lengkap tentang data penyakit tersebut. Data yang ditampilkan pada halaman tersebut adalah penjelasan penyakit dan cara pengobatan berupa penanganan awal. Gambar 3.22 adalah tampilan untuk detail data penyakit:
(50)
k) Halaman Menu Gejala
Halaman menu gejala berfungsi untuk menampilkan data gejala. Data dilengkapi dengan gambar untuk mempermudah pemelihara anjing dalam memahami gejala yang dialami oleh anjing peliharannya. Desain halaman menu gejala dapat dilihat pada gambar 3.23.
Gambar 3.23 Halaman Menu Gejala
Tabel yang berisikan data gejala dilengkapi dengan tombol tampil yang berfunsi untuk menampilkan data gejala secara lengkap. Data yang ditampilkan adalah pertanyaan untuk gejala serta keterangan berupa penjelasan singkat dari gejala. Berikut gambar .24 adalah desain antarmuka untuk halaman detail data gejala:
(51)
Gambar 3.24 Detail Keterangan Gejala
l) Halaman Konsultasi
Halaman konsultasi merupakan halaman yang menampilkan pertanyaan berupa gejala serta dua atau tiga pilihan jawaban untuk pemelihara anjing. Pada halaman konsultasi ini akan dilakukan proses identifikasi penyakit kulit anjing. Tampilan halaman konsultasi dapat dilihat pada gambar 3.25.
(52)
3.4.6 Desain Uji Coba
Tahapan desain uji coba bertujuan untuk merencanakan uji coba yang akan dilakukan untuk mengetahui kesesuaian antara sistem yang dibangun dengan hasil yang diharapkan. Pengujian dilakukan bersama pakar dengan menggunakan metode black box.
A. Mengelola Data Penyakit
Pengujian terhadap fitur yang digunakan untuk mengelola data penyakit terdiri dari tiga pengujian. Tabel 3.10 merupakan daftar desain uji coba untuk fitur mengelola data penyakit.
Tabel 3.10 Desain Uji Coba Mengelola Data Penyakit
No Tujuan Input Output Hasil
1 Menampilkan
data penyakit
Memilih menu data penyakit
Sistem menampilkan data penyakit dalam
bentuk tabel.
2 Menambah data
penyakit
Memasukkan data penyakit
Sistem menyimpan data penyakit dan menampilkannya dalam
bentuk tabel.
3 Mengubah data
penyakit Memasukkan perubahan data penyakit Sistem menyimpan perubahan data penyakit dan menampilkannya dalam bentuk tabel.
B. Mengelola Data Gejala
Uji coba yang dilakukan pada fitur mengelola data gejala bertujuan untuk mengetahui kesesuaian antara keluaran sistem pakar dengan hasil yang diharapkan. Tabel 3.11 merupakan daftar pengujian yang akan dilakukan pada fitur mengelola data gejala.
(53)
Tabel 3.11 Desain Uji Coba Mengelola Data Gejala
No Tujuan Input Output Hasil
1 Menampilkan
data gejala
Memilih menu data gejala
Sistem menampilkan data gejala dalam
bentuk tabel.
2 Menambah data
gejala
Memasukkan data gejala
Sistem menyimpan data gejala dan menampilkannya dalam
bentuk tabel.
3 Mengubah data
gejala
Memasukkan perubahan data
gejala
Sistem menyimpan perubahan data gejala dan menampilkannya dalam bentuk tabel.
C. Mengelola Data CF
Pengujian fitur data CF bertujuan untuk menunjukkan kesesuaiaan antara tujuan dengan hasil keluaran dari sistem pakar. Pengujian pada fitur ini terdiri dari tiga item pengujian. Desain uji coba fitur mengelola data CF dapat dilihat pada tabel 3.12
Tabel 3.12 Desain Uji Coba Mengelola Data CF
No Tujuan Input Output Hasil
1 Menampilkan
data penyakit
Memilih menu data CF
Sistem menampilkan data penyakit dalam
bentuk tabel. 2
Menampilkan data gejala dan
nilai CF
Memilih kode penyakit
Sistem menampilkan data gejala beserta nilai
CF.
3 Menyimpan nilai
CF
Memasukkan nilai CF
Menyimpan nilai CF dan menampilkannya.
D. Konsultasi
Pengujian terhadap fitur konsultasi berfungsi untuk menguji bahwa sistem pakar mampu menampilkan pertanyaan yang akan digunakan dalam proses identifikasi penyakit kulit anjing serta mampu melakukan identifikasi penyakit
(54)
kulit anjing berdasarkan pertanyaan tersebut. Berikut tabel 3.13 adalah item yang akan diuji dalam tahap uji coba konsultasi:
Tabel 3.13 Desain Uji Coba Konsultasi
No Tujuan Input Output Hasil
1
Menampilkan data pertanyaan
gejala
Memilih menu konsultasi
Sistem menampilkan data pertanyaan gejala
dalam bentuk tabel.
2
Menampilkan hasil identifikasi
penyakit kulit anjing
Memilih jawaban dari pertanyaan yang ditampilkan
Sistem menampilkan hasil analisa identifikasi
penyakit kulit anjing.
Proses pengujian dilanjutkan dengan menguji keakuratan hasil keluaran sistem pakar. Pengujian dilakukan dengan cara memasukkan gejala yang dialami oleh anjing, kemudian hasil tersebut dibandingkan dengan diagnosa dokter, desain uji coba keakuratan sistem pakar dapat dilihat pada tabel 3.14.
(55)
Tabel 3.14 Uji Coba Keakuratan Sistem Pakar
Kode Gejala
Jawaban Output
Ya
Ragu-ragu Tidak Nama Penyakit CF
G001
G002
G003
G004
G005
G006
G007
G008
G009
G010
G011 Diagnosa Dokter
G012
G013
G014
G015
G016
G017
G018
G019
G020
Pengujian keakuratan sistem dilakukan dengan melihat kembali riwayat diagnosa dokter terhadap penyakit kulit anjing, kemudian dilakukan pencocokan jawaban antara riwayat diagnosa dengan pertanyaan yang diajukan sistem pakar untuk dilakukan proses identifikasi. Hasil identifikasi sistem pakar akan dibandingkan dengan hasil diagnosa dokter untuk mengetahui tingkat keakuratan sistem pakar dalam mengidentifikasi penyakit kulit anjing.
(56)
3.5 Rancangan Kode Aplikasi 3.5.1 Mengelola Data Penyakit
Rancangan kode aplikasi untuk mengelola data penyakit didapatkan berdasarkan diagram alir mengelola data penyakit yang terdapat pada gambar 3.4. Diagram alir tersebut memiliki tiga proses yang akan dibuatkan rancangan kode aplikasinya. Proses tersebut adalah tampilkan data penyakit, pilih kode penyakit, dan simpan data penyakit.
A. Tampilkan data penyakit
Data penyakit ditampilkan dalam bentuk tabel dengan mengambil data dari
database. Data penyakit digunakan untuk identifikasi penyakit kulit anjing,
dimana data tersebut berisi kode penyakit, nama penyakit, keterangan penyakit, penanganan penyakit, gambar penyakit dan status penyakit. Status penyakit berfungsi untuk menentukan penyakit yang akan diolah, dimana jika nilai status adalah satu, maka penyakit tersebut akan diolah dalam perhitungan CF. Tahapan
code pada proses tampilkan data penyakit terdiri dari tiga tahap yaitu tahap
perhitungan jumlah halaman, menampilkan data penyakit dan menampilkan pilihan halaman.
Tahap pertama adalah perhitungan jumlah halaman, proses ini berfungsi untuk menampilkan penyakit dalam beberapa halaman sehingga tidak menampilkan data dalam jumlah yang banyak dalam satu halaman. Proses ini diawali dengan menghitung jumlah data penyakit yang ada pada database lalu menentukan jumlah data yang akan ditampilkan per halaman, dilanjutkan dengan perhitungan jumlah halaman. Proses dilanjutkan dengan mengatur urutan data yang akan ditampilkan berdasarkan index dengan melihat halaman yang terpilih.
(57)
Jika halaman terpilih bernilai lebih dari jumlah halaman, maka halaman terpilih diatur menjadi halaman terakhir, jika halaman terpilih bernilai kurang dari satu, maka halaman terpilih diatur menjadi halaman pertama. Berikut adalah
pseudocode untuk perhitungan jumlah halaman:
Tabel 3.15 Pseudocode Perhitungan Jumlah Halaman Data Penyakit
Perhitungan Jumlah Halaman
// Inisialisasi Variabel int jumlahPenyakit = 0;
int jumlahDataperHalaman = 5; int jumlahHalaman = 0;
int halaman = 1; int dataAwal = 0; // Query
String query = “Select * From Penyakit”; // Isi Variabel
jumlahPenyakit = hitungJumlahData(query);
jumlahHalaman = jumlahPenyakit / jumlahDataperHalaman if jumlahHalaman < 1 then jumlahHalaman = 1;
if variabelTerisi(halamanAktif) then halaman = halamanAktif if halaman > jumlahHalaman then halaman = jumlahHalaman; if halaman <= 0 then halaman = 1;
dataAwal = (halaman - 1) * jumlahDataperHalaman;
Tahapan kedua adalah tahapan menampilkan data penyakit. Data penyakit yang diolah akan ditampilkan dalam bentuk tabel yang berisi data kode penyakit, nama penyakit dan gambar penyakit. Tabel juga dilengkapi dengan tombol bernama tampil yang berfungsi untuk melihat data penyakit secara lengkap. Berikut adalah pseudocode untuk menampilkan data penyakit:
(58)
Tabel 3.16 Pseudocode Menampilkan Data Penyakit
Menampilkan Data Penyakit
// Inisialisasi Variabel String gambar = “”; // Query
String query = “Select KodePenyakit, NamaPenyakit, GambarPenyakit From
Penyakit limit dataAwal,jumlahDataperHalaman”
While baris = ambilData(query) Begin
if baris[‘GambarPenyakit’] < > “” then gambar = baris[‘GambarPenyakit’]; else
gambar = “no-image.gif”;
end if
// Tampilkan Data Penyakit
tampil_data( baris[‘KodePenyakit’]);
tampil_data( baris[‘NamaPenyakit]);
tampilkan_gambar (gambar); // Memasang Tombol
pasang_tombol (tombol_ubah); pasang_tombol(tombol_tampil); End
Tahapan ketiga adalah menampilkan pilihan halaman. Tujuan dari pembuatan pilihan halaman adalah agar pengguna aplikasi dapat berpindah halaman untuk menemukan data yang dicari berdasarkan pencarian data seperti pada proses yang dijelaskan diatas. Berikut adalah pseudocode untuk menampilkan pilihan halaman:
Tabel 3.17 Pseudocode Menampilkan Pilihan Halaman Data Penyakit
Menampilkan Pilihan Halaman
// Inisialisasi Variabel int nomor_halaman = 0; if jumlahHalaman < > 1 then
(59)
Menampilkan Pilihan Halaman
for nomor_halaman = 1 to jumlahHalaman cetak nomor_halaman ;
end for end if
B. Pilih kode penyakit
Fungsi dari fasilitas pilih kode penyakit adalah untuk melakukan perubahan data. Data yang ditampilkan dalam bentuk tabel disertakan pula tombol bernama ubah yang digunakan untuk memilih kode penyakit yang akan dilakukan perubahan datanya. Berikut adalah pseudocode untuk pilih kode penyakit:
Tabel 3.18 Pseudocode Pilih Kode Penyakit
Pilih Kode Penyakit
Tombol_ubah.Panggil _FormPenyakit(Kode_Penyakit);
C. Simpan data penyakit
Fungsi dari fasilitas simpan adalah untuk melakukan penyimpanan data penyakit ke database. Penyimpanan data dapat berupa data baru maupun perubahan data. Jika data yang disimpan adalah data yang akan dilakukan perubahan datanya, maka proses simpan akan melakukan perubahan data ke
database, jika data yang akan disimpan adalah data yang baru maka proses
simpan akan melakukan penyimpanan ke database. Berikut adalah pseudocode untuk proses simpan:
Tabel 3.19 Pseudoode Simpan Data Penyakit
Simpan
// Inisialisasi Variabel String jenis_simpan = “”;
(60)
Simpan
// Pengisian Data
isi_data(NamaPenyakit); isi_data(PengobatanPenyakit); isi_data(KeteranganPenyakit); isi_data(StatusPenyakit); isi_data(GambarPenyakit); if jenis_simpan = “update”
upload_gambar(); UbahData();
Tampil_pesan(“Data Tersimpan”); else if jenis_simpan = new“
upload_gambar(); TambahData()
Tampil_pesan(“Data Tersimpan”); end if
3.5.2 Mengelola Data Gejala
Rancangan kode aplikasi untuk mengelola data gejala didapatkan berdasarkan diagram alir mengelola data gejala yang terdapat pada gambar 3.5. Diagram alir tersebut memiliki tiga proses yang akan dibuatkan rancangan kode aplikasinya. Proses tersebut adalah tampilkan data gejala, pilih kode gejala, dan simpan data gejala.
A. Tampilkan data gejala
Data gejala disajikan dalam bentuk tabel dengan mengambil data dari
database. Data gejala berisi kode gejala, nama gejala, pertanyaan, keterangan
gejala, gambar gejala dan status gejala. Status gejala berfungsi untuk menentukan gejala yang akan digunakan untuk identifikasi penyakit kulit, jika nilai status adalah satu, maka gejala tersebut akan diolah dalam perhitungan CF. Tahapan code pada proses tampilkan data gejala terdiri dari tiga tahap yaitu tahap perhitungan jumlah halaman, menampilkan data gejala dan menampilkan pilihan halaman.
(61)
Tahap pertama adalah perhitungan jumlah halaman yang berfungsi untuk menampilkan data gejala dalam beberapa halaman sehingga tidak menampilkan data dalam jumlah yang banyak dalam satu halaman. Proses ini diawali dengan menghitung jumlah data gejala kemudian menentukan jumlah data yang akan ditampilkan per halaman, dilanjutkan dengan perhitungan jumlah halaman. Proses dilanjutkan dengan mengatur urutan data yang akan ditampilkan berdasarkan
index dengan melihat halaman yang terpilih. Jika halaman terpilih bernilai lebih
dari jumlah halaman, maka halaman terpilih diatur menjadi halaman terakhir, jika halaman terpilih bernilai kurang dari satu, maka halaman terpilih diatur menjadi halaman pertama. Berikut adalah pseudocode untuk perhitungan jumlah halaman:
Tabel 3.20 Pseudocode Perhitungan Jumlah Halaman Data Gejala
Perhitungan Jumlah Halaman
// Inisialisasi Variabel int jumlahPenyakit = 0;
int jumlahDataperHalaman = 5; int jumlahHalaman = 0;
int halaman = 1; int dataAwal = 0; // Query
String query = “Select * From Gejala”;
// Isi Variabel
jumlahPenyakit = hitungJumlahData(query);
jumlahHalaman = jumlahPenyakit / jumlahDataperHalaman if jumlahHalaman < 1 then jumlahHalaman = 1;
if variabelTerisi(halamanAktif) then halaman = halamanAktif if halaman > jumlahHalaman then halaman = jumlahHalaman; if halaman <= 0 then halaman = 1;
(62)
Tahapan kedua adalah tahapan menampilkan data gejala yang berisi data kode gejala, nama gejala dan gambar gejala. Tabel juga dilengkapi dengan tombol bernama tampil yang berfungsi untuk melihat data gejala secara lengkap. Berikut adalah pseudocode untuk menampilkan data gejala:
Tabel 3.21 Pseudocode Menampilkan Data Gejala
Menampilkan Data Gejala
// Inisialisasi Variabel String gambar = “”; // Query
String query = “Select KodeGejala, NamaGejala, GambarGejala From Gejala limit dataAwal,jumlahDataperHalaman”
While baris = ambilData(query) Begin
if baris[‘GambarGejala] < > “” then
gambar = baris[‘GambarGejala];
else
gambar = “no-image.gif”;
end if
// Tampilkan Data Gejala
tampil_data( baris[‘KodeGejala]);
tampil_data( baris[‘NamaGejala]);
tampilkan_gambar (gambar); // Memasang Tombol
pasang_tombol (tombol_ubah); pasang_tombol(tombol_tampil); End
Tahapan ketiga adalah menampilkan pilihan halaman. Tujuan dari pembuatan pilihan halaman adalah agar pengguna aplikasi dapat berpindah halaman untuk menemukan data yang dicari berdasarkan pencarian data seperti pada proses yang dijelaskan diatas. Berikut adalah pseudocode untuk menampilkan pilihan halaman:
(63)
Tabel 3.22 Pseudocode Menampilkan Pilihan Halaman Data Gejala
Menampilkan Pilihan Halaman
// Inisialisasi Variabel int nomor_halaman = 0; if jumlahHalaman < > 1 then
for nomor_halaman = 1 to jumlahHalaman cetak nomor_halaman ;
end for end if
B. Pilih kode gejala
Pilih kode gejala adalah fasilitas untuk melakukan pemilihan datayang akan diubah. Data yang ditampilkan dalam bentuk tabel disertakan pula tombol bernama ubah yang digunakan untuk memilih kode penyakit yang akan dilakukan perubahan datanya. Berikut adalah pseudocode untuk pilih kode gejala:
Tabel 3.23 Pseudocode Memilih Kode Gejala
Memilih Kode Gejala
Tombol_ubah.Panggil_FormGejala (Kode_Gejala);
C. Simpan data gejala
Fungsi dari fasilitas simpan adalah untuk melakukan penyimpanan data penyakit ke database. Penyimpanan data dapat berupa data baru maupun perubahan data. Jika data yang disimpan adalah data yang akan dilakukan perubahan datanya, maka proses simpan akan melakukan perubahan data ke
database, jika data yang akan disimpan adalah data yang baru maka proses
simpan akan melakukan penyimpanan ke database. Berikut adalah pseudocode untuk proses simpan:
(64)
Tabel 3.24 Pseudocode Simpan Data Gejala
Simpan
// Inisialisasi Variabel String jenis_simpan = “”; // Pengisian Data
isi_data(NamaGejala); isi_data(PertanyaanGejala); isi_data(KeteranganGejala); isi_data(StatusGejala); isi_data(GambarGejala); if jenis_simpan = “update”
upload_gambar(); UbahData();
Tampil_pesan(“Data Tersimpan”);
else if jenis_simpan = “new“
upload_gambar(); TambahData()
Tampil_pesan(“Data Tersimpan”); end if
3.5.3 Mengelola Data CF
Rancangan kode aplikasi untuk mengelola data CF didapatkan berdasarkan diagram alir mengelola data CF yang terdapat pada gambar 3.6. Diagram alir tersebut memiliki tiga proses yang akan dibuatkan rancangan kode aplikasinya. Proses tersebut adalah pilih kode penyakit, tampil gejala, dan simpan CF Gejala.
A. Pilih kode penyakit
Data penyakit yang akan diolah akan ditampilkan dalam bentuk tabel. Tabel disertakan tombol ubah yang digunakan untuk memilih penyakit yang akan diberi nilai CF. Proses menampilkan data penyakit memiliki tiga tahapan yaitu perhitungan jumlah halaman, menampilkan data penyakit dan menampilkan pilihan halaman
(1)
85
Sistem berhasil menampilkan data pertanyaan gejala dalam bentuk tabel dapat dilihat pada gambar 4.16. Proses identifikasi yang dilakukan telah sukses diuji dan berhasil menampilkan analisa identifikasi penyakit kulit anjing dapat dilihat pada gambar 4.17.
4.4 Evaluasi Sistem
Pembahasan evaluasi sistem meliputi proses perhitungan CF dalam melakukan identifikasi penyakit kulit anjing dan pengujian terhadap tingkat keakuratan sistem pakar dalam melakukan identifikasi penyakit kulit anjing. Evaluasi sistem bertujuan untuk penarikan kesimpulan bahwa sistem pakar dapat melakukan proses identifikasi penyakit kulit anjing menggunakan metode certainty factor.
4.4.1. Perhitungan CF
Perhitungan CF digunakan dalam proses identifikasi penyakit kulit anjing. Perhitungan CF diawali dengan perkalian CF pakar dengan CF user. CF pakar merupakan tingkat keyakinan pakar terhadap ditemukannya suatu gejala pada penyakit tertentu. CF user diperoleh berdasarkan jawaban user terhadap ditemukannya gejala berdasarkan pertanyaan yang diberikan oleh sistem pakar. Proses tersebut dilanjutkan dengan rumus kombinasi sampai seluruh gejala diproses. Berikut adalah contoh perhitungan CF untuk penyakit Dermatophytosis:
(2)
Tabel 4.5 Perhitungan CF Penyakit Dermatophytosis
0.6 0.2 -0.4
Gatal 0.5 1 -0.2 Rumus 3 -0.2
Kekurangan nafsu makan (Anoreksia) -0.1 1 0.04 Rumus 3 -0.167
Kekurangan antusiasme (Lesu) -0.1 1 0.04 Rumus 3 -0.132
Pembengkakan -0.1 1 0.04 Rumus 3 -0.096
PenebalanKulit -0.1 1 0.04 Rumus 3 -0.058
Benjolan -0.1 1 -0.02 Rumus 2 -0.077
Kulit berwarna kemerahan 0.8 1 0.48 Rumus 3 0.437
Area Kulit tertentu tampak lebih gelap (Hiperpigmentasi) 0.8 1 0.48 Rumus 1 0.707
Kulit bernanah 0.8 1 0.48 Rumus 1 0.848
Kerontokan rambut 0.5 1 0.1 Rumus 1 0.863
Bersin-bersin -0.1 1 0.04 Rumus 1 0.868
Hidung mengeluarkan cairan -0.1 1 0.04 Rumus 1 0.874
Mata berair -0.1 1 0.04 Rumus 1 0.879
Bercak kasar pada kulit 0.6 1 0.36 Rumus 1 0.922
Rambut tampak memiliki warna dan struktur yang sedikit berbeda -0.1 1 0.04 Rumus 1 0.925
Kulit kering dan kasar atau kusam -0.1 1 0.04 Rumus 1 0.928
Luka pada hidung -0.1 1 0.04 Rumus 1 0.931
Kulit bersisik 0.5 1 0.1 Rumus 1 0.938
Kebotakan 0.5 1 0.3 Rumus 1 0.957
Luka pada wajah -0.1 1 0.04 Rumus 1 0.958
Gejala CF
Pakar
CF User
CF Pakar * CF User Rumus CF Nilai CF
Sistem menghitung Nilai CF Gejala Gatal dari pakar dikali dengan CF user, dimana nilai CF Gejala dari pakar bernilai 0.5 dan CF user bernilai -0.4, sehingga hasil perkalian menghasilkan -0.2 sebagai nilai CF awal, perhitungan dilanjutkan dengan melakukan perkalian nilai CF untuk gejala kekurangan nafsu makan, dan diperoleh nilai 0.04. Berdasarkan rumus kombinasi jika nilai salah satu CF kurang dari 0 maka digunakan rumus kombinasi yang ke tiga dari hasil perhitungan rumus kombinasi didapatkan hasil -0.167. Pada saat perhitungan gejala benjolan hasil perkalian nilai CF pakar dengan CF user bernilai negatif dan nilai CF kombinasi juga bernilai negatif sehingga digunakan rumus kombinasi kedua. Perhitungan tersebut menghasilkan nilai CF sebesar -0.077. Pada saat sistem melakukan perhitungan gejala area kulit tertentu tampak lebih gelap, didapatkan hasil perkalian CF pakar dengan CF userbernilai positif dan nilai CF kombinasi bernilai positif sehingga digunakan rumus kombinasi yang pertama
(3)
87
dengan hasil nilai CF 0.707. Perhitungan dilakukan sampai seluruh gejala diproses. Pada pengujian ini didapatkan nilai akhir dari CF adalah 0.958.
4.4.2. Tingkat Akurasi Aplikasi
Tingkat akurasi didapatkan berdasarkan hasil pengujian yang dilakukan bersama pakar. Pengujian dilakukan untuk menyesuaikan antara hasil identifikasi penyakit kulit yang dilakukan oleh sistem pakar dan diagnosa dokter. Pengujian dilakukan berdasarkan catatan riwayat penyakit pasien yang dimiliki oleh dokter, kemudian dokter melakukan pengisian data pada aplikasi sistem pakar. Daftar pengujian tingkat akurasi aplikasi dapat dilihat pada lampiran 2 sampai lampiran 11.
Pengujian dilakukan berdasarkan 10 uji coba, dimana terdapat satu penyakit yang menghasilkan proses identifikasi yang berbeda dengan diagnosa dokter, sehingga dari 10 data terdapat 9 yang sesuai dengan hasil diagnosa dokter, sehingga berdasarkan hasil analisa tersebut didapatkan tingkat akurasi aplikasi adalah sebesar 90 %.
Tingkat akurasi sebesar 90% yang didapatkan setelah melakukan pengujian menandakan terdapat kekeliruan sistem pakar dalam melakukan identifikasi penyakit kulit anjing. Hal ini dapat disebabkan oleh dua faktor yaitu kurang tepatnya nilai CF yang diberikan oleh pakar atau pengetahuan yang tidak lengkap berupa gejala yang ditemukan pada suatu penyakit.
(4)
88 PENUTUP
5.1 Kesimpulan
Berdasarkan hasil implementasi dan evaluasi, maka dapat ditarik kesimpulan sebagai berikut:
1. Sistem pakar mampu melakukan proses identifikasi penyakit kuit anjing berdasarkan gejala yang ditemukan menggunakan metode certainty factor. 2. Tingkat akurasi sistem pakar yang dibangun sebesar 90% dimana dari 10
data yang diuji 9 data menghasilkan identifikasi yang sesuai dengan hasil diagnosa dokter.
3. Tingkat akurasi sistem pakar menunjukkan bahwa asumsi nilai CF yang diberikan memiliki nilai sebesar 90%.
4. Sistem pakar mampu memberikan saran penanganan berupa tindakan awal berdasarkan penyakit yang ditemukan melalui proses identifikasi penyakit kulit anjing menggunakan metode certainty factor.
5.2 Saran
Sistem pakar identifikasi penyakit kulit anjing yang dibangun dapat dikembangkan lebih lanjut agar dapat bermanfaat untuk berbagai kalangan. Berikut saran yang dapat digunakan untuk pengengembangan sistem pakar identifikasi penyakit kulit:
1. Sistem pakar dikembangkan dengan menambahkan jenis penyakit kulit lain yang belum ada pada aplikasi sistem pakar identifikasi penyakit kulit anjing.
(5)
89
2. Sistem pakar dikembangkan dengan melengkapi informasi berupa terapi dan pemeriksaan laboratorium yang harus dilakukan agar dapat bermanfaat bagi dokter muda dalam proses pembelajaran penanganan penyakit kulit anjing.
(6)
89
Arhami, Muhammad, 2005. Konsep Dasar Sistem Pakar. Yogyakarta: Andi. Eldredge, Debra M, et al. 2007. Dog Owner’s Home Veterinary Handbook. New
Jersey: Wiley.
Ettinger SJ and Feldman EC. 2009. Textbook of Veterinary Internal Medicine. Diseases of the Dog and Cat. New York: Elsevier.
Giarratano, J. and Riley, G., 2005, Expert Sistem: Principles and Programming, 4th Edition. Boston: PWS Publishing Company.
Gonzalez, Avelino J. and Douglas D. Dankel. 1994. The Engineering of Knowledge-Based Systems: Theory and Practice. New York: Englewood Cliffs.
Hardjodisastro, Daldiyono. 2006. Menuju Seni Ilmu Kedokteran bagaimana dokter berpikir, bekerja dan menampilkan diri. Jakarta: Gramedia Pustaka Utama.
Miller, William H. 2012. Muller and Kirk’s Small Animal Dermatology, 7th Edition. Philadelphia: W.B. Saunders Company.