SKRIPSI
Oleh :
Ennanda Putrie A.S
0734010385
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
Dosen Pembimbing II : Dr. Ir. Ni Ketut Sari, MT
Penulis : Ennanda Putrie A.S
ABSTRAK
Ginjal merupakan salah satu organ tubuh manusia yang berfungsi untuk membuang bahan-bahan sampah dari tubuh hasil pencernaan atau yang diproduksi oleh metabolisme, pengaturan keseimbangan air dan elektrolit, pengaturan konsentrasi osmolitas cairan tubuh dan konsentrasi elektrolit, pengaturan keseimbangan asam-basa, ekskresi produk sisa metabolik dan bahan kimia asing, dan sebagainya. Apabila ada salah satu fungsi tidak berjalan dengan baik maka sakan timbul kerusakan di salah satu organ ginjal dan dapat meyebabkan penyakit ginjal.
Dalam skripsi ini dibatasi hanya tiga macam saja yang akan diteliti, yaitu GGA (Gagal Ginjal Akut), GGK (Gagal Ginjal Kronis), dan Batu Ginjal dengan menggunakan metode inferensi fuzzy logic dan metode interview dengan ahli penyakit.
Skripsi ini dibuat dengan tujuan untuk membangun aplikasi yang dapat membantu pengambilan keputusan dalam menentukan jenis penyakit ginjal yang diderita dari beberapa alternatif gejala-gejala yang diinputkan dan untuk merancang serta membuat aplikasi sistem pakar mendiagnosa penyakit ginjal dengan menggunakan atau menerapkan metode inferensi fuzzy logic dan metode interview dengan ahli penyakit.
Rasa syukur yang teramat dalam kami panjatkan ke hadirat Allah SWT,
yang telah berkenan memelihara dan membimbing penulis, sehingga penulis dapat
menyelesaikan pengerjaan dan penyusunan skripsi ini. Dalam menyelesaikan
Skripsi ini, penulis berpegang pada teori serta bimbingan dari para dosen
pembimbing skripsi yang banyak membantu hingga terselesaikannya Skripsi ini.
Skripsi merupakan salah satu syarat bagi mahasiswa untuk menyelesaikan
program studi Sarjana Strata Satu (S1) di Jurusan Teknik Informatika Fakultas
Teknologi Industri Universitas Pembangunan Nasional “Veteran” Surabaya, Jawa
Timur. Tak lupa, penulis ucapkan rasa terimakasih yang teramat dalam kepada
semua pihak yang telah membantu penulis untuk menyelesaikan tugas akhir ini
antara lain:
1. Allah SWT, karena berkat Rahmat dan berkah-Nya penulis dapat
menyusun dan menyelesaikan Laporan Skripsi ini.
2. Bapak Ir. Sutiyono, MT selaku Dekan Fakultas Teknologi Industri UPN
“Veteran” Jawa Timur.
3. Bapak Ir. Mu’tasim Billah, MT selaku Wakil Dekan I Fakultas Teknologi
Industri UPN “Veteran” Jawa Timur.
4. Ibu Dr. Ir. Ni Ketut Sari, MT selaku Ketua Jurusan Teknik Informatika
5. Ibu Hj. Asti Dwi Irfianti, S.Kom, M.Kom selaku Dosen Pembimbing
Pertama yang telah sabar dalam membimbing penulis dari awal hingga
terselesaikannya Laporan Skripsi ini.
6. Bapak Agus Hermanto, S.Kom selaku Dosen Pembimbing Kedua yang
telah meluangkan begitu banyak waktu, tenaga, dan pikiran serta sabar
dalam membimbing penulis dari awal hingga terselesaikannya Laporan
Skripsi ini.
7. Kedua orang tua tercinta atas semua doa, dukungan, serta harapannya pada
saat penulis melakukan Skripsi sampai terselesaikannya penyusunan
Laporan Skripsi ini.
Disadari bahwa dalam penulisan laporan ini masih jauh dari kata
sempurna. Namun, penulis tetap berharap semoga isi dari laporan ini dapat
benar-benar berguna baik untuk para penulis khususnya dan para pembaca pada
umumnya, maka dari itu kritik dan saran yang membangun sangat kami harapkan.
KATA PENGANTAR... ii
UCAPAN TERIMAKASIH... iv
DAFTAR ISI... viii
DAFTAR GAMBAR... xiii
DAFTAR TABEL... xvii
BAB I PENDAHULUAN 1.1 Latar Belakang Masalah... 1
1.2 Perumusan Masalah... 3
1.3 Batasan Masalah... 4
1.4 Tujuan Penelitian... 5
1.5 Manfaat Penelitian... 5
1.6 Metodologi Penelitian... 6
1.7 Sistematika Penulisan... 8
BAB II TINJAUAN PUSTAKA 2.1 Pengertian Sistem Pakar (Expert System)... 11
2.1.1 Ciri dan Karakteristik Sistem Pakar... 12
2.1.2 Keuntungan Penerapan Sistem Pakar... 13
2.2 Logika Fuzzy... 20
2.2.1 Konsep Dasar Logika... 20
2.2.2 Pengertian Logika Fuzzy... 21
2.2.3 Karakteristik Logika Fuzzy... 23
2.2.4 Himpunan Fuzzy... 23
2.2.5 Fungsi Keanggotaan... 24
2.3 Representasi Masalah... 26
2.3.1 Evaluasi Himpunan Fuzzy... 27
2.3.2 Seleksi Alternatif Yang Optimal... 30
2.4 Ginjal... 30
2.4.1 Gagal Ginjal Akut (GGA)... 33
2.4.2 Gagal Ginjal Kronis (GGK)... 35
2.4.3 Batu Ginjal (Urolithiasis)... 37
2.5 PHP (Hypertext Processor)... 38
2.5.1 Script PHP... 41
2.6 MySQL... 42
2.6.1 Program Database MySQL... 43
2.6.2 Koneksi MySQL... 44
3.1.2 Analisis Permasalahan... 55
3.1.3 Analisis Solusi... 55
3.2 Perancangan Program... 56
3.3 Perancangan Aturan Penyakit Ginjal Pada Manusia... 57
3.3.1 Perancangan Block Diagram... 57
3.3.2 Perancangan Dependency Diagram... 60
3.4 Perancangan Basis Aturan (Rule Base)... 62
3.5 Perancangan Mesin Inferensi... 63
3.6 Perancangan Basis Data (Database)... 65
3.6.1 DFD Level 0 (Context Diagram)... 65
3.6.2 DFD Level 1... 66
3.6.3 DFD Level 2 Proses Pengolahan Data... 67
3.6.4 DFD Level 2 Proses Diagnosa... 69
3.6.5 DFD Level 2 Perhitungan Fuzzyfikasi... 69
3.6.6 DFD Level 2 Proses Solusi... 70
3.6.7 Entity Relationship Diagram (ERD)... 71
3.6.8 Struktur Tabel... 74
3.7 Desain Interface... 78
3.7.1 Desain Halaman Utama... 78
4.1 Kebutuhan Perangkat Lunak Yang Digunakan... 81
4.1.1 Kebutuhan Perangkat Lunak (Software)... 81
4.1.2 Kebutuhan Perangkat Keras (Hardware)... 83
4.2 Instalasi Program dan Pengaturan Sistem... 83
4.3 Implementasi Aplikasi Desain Antarmuka... 84
4.3.1 Form Home... 84
4.3.2 Form Login... 85
4.3.3 Form Pakar... 86
4.3.4 Form Bobot... 86
4.3.5 Form Rating... 88
4.3.6 Form Data Gejala... 90
4.3.7 Form Data Penyakit... 91
4.3.8 Form Data Penyakit dan Gejalanya... 91
4.3.9 Form Data Rating Gejala... 92
4.3.10 Form Pendaftaran Pasien... 93
4.3.11 Form Konsultasi... 94
5.2 Implementasi Aplikasi Desain Antarmuka... 97
5.2.1 Form Home... 98
5.2.2 Form Login... 98
5.2.3 Form Bobot... 99
5.2.4 Form Rating... 101
5.2.5 Form Pendaftaran Pasien... 103
5.2.6 Form Konsultasi... 103
5.2.7 Form Hasil... 104
5.3 Evaluasi Sistem... 105
BAB VI PENUTUP 6.1 Kesimpulan... 125
6.2 Saran... 127
1.1 LATAR BELAKANG MASALAH
Seiring dengan kemajuan dan berkembangnya teknologi informasi
serta komunikasi yang semakin pesat pada saat ini, maka kebutuhan akan
informasi yang cepat dan akurat sudah menjadi kebutuhan yang utama
bagi setiap insan. Di sisi lain, perkembangan di dunia medis juga
meningkat dengan tajam, pengetahuan di bidang medis telah berkembang
secara eksponansial dalam beberapa tahun terakhir.
Keadaan yang seperti inilah yang telah mendorong para ahli untuk
mengembangkan suatu teknologi yang mampu mengembangkan kegunaan
komputer dan dapat mengadopsi proses serta cara berpikir komputer
seperti manusia. Hal ini dapat diwujudkan dengan cara menerapkan suatu
ilmu Artificial Intelligence (kecerdasan buatan) dengan membuat Expert
System (sistem pakar) yang didalamnya memuat informasi tentang ginjal.
Ginjal merupakan salah satu organ tubuh manusia yang berfungsi
untuk membuang bahan-bahan sampah dari tubuh hasil pencernaan atau
yang diproduksi oleh metabolisme, mengontrol volume dan komposisi
cairan tubuh, pengaturan keseimbangan air dan elektrolit, pengaturan
keseimbangan asam-basa, ekskresi produk sisa metabolik dan bahan kimia
asing, pengaturan tekanan arteri, sekresi hormon, glukoneogenesis.
Apabila ada salah satu fungsi tidak berjalan dengan baik maka akan timbul
kerusakan di salah satu organ ginjal dan dapat meyebabkan penyakit
ginjal. Penyakit ginjal merupakan salah satu jenis penyakit yang dapat
menyebabkan kematian dan cacat tubuh di banyak negara di seluruh dunia.
Ada beberapa macam penyakit ginjal diantaranya adalah Sindroma
Nefrotik (SN), Sindroma Nefrotik Akut (SNA), Hipertensi, Gagal Ginjal
Akut (GGA), Gagal Ginjal Kronis (GGK), Infeksi Saluran Kemih (ISK),
Batu Saluran Kemih (BSK), dan batu ginjal.
Setiap orang yang telah mengidap penyakit ginjal akan mendatangi
dokter spesialis untuk berkonsultasi, namun pada kenyataannya tidak
semua orang dapat melakukannya. Hal ini dapat dikarenakan faktor
perekonomian yang kurang mencukupi ataupun karena tuntutan kesibukan,
terdapat pula kelemahan seperti jam kerja praktek dokter yang terbatas,
dengan adanya hal tersebut maka dapat disimpulkan bahwa dibutuhkan
adanya sebuah alat bantu yang dapat mendiagnosa penyakit ginjal yang
berupa sistem pakar sebagai alternatif informasi dan media konsultasi
yang lebih praktis.
Sistem pakar (expert system) adalah sistem yang berusaha
mengadopsi pengetahuan manusia ke komputer, agar komputer dapat
Sistem pakar dirancang agar dapat menyelesaikan suatu
permasalahan tertentu dengan meniru kerja dari para pakar atau ahli
dibidangnya, dengan pengembangan sistem pakar, diharapkan orang biasa
pun dapat menyelesaikan masalah yang sebenarnya hanya dapat
diselesaikan dengan bantuan para ahli. Pada sistem pakar ini penderita
penyakit ginjal dapat mengkonsultasikan untuk memastikan jenis penyakit
ginjal apa yang diderita berdasarkan dengan gejala-gejala yang sering
dialami.
Pembuatan sistem pakar ini dikonsultasikan dengan seorang ahli
dibidangnya yaitu dokter spesialis ginjal atau dokter spesialis penyakit
dalam dan dengan menggunakan metode inferensi fuzzy logic dan metode
interview dengan ahli penyakit. Banyaknya alternatif jenis penyakit dari
penyakit ginjal ini, diperlukan suatu sistem yang dapat membantu
pengambilan keputusan dalam menentukan jenis penyakit yang diderita
dari beberapa alternatif penyakit sesuai dengan gejala-gejala yang di
inputkan.
1.2 PERUMUSAN MASALAH
Berdasarkan latar belakang masalah diatas, dapat dirumuskan
a. Jenis penyakit ginjal apa yang diderita oleh pengguna dari input gejala
yang dipilihnya?
b. Bagaimanakah cara membuat sistem pakar untuk mendiagnosa
penyakit ginjal dengan menggunakan inferensi fuzzy logic dan metode
interview dengan ahli penyakit?
1.3 BATASAN MASALAH
Batasan Masalah pada sistem ini, diantaranya adalah sebagai
berikut:
a) Pada sistem ini menggunakan bahasa pemograman PHP dan
database MySQL.
b) Gejala-gejala penyakit ginjal yang diteliti dan di jelaskan adalah
gejala dari penyakit batu ginjal, gagal ginjal akut (GGA), dan gagal
ginjal kronis (GGK).
c) Metode yang digunakan untuk permasalahan ini adalah metode
inferensi fuzzy logic dan metode interview dengan ahli penyakit, yaitu proses inferensi yang memulai pencarian dari premis (data
masukan) berupa gejala menuju pada konklusi (kesimpulan) jenis
penyakit apa yang di derita pasien berdasarkan data gejala yang
telah dimasukkan.
d) Aplikasi ini bersifat statis pada proses perhitungannya, maksudnya
1.4 TUJUAN PENELITIAN
Tujuan pembuatan aplikasi pada skripsi ini adalah sebagai berikut:
1) Membangun aplikasi yang dapat membantu pengambilan keputusan
dalam menentukan jenis penyakit ginjal yang diderita dari beberapa
alternatif gejala-gejala yang diinputkan.
2) Merancang dan membuat aplikasi sistem pakar untuk mendiagnosa
penyakit ginjal dengan menggunakan atau menerapkan metode
inferensi fuzzy logic dan metode interview dengan ahli penyakit.
1.5 MANFAAT PENELITIAN
Manfaat yang diperoleh dari pembuatan aplikasi sistem pakar ini
yaitu:
a. Dapat menyelesaikan masalah yang biasanya hanya dapat ditangani
secara manual dengan mengimplementasikan inferensi fuzzy logic dan
metode interview dengan ahli penyakit.
b. Dapat membantu orang awam atau para ahli untuk mengetahui dan
memastikan jenis penyakit ginjal yang diderita, dengan cara
1.6 METODOLOGI PENELITIAN
Metode yang dipakai dalam menyelesaikan penelitian ini adalah:
1. Wawancara.
Melakukan tanya jawab (wawancara) kepada dokter penyakit dalam.
2. Studi Literatur.
Melakukan studi, analisis dan dokumentasi literatur, dan sumber
catatan lain yang berkaitan dengan permasalahan yang dibahas, yaitu
diagnosa untuk menentukan jenis penyakit ginjal dengan
menggunakan sistem inferensi fuzzylogic.
3. Pengumpulan Data.
Melakukan proses-proses pencarian data penunjang mengenai
gejala-gejala (diagnosa) penyakit ginjal yang diperoleh dari survei dan studi
pustaka.
4. Perencanaan Sistem.
Perencanaan pembuatan sistem meliputi perencanaan sistem pakar
dalam proses pembuatan aplikasi.
5. Penyusunan basis data.
Proses penyimpanan yang di dapatkan dari observasi berupa beberapa
data penunjang, fakta-fakta dan aturan yang mengatur proses
pencarian data yang saling berhubungan satu dengan yang lain ke
6. Pembuatan program komputer yang meliputi pembuatan antar muka
dan mesin inferensi.
Pembuatan program menggunakan bahasa pemrograman PHP sebagai
aplikasi dalam menampilkan sistem pakar tersebut.
7. Uji coba sistem.
Melakukan pengujian sistem terhadap aplikasi yang dibuat.
8. Perbaikan atau penambahan data.
Setelah melakukan proses pengujian sistem dan ternyata terjadi
beberapa kekurangan atau kelemahan, maka sistem perlu diperbaiki
lagi atau diedit lagi data-data yang telah ada sehingga sistem yang
dibuat lebih bersifat valid hasilnya.
9. Analisa.
Pengujian sistem dan perbaikan atau penambahan data dibuat analisa
sistemnya apakah sudah bekerja seperti yang telah direncanakan.
10. Membuat kesimpulan.
Membuat suatu kesimpulan dari pengujian sistem skripsi dengan
membandingkan apakah hasilnya seperti yang diharapkan.
11.Penyusunan laporan.
Membuat sebuah laporan berbentuk buku skripsi sebagai tahap akhir
dalam proses pengerjaan skripsi sebagai bukti dokumentasi dari
1.7 SISTEMATIKA PENULISAN
Untuk memudahkan dalam memahami laporan Skripsi,
dikemukakan sistematika penulisan yang terdiri dari enam bab, yaitu:
BAB I PENDAHULUAN
Berisi latar belakang yang menjelaskan tentang
pentingnya penelitian yang dilakukan, latar
belakang masalah, perumusan masalah, batasan
masalah, tujuan penelitian, manfaat pengguna,
metodologi yang dipakai selama penelitian, dan
sistematika penulisan yang digunakan dalam
penulisan laporan skripsi ini.
BAB II TINJAUAN PUSTAKA
Pada bab ini akan dijelaskan landasan teori-teori
yang akan mendukung pada proses pembuatan
sistem. Teori-teori tersebut diantaranya adalah
sebagai berikut : Pengertian tentang Sistem Pakar
(Expert System), Teori Tentang Logika Fuzzy,
Pengertian dan Penjelasan Tentang Ginjal,
Penjelasan Tentang Gagal Ginjal Akut, Penjelasan
Tentang Gagal Ginjal Kronis, Penjelasan Tentang
Batu Ginjal, Pengertian dan Penjelasan tentang PHP
Database MySQL, Koneksi MySQL dan Menghubungkan PHP dengan MySQL.
BAB III ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini akan membahas tentang perancangan
umum maupun uraian lebih lanjut mengenai
perancangan sistem dalam pembuatan aplikasi.
Uraian perancangan sistem ini meliputi perancangan
data mengenai data input dan data output sistem,
perancangan proses mengenai bagaimana sistem
akan bekerja dengan proses-proses tertentu, maupun
perancangan antar muka dalam desain.
BAB IV IMPLEMENTASI
Pada bab ini akan diuraikan hasil penelitian
beserta pembahasannya.
BAB V UJI COBA DAN EVALUASI
Pada bab ini dijelaskan tentang pengujan sistem
secara umum maupun terperinci. Pengujian sistem
secara umum membahas mengenai lingkungan uji
coba untuk menggunakan sistem ini. Selanjunya
lebih terperinci dijelaskan dalam pengujian sistem
meliputi skenario pengujian baik user umum
coba sistem. Seluruh hasil uji coba tersebut,
kemudian dianalisa kembali apakah telah sesuai
dengan tujuan pembuatan aplikasi.
BAB VI PENUTUP
Bab ini merupakan bagian terakhir dari laporan
skripsi yang berisi kesimpulan dari uji coba dan
saran-saran yang diambil dari kelemahan aplikasi
untuk pengembangan lebih lanjut dari sistem yang
telah dibuat oleh penulis.
DAFTAR PUSTAKA
Pada bagian ini akan dipaparkan tentang
sumber-sumber literatur yang digunakan dalam pembuatan
BAB II
TINJAUAN PUSTAKA
Pada bab II dibahas tentang beberapa teori dasar sebagai penunjang untuk
menyelesaikan skripsi ini diantaranya adalah sebagai berikut: Pengertian tentang
Sistem Pakar (Expert System), Teori Tentang Logika Fuzzy, Pengertian dan
Penjelasan Tentang Ginjal, Penjelasan Tentang Gagal Ginjal Akut, Penjelasan
Tentang Gagal Ginjal Kronis, Penjelasan Tentang Batu Ginjal, Pengertian dan
Penjelasan tentang PHP beserta Script PHP, Definisi MySQL, Program Database
MySQL, Koneksi MySQL dan Menghubungkan PHP dengan MySQL.
2.1 Pengertian Sistem Pakar (Expert System)
Sistem pakar (expert system) adalah sistem yang berusaha
mengadopsi pengetahuan manusia ke komputer, agar komputer dapat
menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli. Sistem
pakar yang baik dirancang, agar dapat menyelesaikan suatu permasalahan
tertentu dengan meniru kerja dari para pakar atau ahli dibidangnya
(Kusumadewi, Sri, 2003). Pembuatan sistem pakar ini diharapkan orang
awam pun dapat menyelesaikan masalah yang cukup rumit yang
sebenarnya hanya dapat diselesaikan dengan bantuan para ahli. Bagi para
ahli, sistem pakar ini juga akan membantu aktivitasnya sebagai asisten
Selain bermanfaat untuk membantu orang awam dalam
menyelesaikan masalah yang hanya dapat diselesaikan dengan bantuan
ahli di bidang kesehatan khususnya, sistem pakar juga bermanfaaat untuk
melestarikan pengetahuan para ahli yang cukup langka dengan cara
mendokumentasikan pengetahuan yang dimilikinya. Sistem pakar
merupakan program yang dijalankan oleh komputer, maka sistem pakar
dapat melakukan proses secara berulang dan otomatis tanpa ada rasa
bosan. Sistem pakar mampu beroperasi dalam lingkungan yang berbahaya
sekaligus sebagai media pelengkap dalam pelatihan. Terdapat pula
manfaat yang tidak kalah pentingnya dari sistem pakar, yaitu mampu
menghemat waktu dalam pengambilan keputusan (Kusumadewi, Sri, et.all,
2009).
2.1.1 Ciri dan Karakteristik Sistem Pakar
Ada beberapa ciri dan karakteristik yang membedakan sistem
pakar dengan sistem yang lain. Ciri dan karakteristik yang dimaksud
adalah sebagai berikut:
a. Pengetahuan sistem pakar merupakan suatu konsep, bukan berbentuk
numeris. Hal ini dikarenakan komputer melakukan proses pengolahan
data secara numerik sedangkan keahlian sorang pakar adalah fakta dan
aturan-aturan.
lingkungan sehingga keputusan yang diambil bersifat tidak pasti dan
tidak mutlak “ya” atau”tidak” menurut ukuran kebenaran tertentu.
c. Kemungkinan solusi sistem pakar terhadap suatu permasalahan adalah
bervariasi dan mempunyai banyak pilihan jawaban yang dapat diterima
semua faktor yang ditelusuri memiliki ruang masalah luas dan tidak
pasti. Oleh karena itu diperlukan fleksibilitas sistem dalam menangani
kemungkinan solusi dari berbagai permasalahan.
d. Keputusan merupakan bagian terpenting dari sistem pakar. Sistem
pakar harus memberikan solusi yang akurat berdasarkan masukan
pengetahuan meskipun solusinya sulit sehingga fasilitas informasi
sistem selalu diperlukan (Hartati, Sri, et.all, 2008).
2.1.2 Keuntungan Penerapan Sistem Pakar
Sistem pakar atau expert system mempunyai beberapa keuntungan
dalam penerapannya, yaitu sebagai berikut:
1. Pekerjaan menjadi lebih mudah karena dengan hanya menginputkan
permasalahan pada komputer maka solusi akan ditemukan (selama
permasalahan ada dalam daftar yang ada di dalam basis data).
2. Menyediakan lebih banyak waktu untuk mengevaluasi hasil keputusan.
3. Menjadikan seorang awam bisa bekerja layaknya seorang pakar.
4. Bahan atau data yang didapat memang merupakan dari seorang pakar
5. Keputusan yang didapat menjadi lebih konsisten kerena keputusan
yang didapat memang berasal dari olahan data yang ada di dalam
komputer.
6. Bisa dipakai dimana saja, karena ada sarana komputer untuk
penggunaannya maka sistem pakar dapat dipakai dan di awasi oleh
seorang pakar.
2.1.3 Kategori dan Area Permasalahan Sistem Pakar
Kategori dan area permasalahan pada sistem pakar, diantaranya
adalah sebagai berikut:
a. Interprestasi, adalah membuat kesimpulan atau deskripsi dari
sekumpulan data mentah.
b. Prediksi, adalah memproyeksikan akibat-akibat yang dimungkinkan
dari situasi-situasi tertentu.
c. Diagnosis, adalah menentukan sebab malfungsi dalam situasi yang
didasarkan pada gejala-gejala yang teramati.
d. Desain, adalah menentukan konfigurasi komponen-komponen sistem
yang cocok dengan tujuan-tujuan kinerja tertentu yang memenuhi
kendala-kendala tertentu.
e. Perencanaan, adalah merencanakan serangkaian tindakan yang dapat
mencapai sejumlah tujuan dengan kondisi awal tertentu.
f. Debugging dan Repair, adalah menentukan dan
g. Instruksi, adalah mendeteksi dan mengoreksi defisiensi dalam
pemahaman domain subyek.
h. Pengendalian, adalah mengatur tingkah laku suatu lingkungan yang
komplek.
i. Selection, adalah mengidentifikasi pilihan terbaik dari sekumpulan
kemungkinan.
j. Simulation, adalah permodelan interaksi antara komponen-komponen
sistem.
k. Monitoring, adalah membandingkan hasil pengamatan dengan kondisi
yang diharapkan.
Perbedaan sistem pakar (Expert System) dengan DSS (Decision
Support System) diantaranya adalah sebagai berikut:
1) DSS terdiri dari routine merefleksikan keyakinan manajer dalam
caranya memecahkan masalah. Keputusan yang dihasilkan oleh DSS
merefleksikan gaya kemampuan manajer, sebaliknya expert system
memberikan peluang untuk mendapatkan kemampuan dalam membuat
keputusan melebihi kemampuan yang dimiliki manajer.
2) Expert System mempunyai kemampuan untuk menjelaskan jalur
penalaran yang diikuti pencapaian pemecahan tertentu, penjelasan
mengenai bagaimana pemecahan dicapai akan lebih berguna dari pada
pemecahan itu sendiri.
5) Dalam memecahkan masalah, expert system lebih dipilih dari pada
DSS bila:
a) Masalah tersebut melibatkan diagnosis situasi yang kompleks atau
melibatkan pembutan kesimpulan atau peringkasan dari volume
data yang besar.
b) Ada tingkat ketidaktentuan dalam aspek masalah tertentu.
c) Ada kemungkinan bagi ahli manusia untuk memecahkan masalah
tersebut dala jangka waktu yang wajar.
2.1.4 Komponen Utama Sistem Pakar
Sistem pakar (expert system) terdiri dari tiga komponen utama,
yaitu basis pengetahuan (knowledge base), mekanisme inferensi (inference
engine), dan antarmuka input atau output(user interface).
Gambar 2.1 Diagram Blok Umum Sistem Pakar A. Basis Pengetahuan (Knowledge Base)
Basis Pengetahuan (Knowledge Base) merupakan data yang
diperlukan untuk membuat suatu keputusan yang memuat fakta-fakta dan
juga teknik dalam menerangkan masalah yang disusun dalam urutan logis.
1. Fakta adalah suatu kenyataan atau kebenaran yang diketahui. Fakta
menyatakan hubungan (relasi) antara dua objek atau lebih.
2. Aturan atau rule digunakan untuk menerangkan masalah dalam
menentukan hal apa yang harus dilakukan pada situasi tertentu. Aturan
atau rule terdiri dari dua bagian yaitu:
a. If merupakan kondisi yang mungkin benar atau mungkin tidak
benar.
b. Then merupakan tindakan yang dilakukan jika kondisi benar.
B. Mekanisme Inferensi (Inference Engine)
Mekanisme Inferensi (Inference Engine) melukiskan jalan yang
dipakai untuk berinteraksi dengan pengetahuan ini mencerminkan cara
menayakan pertanyaan, memberi jawaban, meminta penerangan, dan
sebagainya.
C. Antarmuka input atau output (User Interface)
Antarmuka input atau output (User Interface) adalah bagian dari
sistem pakar (expert system) yang melakukan penalaran dengan
menggunakan isi basis pengetahuan (knowledge base) berdasarkan urutan
tertentu. Mekanisme inferensi (Inference Engine) berfungsi untuk
mensimulasikan strategi penyelesaian masalah dari seorang pakar.
Selama proses penalaran, mekanisme inferensi (inference engine)
menguji aturan-aturan dari basis pengetahuan (knowledge base) satu
persatu, dan pada saat kondisi itu benar tindakan tertentu diambil dan jika
2.1.5 Sistem Berbasis Aturan
Sistem berbasis aturan merupakan suatu sistem pakar yang
menggunakan aturan-aturan untuk menyajikan pengetahuannya. Dengan
kata lain bahwa sistem berbasis aturan adalah suatu perangkat lunak yang
menyajikan keahlian pakar dalam bentuk aturan-aturan pada suatu domain
tertentu untuk menyelesaikan suatu permasalahan.
2.1.6 Komponen Sistem Berbasis Aturan
Sistem berbasis aturan terdiri dari lima komponen utama, yaitu
basis pengetahuan (knowledge base), mekanisme inferensi (inference
engine), komponen penjelas, antarmuka input atau output(user interface),
dan komponen akusisi.
Gambar 2.2 Diagram Komponen Sistem
A. Basis Pengetahuan (Knowledge Base)
Basis Pengetahuan (Knowledge Base) yaitu pengetahuan yang
menjadi dasar bagi pembuatan aturan-aturan dalam sistem, yang
mencakup aturan-aturan itu sendiri, fakta-fakta yang terkait, serta
B. Mekanisme Inferensi (Inference Engine)
Mekanisme Inferensi (Inference Engine) berfungsi untuk
menstimulasikan strategi penyelesaian masalah dari seorang pakar. Sebuah
konklusi akan dicapai dengan menjalankan suatu aturan tertentu pada fakta
yang ada.
C. Komponen Penjelas
Komponen penjelas berfungsi menjelaskan strategi penyelesaian
masalah bagi user yang meliputi hal-hal sebagai berikut:
1. Pertanyaan apa yang akan diajukan pada pemakai dan jika diperlukan
mengapa diajukan pertanyaan tersebut.
2. Alasan bagaimana sistem tersebut memperoleh hasil demikian.
3. Karakteristik apa yang dimiliki tiap-tiap objek
D. Antarmuka input atau output (User Interface)
Antarmuka input atau output (User Interface) adalah bagian dari
program yang berhubungan langsung dengan pemakai, baik selama
konsultasi maupun untuk pengembangan sistem. Oleh karena itu sistem
haruslah menggunakan bahasa dan sistem pengoperasian yang mudah
dimengeri atau dipahami oleh siapapun user.
E. Komponen Akusisi
Komponen akusisi berfungsi untuk menyusun dan
mengimplementasikan pengetahuan dalam basis pengetahuan. Komponen
1. Pengetahuan yang terdiri dari pengetahuan dan fakta harus mudah
untuk dimasukkan.
2. Metode penyajian informasi dalam basis pengetahuan harus mudah
dimengerti.
3. Sangat baik jika memiliki sistem pengecekan atas format yang salah.
2.2 Logika Fuzzy
2.2.1 Konsep Dasar Logika
Logika adalah suatu studi tentang metode dan prinsip suatu alasan
dalam semua bentuk kemungkinan. Logika klasik mengenal dua keadaan,
yaitu benar atau salah. Pada logika, kita mengenal kombinasi variabel
yang disebut variabel logika (Kusumadewi, Sri, et.all, 2004).
Penentuan properti himpunan penting karena berpengaruh pada
komputasi matematika dari himpunan. Rumus-rumus logika dapat
dijelaskan sebagai berikut:
a. Nilai kebenaran 0 dan 1 digunakan pada rumus logika.
b. Jika v adalah variabel logika, maka v dan ῡ dihitung dengan rumus
logika.
c. Jika a dan b adalah rumus logika ∩ dan ⋃ merupakan rumus
2.2.2 Pengertian Logika Fuzzy
Pada tahun 1960-an, Professor Lotfi Zadeh mengemukakan bahwa
tidak jelas merupakan suatu aspek ketidak tentuan yang berbeda dengan
keacakan. Professor Zadeh mengusulkan suatu bentuk matematika untuk
melihat bagaimana ketidak jelasan dapat dinyatakan dalam bahasa
manusia yang pendekatannya disebut dengan logika fuzzy. Logika fuzzy
atau sistem fuzzy merupakan suatu cara yang tepat untuk memetakan suatu
ruang input ke dalam suatu ruang output. Zadeh berpendapat bahwa logika
benar dan salah dari logika Boolean tidak dapat mengatasi masalah gradasi
yang berada pada dunia nyata.
Untuk menghitung gradasi yang tidak terbatas jumlahnya antara
benar dan salah, Zadeh mengembangkan ide penggolongan himpunan (set)
yang ia namakan sebagai himpunan fuzzy (fuzzy set). Tidak seperti logika
Boolean yang menyatakan bahwa suatu pernyataan adalah benar atau
salah, logika fuzzy dapat membaginya dalam derajat keanggotaan dan
derajat kebenaran, sehingga suatu pernyataan dapat menjadi sebagian
benar dan sebagian salah pada waktu yang sama. Tujuan logika fuzzy
adalah membuat komputer beroperasi seperti layaknya logika manusia dan
menghilangkan batas antara manusia dengan kemampuan komputer.
Ada beberapa hal yang menjadi lingkup dari sistem fuzzy, yaitu:
a. Variabel fuzzy merupakan variabel yang hendak dibahas dalam suatu
b. Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisi
atau keadaan tertentu dalam suatu variabel fuzzy.
c. Semesta Pembicaraan adalah keseluruhan nilai yang diperbolehkan
untuk dioperasikan dalam suatu variabel fuzzy. Semesta pembicaraan
merupakan himpunan bilangan real yang senantiasa naik (bertambah)
secara monoton dari kiri ke kanan. Nilai semesta pembicaraan dapat
berupa bilangan positif maupun negatif. Adakalanya nilai semesta
pembicaraan ini tidak dibatasi batas atasnya. Contoh: Semesta
pembicaraan untuk variabel umur: [0 + ∞).
d. Domain himpunan fuzzy adalah keseluruhan nilai yang diijinkan dalam
semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan
fuzzy. Seperti halnya semesta pembicaraan, domain merupakan
himpunan bilangan real yang senantiasa naik (bertambah) secara
monoton dari kiri ke kanan. Nilai domain dapat berupa bilangan positif
maupun negatif. Contoh:
1. MUDA= [0, 45]
2. PAROBAYA= [35, 55]
2.2.3 Karakteristik Logika Fuzzy
Beberapa alasan digunakannya logika fuzzy, antara lain:
1. Konsep logika fuzzy mudah dimengerti, karena di dalam logika fuzzy
terdapat konsep matematis sederhana dan mudah dimengerti yang
mendasari penalaran fuzzy.
2. Logika fuzzy sangat fleksibel.
3. Logika fuzzy memiliki toleransi terhadap data yang tidak tepat.
4. Logika fuzzy mampu memodelkan fungsi-fungsi non linier yang sangat
kompleks.
5. Logika fuzzy dapat bekerjasama dengan teknik-teknik kendali secara
konvensional.
6. Logika fuzzy didasarkan pada bahasa alami.
7. Logika fuzzy dapat membangun dan mengaplikasikan
pengalaman-pengalaman para pakar secara langsung tanpa harus melalui proses
pelatihan.
2.2.4 Himpunan Fuzzy
Himpunan fuzzy adalah himpunan-himpunan yang akan
Himpunan fuzzy juga merupakan suatu grup yang mewakili suatu
kondisi atau keadaan tertentu dalam suatu variabel fuzzy. Himpunan fuzzy
digunakan untuk mengantisipasi nilai-nilai yang bersifat tidak pasti.
Pada himpunan tegas (crisp), nilai keanggotaan suatu item dalam
suatu himpunan dapat memiliki dua kemungkinan, yaitu satu (1), yang
berarti bahwa suatu item menjadi anggota dalam suatu himpunan, atau nol
(0), yang berarti suatu item tidak menjadi anggota dalam suatu himpunan.
Pada himpunan fuzzy nilai keanggotaan terletak pada rentang 0 sampai 1,
yang berarti himpunan fuzzy dapat mewakili intepretasi tiap nilai
berdasarkan pendapat atau keputusan dan probabilitasnya. Himpunan fuzzy
memiliki dua atribut, yaitu:
a. Linguistik, yaitu penamaan suatu grup yang mewakili suatu
keadaan atau kondisi tertentu dengan menggunakan bahasa
alami, seperti: DEKAT, SEDANG, JAUH.
b. Numeris, yaitu suatu nilai (angka) yang menunjukkan ukuran
dari suatu variabel seperti: 40, 25, 50 dan sebagainya.
2.2.5 Fungsi Keanggotaan
Fungsi Keanggotaan (membership function) adalah suatu kurva
yang menunjukkan pemetaan titik-titik input data ke dalam nilai
keanggotaannya (sering juga disebut dengan derajat keanggotaan) yang
Salah satu cara yang dapat digunakan untuk mendapatkan nilai
keanggotaan adalah dengan melalui pendekatan fungsi. Ada beberapa
fungsi yang dapat digunakan:
1) Representasi Linier
Pada representasi linear, pemetaan input ke derajat keanggotannya
digambarkan sebagai suatu garis lurus. Bentuk ini paling sederhana
dan menjadi pilihan yang baik untuk mendekati suatu konsep yang
kurang jelas. Ada dua keadaan himpunan fuzzy yang linear. Pertama,
kenaikan himpunan dimulai pada nilai domain yang memiliki derajat
keanggotaan nol [0] bergerak ke kanan menuju ke nilai domain yang
memiliki derajat keanggotaan lebih tinggi dan kedua adalah
kebalikannya.
Gambar 2.3 Representasi Linear Naik
Rumus Fungsi Keanggotaan Representasi Linier Naik:
� � =
0; → � �
� −
− ; → � �
Gambar 2.4 Representasi Linear Turun
Rumus Fungsi Keanggotaan Representasi Linier Turun:
� − �) (0;−� ; � �
2) Representasi Kurva Segitiga.
Kurva Segitiga pada dasarnya merupakan gabungan antara 2 garis
(linear) seperti terlihat pada Gambar 2.5
Gambar 2.5 Kurva Segitiga
Rumus Fungsi Keanggotaan Kurva Segitiga:
� �, , , =
0;� � �
(� − ) − ; � ( − �) − ; �
2.3 Representasi Masalah
Ada beberapa cara yang dapat kita lakukan untuk
merepresentasikan suatu permasalahan diantaranya adalah sebagai berikut:
Langkah ini bertujuan agar keputusan dapat direpresentasikan dengan
menggunakan bahasa alami atau nilai numeris sesuai dengan
karakteristik dari masalah tersebut. Jika ada n alternatif keputusan dari
suatu masalah, maka alternatif-alternatif tersebut dapat ditulis sebagai
A = {Ai | i = 1, 2.., n}.
2. Identifikasi kumpulan kriteria;
Jika ada k kriteria, maka dapat dituliskan C = {Ct | t = 1, 2.., k}.
3. Membangun stuktur hirarki dari masalah tersebut berdasarkan
pertimbangan-pertimbangan tertentu. Struktur hirarki ditunjukkan pada
gambar 2.6 sebagai berikut:
Gambar 2.6 Struktur Hirearki
2.3.1 Evaluasi Himpunan Fuzzy
Secara umum, himpunan-himpunan rating terdiri atas tiga elemen,
yaitu: variabel linguistik (x) yang merepresentasikan bobot kriteria, dan
derajat kecocokan setiap alternatif dengan kriterianya; T(x) yang
merepresentasikan rating dari variabel linguistik; dan fungsi keanggotaan
Misal, rating untuk bobot pada variabel penting untuk suatu kriteria
didefinisikan sebagai: T(penting) = {SANGAT RENDAH, RENDAH,
CUKUP, TINGGI, SANGAT TINGGI}. Misal, W1 adalah bobot untuk
kriteria Ct: dan Sit adalah rating fuzzy untuk derajat kecocokan alternatif
keputusan Ai dengan kriteria Ct; dan Fi adalah indeks kecocokan fuzzy
dari alternatif Ai yang merepresentasikan derajat kecocokan alternatif
keptusan dengan menggunakan kriteria keputusan yang diperoleh dari
hasil agregasi Sit dan Wt.
Langkah-langkah yang digunakan dalam menyelesaikan fuzzy logic
pada contoh study kasus ini adalah sebagai berikut:
a. Memilih himpunan rating untuk bobot-bobot kriteria, dan derajat
kecocokan setiap alternatif dengan kriterianya;
b. Mengevaluasi bobot-bobot kriteria, dan derajat kecocokan setiap
alternatif dengan kriterianya; setelah himpunan rating ini ditentukan,
maka kita harus menentukan fungsi keanggotaan untuk setiap rating.
Untuk representasi kasus ini digunakan fungsi segitiga, seperti terlihat
pada gambar 2.7 sebagai berikut:
Rumus Fungsi Keanggotaan Kurva Segitiga:
c. Mengagregasikan bobot-bobot kriteria, dan derajat kecocokan setiap
alternatif dengan kriterianya. Ada beberapa metode yang dapat
digunakan untuk melakukan agregasi terhadap hasil keputusan, antara
lain: mean, median, max, min, dan operator campuran. Dari beberapa
metode tersebut metode mean yang lebih banyak digunakan.
�� = 1� �1�� ⨁ �2�2 ⨁⋀⨁ ����
... (2.2)
d. Memperioritaskan alternatif keputusan berdasarkan hasil agregasi
menggunakan bilangan fuzzy segitiga, maka dibutuhkan metode
perangkingan untuk bilangan fuzzy segitiga. Salah satu metode yang
dapat digunakan adalah metode nilai total integral, nilai total integral
�
� = 12 (� +�+ 1−� )
� ... (2.6)
Nilai α adalah indeks keoptimisan yang merepresentasikan derajat
keoptimisan bagi pengambil keputusan (0 ≤ α ≥ 1). Apabila nilai α
semakin besar maka mengindikasikan bahwa derajat keoptimisannya
semakin besar.
2.3.2 Seleksi Alternatif Yang Optimal
Seleksi alternatif yang optimal diantaranya adalah sebagai berikut:
1) Memperioritaskan alternatif keputusan berdasarkan hasil agregasi.
Prioritas dan hasil agregrasi dibutuhkan dalam rangka perangkingan
keputusan. Salah satu metode yang dapat digunakan adalah metode
nilai total integral.
2) Memilih Alternatif keputusan dengan prioritas tertinggi sebagai
alternatif yang optimal. Semakin besar nilai F, berarti kecocokan
terbesar dari alternatif keputusan untuk kriteria keputusan dan nilai
inilah yang akan menjadi tujuannya.
2.4 Ginjal
Ginjal merupakan sepasang organ berbentuk kacang (bean
shaped), terletak retroporitoneal, di belakang kavum abdomen.
Masing-masing ginjal mempunyai panjang ± 10-12 cm (antara vertebrata TH
dari ginjal kiri, hal ini disebabkan karena adanya Hati. Ginjal mempunyai
dua fungsi utama, diantaranya adalah sebagai berikut:
a. Fungsi Ekskretori, dalam fungsi ini ginjal akan menghasilkan urin
yang penting untuk eliminasi sampah tubuh (hasil metabolik, toksin),
mengontrol keseimbangan cairan, elektrolit, dan asam-basa
b. Fungsi Metabolik, dalam fungsi ini ginjal akan mensintesis beberapa
hormon dan degradasi hormon polipeptida (seperti insulin).
Ada beberapa hormon yang dihasilkan dari ginjal, yaitu:
1. Renin adalah protein yang dilepaskan oleh apparatus juxtaglomeruler
yang berperan pada pembentukan Angiostensin II.
2. Vitamin D merupakan suatu hormon steroid yang dimetabolisme di
ginjal menjadi bentuk aktif 1.25 dihydroxycholecalciferol, yang dapat
meningkatkan absorsi Ca dan P di usus.
3. Erythropoietin merupakan suatu protein yang dihasilkan ginjal, yang
dapat meningkatkan pembentukan sel darah merah pada sumsum
tulang.
4. Prostaglandin dihasilkan oleh ginjal mempunyai berbagai macam efek,
terutama terhadap tonus pembuluh darah ginjal (Gython, Arthur C,
et.all, 1997).
Manusia mempunyai ratusan ribu nefron untuk menjaga
apapun akan menyebabkan kerusakan nefron. Penyakit ginjal sering kali
tidak diketahui secara klinis sampai fungsinya sudah sangat menurun, dan
penyakit ginjal yang progresif secara pelan-pelan dapat asimtomatis pada
tahap awal. Penyakit ginjal dapat dikelompokkan menjadi beberapa
kelompok sindroma, diantaranya adalah sebagai berikut:
a. Sindroma Nefrotik (SN)
b. Sindroma Nefrotik Akut (SNA)
c. Gagal Ginjal Akut (GGA)
d. Gagal Ginjal Kronis (GGK)
e. Infeksi Saluran Kemih (ISK)
f. Batu Ginjal (Urolithiasis)
g. Hipertensi (Tjokroprawiro, Askandar dan kawan-kawan, 2007).
Gagal ginjal terjadi ketika ginjal tidak mampu mengangkut sampah
metabolik tubuh atau melakukan fungsi regulernya. Dalam penyusunan
skripsi ini penulis hanya membahas tiga pokok permasalahan saja yang
diteliti, diantaranya adalah sebagai berikut:
1) Gagal Ginjal Akut (GGA)
2) Gagal Ginjal Kronis (GGK)
2.4.1 Gagal Ginjal Akut (GGA)
Gagal ginjal akut adalah hilangnya fugsi ginjal secara mendadak
dan hampir lengkap akibat kegagalan sirkulasi renal atau disfungsi tubular
dan glomerular. Ada tiga kategori penyebab utama gagal ginjal akut
diantaranya adalah sebagai berikut:
a) Kondisi Prarenal (Hipoperfusi Ginjal) adalah masalah aliran darah
akibat hipoperfusi ginjal dan turunnya laju filtrasi glomerulus. Hal ini
dapat ditandai dengan: penipisan volume, hemoragi, gagal jantung
kongestif, syok kongestif, sepsis, kehilangan cairan melalui saluran GI
(muntah, diare), dan sebagainya.
b) Kondisi Intrarenal (Kerusakan Aktual Jaringan Ginjal), kondisi ini
dapat terjadi karena disebabkan dari akibat kerusakan struktur
glomerulus atau tubulus ginjal. Hal ini dapat ditandai dengan kondisi
tubuh yang seperti merasa terbakar, cedera akibat benturan, trauma
dimana dalam bahasa kedokteran biasa dikenal sebagai mioglobinuria.
Selain itu juga dapat ditandai dengan hemoglobinuria (anemia yang
berarti kurang darah), iskemia jantung yang lama, proses infeksi,
glomerulonefritis akut, proses infeksi, pielonefritis akut, dan
sebagainya.
c) Kondisi Post-Renal (Obstruksi Aliran Urin) yang menyebabkan GGA
biasanya akibat dari obstruksi di bagian dista ginjal. Hal ini dapat
Ada beberapa gejala yang menjadi indikator pada penyakit GGA, yaitu:
1) Lemah.
2) Letih.
3) Malas.
4) Pucat.
5) Anemia.
6) Sering merasakan kehilangan atau kekurangan cairan.
7) Mual.
8) Muntah.
9) Diare.
10)Perubahan pola berkemih (kencing).
11)Urine berwarna kuning pekat.
12)Sakit kepala.
13)Penglihatan kabur.
14)Nyeri tubuh.
15)Nafas pendek.
16)Keram otot.
17)Sakit atau nyeri pada saat berkemih atau kencing.
18)Kaki bengkak.
2.4.2 Gagal Ginjal Kronis (GGK)
Gagal ginjal kronis (GGK) merupakan sindroma klinis karena
penurunan fungsi ginjal secara menetap akibat kerusakan nefron. Ada
beberapa istilah yang dipakai untuk menyatakan penurunan fungsi ginjal,
antara lain:
a. Gangguan fungsi ginjal, yaitu adanya penurunan laju filtrasi
glomerulus (glomerular filtration rate=GFR) yang dapat terjadi dalam
derajat ringan, sedang, dan berat.
b. Azotemia, yaitu adanya peningkatan kadar urea plasma atau
peningkatan BUN oleh karena retensi sampah nitrogen akibat
gangguan fungsi ginjal.
c. Uremia, merupakan sindroma klinis dan laboratori yang menunjukkan
adanya disfungsi berbagai sistem organ akibat gagal jantung akut
maupun kronis, biasanya pada derajat lanjut.
d. GGT, merupakan keadaan dimana ginjal tidak dapat lagi menopang
kehidupan tanpa diikuti tindakan dialisis atau transplantasi ginjal.
Secara umum gagal ginjal kronis (GGK) merupakan gangguan
fungsi renal yang progresif dan irreversibel dimana kemampuan tubuh
gagal untuk mempertahankan metabolisme dan keseimbangan cairan dan
elektrolit yang dapat menyebabkan uremia (retensi urea dan sampah
nitrogen lain dalam darah) (Doenges, Marilynn E, et.all, 1999).
Menurut The National Kidney Foundation Kidney Disease
Outcome Quality Initiative (NKF-K/DOQI) gagal ginjal kronis (GGK)
merupakan kerusakan pada organ ginjal selam lebih dari tiga bulan dan
dijumpai pula kelainan struktur atau fungsi ginjal dengan atau tanpa
penurunan GFR. Ada beberapa gejala yang menjadi indikator pada
penyakit gagal ginjal kronis, yaitu:
1. Penurunan kesadaran.
10.Kuku tipis dan rapuh.
11.Rambut tipis dan kasar.
12.Nafas dangkal (Nafasnya tersengal-sengal).
13.Mual
14.Muntah.
15.Diare.
16.Kejang.
18.Lemah pada tungkai.
19.Stress.
20.Nyeri panggul.
21.Napas pendek (Nafasnya seperti orang sesak nafas).
22.Insomnia.
23.Kulit gatal.
24.Penurunan libido.
25.Perubahan pola berkemih (kencing).
26.Urine berwarna kuning kemerahan
27.Tekanan darah tinggi.
28.Kaki bengkak
2.4.3 Batu Ginjal (Urolithiasis)
Batu Ginjal (Urolithiasis) mengacu pada adanya batu (kalkuli) di
traktus urinarius. Batu terbentuk di traktus urinarius ketika konsentrasi
substansi tertentu seperti kalsium oksalat (Ca²+), kalsium fosgat, dan asam
urat meningkat.
Batu juga dapat terbentuk ketika terdapat defisiensi substansi
tertentu, seperti sitrat yang secara normal mencegah kristalisasi dalam
urin. Batu dapat ditemukan di setiap bagian ginjal sampai ke kandung
kemih dan ukurannya bervariasi dari deposit granuler yang kecil, yang
disebut pasir atau kerikil, sampai batu sebesar kandung kemih yang
Faktor tertentu yang mempengaruhi pembentukan batu, yaitu
mencakup infeksi, stasis urin, dehidrasi, periode imobilitas (drainase
renal yang lambat dan perubahan metabolisme kalsium). Ada beberapa
gejala yang menjadi indikator pada penyakit batu ginjal, yaitu:
a) Malas
b) Sering kehilangan atau kekurangan cairan.
c) Kulit terasa hangat.
d) Kulit kemerahan.
e) Demam.
f) Diare.
g) Nyeri.
h) Animea.
i) Tekanan darah tinggi
j) Perubahan pola berkemih.
k) Darah di dalam air kencing (kencing berdarah) (Hudak, Carolyn M,
et.all, 1996).
2.5 PHP (Hypertext Processor)
PHP (Hypertext Processor) merupakan bahasa berbentuk script
yang ditempatkan dalam server dan hasilnya akan dikirim ke client,
tempat pemakai menggunakan browser. Secara khusus PHP (Hypertext
Processor) dirancang untuk membentuk website yang dinamis, maksudnya
sedangkan yang dikirimkan ke browser hanya hasilnya saja sehingga ia
dapat membentuk permintaan terkini.
PHP (Hypertext Processor) juga dapat diartikan sebagai instruksi
atau perintah pemograman berbasis website yang biasa disisipkan dalam
dokumen HTML (HyperText Markup Language), sebagai script
pendukung yang ada dilingkungan server (server side HTML embedded
scripting). Kode PHP (Hypertext Processor) juga bisa berkomunikasi
dengan database dan melakukan perhitungan-perhitungan yang kompleks
sambil jalan (Komputer, Wahana, 2006).
Pada saat ini, PHP (Hypertext Processor) cukup popular sebagai
piranti pemograman website. Meskipun demikian, PHP (Hypertext
Processor) sebenarnya juga dapat berfungsi pada server-server yang
berbasis UNIX, Windows NT, dan Macintosh, bahkan versi unuk Wiindows
95/98 pun tersedia.
PHP (Hypertext Processor) bersifat bebas pakai, kita tidak perlu
membayar apapun untuk menggunakan perangkat lunak ini. Salah satu
kelebihan dari PHP (Hypertext Processor) adalah mampu berkomunikasi
dengan berbagai database yang terkenal.
Dengan demikian, menampilkan data yang bersifat dinamis, yang
diambil dari database merupakan hal yang mudah untuk
mengimplementasikan dan inilah sebabnya sering dikatakan bahwa PHP
(Hypertext Processor) sangat cocok untuk membangun halaman-halaman
Ada beberapa keunggulan atau kelebihan dari PHP (Hypertext
Processor), diantaranya adalah sebagai berikut:
1) Source program atau script tidak dapat dilihat menggunakan fasilitas
view HTML source, yang ada pada web browser.
2) Script tersebut dapat memanfaatkan sumber-sumber aplikasi yang
dimiliki oleh server, seperti misalnya untuk keperluan database
connection. Saat ini PHP (Hypertext Processor) sudah mampu
melakukan koneksi dengan berbagai database, contohnya: InterBase,
Microsoft Acces, MySQL, Oracle, Postgree SQL, Sybase, dan
sebagainya.
3) Pada aplikasi yang dibuat dengan PHP (Hypertext Processor), saat
dijalankan server akan mengerjakan script dan hasilnya dikirim ke web
browser. Hal ini menyebabkan aplikasi tidak tidak memerlukan
kompatibilitas web browser atau harus menggunakan web browser
tertentu dan pasti dikenal oleh web browser apapun.
Konsep kerja PHP (Hypertext Processor) pada dasarnya serupa dengan
HTML, hanya saja ketika berkas PHP (Hypertext Processor) yang diminta
didapatkan oleh web server. Isinya akan segera dikirimkan PHP
(Hypertext Processor) dan mesin inilah yang memproses hasilnya berupa
kode HTML, selanjutnya web server menyampaikan ke client. Berikut
Gambar 2.8 Skema PHP
2.5.1 Script PHP
Script PHP berkedudukan sebagai tag dalam bahasa HTML
(Hypertext Markup Language). Sebagaimana diketahui HTML (Hypertext
Markup Language) adalah bahasa standar untuk membuat
halaman-halaman website (Prasetyo, Eko 2008). Contoh berikut merupakan kode
PHP yang berada di dalam kode HTML:
Gambar 2.9 Kode PHP
Kode PHP diawali dengan <?php dan diakhiri ?> pasangan kedua
kode inilah yang berfungsi sebagai tag kode PHP. Berdasarkan tag inilah,
Pihak client tidak dapat melihat kode PHP yang sesungguhnya.
Maka apabila kode tersebut dijalankan akan membentuk tampilan seperti
gambar di bawah ini:
Gambar 2.10 Tampilan Hasil PHP
2.6 MySQL
MySQL merupakan database server dimana pemrosesan data
terjadi di server, dan client hanya mengirim serta meminta data.
Pengaksesan dapat dilakukan dimana saja dan oleh siapa saja dengan
catatan computer telah terhubung ke server. Berbeda dengan database
desktop dimana segala pemrosesan data seperti penambahan atau
penghapusan data harus dilakukan pada komputer yang bersangkutan.
MySQL termasuk dalam kategori database manajemen sistem,
yaitu database yang terstruktur dalam pengolahan dan penampilan data.
Sejak komputer dapat menangani data yang besar, database management
sistem memegang peranan yang sangat penting dalam pengolahan data.
Hal ini sangat diperlukan, karena data tersebut dapat diatur sesuai dengan
MySQL merupakan Rational Databese Management System
(RDBMS) yaitu hubungan antar table yang berisi data-data pada sutu
database. Tabel-tabel tersebut dapat di link oleh suatu relasi yang
memungkinkkan untuk mengkombinasikan data dari beberapa table ketika
seorang user mengiginkan menampilkan informasi dari suatu database
(Syafii, M, 2005).
2.6.1 Program Database MySQL
Beberapa alasan mengapa MySQL menjadi program database yang
sangat popular dan digunakan oleh banyak orang. Alasan-alasan terebut
dintaranya adalah sebagai berikut:
a) MySQL merupakan database yang memiliki kecepatan yang tinggi
dalam melakukan pemroesan data, dapat diandalkan, dan mudah
digunakan serta mudah dipelajari.
b) MySQL mendukung banyak bahasa pemrograman seperti: bahasa
pemrograman C, bahasa pemrograman C++, Java, Perl, Phyton, dan
PHP.
c) Koneksi, kecepatan, dan keamanan membuat MySQL sangat cocok
diterapkan untuk pengaksesan database melalui internet, dengan
menggunakan bahasa pemrograman Perl atau PHP sebagai
antarmukanya.
d) MySQL dapat melakukan koneksi dengan client menggunakan
e) MySQL dapat menangani database dengan skala yang sangat besar
dengan jumlah record mencapai lebih dari lima puluh juta, dapat
menampung enam puluh ribu tabel, dan juga bisa menampung lima
milyar baris data serta dapat menampung sampai tiga puluh dua index.
f) Dalam hal relasi antar tabel pada suatu database, MySQL merupakan
metode yang sangat cepat yaitu dengan menggunakan metode
one-sweep multijoin.
g) Multiuser, yaitu dalam satu database server pada MySQL dapat
diakses oleh beberapa user dalam waktu yang sama tanpa mengalami
konflik atau crash.
h) Security yang dimiliki database MySQL dikenal baik, karena memiliki
lapisan sekuritas seperti level subnetmask, nama host dan izin akses
user dengan sistem perizinan yang khusus serta password yang
dimiliki setiap user.
i) MySQL merupakan software database yang bersifat free, jadi kita
tidak perlu susah-susah mengeluarkan isi kantong kita untuk hanya
sekedar membayar lisensi kepada pembuat software.
2.6.2 Koneksi MySQL
Bahasa SQL pada umumnya informasi tersimpan dalam tabel-tabel
yang secara logika merupakan struktur dua dimensi terdiri dari baris atau
row dan kolom atau field. Sedangkan dalam sebuah database dapat terdiri
Untuk membuat sebuah database baru ketik create database nama
database. Contoh : create database privatdb; Untuk membuka database
ketik use nama database. Contoh: use privatdb; Untuk membuat tabel
baru adalah create table nama tabel.
Contoh:
(
Struktur
);
2.6.3 Menghubungkan PHP dengan MySQL
File utama PHP;
Gambar 2.11 Script PHP Yang Menghubungkan Dengan Database
Pada bab ini akan dibahas tentang perancangan sistem dari aplikasi sistem
pakar yang akan dibuat. Desain aplikasi itu sendiri digunakan untuk
penggambaran umum terhadap aplikasi yang akan dibuat sehingga kebutuhan
akan konsep aplikasi dapat diketahui sebelum pembuatan aplikasi. Dengan desain
aplikasi inilah akan mempermudah untuk pembangunan lebih lanjut terhadap
aplikasi yang akan dibuat.
3.1 Analisis Sistem
Sebelum kita menentukan apakah permasalahan yang ada
bagaimana kita menentukan permasalahan itu ada, maka kita perlu
melakukan adanya analisa atau pengamatan dengan prioritas permasalahan
yang ada untuk menentukan bagaimana solusi yang tepat untuk
menyelesaikan permasalahan yang ada.
Pada analisis sistem, kita akan mempelajari bagaimana suatu
sistem akan bekerja dan bagaimana proses yang terjadi pada saat sistem
tersebut bekerja. Disini kita dapat menentukan permasalahan yang ada
dengan melakukan pengamatan terlebih dahulu pada sistem, dan
Setelah kita menentukan permasalahan tersebut, kita juga dapat
memikirkan solusi untuk permasalahan yang ada. Analisis sistem meliputi
tiga bagian, yaitu: analisis informasi, analisis permasalahan, dan analisis
solusi.
3.1.1 Analisis Informasi
Sebelum kita menentukan permasalahan yang ada, maka perlu
dilakukan analisis informasi. Analisis informasi ini dilakukan dengan
berbagai cara, yakni dengan mengumpulkan atau mendapatkan sumber
informasi dari orang atau manusia (dalam hal ini adalah wawancara
dengan seorang dokter spesialis penyakit dalam), dokumen (penyimpanan
informasi tertulis berupa referensi atau literatur yang dapat menunjang
penyelesaian laporan skripsi), sarana dan infrastruktur.
Pencarian sumber informasi dengan dokter spesialis penyakit
dalam ini penulis melakukan dengan cara melakukan sebuah wawancara
dengan tujuan untuk mendapatkan informasi mengenai kesulitan yang ada,
sehingga dari hal itu penulis dapat menentukan permasalahan yang ada
serta dapat menentukan solusi yang tepat untuk permasalahan yang ada.
Berikut adalah laporan wawancara antara penulis dengan dokter
spesialis penyakit dalam (Nugroho, Agung) yang bekerja di rumah sakit
Dr. Soetomo Surabaya.
Dokter: Ginjal merupakan suatu organ penting dalam tubuh kita dimana
setiap manusia mempunyai dua yaitu ginjal sebelah kanan dan
ginjal sebelah kiri. Organ tubuh ginjal berbentuk sperti kacang
yang terletak pada organ bagian belakang tubuh manusia atau
secara kedokteran terletak pada retroporitoneal (terletak di
belakang kavum abdomen) dengan panjang ± 10 – 12 cm dengan
berat sekitar 150 g. Pada fisiologisnya ginjal kanan lebih rendah
daripada ginjal kiri karena pada ginjal kanan terdapat organ
Hati.
Penulis: Sebenarnya apakah fungsi utama dari organ ginjal itu?
Dokter: Pada dasarnya fungsi utama ginjal hanya ada dua yaitu fungsi
eksretori dan fungsi metabolik. Fungsi eksretori merupakan
fungsi ginjal yang menghasilkan urine dengan tujuan
mengeliminasi sampah tubuh kita dari hasil sisa metabolisme
tubuh kemudian juga untuk mengeluarkan kelebihan cairan
sehingga terjaga keseimbangan cairan yang kedua adalah fungsi
metabolik untuk menghasilkan beberapa hormon diantaranya
adalah renin, vitamin D, Erythropoietin dan Prostaglandin
Penulis: Faktor-faktor apakah yang menyebabkan seseorang terkena
penyakit ginjal?
Dokter: Banyak faktor yang dapat menyebabkan seseorang terkena
diderita oleh pasien sebelumnya yang akhirnya perlahan-lahan
akan merusakkan organ tubuh ginjal, seperti penyakit darah
tinggi (hipertensi) yang dapat menyebabkan aliran darah ke
ginjal akan berkurang sehingga dapat menyebabkan kerusakan
pada ginjal, penyakit diabetes melitus, tumor, kanker, auto imun
(penyakit yang menyerang imunnya sendiri), kista, rusaknya sel
penyaring karena infeksi, dan seseorang yang kehilangan
banyak cairan secara mendadak contohnya seperti orang yag
terkena kecelakaan atau luka bakar yang serius.
Penulis: Apakah gejala-gejala umum pada penyakit ginjal?
Dokter: Gejala-gejala yang terlihat pada umumnya adalah lemas, letih,
mual dan muntah, nafsu makan berkurang, bengkak, fungsi
ginjal berkurang yang dapat mengakibatkan perubahan pada
pola berkemih karena produksi urine menurun, sesak,
kekurangan sel darah merah (animea), dan pengujian dari hasil
laboratorium.
Penulis: Ada berapa macam jenis penyakit ginjal?
Dokter: Jenis-jenis dari penyakit ginjal itu sendiri, yaitu syndroma
nefrotik, gagal ginjal akut, gagal ginjal kronis, batu saluran
kemih atau batu ginjal, infeksi saluran kemih, dan hipertensi.
urin sehingga menyebabkan terjadinya bengkak pada seluruh
tubuh. Gagal ginjal akut adalah hilangnya fungsi ginjal secara
mendadak atau hampir lengkap akibat sirkulasi renalnya
terganggu. Gagal ginjal kronis adalah penurunan fungsi ginjal
pada tahap akhir dan tidak dapat dibenahi lagi. Batu saluran
kemih atau batu ginjal yaitu adanya batu di dalam ginjal seperti
batu lemak, batu kapur, dsb. Infeksi saluran kemih adalah
infeksi pada saluran kemih dan hipertensi atau tekanan darah
tinggi.
Penulis: Dalam penyusunan laporan tugas akhir ini penulis membatasi
tiga jenis penyakit ginjal, yaitu GGA, GGK dan Batu Ginjal.
Sebutkan perbedaan pada ketiga penyakit tersebut!
Dokter: GGA atau gagal ginjal akut adalah hilangnya atau rusaknya
fungsi ginjal secara mendadak secara mendadak karena
kegagalan sirkulasi renal atau disfungsi pada tubular dan
glomerular ginjal yang ditandai dengan perubahan pola urine.
Penyebab GGA ada tiga yaitu kondisi prarenal adalah kondisi
sebelum ginjal rusak, intrarenal adalah kondisi pada ginjal itu
sendiri, dan pascarenal adalah kondisi setelah ginjal rusak.
GGK atau gagal ginjal kronis, dikatakan kronis karena
kerusakan yang terjadi pada struktur organ ginjal yang sudah
seharusnya di eksresi. Penyebab terjadinya karena kurangnya
asupan air, dan biasanya terjadi pada orang-orang yang suka
duduk lama dan kurangnya bergerak atau beraktifitas.
Penulis: Apakah faktor usia dapat menyebabkan seseorang menderita
penyakit ginjal? Mengapa?
Dokter: Faktor usia sangat berpengaruh bagi seseorang yang terkena
penyakit ginjal. Hal ini dikarenakan semakin tua usia seseorang
maka semakin menurun pula cara kerja dan fungsi pada organ
ginjal. Faktanya pada tahun 2006 di Indonesia terdapat 150ribu
jiwa terdapat pasien yang menderita penyakit ginjal dan hampir
51% pasien yang menderita penyakit ginjal adalah pasien
berusia 32 sampai 75 tahun dan sisanya 49% pasien yang
menderita penyakit ginjal berusia kurang dari 35 tahun. Pada
umumnya pasien yang menderita penyakit ginjal rata-rata
berusia 52 tahun.
Penulis: Bagaimanakah cara kita untuk mencegah agar dapat terhindar
dari penyakit ginjal dok?
Dokter: Banyak cara pencegahan yang dapat kita lakukan agar kita
terhindar dari penyakit ginjal, diantaranya adalah menjaga
kestabilan tekanan darah dengan cara pola hidup dan makan