APLIKASI SISTEM PAKAR UNTUK DIAGNOSIS PENYAKIT PERNAPASAN PADA BALITA.
APLIKASI SISTEM PAKAR UNTUK DIAGNOSIS
PENYAKIT PERNAPASAN PADA BALITA
SKRIPSI
Diajukan kepada Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta
untuk Memenuhi Sebagian Persyaratan guna Memperoleh Gelar Sarjana Sains
Oleh
PUTERI CAHYANINGRUM NIM 12305144006
PROGRAM STUDI MATEMATIKA JURUSAN PENDIDIKAN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS NEGERI YOGYAKARTA
(2)
i
APLIKASI SISTEM PAKAR UNTUK DIAGNOSIS
PENYAKIT PERNAPASAN PADA BALITA
SKRIPSI
Diajukan kepada Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta
untuk Memenuhi Sebagian Persyaratan guna Memperoleh Gelar Sarjana Sains
Oleh
PUTERI CAHYANINGRUM NIM 12305144006
PROGRAM STUDI MATEMATIKA JURUSAN PENDIDIKAN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS NEGERI YOGYAKARTA
(3)
(4)
(5)
(6)
v MOTTO
Kejujuran adalah kesederhanaan yang paling mewah.
Dan sesungguhnya beserta (sesudah) kesulitan itu ada kemudahan. Sesungguhnya beserta (sesudah) kesulitan itu ada kemudahan.
(QS. Al Insyirah : 5 – 6)
Waktu itu bagaikan pedang, jika kamu tidak memanfaatkannya menggunakan untuk memotong, ia akan memotongmu (menggilasmu).
(H.R. Muslim)
Kemenangan yang seindah-indahnya dan sesukar-sukarnya yang boleh direbut oleh manusia ialah menundukan diri sendiri.
(7)
vi
HALAMAN PERSEMBAHAN
Alhamdulillahirabbil’alamin,
Segala puji dan syukur kepada Allah SWT yang selalu memberi rahmat dan nikmat serta jalan kemudahan dalam penyusunan skripsi ini.
Skripsi ini kupersembahkan untuk:
Kedua orang tuaku, Ibu Sri Lestari dan Bapak Surajiman, yang tak pernah lelah untuk mendoakanku, memberi semangat, kasih sayang, dan dukungan dalam segala
bentuk.
Kakak dan adik, Mas Anang dan Dik Ndaru, serta paman, tante, kakek, nenek yang selalu mendoakanku dan memberi semangat.
Adik sepupuku, Salma dan Rafa yang tak pernah bosan dan lelah menghiburku.
Sahabat-sahabatku yang selalu mendoakanku dengan ketulusan hatinya, memberi semangat dan mendukungku dalam hal positif.
(8)
vii
APLIKASI SISTEM PAKAR UNTUK DIAGNOSIS PENYAKIT PERNAPASAN PADA BALITA
Oleh
Puteri Cahyaningrum 12305144006
ABSTRAK
Penyakit pernapasan atau Infeksi Saluran Pernapasan Akut (ISPA) adalah penyakit saluran pernapasan atas atau bawah. Penyakit ini sangat bahaya, khususnya jika menjangkit balita. Hal tersebut dikarenakan daya tahan tubuhnya yang masih lemah. Penyakit pernapasan ini merupakan penyebab utama angka kesakitan (morbiditas) dan angka kematian (mortalitas) penyakit menular di dunia. Hampir empat juta orang meninggal akibat ISPA setiap tahun, 98%-nya disebabkan oleh infeksi saluran pernapasan bawah. Namun, pengendalian penyakit ini menemui kendala, yaitu cakupan penemuan masih sangat rendah akibat tingginya mutasi tenaga kesehatan dan juga kurangnya pengetahuan orang tua tentang penyakit ini.
Aplikasi Sistem Pakar untuk Diagnosis Penyakit Pernapasan pada Balita diharapkan mampu untuk digunakan dalam penanganan masalah-masalah yang ada. Sistem pakar ini menggunakan metode Forward Chaining, yaitu penelusuran maju sampai menemukan hasil konsultasi/diagnosis. Hasil diperoleh dengan menjawab pertanyaan sesuai gejala yang dialami sang balita. Hasil konsultasi tersebut berupa dugaan penyakit, gejala-gejala yang berhubungan dengan penyakit, keterangan penyakit, dan saran atau penanganan untuk orang tua.
Aplikasi sistem pakar ini terdiri dari tiga user, yaitu admin, pakar, dan pengguna biasa/umum. Sistem diuji menggunakan pengujian Beta, yaitu pengujian kepada pengguna. Berdasarkan pengujian yang diperoleh dari nilai rata-rata keseluruhan karakteristik menurut ISO 9126, sistem ini termasuk dalam kriteria sangat baik, artinya sistem mampu memenuhi kebutuhan pengguna, dapat menampilkan informasi sesuai masukan pengguna dengan tepat, mudah digunakan, mudah dimodifikasi, tampilan menarik, memiliki respon yang cepat, serta dapat diakses melalui web browser yang berbeda.
Kata kunci: Sistem Pakar, Penyakit Pernapasan Balita, Forward Chaining, Pengujian Beta
(9)
viii
KATA PENGANTAR
Segala puji bagi Tuhan Yang Maha Esa atas segala limpahan rahmat dan karunia-Nya, sehingga Tugas Akhir Skripsi ini dapat terselesaikan. Skripsi yang berjudul “APLIKASI SISTEM PAKAR UNTUK DIAGNOSIS PENYAKIT PERNAPASAN PADA BALITA” ini disusun untuk memenuhi salah satu syarat kelulusan guna meraih gelar sarjana sains pada Fakultas Matematika dan Ilmpu Pengetahuan Alam Universitas Negeri Yogyakarta.
Penulis menyadari bahwa terselesaikannya skripsi ini tidak lepas dari bantuan dan dukungan berbagai pihak. Oleh karena itu, pada kesempatan ini penulis mengucapkan terima kasih kepada:
1. Bapak Dr. Hartono selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta.
2. Bapak Dr. Ali Mahmudi, selaku Ketua Jurusan Pendidikan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta.
3. Bapak Dr. Agus Maman Abadi selaku Ketua Program Studi Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta.
4. Bapak Nur Hadi Waryanto, M.Eng. selaku dosen pembimbing yang telah memberikan bimbingan dan pengarahan dalam penyusunan skripsi ini. 5. Ibu Nur Insani, M.Sc. selaku Penasihat Akademik yang selalu memberikan
(10)
(11)
x DAFTAR ISI
HALAMAN JUDUL ... i
PERSETUJUAN ... ii
HALAMAN PENGESAHAN ... iii
HALAMAN PERNYATAAN ... iv
MOTTO ... v
HALAMAN PERSEMBAHAN ... vi
ABSTRAK ... vii
KATA PENGANTAR ... viii
DAFTAR ISI ... x
DAFTAR GAMBAR ... xii
DAFTAR TABEL ... xiv
BAB I PENDAHULUAN ... 1
A. Latar Belakang ... 1
B. Batasan Masalah... 4
C. Rumusan Masalah ... 5
D. Tujuan Penulisan ... 5
E. Manfaat Penulisan ... 5
BAB II KAJIAN PUSTAKA ... 7
A. Sistem Pakar ... 7
B. Data Flow Diagram (DFD) ... 19
C. Basis Data (Database) ... 22
D. PHP (Personal Home Page tools) ... 24
E. MySQL ... 25
F. Dreamweaver ... 25
G. Metode Pengembangan Sistem ... 25
H. Metode uji Coba ... 27
(12)
xi
BAB III PEMBAHASAN ... 37
A. Analisis ... ... 37
B. Perancangan Aplikasi ... 39
C. Implementasi ... 65
D. Pengujian ... 75
BAB IV PENUTUP ... 87
A. Kesimpulan ... 87
B. Saran ... 88
DAFTAR PUSTAKA ... 89
(13)
xii
DAFTAR GAMBAR
Gambar 1 Struktur Sistem Pakar ... 10
Gambar 2 Cara kerja Metode Forward Chaining ... 11
Gambar 3 Graf Pengetahuan ... 12
Gambar 4 Cara Kerja Metode Backward Chaining... 13
Gambar 5 Representasi Jaringan Semantik ... 16
Gambar 6 Contoh Diagram Konteks ... 21
Gambar 7 Contoh DFD Level 1 ... 21
Gambar 8 Contoh DFD Level 2 ... 22
Gambar 9 Model Waterfall Pressman ... 26
Gambar 10 Graf Pengetahuan Forward Chaining ... 44
Gambar 11 Pohon Pelacakan Forward Chaining ... 45
Gambar 12 Diagram Konteks ... 46
Gambar 13 DFD Level 1 ... 47
Gambar 14 DFD Level 2 Proses 2 ... 48
Gambar 15 DFD Level 2 Proses 3 ... 49
Gambar 16Entity Relation Diagram (ERD) ... 50
Gambar 17 Relasi Antartabel ... 58
Gambar 18 Perancangan Menu... 59
Gambar 19 Perancangan Antarmuka Index ... 60
Gambar 20 Perancangan Antarmuka Konsultasi ... 60
Gambar 21 Perancangan Antarmuka Hasil Konsultasi ... 61
Gambar 22 Perancangan Antarmuka Halaman Index Pakar ... 61
Gambar 23 Perancangan Antarmuka Halaman Index Admin ... 62
Gambar 24 Perancangan Antarmuka Masukan Penyakit ... 63
Gambar 25 Perancangan Antarmuka Masukan Gejala ... 63
Gambar 26 Perancangan Antarmuka Masukan Relasi ... 63
Gambar 27 Perancangan Antarmuka Kelola Usulan ... 64
(14)
xiii
Gambar 29 Perancangan Antarmuka Kelola Data Akun ... 65
Gambar 30 Antarmuka Halaman Index ... 66
Gambar 31 Antarmuka Konsultasi ... 67
Gambar 32 Contoh Konsultasi 1 ... 67
Gambar 33 Contoh Konsultasi 2 ... 68
Gambar 34 Contoh Konsultasi 3 ... 68
Gambar 35 Contoh Konsultasi 4 ... 68
Gambar 36 Antarmuka Hasil Konsultasi ... 69
Gambar 37 Antarmuka Halaman Index Pakar ... 70
Gambar 38 Antarmuka Halaman Index Admin ... 71
Gambar 39 Antarmuka Masukan Penyakit ... 71
Gambar 40 Antarmuka Masukan Gejala ... 72
Gambar 41 Antarmuka Masukan Relasi ... 73
Gambar 42 Antarmuka Kelola Usulan ... 73
Gambar 43 Antarmuka Tambah User ... 74
(15)
xiv
DAFTAR TABEL
Tabel 1 Representasi Pengetahuan dengan OAV ... 17
Tabel 2 Contoh Bingkai ... 18
Tabel 3 Notasi Dasar DFD ... 19
Tabel 4 Notasi Dasar E-R ... 23
Tabel 5 Pedoman Penskoran ... 30
Tabel 6 Klasifikasi Penilaian ... 30
Tabel 7 Rentang Skor Kuesioner ... 31
Tabel 8 Basis Pengetahuan dalam Bentuk Tabel ... 41
Tabel 9 Tabel Gejala-gejala Batuk-Pilek ... 42
Tabel 10 Tabel Gejala-gejala Sinusitis ... 42
Tabel 11 Tabel Gejala-gejala Faringitis dan Tonsilofaringitis ... 43
Tabel 12 Tabel Gejala-gejala Laringitis ... 43
Tabel 13 Tabel Gejala-gejala Difteria ... 43
Tabel 14 Tabel Gejala-gejala Bronkitis ... 43
Tabel 15 Tabel Gejala-gejala Pneumonia ... 44
Tabel 16 Tabel Penyakit ... 51
Tabel 17 Tabel Gejala ... 51
Tabel 18 Tabel Relasi ... 51
Tabel 19 Tabel Hasil ... 52
Tabel 20 Tabel Artikel ... 52
Tabel 21 Tabel Buku Tamu ... 52
Tabel 22 Tabel Bantu Penyakit ... 53
Tabel 23 Tabel Bantu Gejala ... 53
Tabel 24 Tabel Bantu Analisis ... 53
Tabel 25 Tabel User ... 54
Tabel 26 Tabel Usulan1... 54
Tabel 27 Tabel Usulan2... 55
(16)
xv
Tabel 29 Tabel Usulan_gejala1 ... 56
Tabel 30 Tabel Usulan_gejala2 ... 56
Tabel 31 Tabel Usulan_gejala3 ... 56
Tabel 32 Tabel Usulan_relasi1 ... 57
Tabel 33 Tabel Usulan_relasi2 ... 57
Tabel 34 Tabel Usulan_relasi3 ... 57
Tabel 35 Saran dari Ahli Media dan Pengguna ... 76
Tabel 36 Tabel Persentase Penilaian Ahli Media ... 77
Tabel 37 Tabel Persentase Penilaian Tingkat Admin ... 80
Lanjutan Tabel 37 ... 81
(17)
1 BAB I PENDAHULUAN
A. Latar Belakang
Batasan anak balita adalah setiap anak yang berada pada kisaran umur 12-59 bulan (Kemenkes RI, 2015: 121). Pada usia ini, balita masih sangat rentan terhadap berbagai macam penyakit karena daya tahan tubuhnya yang masih lemah sehingga mudah tertular penyakit, khususnya penyakit pernapasan yang disebabkan oleh parasit seperti virus, bakteri, dan jamur karena mudah menular lewat udara.
Penyakit pernapasan atau Infeksi Saluran Pernapasan Akut (ISPA) adalah penyakit saluran pernapasan atas atau bawah dan biasanya menular. Penyakit ini dapat menimbulkan berbagai tingkat penyakit, dari penyakit tanpa gejala atau infeksi ringan sampai penyakit yang parah dan mematikan, tergantung pada patogen penyebabnya, faktor lingkungan, dan faktor pejamu/manusianya (WHO, 2007: 6). ISPA merupakan penyebab utama angka kesakitan (morbiditas) dan angka kematian (mortalitas) penyakit menular di dunia. Hampir empat juta orang meninggal akibat ISPA setiap tahun, 98% darinya disebabkan oleh infeksi saluran pernapasan bawah. Menurut WHO (2007: 12) terjadinya ISPA tertentu bervariasi menurut beberapa faktor. Penyebaran dan dampak penyakit berkaitan dengan:
1. kondisi lingkungan (misalnya, polutan udara, kepadatan anggota keluarga), kelembaban, kebersihan, musim, temperatur);
(18)
2
2. ketersediaan dan efektivitas pelayanan kesehatan dan langkah pencegahan infeksi untuk mencegah penyebaran (misalnya, vaksin, akses terhadap fasilitas pelayanan kesehatan, kapasitas ruang isolasi);
3. faktor pejamu, seperti usia, kebiasaan merokok, kemampuan pejamu menularkan infeksi, status kekebalan, status gizi, infeksi sebelumnya atau infeksi serentak yang disebabkan oleh patogen lain, kondisi kesehatan umum; dan
4. karakteristik patogen, seperti cara penularan, daya tular, faktor virulensi (misalnya, gen penyandi toksin), dan jumlah atau dosis mikroba (ukuran inokulum).
Menurut Menteri Kesehatan Indonesia, dr. Endang R. Sedyaningsih, MPH, Dr. PH ketika membuka seminar Pneumonia, The Forgotten Killer Of Children tanggal 2 November 2009 di Universitas Padjadjaran Bandung, penyakit ISPA merupakan penyakit yang sering terjadi pada anak. Episode penyakit batuk-pilek pada balita di Indonesia diperkirakan tiga sampai enam kali per tahun, ini berarti seorang balita rata-rata mendapat serangan batuk pilek sebanyak tiga sampai enam kali setahun. Sebagai kelompok penyakit, ISPA merupakan salah satu penyebab utama kunjungan pasien di sarana kesehatan, yaitu sebanyak 40%−60% kunjungan berobat di Puskesmas dan 15%−30% kunjungan berobat di bagian rawat jalan dan rawat inap rumah sakit.
Dari berbagai macam penyakit pernapasan, Pneumonia merupakan pembunuh utama anak di bawah usia lima tahun (balita) di dunia, bahkan
(19)
3
lebih banyak dibandingkan dengan penyakit lain seperti AIDS, Malaria, dan Campak. Di dunia, dari 9 juta kematian balita lebih dari 2 juta balita meninggal setiap tahun akibat pneumonia atau sama dengan 4 balita meninggal setiap menitnya. Dari lima kematian balita, satu diantaranya disebabkan pneumonia. Kementerian Kesehatan Republik Indonesia (2016: 174) menyebutkan sampai dengan tahun 2014, angka cakupan penemuan Pneumonia balita tidak mengalami perkembangan berarti, yaitu berkisar antara 20%-30%. Pada tahun 2015 terjadi peningkatan menjadi 63,45%. Angka kematian akibat Pneumonia pada balita sebesar 0,16%, lebih tinggi dibandingkan dengan tahun 2014 yang sebesar 0,08%. Pada kelompok bayi, angka kematian sedikit lebih tinggi, yaitu sebesar 0,17% dibandingkan pada kelompok umur 1-4 tahun yang sebesar 0,15%.
Menurut Menkes, pengendalian penyakit ISPA memiliki kendala diantaranya cakupan penemuan masih sangat rendah akibat tingginya mutasi tenaga kesehatan. Di sisi lain, kurangnya pengetahuan orang tua mengenai penyakit-penyakit pernapasan dapat menyebabkan bertambah parah penyakit yang diderita balita, dikarenakan kesalahan atau keterlambatan penanganan. Orang tua sering menganggap ringan masalah pernapasan pada balita, terlebih ketika anak mengalami gejala batuk dan/atau pilek. Permasalahan lain, dokter atau pakar terdekat tidak dapat ditemui untuk konsultasi sewaktu-waktu, sehingga menyebabkan terlambatnya mengetahui diagnosis penyakit yang diderita. Akibatnya penyakit dapat bertambah parah, dikarenakan kesalahan atau keterlambatan penanganan. Hal tersebut dapat berakibat fatal, baik dalam
(20)
4
jangka pendek maupun jangka panjang, karena penyakit dapat menyebar ke seluruh sistem pernapasan tubuh.
Berdasarkan permasalahan di atas, perlu dibuat sebuah aplikasi sistem pakar untuk mendiagnosis penyakit pernapasan pada balita dengan cepat yang dapat diakses selama 24 jam penuh. Sistem pakar adalah perangkat lunak yang memiliki kemampuan untuk meniru kapasitas berpikir dan penalaran manusia berdasarkan beberapa fakta dan aturan yang disajikan. Menurut Giarratano dan Riley dalam Kusumadewi (2003: 109), sistem pakar adalah suatu sistem komputer yang dapat menyamai atau meniru kemampuan seorang pakar. Contoh penggunaan sistem pakar yaitu di berbagai sektor seperti medis diagnosis, sistem pendukung keputusan, pendidikan, dan lain sebagainya. Tujuan dari sistem pakar misalnya dalam medis diagnosis adalah untuk membantu ahli medis dalam membuat diagnosis penyakit tertentu atau membantu orang awam untuk mendapatkan hasil diagnosis penyakit.
B. Batasan Masalah
Untuk membatasi objek yang menjadi pokok penelitian, maka permasalahan akan dibatasi sebagai berikut.
1. Data penyakit yang digunakan sebagai data awal adalah 7 jenis penyakit pernapasan pada balita. Untuk jenis penyakit lainnya dapat dilakukan penambahan pada sistem.
2. Sistem pakar ini hanya digunakan untuk diagnosis awal dan saran atau penanganan sementara bagi orang tua balita.
(21)
5 C. Perumusan Masalah
Berdasarkan latar belakang di atas, maka dapat diambil rumusan masalah, yakni.
1. bagaimana membangun aplikasi sistem pakar untuk diagnosis penyakit pernapasan pada balita?
2. bagaimana hasil pengujian terhadap aplikasi sistem pakar untuk diagnosis penyakit pernapasan pada balita yang dibangun?
D. Tujuan Penelitian
Dari rumusan masalah di atas, diambil tujuan penelitian sebagai berikut: 1. dapat membangun aplikasi sistem pakar untuk diagnosis penyakit
pernapasan pada balita,
2. dapat mengetahui hasil pengujian terhadap aplikasi sistem pakar diagnosis penyakit pernapasan pada balita yang dibangun,
E. Manfaat Penelitian
Manfaat dari penelitian yang dilakukan adalah sebagai berikut. 1. Bagi tenaga kesehatan
Sistem dapat menjadi alat bantu bagi tenaga kesehatan untuk menemukan kasus dalam rangka pengendalian penyakit pernapasan pada balita.
2. Bagi orang tua
a. Sistem dapat menjadi alat bantu bagi orang tua untuk mempermudah dan mempercepat dalam mengetahui hasil diagnosis penyakit
(22)
6
pernapasan pada putra-putrinya yang masih balita dan juga sekaligus saran atau penanganannya.
b. Dapat memberikan kemudahan pelayanan untuk diagnosis awal penyakit pernapasan pada balita karena dapat diakses selama 24 jam. 3. Bagi pakar
Sistem dapat digunakan sebagai alat transfer pengetahuan dan keahlian pakar.
(23)
7 BAB II
KAJIAN PUSTAKA
Sistem pakar diagnosis penyakit pernapasan pada balita dibangun dengan merujuk pada beberapa teori. Teori yang dideskripsikan adalah sistem pakar, Data Flow Diagram, basis data, PHP, MySQL, dreamweaver, metode pengembangan sistem, metode uji coba, dan penyakit pernapasan pada balita.
A. Sistem Pakar 1. Kecerdasan Buatan
Menurut H. A. Simon dalam Kusrini (2006: 3), kecerdasan buatan (artificial intelligence) merupakan kawasan penelitian, aplikasi, dan instruksi yang terkait dengan pemrograman komputer untuk melakukan sesuatu hal yang dalam pandangan manusia. Menurut John McCarthy dalam Desiani & Arhami (2006: 3) kecerdasan buatan adalah ilmu untuk mengetahui dan memodelkan proses-proses berpikir manusia dan mendesain mesin agar dapat menirukan perilaku manusia. Sesuai dengan definisi tersebut, maka ilmu kecerdasan buatan ini dapat diaplikasikan ke berbagai bidang seperti: Robotika (Robotics), Penglihatan Komputer (Computer Vision), Pengolahan Bahasa Alami (Natural Language Processing), Pengenalan Pola (Pattern Recognition), System Syaraf Buatan (Artificial Neural System), Pengenalan Suara (Speech Recognition) dan Sistem Pakar (Expert System).
Menurut Winston dan Prendergast dalam Kusrini (2006:4), ada tiga tujuan kecerdasan buatan, yaitu: membuat komputer lebih cerdas, mengerti tentang kecerdasan, dan membuat mesin lebih berguna. Kecerdasan adalah
(24)
8
kemampuan untuk belajar atau mengerti dari pengalaman, memahami pesan yang kontradiktif dan ambigu, menanggapi dengan cepat dan baik atas situasi yang baru, menggunakan penalaran dalam memecahkan masalah serta menyelesaikannya dengan efektif.
2. Sistem Pakar
a. Konsep dasar sistem pakar
Sistem pakar adalah bagian dari kecerdasan buatan yang merupakan perangkat lunak untuk memecahkan masalah yang biasanya diselesaikan oleh seorang pakar atau ahli dan berisi aturan-aturan bagaimana memberlakukan informasi-informasi yang tersimpan, sehingga program dapat memberikan bantuan pengambilan keputusan mengenai suatu permasalahan tertentu, sebagaimana seorang pakar. Pakar atau ahli (expert) didefinisikan sebagai seseorang yang memiliki pengetahuan atau keahlian yang tidak dimiliki oleh kebanyakan orang (Rosnelly, 2012: 8). Sistem pakar, dipandang berhasil ketika mampu mengambil keputusan seperti yang dilakukan oleh pakar aslinya baik dari sisi proses pengambilan keputusannya maupun hasil keputusan yang diperoleh (Kusrini, 2008: 3).
b. Ciri-ciri sistem pakar
Menurut Kusrini (2006: 14) sistem pakar yang baik haruslah memiliki ciri-ciri sebagai berikut:
terbatas pada bidang yang spesifik,
dapat memberikan penalaran untuk data–data yang tidak lengkap atau tidak pasti,
(25)
9
dapat mengemukakan alasan yang diberikannya dengan bahasa yang dapat dipahami,
bekerja berdasarkan kaidah atau aturan (rule) tertentu,
dirancang dengan tujuan dapat dikembangkan secara bertahap, keluaran atau outputnya berisi anjuran atau nasihat,
sistem dapat mengarahkan pengguna kepada output, tergantung dari dialog pengguna dan sistem,
basis pengetahuan dan mekanisme inferensinya terpisah.
c. Kelebihan dan kekurangan sistem pakar
Secara garis besar, banyak sekali keuntungan yang didapatkan dengan adanya sistem pakar, diantaranya sebagai berikut.
Menghimpun data dalam jumlah yang sangat besar.
Menyimpan data tersebut untuk jangka waktu yang panjang.
Meningkatkan output dan produktivitas karena sistem pakar dapat bekerja lebih cepat dibandingkan manusia.
Mempermudah pencarian pengetahuan dan nasihat yang diperlukan. Dapat bekerja dengan data yang kurang lengkap dan tidak pasti. Sistem pakar tidak dapat lelah dan bosan.
Memberikan respons (jawaban) yang cepat.
Di samping memiliki kelebihan, sistem pakar juga memiliki kekurangan layaknya sistem lain (Desiani & Arhami, 2006 : 11), diantaranya adalah.
(26)
10
Masalah dalam mendapatkan pengetahuan di mana pengetahuan tidak selalu mudah diperoleh karena kadang kala pakar dari masalah tersebut tidak ada atau terkadang pendekatan yang dimiliki para ahli berbeda-beda. Membuat suatu sistem pakar yang benar-benar berkualitas sangatlah sulit
dan memerlukan biaya yang tidak sedikit.
Dapat jadi sistem pakar tidak dapat membuat keputusan
Sistem pakar tidaklah 100% menguntungkan karena tidak sempurna atau
tidak selalu benar. Oleh karena itu perlu diuji ulang secara teliti sebelum digunakan.
d. Struktur sistem pakar
Struktur Sistem Pakar dapat dilihat pada Gambar 1.
Gambar 1: Struktur Sistem Pakar (sumber: Rosnelly, 2012) Penjelasan dari komponen-komponen di atas adalah sebagai berikut. 1. Basis Pengetahuan (knowledge base).
Basis pengetahuan merupakan komponen yang mengandung pengetahuan, pemahaman, formulasi, dan penyelesaian masalah.
(27)
11
Komponen sistem pakar terdiri dari dua elemen dasar, yakni fakta dan aturan. Fakta adalah informasi tentang obyek dalam area permasalahan tertentu, sedangkan aturan adalah informasi tentang bagaimana cara memperoleh fakta baru dari fakta yang telah diketahui (Desiani & Arhami, 2006: 234).
2. Mesin Inferensi (Inference Engine).
Mesin inferensi adalah bagian dari komputer yang bertindak sebagai otak dari sebuah sistem pakar. Komponen ini mengandung mekanisme fungsi berpikir dan pola penalaran. Metode ini terbagi menjadi dua, yaitu forward chaining (runut maju) dan backward chaining (runut balik). a. Forward Chaining
Pada metode ini, penalaran dimulai dari fakta-fakta yang ada (IF) kemudian bergerak maju melalui premis-premis untuk menuju kesimpulan (THEN). Metode runut maju ini digunakan untuk mendiagnosis suatu penyakit bedasarkan gejala-gejala yang ada. Cara kerja metode forward chaining yaitu seperti pada Gambar 2 di bawah ini.
Gambar 2. Cara Kerja Metode Forward Chaining
Gambar 3 adalah ilustrasi untuk mempermudah pemahaman tentang metode inferensi. Dalam penalaran ini, user diminta memasukkan premis-premis yang dialami. Seandainya user memilih Premis 1, Premis 2, dan Premis 3 maka aturan yang terpilih adalah aturan 1 dengan konklusinya adalah Konklusi 1. Seandainya user memilih Premis 1 dan Premis 6, maka
(28)
12
sistem akan mengarah pada aturan empat dengan konklusinya adalah Konklusi 4, tetapi karena aturan tersebut premisnya adalah Premis 1, Premis 4, Premis 5, dan Premis 6 maka premis-premis yang dipilih oleh user tidak cukup untuk mengambil kesimpulan Konklusi 4 sebagai konklusi terpilih.
Gambar 3. Graf Pengetahuan b. Backward Chaining
Metode ini membantu dalam menangani permasalahan di mana konklusinya telah diketahui sebelumnya dan penyebab dari konklusi tersebut yang kemudian dicari. Penelusuran didasarkan pada suatu keyakinan bahwa ada kemungkinan konklusi dari daftar konklusi merupakan salah satu tujuan atau konklusi terpilih berdasarkan fakta yang diberikan user. Cara kerja metode ini dapat dilihat pada Gambar 4.
(29)
13
Gambar 4. Cara Kerja Metode Backward Chaining
Menggunakan Gambar 3, sistem dengan urutan tertentu akan mengambil sebuah konklusi sebagai calon konklusinya. Misal awalnya sistem akan mengambil hipotesis bahwa konklusinya adalah Konklusi 1. Untuk membuktikannya, sistem akan mencari premis-premis aturan yang mengandung Konklusi 1. Setelah itu sistem akan meminta umpan balik kepada user mengenai premis-premis yang ditemukan. Untuk Konklusi 1, premisnya adalah premis 1, premis 2, dan premis 3, maka sistem akan mencari tahu apakah user memilih premis-premis tersebut.
3. Memori Kerja (Working Memory).
Memori kerja adalah area penyimpanan fakta yang dihasilkan oleh mesin inferensi dengan penambahan parameter berupa derajat kepercayaan atau dapat juga dikatakan sebagai global database dari fakta yang digunakan oleh aturan-aturan yang ada (Rika Rosnelly, 2012: 13).
4. Fasilitas Penjelasan (Explanation Facility).
Fasilitas penjelasan adalah komponen yang berfungsi memberi penjelasan kepada pengguna, bagaimana suatu kesimpulan dapat diambil. Menurut Turban dalam Desiani&Arhami (2006: 239), fasilitas penjelasan dapat menjelaskan bagaimana cara berpikir sistem dengan menjawab pertanyaan berikut:
a) mengapa pertanyaan tertentu ditanyakan oleh sistem pakar? b) bagaimana kesimpulan tertentu dapat diperoleh?
(30)
14 c) mengapa alternatif tertentu ditolak?
d) apa rencana untuk memperoleh penyelesaian?
5. Fasilitas Akuisisi Pengetahuan (Knowledge Acquisition Facility).
Fasilitas ini merupakan suatu proses pengumpulan data-data pengetahuan suatu masalah dari pakar, meliputi proses pengumpulan, pemindahan dan perubahan dari kemampuan pemecahan masalah seorang pakar atau sumber pengetahuan yang terdokumentasi ke program komputer yang bertujuan untuk memperbaiki atau mengembangkan basis pengetahuan.
6. Antarmuka Pengguna (User Interface)
Antarmuka pengguna (user interface) adalah komponen yang digunakan pengguna dan sistem untuk saling berkomunikasi. Antarmuka menerima informasi dari pengguna dan mengubahnya ke dalam bentuk yang dimengerti oleh sistem. Oleh sistem, informasi tersebut akan diolah kemudian diteruskan ke antarmuka. Oleh antarmuka, informasi tersebut diubah terlebih dulu menjadi informasi yang dapat dimengerti pengguna. 3. Representasi Pengetahuan
Pengetahuan merupakan intisari dari sebuah informasi, dapat berisi fakta, informasi, konsep, prosedur, model, dan heuristis yang dapat digunakan untuk menyelesaikan suatu persoalan. Pengetahuan diklasifikasikan menjadi tiga, yaitu: (a) pengetahuan procedural (procedural knowledge), adalah pengetahuan yang lebih menekankan pada bagaimana melakukan sesuatu; (b) pengetahuan deklaratif (declarative knowledge) yaitu menjawab pertanyaan
(31)
15
apakah sesuatu bernilai salah atau benar; dan (c) pengetahuan tacit (tacit knowledge), yaitu pengetahuan yang tidak dapat diungkapkan dengan bahasa.
Menurut Kusrini (2008: 6), representasi pengetahuan merupakan metode yang digunakan untuk mengkodekan pengetahuan dalam sebuah sistem pakar. Representasi dimaksudkan untuk menangkap sifat-sifat penting masalah dan membuat informasi itu dapat diakses oleh prosedur pemecahan masalah. Adapun karakteristik dari metode representasi pengetahuan adalah sebagai berikut:
a. harus dapat diprogram dan hasilnya disimpan dalam memori,
b. dirancang sedemikian sehingga isinya dapat digunakan untuk proses penalaran,
c. model representasi pengetahuan merupakan sebuah struktur data yang dapat dimanipulasi oleh mesin inferensi dan pencarian untuk aktivitas pencocokan pola.
Menurut Kusrini (2006: 24-25), representasi pengetahuan dapat dimodelkan menjadi:
a. Logika (logic)
Logika merupakan suatu pengkajian ilmiah tentang serangkaian penalaran, sistem kaidah dan prosedur yang membantu proses penalaran. Dalam melakukan penalaran, komputer harus dapat menggunakan proses penalaran deduktif (penalaran umum ke khusus) dan proses penalaran induktif (penalaran khusus ke umum).
(32)
16
Premis mayor: Jika hari ini saya sakit, saya tidak akan berangkat sekolah.
Premis minor: Hari ini saya sakit.
Konklusi: Hari ini saya tidak berangkat sekolah. Berikut contoh penalaran induktif:
Premis: Dioda yang salah menyebabkan alat elektronik rusak. Premis: Transistor rusak menyebabkan peralatan elektronik rusak. Premis: Dioda dan transistor merupakan peralatan semikonduktor. Konklusi: Peralatan semikonduktor yang rusak menyebabkan peralatan
elektronik rusak. b. Jaringan semantik (semantic nets)
Jaringan semantik merupakan penggambaran grafis dari pengetahuan yang memperlihatkan hubungan antar obyek. Komponen dasar dari jaringan semantik (Gambar 5), yaitu simpul (node) dan penghubung (arc/link). Node menggambarkan objek, konsep, atau situasi sedangkan arc/link menggambarkan hubungan antar node. Contoh jaringan semantik:
Gambar 5. Representasi Jaringan Semantik
Gambar 5 merepresentasikan pernyataan bahwa semua PC merupakan komputer, semua komputer merupakan alat elektronik, dan
(33)
17
semua komputer memiliki monitor. Dari pernyataan tersebut dapat diketahui bahwa semua PC memiliki monitor dan hanya sebagian alat elektronik saja yang memiliki monitor.
c. Object-Attribute-Value (OAV)
Object dapat berupa fisik atau konsep. Attribute adalah karakteristik dari objek tersebut. Value adalah besaran/nilai/takaran spesifik dari attribute tersebut pada situasi tertentu, dapat berupa numerik, string atau konstan. Contoh representasi pengetahuan dengan menggunakan OAV:
Tabel 1. Representasi Pengetahuan dengan OAV
Object Attribute Value
Mangga Warna Hijau, Orange
Mangga Berbiji Tunggal
Mangga Rasa Asam, Manis
Pisang Warna Kuning, Hijau
Pisang Bentuk Lonjong
Pada Tabel 1, obyek yang dibahas adalah mangga. Mangga ini memiliki beberapa atribut (karakteristik dari obyek) salah satunya adalah atribut warna. Warna pada mangga memiliki value yakni hijau atau orange. Karena objek di sini memiliki beberapa atribut, maka objek ini disebut dengan OAV multi-attribute.
d. Bingkai (frame)
Frame berupa ruang-ruang (slots) yang berisi atribut untuk mendeskripsikan pengetahuan. Bingkai digunakan untuk merepresentasikan pengetahuan deklaratif. Contoh bingkai:
(34)
18
Tabel 2. Contoh Bingkai Ruang (slots) Isi (filters)
Nama Flu
Gejala 1. Bersin
2. Pusing 3. Demam
Obat 1. Ultraflu
2. Mixagrip
e. Aturan produksi (production rule)
Aturan menyediakan cara formal untuk merepresentasikan rekomendasi, arahan, atau strategi. Aturan produksi ditulis dalam bentuk jika-maka (if-then). Aturan if-then mengandung anteseden (antecencent) dengan konsekuensi yang dihasilkannya. Anteseden mengacu kepada situasi yang terjadi sebelum konsekuensi dapat diamati.
Menurut Kusrini (2008: 7-8), aturan dalam kaidah produksi diklasifikasikan menjadi kaidah derajat pertama dan kaidah meta. Kaidah derajat pertama adalah aturan yang bagian konklusinya tidak menjadi premis bagi kaidah lain. Sebaliknya, kaidah meta merupakan kaidah yang berisi penjelasan bagi kaidah yang lain.
Contoh kaidah derajat pertama: JIKA Anemia
DAN Batuk Kronis MAKA TBC
Contoh kaidah meta: JIKA Pusing DAN Cepat Lelah
(35)
19 DAN Sering Kesemutan
MAKA Anemia
B. Data Flow Diagram (DFD)
Data Flow Diagram (DFD) merupakan notasi-notasi yang digunakan untuk menggambarkan arus data sistem. DFD menggambarkan komponen-komponen sebuah sistem, aliran-aliran data dan penyimpanan dari data tersebut (Jogiyanto Hartono, 2005: 701).
Tabel 3. Notasi Dasar DFD
Simbol Keterangan
Kesatuan Luar (External Entity)
Proses
Arus Data
Penyimpanan Data
Menurut Al-Bahra bin Ladjamuddin (2005: 67-75), elemen dasar dari DFD adalah sebagai berikut:
1. Kesatuan Luar (External Entity)
Kesatuan luar adalah sesuatu yang berada di luar sistem tetapi memberikan data ke dalam sistem atau sebaliknya. Kesatuan luar tidak termasuk bagian dari sistem. Pedoman kesatuan luar adalah sebagai berikut: nama kesatuan luar berupa kata benda dan kesatuan luar tidak boleh memiliki nama yang sama kecuali memang ada objeknya sama.
(36)
20 2. Proses (Process)
Proses merupakan kegiatan atau kerja yang dilakukan oleh sistem. Proses berfungsi mentranformasikan satu atau beberapa data masukan menjadi satu atau beberapa data keluaran sesuai dengan spesifikasi yang dinginkan. Pedoman pemberian nama proses adalah sebagai berikut: a. nama proses terdiri dari kata kerja dan kata benda yang mencerminkan
fungsi proses,
b. jangan menggunakan kata proses sebagai bagian dari nama suatu proses,
c. tidak boleh ada beberapa proses yang memiliki nama yang sama, d. proses harus diberi nomor.
3. Simpanan Data (Data Store)
Simpanan data merupakan tempat penyimpanan data yang ada dalam sistem. Pedoman pemberian nama simpanan data adalah sebagai berikut: a. nama harus mencerminkan simpanan data tersebut,
b. bila namanya lebih dari satu kata, maka harus diberi tanda sambung. 4. Arus Data (Data Flow)
Arus data merupakan tempat mengalirnya informasi dan digambarkan dengan garis yang menghubungkan komponen dari sistem. Arus data ditunjukkan dengan arah panah dan garis diberi nama atas arus data yang mengalir. Pedoman nama aliran data adalah sebagai berikut: a. nama aliran data yang terdiri dari beberapa kata dihubungkan dengan
(37)
21
b. sedapatnya mungkin nama aliran data ditulis lengkap,
c. tidak boleh ada aliran data dari kesatuan luar dan simpanan data atau sebaliknya, hubungan kesatuan luar dengan simpanan data harus melalui proses.
Menurut Agus Winarno (2007: 2) DFD dibagi menjadi 2 jenis. a. Diagram Konteks (Context Diagram)
Diagram konteks merupakan DFD Level 0, yaitu diagram yang paling sederhana dari sebuah sistem informasi yang menggambarkan aliran data dari kesatuan luar ke dalam sistem dan sebaliknya.
Gambar 6. Contoh Diagram Konteks b. DFD Level n
DFD level n merupakan diagram yang digunakan untuk menggambarkan diagram hasil pengembangan dari diagram konteks ke dalam komponen yang lebih detail. Nilai n merupakan banyaknya angka/digit yang digunakan untuk penomoran proses yang ada.
(38)
22
Gambar 8. Contoh DFD Level 2
C. Basis Data (Database)
Menurut Arief (2006: 33), database merupakan sekumpulan data yang saling terintegrasi satu sama lain dan terorganisasi berdasarkan sebuah skema atau struktur tertentu dan tersimpan pada sebuah hardware komputer. Di dalam sistem pakar, basis data merupakan tempat penyimpanan fakta-fakta kemudian ditambahkan dengan fakta baru yang diperoleh dari proses pelacakan oleh mesin inferensi. Selain itu basis data memiliki fungsi untuk mengelola data yang tersimpan di dalamnya seperti menambah, menghapus, melacak, dan lain sebagainya.
Model basis data relasional merupakan model basis data yang paling sederhana sehingga mudah untuk digunakan dan dipahami. Model basis data relasional ini umumnya dimodelkan menggunakan diagram relasi antar entitas yakni dengan Diagram Entity-Relationship (Diagram E-R).
(39)
23
Tabel 4. Notasi Dasar Diagram E-R (sumber: Yudi Priyadi, 2014: 20)
Simbol Keterangan
Persegi panjang, menunjukkan objek dasar
Lingkaran/elips, menunjukkan atribut dari objek dasar
Belah ketupat, menunjukkan relasi
Garis, menunjukkan adanya relasi
Menurut Priyadi (2014: 21) penjelasan untuk notasi dasar pada Tabel 4 adalah sebagai berikut.
1. Entitas merupakan notasi untuk mewakili suatu objek dengan karakteristik yang sama, dilengkapi oleh atribut. Entitas biasanya berupa kata benda, pekerjaan, orang, dan tempat. Misalnya user, admin, dan pakar adalah contoh entitas.
2. Atribut adalah notasi yang menjelaskan karakteristik suatu entitas. Nama user atau asal admin merupakan contoh dari atribut. Atribut dapat berupa key yang bersifat unik seperti primary key dan foreign key.
a. Kunci primer (primary key)
Kunci primer adalah kunci yang dipilih sebagai kunci utamma dalam mengidentifikasi baris dalam tabel.
b. Kunci tamu (foreign key)
Kunci tamu adalah sebarang atribut yang menunjuk ke kunci primer pada tabel lain.
(40)
24
3. Relasi merupakan notasi dasar yang digunakan untuk menghubungkan beberapa entitas berdasarkan fakta pada suatu lingkungan.
4. Garis penghubung merupakan notasi dasar yang digunakan untuk menunjukkan keterkaitan antara notasi-notasi yang digunakan dalam diagram E-R.
D. PHP (Personal Home Page tools)
PHP adalah bahasa pemrograman yang berjalan dalam sebuah web server dan berfungsi sebagai pengolah data. PHP termasuk dalam HTML-embedded, yang artinya kode PHP dapat disisipkan pada sebuah halaman HTML. Menurut Haryono (2004: 15), kode-kode bahasa PHP dalam penulisannya menyatu dengan tag-tag HTML dalam satu file. Kode PHP diletakkan antara tanda <? atau <?php dan diakhiri dengan tanda ?> sebagai identitas bahasa pemrograman PHP. Akan tetapi, ada beberapa cara lagi untuk memberikan tanda bahwa kode yang ditulis adalah kode PHP, antara sebagai berikut.
1. Model javascript, php diawali dengan tag <script language=”php”> dan diakhiri dengan </script>.
2. Model ASP, penulisan kode php diawali dengan tag<% dan diakhiri dengan %>. Akan tetapi, cara ini berfungsi bila server diatur lebih dahulu sehingga modul php mengenalinya.
(41)
25 E. MySQL
MySQL adalah salah satu jenis basis data server yang sangat terkenal disebabkan MySQL menggunakan SQL sebagai bahasa dasar untuk mengakses basis datanya. Selain itu MySQL bersifat gratis kecuali pada windows yang bersifat shareware atau perlu membayar setelah melakukan evaluasi dan memutuskan untuk digunakan pada keperluan produksi.
F. Dreamweaver
Menurut M. Suyanto (2005: 244), Dreamweaver merupakan sebuah softwareweb design yang menawarkan cara untuk mendesain website dengan dua langkah sekaligus dalam satu waktu, yaitu mendesain dan memprogram. Dreamweaver memiliki satu jendela mini yang disebut HTML Source, tempat kode-kode HTML tertulis. Dreamweaver juga mampu mengenali tag-tag lain di luar HTML, seperti Cold Fussion dan ASP, serta mendukung script-script dinamik HTML dan CSS style. Selain itu, dreamweaver juga memberikan pilihan workspace baru yang terintegrasi, menyediakan lingkungan pengembangan yang lebih familiar dengan dockable panel yang lengkap dan jendela dokumen yang menyebut pemakai.
G. Metode Pengembangan Sistem
Sistem pakar diagnosis penyakit pernapasan pada balita dibangun dengan sebuah metode analisis sistem aplikasi terstruktur yakni Waterfall Model. Waterfall Model (Classic Life Cycle) adalah model yang pertama kali
(42)
26
muncul yaitu sekitar tahun 1970. Model Waterfall sering dianggap kuno, tetapi paling sering digunakan dalam Software Engineering (SE).
Gambar 9. Model Waterfall Pressman
Pressman (2001: 28) menyatakan bahwa model Waterfall diuraikan dengan tahap-tahap sebagai berikut.
1. Analysis adalah tahap menganalisa hal-hal yang diperlukan dalam pelaksanaan perancangan aplikasi.
2. Design adalah tahap penerjemah atau tahap perancangan dari keperluan-keperluan yang dianalisis dalam bentuk yang lebih mudah dimengerti oleh pemakai.
3. Code adalah tahap implementasi dari hasil aplikasi yang telah dirancang dalam bahasa pemrograman yang telah ditentukan dan digunakan dalam pembuatan aplikasi.
4. Test adalah tahap pengujian terhadap program yang telah dibuat. Pengujian dilakukan agar fungsi-fungsi dalam aplikasi bebas dari error, dan hasilnya harus sesuai dengan kebutuhan yang sudah didefinisikan sebelumnya.
(43)
27 H. Metode Uji Coba
Pengujian merupakan metode yang dilakukan untuk menentukan kualitas perangkat lunak. Salah satu tolak ukur kualitas perangkat lunak adalah ISO 9126 yang dibuat oleh International Organization for Standardization (ISO) dan International Electrotechnical Commision (IEC). Faktor kualitas menurut ISO 9126 meliputi enam karakteristik kualitas sebagai berikut:
1. Functionality (Fungsionalitas), yaitu kemampuan perangkat lunak untuk menyediakan fungsi sesuai kebutuhan pengguna, ketika digunakan dalam kondisi tertentu.
2. Reliability (Kehandalan), yaitu kemampuan perangkat lunak untuk mempertahankan tingkat kinerja tertentu, ketika digunakan dalam kondisi tertentu.
3. Usability (Kebergunaan), yaitu kemampuan perangkat lunak untuk dipahami, dipelajari, digunakan, dan menarik bagi pengguna, ketika digunakan dalam kondisi tertentu.
4. Efficiency (Efisiensi), yaitu kemampuan perangkat lunak untuk memberikan kinerja yang sesuai dan relatif terhadap jumlah sumber daya yang digunakan pada saat keadaan tersebut.
5. Maintainability (Pemeliharaan), yaitu kemampuan perangkat lunak untuk dimodifikasi. Modifikasi meliputi koreksi, perbaikan atau adaptasi terhadap perubahan lingkungan, persyaratan, dan spesifikasi fungsional.
(44)
28
6. Portability (Portabilitas), yaitu kemampuan perangkat lunak untuk ditransfer dari satu lingkungan ke lingkungan lain.
Masing-masing karakteristik kualitas perangkat lunak model ISO 9126 dibagi menjadi beberapa sub-karakteristik kualitas, sebagai berikut.
1. Functionality terdiri dari: suitability (kemampuan perangkat lunak untuk menyediakan serangkaian fungsi yang sesuai untuk tugas-tugas tertentu dan tujuan pengguna), accuracy (kemampuan perangkat lunak dalam memberikan hasil yang presisi dan benar sesuai dengan kebutuhan), security (kemampuan perangkat lunak untuk mencegah akses yang tidak diinginkan, menghadapi penyusup/hacker maupun otorisasi dalam modifikasi data), interoperability (kemampuan perangkat lunak untuk berinteraksi dengan satu atau lebih sistem tertentu), dan compliance (kemampuan perangkat lunak dalam memenuhi standar dan kebutuhan sesuai peraturan yang berlaku).
2. Reliability terdiri dari: maturity (kemampuan perangkat lunak untuk menghindari kegagalan sebagai akibat dari kesalahan dalam perangkat lunak), fault tolerance (kemampuan perangkat lunak untuk mempertahankan kinerjanya jika terjadi kesalahan perangkat lunak), dan recoverability (kemampuan perangkat lunak untuk membangun kembali tingkat kinerja ketika terjadi kegagalan sistem, termasuk data dan koneksi jaringan).
3. Usability terdiri dari: understandability (kemampuan perangkat lunak dalam kemudahan untuk dipahami), learnability (kemampuan perangkat
(45)
29
lunak dalam kemudahan untuk dipelajari), operability (kemampuan perangkat lunak dalam kemudahan untuk dioperasikan), dan attractiveness (kemampuan perangkat lunak dalam menarik pengguna).
4. Efficiency terdiri dari: time behavior (kemampuan perangkat lunak dalam memberikan respon dan waktu pengolahan yang sesuai saat melakukan fungsinya) dan resource behavior (kemampuan perangkat lunak dalam menggunakan sumber daya yang dimilikinya ketika melakukan fungsi yang ditentukan).
5. Maintainability terdiri dari: analyzability (kemampuan perangkat lunak dalam mendiagnosis kekurangan atau penyebab kegagalan), changeability (kemampuan perangkat lunak untuk dimodifikasi tertentu), stability (kemampuan perangkat lunak untuk meminimalkan efek tak terduga dari modifikasi perangkat lunak), dan testability (kemampuan perangkat lunak untuk dimodifikasi dan divalidasi perangkat lunak lain).
6. Portability terdiri dari: adaptability (kemampuan perangkat lunak untuk diadaptasikan pada lingkungan yang berbeda-beda), instalability (kemampuan perangkat lunak untuk diinstal dalam lingkungan yang berbeda-beda), coexistence (kemampuan perangkat lunak untuk berdampingan dengan perangkat lunak lainnya dalam satu lingkungan dengan berbagi sumber daya), dan replaceability (kemampuan perangkat lunak untuk digunakan sebagai pengganti perangkat lunak lainnya).
(46)
30
Pengujian perangkat lunak dilakukan menggunakan kuesioner pengujian dengan skala jawaban Sangat Tidak Baik (STB), Tidak Baik (TB), Kurang Baik (KB), Baik (B), dan Sangat Baik (SB).
Tabel 5. Pedoman Penskoran
Kategori Skor
Sangat Tidak Baik (STB) 1
Tidak Baik (TB) 2
Kurang Baik (KB) 3
Baik (B) 4
Sangat Baik (SB) 5
Konversi skor rata-rata menjadi nilai kualitatif menurut Saifuddin Azwar (2010: 163) disajikan berdasarkan Tabel 6:
Tabel 6. Klasifikasi Penilaian
Rentang skor (i) kuantitatif Kriteria Kualitatif
> ( i+1,50 i) Sangat Baik ( i+ i) < ≤ ( i+1,50 i) Baik
( i−0,5 i) < ≤ ( i+ i) Cukup Baik ( i−1,50 i) < ≤ ( i−0,5 i) Sangat Kurang
≤ ( i−1,50 i) Sangat Kurang Baik Keterangan:
skor maksimal ideal = skor tertinggi skor minimal ideal = skor terendah
= rata-rata skor tiap butir
i= rata-rata ideal = (skor maksimal ideal + skor minimal ideal)
i= simpangan baku ideal = (skor maksimal ideal – skor minimal ideal) Berdasarkan Tabel 6, maka didapat rentang skor kuesioner yang disajikan pada Tabel 7.
(47)
31
Tabel 7. Rentang Skor Kuesioner
Rentang skor (i) kuantitatif Kriteria Kualitatif
4,00 Sangat Baik
3,67 4,00 Baik 2,66 3,67 Cukup Baik 1,99 2,66 Sangat Kurang
1,99 Sangat Kurang Baik
Untuk menentukan kualitas perangkat lunak dibutuhkan suatu pengujian. Pengujian merupakan metode yang dilakukan untuk menjelaskan tentang pengoperasian perangkat lunak yang terdiri dari perangkat pengujian, metode pengujian, dan pelaksanaan pengujian. Pengujian sistem menggunakan pengujian Beta, yaitu pengujian yang dilakukan pada satu atau lebih pengguna sistem pakar yang dibangun dan pengembang tidak terlibat. Rumus untuk mencari persentase jawaban pengguna adalah sebagai berikut: Y = (P/Q) x 100%
Keterangan:
Y = Persentase jawaban responden tiap soal P = Banyaknya jawaban responden tiap soal Q = Total responden
I. Penyakit Pernapasan pada Balita
Penyakit pernapasan pada balita yang akan digunakan sebagai basis pengetahuan untuk sistem pakar ini berupa tujuh jenis penyakit, yaitu: Batuk-Pilek (Common Cold), Sinusitis, Faringitis dan Tonsilofaringitis, Laringitis, Difteria, Bronkitis, dan Pneumonia. Data gejala dan penanganan/saran
(48)
32
diperoleh dari buku kedokteran dan dipadukan dengan pengetahuan dari dokter.
1. Batuk-Pilek (Common Cold)
Batuk-Pilek merupakan penyakit saluran pernapasan yang paling sering mengenai bayi dan anak. Bayi yang masih sangat muda akan sangat mudah tertular, karenanya perawat yang sedang batuk pilek tidak diperkenankan bekerja di ruangan bayi walaupun ia memakai masker, karena virus dapat menembusnya. Penularan juga masih tetap terjadi disebabkan seseorang yang pilek akan sering memegang hidungnya karena rasa gatal atau membuang ingusnya; jika tidak segera mencuci tangan ia akan menjadi sumber penularan (Ngastiyah, 2014: 31).
Gejala atau gambaran umum yang dialami pasien berupa batuk, pilek, bersin-bersin, pusing atau nyeri kepala atau kepala terasa berat, gangguan selera makan, terdapat cairan/lendir di tenggorok, hidung tersumbat, gelisah, dan bernapas melalui mulut.
Penanganan yang dapat dilakukan adalah membaringkan bayi tengkurap untuk pengeluaran sekret/lendir. Pada anak agak besar dapat diajarkan untuk mengeluarkan sekret/lendir/dahaknya sendiri. Jika batuk pilek lebih dari 2 hari belum sembuh, bawa anak ke dokter untuk mendapat pemeriksaan lanjutan.
2. Sinusitis
Menurut Ngastiyah (2014: 34), Sinusitis adalah radang sinus yang ada di sekitar hidung, dapat berupa Sinusitis Maksilaris atau Sinusitis
(49)
33
Frontalis (biasanya Sinusitis Maksilaris). Sinusitis dapat berlangsung akut maupun kronik, ia dapat mengenai anak yang sudah besar saat Sinusitis Pranasal sudah berkembang.
Gambaran umum yang biasa diderita pasien, yaitu: pilek, pusing atau nyeri kepala atau kepala terasa berat, serak, terdapat cairan/lendir di tenggorok, hidung tersumbat, bengkak kemerahanpada pipi yang dapat menjalar ke kelopak mata, nyeri di atas sinus/rongga berisi udara yang terdapat di sekitar pipi/hidung/mata, penciuman terganggu, tersumbatnya ostium (pembukaan ke dalam sinus untuk pertukaran udara dan lendir), dan bernapas melalui mulut.
Saran untuk orang tua adalah segera membawa anak ke dokter atau bagian THT untuk pemeriksaan lanjutan apakah perlu dilakukan pencucian sinus atau tidak.
3. Faringitis/Tonsilofaringitis
Radang faring pada bayi dan anak hampir selalu melibatkan organ sekitarnya, sehingga infeksi pada faring biasanya juga mengenai tonsil, sehingga disebut sebagai Tonsilofaringitis (Ngastiyah, 2014: 36).
Gambaran umum yang biasa dialami penderita, yaitu: demam/suhu tubuh lebih dari 380Celcius, nyeri menelan, nyeri tenggorok, sakit telinga, bengkak kelenjar ludah/submandibula (di rahang bawah), dan mulut berbau.
Penanganan yang dapat dilakukan oleh orang tua adalah anjurkan anak untuk istirahat di tempat tidur sampai demam hilang dan berikan
(50)
34
makanan lunak. Jika sampai 2 hari demam tidak juga hilang dan kondisi anak tetap sama atau bahkan menurun, segera bawa ke dokter untuk pemeriksaan tenggorok apakah perlu tonsilektomi atau tidak.
4. Laringitis
Penyebab Laringitis umumnya adalah Streptococcus hemolyticus, Streptococcus viridians, pneumokokus, Staphylococcus hemolyticus, dan Haemophilus influenzae. Proses radang pada laring dipermudah oleh trauma, bahan kimia, radiasi, alergi dan pemakaian suara berlebihan (Ngastiyah, 2014: 39).
Gejala yang biasa dialami oleh penderita Laringitis berupa batuk, pilek, sesak napas, demam/suhu tubuh lebih dari 380 Celcius, serak, nyeri menelan, napas berat, suara napas kasar, hilang suara, nyeri ulu hati, napas tersengal, dan gelisah.
Saran untuk orang tua terhadap balitanya yaitu anjurkan anak untuk istirahat bersuara dan bawa ke dokter atau bagian THT untuk pemeriksaan lanjutan, biasanya berupa laringoskopi direk.
5. Difteria
Menurut Ngastiyah (2014: 40), penyakit Difteria adalah suatu infeksi akut yang mudah menular, dan yang sering diserang terutama saluran pernapasan bagian atas, dengan tanda khas timbulnya pseudomembran. Penyebab penyakit Difteria adalah kuman Diphtheriae corynebacterium bersifat gram positif dan polimorf, tidak bergerak, dan tidak membentuk spora.
(51)
35
Gambaran umum penderita Difteria, yaitu: pusing, sesak napas, demam, gangguan selera makan, serak, nyeri menelan, suara napas kasar, bengkak, pada leher, lesu, dan pucat.
Saran bagi orang tua adalah segera bawa anak ke dokter untuk melakukan pemeriksaan lanjutan, biasanya berupa pemeriksaan darah dan urin.
6. Bronkitis
Secara harfiah, Bronkitis adalah suatu penyakit yang ditandai oleh adanya inflamasi bronkus. Secara klinis para ahli mengartikan Bronkitis sebagai suatu penyakit atau gangguan respiratorik dengan batuk merupakan gejala yang utama dan dominan (Ngastiyah, 2014: 54).
Gejala yang biasa dialami pasien yaitu: batuk, sesak napas, terdapat cairan/ lendir di tenggorok, mengi, nyeri dada, dan suara napas kasar.
Penanganan yang dapat dilakukan orang tua adalah memberi anak minum yang banyak terutama sari buah-buahan, jangan biarkan anak merasa kedinginan, untuk meringankan gejala batuknya berikan minum hangat tidak manis; untuk anak yang agak besar beritahu supaya membuang dahaknya. Jika batuk tetap ada dan tidak ada perbaikan setelah 2 minggu berturut-turut dan/atau berulang paling sedikit 3x dalam 3 bulan, bawa anak ke dokter untuk pemeriksaan lanjutan
7. Pneumonia
Pneumonia adalah suatu radang paru yang disebabkan oleh bermacam-macam etiologi seperti bakteri, virus, jamur, dan benda asing.
(52)
36
Anak mengalami napas yang dangkal dan cepat, yaitu untuk usia kurang dari dua bulan napas lebih dari 60x/menit; dua bulan- satu tahun napas lebih dari 50x/menit; dan satu sampai lima tahun napas lebih dari 40x/menit (Kustantinah, 2007: 182).
Gambaran umum atau gejala Pneumonia biasanya adalah batuk, pusing, sesak napas, demam, nyeri sekitar hidung dan mulut, napas cuping hidung, napas cepat dan dangkal, serta lesu.
Saran bagi orang tua adalah segera bawa anak ke dokter untuk melakukan pemeriksaan lanjutan.
(53)
37 BAB III PEMBAHASAN
Proses pembuatan aplikasi sistem pakar untuk diagnosis penyakit pernapasan pada balita menggunakan metode Waterfall. Metode Waterfall terdiri dari tahap analisis, design atau perancangan, code atau implementasi, dan test atau pengujian. Penjelasan mengenai tahap-tahap pembuatan sistem pakar ini dengan menggunakan metode Waterfall adalah sebagai berikut.
A. Analisis
Analisis merupakan langkah menentukan spesifikasi kebutuhan perangkat guna menjalankan sistem. Analisis kebutuhan dalam membangun sistem pakar diagnosis penyakit pernapasan pada balita adalah sebagai berikut.
1. Kebutuhan Perangkat Lunak (Software) Bantu
Kebutuhan perangkat lunak merupakan kebutuhan aplikasi dengan spesifikasi tertentu untuk merancang, membuat, dan menjalankan sistem. Sistem pakar diagnosis penyakit pernapasan pada balita dibangun dengan perangkat lunak bantu sebagai berikut.
a) Sistem Operasi Windows 8
b) Adobe Dreamweaver sebagai text editor
c) Database Management System (DBMS) MySQL Xampp v3.2.1 d) Web browserMozilla Firefox.
(54)
38 2. Kebutuhan Pengguna
Berdasarkan hak akses, pengguna dalam sistem pakar penyakit pernapasan pada balita dibagi menjadi 3:
a. Admin
Admin merupakan orang yang berhak megelola sistem pakar diagnosis penyakit pernapasan pada balita, yaitu Ketua Ikatan Dokter Anak Indonesia (IDAI). Admin memiliki wewenang penuh terhadap sistem meliputi input, edit, dan hapus data-data dalam sistem. Data-data yang merupakan wewenang admin yaitu: data penyakit (kode penyakit, nama penyakit, keterangan, dan penanganan); data gejala (kode gejala dan nama gejala); data relasi (kode penyakit dan kode gejala); data tambah user yang terdiri dari user sebagai admin atau pakar (username, password, no identitas, nama, alamat rumah, tempat praktik, telepon, jabatan, foto); data berita (judul, kop, isi, gambar); data hasil konsultasi; data laporan buku tamu; data daftar pakar; data kelola akun.
b. Pakar
Pakar dalam sistem ini adalah orang yang dipercaya admin untuk membantu mengelola sistem berupa transfer pengetahuan. Data input pakar dalam sistem ini berupa: data usulan penyakit (kode penyakit, nama penyakit, keterangan, dan penanganan); data usulan gejala (kode gejala dan nama gejala); data usulan relasi (kode penyakit dan kode gejala); data berita (judul, kop, isi, gambar).
(55)
39 c. Pengguna atau masyarakat umum
Pengguna atau masyarakat umum yaitu orang-orang yang menggunakan sistem ini untuk mendapatkan hasil diagnosis. Data input pengguna atau masyarakat umum dalam sistem pakar penyakit pernapasan pada balita berupa data gejala-gejala yang dialami dan data buku tamu.
B.
Perancangan Aplikasi
Perancangan aplikasi dapat diartikan sebagai penggambaran, perencanaan, dan pembuatan sketsa atau pengaturan dari beberapa elemen menjadi satu kesatuan. Perancangan aplikasi yang akan dibuat dimulai setelah tahap analisis terhadap aplikasi selesai dilakukan.
1. Perancangan Basis Pengetahuan
Basis pengetahuan merupakan kumpulan beberapa pengetahuan yang dihubungkan dengan suatu permasalahan tertentu. Basis pengetahuan berisi kaidah-kaidah yang akan digunakan untuk penarikan kesimpulan yang merupakan hasil dari sebuah pelacakan.
Dalam perancangan basis pengetahuan, digunakan kaidah produksi sebagai sarana untuk representasi pengetahuan. Kaidah produksi dituliskan dalam bentuk pernyataan JIKA [premis] dan MAKA [konklusi]. Pada perancangan basis pengetahuan dalam sistem pakar ini yang bertindak sebagai premis adalah gejala-gejala yang dialami penderita, sedangkan yang bertindak sebagai konklusi adalah nama penyakit yang diderita oleh pasien.
(56)
40 Contoh 1:
JIKA batuk DAN pilek
DAN bersin-bersin DAN pusing
DAN anoreksia
DAN terdapat cairan/lendir di tenggorok DAN hidung tersumbat
DAN gelisah
DAN bernapas melalui mulut MAKA Batuk-Pilek / Commoncold Contoh 2:
JIKA batuk DAN sesak napas DAN demam DAN pusing
DAN nyeri sekitar hidung DAN napas cuping hidung DAN napas cepat dan dangkal DAN lesu
MAKA pneumonia.
Berikut ini merupakan tabel basis pengetahuan dari 7 jenis penyakit pernapasan pada balita beserta gejala-gejalanya, yang diperoleh dari
(57)
41
perpaduan antara buku “Perawatan Anak Sakit Edisi 2”, “Pedoman
Pengobatan Dasar di Puskesmas 2007”, dan pengetahuan dokter anak sebagai
pakar.
Tabel 8. Basis Pengetahuan dalam Bentuk Tabel
No Gejala Penyakit
1 2 3 4 5 6 7
1 Batuk x x x x
2 Pilek x x x
3 Bersin-bersin x
4 Pusing/ Nyeri kepala/ Kepala terasa berat x x x x
5 Sesak Napas (Dispnea) x x x x
6 Demam / suhu tubuh lebih dari 38 derajat
celcius
x x x x
7 Gangguan selera makan (Anoreksia) x x
8 Serak x x x
9 Nyeri menelan x x x
10 Sianosis/ Nyeri sekitar hidung dan mulut x
11 Terdapat cairan atau lendir di tenggorok (Postnasaldrip)
x x x
12 Napas cuping hidung x
13 Mengi x
14 Napas berat x
15 Napas cepat dan dangkal x
16 Nyeri tenggorok x
17 Nyeri dada x
18 Hidung tersumbat x x
19 Suara napas kasar (Stridor) x x x
20 Hilang suara (Afoni) x
21 Sakit telinga (Otalgia) x
22 Bengkak dan kemerahan pada pipi yang dapat menjalar ke kelopak mata
x 23 Bengkak kelenjar ludah/ submandibula (di
rahang bawah)
x
24 Bengkak pada leher x
25 Nyeri di atas sinus/ rongga berisi udara yang terdapat di sekitar pipi, hidung, dan mata
x
26 Nyeri ulu hati (Epigastrium) x
27 Penciuman terganggu x
28 Mulut berbau x
29 Napas tersengal x
30 Tersumbatnya ostium (pembukaan ke dalam sinus untuk pertukaran udara dan lendir)
x
31 Gelisah x x
32 Lesu x x
33 Pucat x
(58)
42 Keterangan:
x : menderita
1 : P001 = Batuk-Pilek / Commoncold 2 : P002 = Sinusitis
3 : P003 = Faringitis & Tonsiloraringitis 4 : P004 = Laringitis
5 : P005 = Difteria 6 : P006 = Bronkitis 7 : P007 = Pneumonia
Tabel 9 hingga Tabel 15 merupakan tabel gejala dari masing-masing penyakit.
Tabel 9. Tabel Gejala-gejala Batuk-Pilek / Commoncold
No Gejala
1 Batuk 2 Pilek
3 Bersin-bersin
4 Pusing/ Nyeri kepala/ Kepala terasa berat 5 Gangguan selera makan (Anoreksia)
6 Terdapat cairan/lendir di tenggorok (Postnasaldrip) 7 Hidung tersumbat
8 Gelisah
9 Bernapas dari mulut
Tabel 10. Tabel Gejala-gejala Sinusitis
No Gejala
1 Pilek
2 Pusing/ Nyeri kepala/ Kepala terasa berat 3 Serak
4 Terdapat cairan/lendir di tenggorok (Postnasaldrip) 5 Hidung tersumbat
6 Bengkak dan kemerahan pada pipi yang dapat menjalar ke kelopak mata
7 Nyeri di atas sinus/ rongga berisi udara yang terdapat di sekitar pipi, hidung, dan mata
8 Penciuman terganggu 9 Bernapas dari mulut
(59)
43
Tabel 11. Tabel Gejala-gejala Faringitis dan Tonsilofaringitis
No Gejala
1 Demam / suhu tubuh lebih dari 38 derajat celcius 2 Nyeri menelan
3 Nyeri tenggorok 4 Sakit telinga (otalgia)
5 Bengkak kelenjar ludah/ submandibula (di rahang bawah) 6 Mulut berbau
Tabel 12. Tabel Gejala-gejala Laringitis
No Gejala
1 Batuk 2 Pilek 3 Sesak napas
4 Demam / suhu tubuh lebih dari 38 derajat celcius 5 Serak
6 Nyeri menelan 7 Napas berat
8 Suara napas kasar (Stridor) 9 Hilang suara (Afoni) 10 Nyeri ulu hati/epigastrium 11 Napas tersengal
Tabel 13. Tabel Gejala-gejala Difteria
No Gejala
1 Pusing/ Nyeri kepala/ Kepala terasa berat 2 Sesak napas (Dispnea)
3 Demam / suhu tubuh lebih dari 38 derajat celcius 4 Anoreksia
5 Serak
6 Nyeri menelan 7 Stridor
8 Bengkak leher
Tabel 14. Tabel Gejala-gejala Bronkitis
No Gejala
1 Batuk
2 Sesak napas (Dispnea)
3 Terdapat cairan/lendir di tenggorok 4 Mengi
5 Nyeri dada
(60)
44
Tabel 15. Tabel Gejala-gejala Pneumonia
No Gejala
1 Batuk
2 Pusing/ Nyeri kepala/ Kepala terasa berat 3 Sesak napas (Dispnea)
4 Demam / suhu tubuh lebih dari 38 derajat celcius 5 Nyeri sekitar hidung dan mulut (Sianosis)
6 Napas cuping hidung 7 Napas cepat dan dangkal 8 Lesu
2. Perancangan Penelusuran Sistem
Gambar 10 menunjukkan graf pengetahuan antara gejala dan penyakit, untuk pelacakan atau penelusuran dengan Metode Forward Chaining.
Gambar 10. Graf Pengetahuan Forward Chaining
Cara kerja Metode Forward Chaining dalam aplikasi sistem pakar diagnosis penyakit pernapasan pada balita, adalah berangkat dari gejala-gejala
(61)
45
yang dijawab oleh pasien, kemudian menyesuaikan basis pengetahuan yang telah dibuat, hingga sistem menemukan penyakit yang sesuai. Keterangan lebih jelas dapat dilihat pada Gambar 10 dan Gambar 11.
Sistem pakar diagnosis penyakit pernapasan pada balita dengan metode pelacakan Forward Chaining ini menanyakan satu per satu gejala dari tabel gejala, kemudian menyesuaikan dengan aturan atau basis pengetahuan untuk menanyakan gejala berikutnya. Data jawaban dari pengguna disimpan dalam tabel bnt_gejala, bnt_analisis, dan bnt_penyakit. Sistem berhenti menanyakan gejala jika sudah didapatkan satu jenis penyakit dalam tabel bnt_penyakit, kemudian akan ditampilkan hasil diagnosisnya. Jadi, tidak semua gejala ditanyakan oleh sistem. Alur penelusuran dari sistem ini terlihat seperti pada pohon pelacakan Gambar 11.
(62)
46
3. Perancangan Alur Data (Data Flow Diagram)
Desain proses digambarkan dalam bentuk Data Flow Diagram (DFD) yang dimulai dari level tertinggi yakni level 0 (Diagram Konteks) kemudian diturunkan menjadi level 1, level 2 dan seterusnya. Level 0 (Diagram Konteks) menggambarkan sistem secara keseluruhan. Berikut merupakan DFD yang menggambarkan aliran data dalam sistem pakar penyakit pernapasan pada balita.
a. DFD level 0 (diagram konteks)
Diagram konteks menggambarkan aliran data dari sistem secara garis besar. Pada sistem ini terdapat tiga entitas yakni admin, pakar dan pengguna umum. Diagram konteks sistem ini dapat dilihat pada Gambar 12.
Gambar 12. Diagram Konteks
Gambar 12 menunjukkan bahwa admin memiliki wewenang untuk menentukan hak akses dari entitas lainnya dan melakukan transfer pengetahuan. Pengetahuan yang sudah ditransfer ke dalam sistem akan disimpan dan dijadikan basis pengetahuan. Kemudian pengguna umum dapat melakukan konsultasi.
(63)
47 b. DFD level 1
DFD level 1 merupakan pengembangan dari proses dan aliran data pada DFD level 0 yang lebih detail. Pada DFD level 1 ini terdapat tiga entitas yaitu admin, pakar, dan pengguna umum serta terdapat empat proses yakni proses login, proses pengolahan data pengetahuan, proses pengolahan data umum, dan proses konsultasi. DFD level 1 ditunjukkan oleh Gambar 13.
(64)
48 c. DFD level 2
DFD level 2 merupakan pemecahan dari proses pada DFD level 1 yakni proses pengolahan data pengetahuan dan proses pengolahan data umum.
1)DFD Level 2 proses 2 (proses pengolahan data pengetahuan)
Gambar 14. DFD Level 2 Proses 2
Pada proses ini terdapat tiga entitas, yaitu admin dan pakar, serta terdapat tiga proses, yakni proses pengolahan data penyakit, proses pengolahan data gejala, dan proses pengolahan data relasi. Pakar memiliki wewenang untuk transfer pengetahuan berupa data usulan (input, edit, hapus). Sedangkan admin memiliki wewenang untuk menyetujui atau menolak usulan pakar dan melakukan transfer pengetahuan. Selengkapnya dijabarkan oleh Gambar 14.
(65)
49
2) DFD level 2 proses 3 (proses pengolahan data umum)
Proses ini terdiri dari tiga entitas, yaitu admin, pakar, dan pengguna umum. Admin melakukan input berupa data artikel/berita dan data user. Pakar melakukan input berupa data artikel/berita seputar balita. Sedangkan pengguna umum dapat melakukan input data berupa buku tamu dan dapat melihat data dokter, data artikel/berita, dan data buku tamu. Proses selengkapnya dijabarkan oleh Gambar 15.
Gambar 15. DFD Level 2 Proses 3 4. Perancangan Basis Data
Basis data merupakan salah satu komponen penting dalam sistem pakar karena merupakan tempat penyimpanan semua data, baik data pengetahuan maupun data aturan. Perancangan basis data pada sistem pakar diagnosis penyakit pernapasan pada balita adalah sebagai berikut.
(66)
50
a. Perancangan Entity Relation Diagram (ERD)
Dalam Entity Relationship Diagram (ERD), suatu sistem basis data dapat dimodelkan sebagai suatu kumpulan entitas yang memiliki relationship antara satu dengan lainnya melalui atribut-atribut yang dimiliki oleh entitas-entitas tersebut. ERD dari sistem pakar diagnosis penyakit pernapasan pada balita ditunjukkan seperti pada Gambar 16.
Gambar 16.Entity Relation Diagram (ERD) b. Perancangan tabel
Tabel yang disusun terdiri dari nama field, tipe field, ukuran field, dan keterangan. Tabel-tabel yang digunakan dalam sistem pakar diagnosis penyakit pernapasan pada balita, yaitu:
(67)
51 1) Tabel Penyakit
Tabel 16 digunakan untuk menyimpan semua daftar penyakit beserta kode penyakit, keterangan dan penanganan atau sarannya.
Tabel 16. Tabel Penyakit
Field Tipe dan Ukuran Keterangan
kode_penyakit* char(4) kunci utama
nama_penyakit varchar(30) keterangan text
penanganan text
2) Tabel Gejala
Tabel 17 digunakan untuk menyimpan data gejala dalam sistem. Tabel 17. Tabel Gejala
Field Tipe dan Ukuran Keterangan
kode_gejala* char(4) kunci utama
nama_gejala varchar(100)
3) Tabel Relasi
Tabel 18. Tabel Relasi
Field Tipe dan Ukuran Keterangan
no_relasi int(4) auto_increment
kode_penyakit** char(4) kunci tamu
kode_gejala** char(4) kunci tamu
Tabel 18 digunakan untuk menyimpan data relasi antara data penyakit dan gejala yang berkaitan.
4) Tabel Hasil
Tabel 19 digunakan untuk menyimpan data hasil diagnosis yang diperoleh sistem.
(68)
52
Tabel 19. Tabel Hasil
Field Tipe dan Ukuran Keterangan
no_hasil int(4) auto_increment
penyakit varchar(20)
gejala text
keterangan text penanganan text
tanggal datetime
5) Tabel Artikel
Tabel 20 digunakan untuk menyimpan daftar berita tentang balita. Tabel 20. Tabel Artikel
Field Tipe dan Ukuran Keterangan
id_berita int(4) kunci utama
tanggal datetime
judul text
kop varchar(255)
isi longtext
nama_file varchar(200) nama file gambar
url varchar(255) penyimpanan gambar
6) Tabel Buku Tamu
Tabel 21. Tabel Buku Tamu
Field Tipe dan Ukuran Keterangan
no_tamu int(5) auto_increment
tanggal datetime
nama char(30)
alamat text
email email
(69)
53
Tabel 21 digunakan untuk menyimpan data tamu berupa nama tamu, alamat, email, dan komentarnya tentang sistem ini.
7) Tabel Bantu Penyakit
Tabel 22 digunakan untuk menyimpan daftar kemungkinan penyakit saat menjawab setiap gejala yang ditanyakan oleh sistem.
Tabel 22. Tabel Bantu Penyakit
Field Tipe dan Ukuran Keterangan
id_bntpenyakit int(4) kode_penyakit char(4)
8) Tabel Bantu Gejala
Tabel 23 digunakan untuk menyimpan daftar kode gejala yang dijawab “YA”, sedangkan gejala yang dijawab “TIDAK”, tidak akan disimpan.
Tabel 23. Tabel Bantu Gejala
Field Tipe dan Ukuran Keterangan
id_bntgejala int(4) kode_gejala char(4)
9) Tabel Bantu Analisis
Tabel 24 digunakan untuk menyimpan daftar relasi yang kode penyakitnya mungkin terjadi, yaitu dari semua kode penyakit yang tersimpan di dalam tabel bnt_penyakit.
Tabel 24. Tabel Bantu Analisis
Field Tipe dan Ukuran Keterangan
id_bntanalisis int(4) kode_penyakit char(4) kode_gejala char(4)
(70)
54 10) Tabel User
Tabel 25 digunakan untuk menyimpan data diri user (admin dan pakar). Tabel 25. Tabel User
Field Tipe dan Ukuran Keterangan
id_dokter int(10) kunci utama
username varchar(20) password varchar(30)
nama varchar(25)
alamat_rumah text alamat_praktik text
telepon text
nama_file varchar(200)
url varchar(225)
jabatan enum(‘pakar’, ’admin’) 11)Tabel Usulan1
Tabel 26 digunakan untuk menyimpan data usulan input penyakit dari pakar yang nantinya akan dikonfirmasi terlebih dahulu oleh admin.
Tabel 26. Tabel Usulan1
Field Tipe dan Ukuran Keterangan
id_usulan1 int(5) auto_increment
kode_penyakit char(4) nama_penyakit varchar(40) keterangan text
penanganan text status_usulan tinyint(1) validator_usulan int(5)
(71)
55 12)Tabel Usulan2
Tabel 27 digunakan untuk menyimpan data usulan edit penyakit dari pakar yang nantinya akan dikonfirmasi terlebih dahulu oleh admin.
Tabel 27. Tabel Usulan2
Field Tipe dan Ukuran Keterangan
id_usulan2 int(5) auto_increment
kode_penyakit char(4) nama_penyakit varchar(40) keterangan text
penanganan text status_usulan tinyint(1) validator_usulan int(5)
13)Tabel Usulan3
Tabel 28 berfungsi untuk menyimpan data usulan hapus penyakit dari pakar untuk admin.
Tabel 28. Tabel Usulan3
Field Tipe dan Ukuran Keterangan
id_usulan int(5) auto_increment
kode_penyakit char(4) nama_penyakit varchar(40) keterangan text
penanganan text
14)Tabel Usulan_gejala1
Tabel 29 digunakan untuk menyimpan data usulan input gejala dari pakar yang nantinya akan dikonfirmasi terlebih dahulu oleh admin.
(72)
56
Tabel 29. Tabel Usulan _gejala1
Field Tipe dan Ukuran Keterangan
id_usulan1gjl int(5) auto_increment
kode_gejala char(4) nama_gejala varchar(100) status_usulan tinyint(1) validator_usulan int(5)
15)Tabel Usulan_gejala2
Tabel 30 digunakan untuk menyimpan data usulan edit gejala dari pakar. Tabel 30. Tabel Usulan_gejala2
Field Tipe dan Ukuran Keterangan
id_usulan2gjl int(5) auto_increment
kode_gejala char(4) nama_gejala varchar(100) status_usulan tinyint(1) validator_usulan int(5)
16)Tabel Usulan_gejala3
Tabel 31 digunakan untuk menyimpan data usulan dari pakar berupa data hapus gejala.
Tabel 31. Tabel Usulan_gejala3
Field Tipe dan Ukuran Keterangan
id_usulan3gjl int(5) auto_increment kode_gejala char(4)
nama_gejala varchar(100)
17)Tabel Usulan_relasi1
(73)
57
Tabel 32. Tabel Usulan_relasi1
Field Tipe dan Ukuran Keterangan
id_usulan1rls int(5) auto_increment
kode_penyakit char(4) kode_gejala char(4) status_usulan tinyint(1) validator_usulan int(5)
18)Tabel Usulan_relasi2
Tabel 33 digunakan untuk menyimpan data usulan edit relasi. Tabel 33. Tabel Usulan_relasi2
Field Tipe dan Ukuran Keterangan
id_usulan2rls int(5) auto_increment
kode_penyakit char(4) kode_gejala char(4) status_usulan tinyint(1) validator_usulan int(5)
19)Tabel Usulan_relasi3
Tabel 34 ini berfungsi untuk menyimpan data usulan hapus relasi. Tabel 34. Tabel Usulan_relasi3
Field Tipe dan Ukuran Keterangan
id_usulan3rls int(5) auto_increment kode_penyakit char(4)
kode_gejala char(4)
c. Relasi antartabel
Relasi antartabel ditunjukkan oleh Gambar 17, yaitu terdapat relasi/hubungan antara tabel relasi dengan tabel gejala dan tabel penyakit.
(74)
58
Tabel relasi dan tabel gejala berrelasi melalui field kode_gejala yang merupakan kunci primer pada tabel gejala. Sedangkan tabel relasi berrelasi dengan tabel penyakit melalui field kode_penyakit yang merupakan kunci primer dari tabel penyakit.
Gambar 17. Relasi Antartabel 5. Perancangan Menu
Perancangan menu terbagi menjadi 3 yaitu menu index, yaitu menu login pakar, login admin, dan pengguna umum. Fungsi dari menu admin dan pakar adalah sebagai server basis data dalam sistem pakar sedangkan fungsi
(75)
59
dari menu pengguna umum adalah sebagai fasilitas untuk konsultasi ke sistem pakar. Pada menu pengguna umum terdapat 5 submenu, menu login pakar terdapat 7 submenu, dan menu login admin terdapat 11 submenu. Perancangan menu ditunjukkan oleh Gambar 18.
Gambar 18. Perancangan Menu 6. Perancangan Antarmuka
Berdasarkan desain menu yang telah ada, selanjutnya dibuatlah antarmuka untuk setiap menu tersebut. Antarmuka Sistem Pakar Diagnosis Penyakit Pernapasan pada Balita dibuat dengan menggunakan bahasa pemrograman PHP dan basis datanya menggunakan MySQL. Rancangan antarmuka yang dibuat adalah sebagai berikut:
a. Antarmuka Halaman Index
Halaman index adalah halaman yang pertama kali muncul saat program dijalankan. Pada halaman index ini terdapat konten menu-menu bagi
(76)
60
pengguna umum dan menu login bagi admin dan pakar. Tampilan perancangan antarmuka halaman index seperti pada Gambar 19.
Gambar 19. Perancangan Antarmuka Halaman Index b. Antarmuka Konsultasi
Antarmuka konsultasi berfungsi sebagai fasilitas tanya jawab antara sistem dan orang tua/ pengguna umum. Pengguna umum diharuskan memilih satu dari dua jawaban yaitu benar(ya) atau salah(tidak) sesuai gejala yang dialami oleh balita. Perancangan antarmuka konsultasi ditunjukkan oleh Gambar 20.
(77)
61 c. Antarmuka Hasil Konsultasi
Perancangan antarmuka hasil konsultasi dapat dilihat pada Gambar 21.
Gambar 21. Perancangan Antarmuka Hasil Konsultasi
Antarmuka hasil konsultasi/diagnosis ini akan menampilkan hasil konsultasi yang berisi kemungkinan jenis penyakit pernapasan pada balita, gejala-gejala yang berkaitan dengan penyakit tersebut, keterangan tentang penyakit tersebut, dan saran yang dapat dilakukan oleh orang tua.
d. Antarmuka Halaman Index Pakar
(78)
62
Setelah melakukan proses login dengan memasukkan username dan password, pakar akan masuk ke halaman index pakar. Perancangan antarmuka halaman index pakar ditunjukkan oleh Gambar 22.
e. Antarmuka Halaman Index Admin
Antarmuka halaman index admin akan tampil setelah admin melakukan proses login dengan memasukkan username dan password. Pada halaman ini terdapat beberapa menu untuk admin mengelola sistem. Perancangan antarmyka index admin disajikan pada Gambar 23.
Gambar 23. Perancangan Antarmuka Halaman Index Admin f. Antarmuka Masukan Penyakit
Antarmuka masukan penyakit berisi formulir isian kode penyakit, nama penyakit, keterangan, dan penanganan. Antarmuka ini terdapat pada halaman admin dan pakar. Pada halaman pakar, pakar dapat memasukkan data penyakit akan tetapi masih sebagai usulan. Rancangan antarmuka halaman masukan penyakit ditunjukkan oleh Gambar 24.
(79)
63
Gambar 24. Perancangan Antarmuka Masukan Penyakit g. Antarmuka Masukan Gejala
Perancangan antarmuka masukan gejala (Gambar 25) berisi formulir isian kode gejala dan nama gejala. Antarmuka ini terdapat pada halaman admin maupun pakar. Data gejala yang dimasukkan pakar masih sebagai usulan.
Gambar 25. Perancangan Antarmuka Masukan Gejala h. Antarmuka Masukan Relasi
Gambar 26. Perancangan Antarmuka Masukan Relasi
Perancangan antarmuka masukan relasi (Gambar 26) berisi formulir isian berupa kode penyakit dan kode gejala yang terdapat pada halaman admin dan
(80)
64
pakar. Data relasi yang dimasukkan oleh pakar masih sebagai usulan yang akan dikonfirmasi terlebih dahulu oleh admin.
i. Antarmuka Kelola Usulan (Penyakit, Gejala, Relasi)
Gambar 27. Perancangan Antarmuka Kelola Usulan
Setelah pakar memasukkan usulannya, data disimpan dalam database dan akan ditampilkan pada halaman admin seperti tampilan di atas. Rancangan antarmuka usulan (Gambar 27) terdapat dalam menu kelola penyakit, kelola gejala, dan kelola relasi.
j. Antarmuka Tambah User
Perancangan antarmuka tambah user ditampilkan oleh Gambar 28. Antarmuka tambah user dikelola oleh admin, berisi formulir masukan data user baru yang akan ditambahkan berupa username, password, nomor identitas, nama, alamat rumah, tempat praktik, telepon, jabatan, dan foto.
(81)
65
Gambar 28. Perancangan Antarmuka Tambah User k. Antarmuka Kelola Data Akun
Rancangan antarmuka kelola data akun dapat dilihat pada Gambar 29. Antarmuka kelola data akun berisi formulir data akun admin untuk diubah. Pada halaman pakar juga tersedia antarmuka halaman kelola data akun pakar.
Gambar 29. Perancangan Antarmuka Kelola Data Akun
C. Implemetasi
Sistem pakar diagnosis penyakit pernapasan pada balita dibuat dengan menggunakan bahasa pemrograman PHP dan basis data MySQL. Berdasarkan rancangan antarmuka yang telah ada, dibuatlah implementasi antarmuka sistem pakar tersebut. Implementasinya sebagai berikut.
(82)
66 1. Antarmuka Halaman Index
Gambar 30. Antarmuka Halaman Index
Tampilan antarmuka yang pertama kali muncul saat program dijalankan adalah tampilan index (Gambar 30). Pada halaman index terdapat menu Home (index.php), Tentang Sistem (tentang.php), Daftar Dokter (daftar_dokter.php), Konsultasi (konsultasi.php), Buku Tamu (tamu.php), serta terdapat juga fasilitas login bagi admin dan pakar.
2. Antarmuka Konsultasi
Antarmuka halaman konsultasi muncul ketika pengguna umum melakukan konsultasi/diagnosis penyakit pernapasan balita. Tampilan antarmuka konsultasi disajikan pada Gambar 31.
(83)
67
Gambar 31. Antarmuka Konsultasi
Ketika konsultasi, pengguna umum memastikan terlebih dahulu apakah gejala-gejala yang dialami balita ada pada daftar gejala yang ditampilkan sistem kemudian memilih jawaban yang sesuai. Contoh konsultasi:
Gambar 32. Contoh Konsultasi 1 (Gejala batuk dijawab ya)
Jika gejala batuk dijawab benar(ya) maka akan ditampilkan pilihan untuk gejala berikutnya, yaitu pilek.
(1)
(2)
(3)
(4)
(5)
(6)