Anda di halaman 1dari 38

BAB I

PENDAHULUAN
1.1 Latar Belakang
Sistem Pakar adalah salah satu bagian dari Kecerdasan Buatan yang
mengandung pengetahuan dan pengalaman yang dimasukkan oleh banyak pakar
ke dalam suatu area pengetahuan tertentu sehingga setiap orang dapat
menggunakannya untuk memecahkan berbagai masalah yang bersifat spesifik
dalam hal ini adalah permasalahan pada penyakit batu karang.
Penyakit batu karang terjadi akibat kelalaian dalam pola makan. seseorang
baru menyadari Penyakit batu karang setelah susah pada saat buang air kecil atau
sakit pada ginjalnya. Oleh karena itu dalam mengatur pola makanan kemungkinan
besar membutuhkan pengetahuan yang baik. Dengan cara mendeteksi gejala
penyakit apa yang terjadi pada tubuh kita.
Metode kecerdasan buatan (Artificial Intelligence /AI) sangat banyak
digunakan dalam segala bidang termasuk aplikasi di bidang kesehatan/kedokteran.
Teknologi softcomputing adalah sebuah bidang kajian penelitian interdisipliner
dalam ilmu komputasi dan kecerdasan buatan.
Beberapa teknik dalam softcomputing antara lain sistem pakar (expert
system), jaringan syaraf tiruan (neural networks), logika fuzzy (fuzzy logic), dan
algoritma genetik (genetic algorithms) banyak dikembangkan karena mempunyai
keunggulan dalam penyelesaian masalah yang mengandung ketidakpastian,
ketidaktepatan dan kebenaran parsial, termasuk dalam bidang kesehatan.
Penyampaian informasi

dilakukan dengan meminta request dari user.

Request tersebut akan diproses dalam sistem kemudian hasilnya akan dikirim lagi
ke user. Diharapkan sistem ini mampu memberikan informasi yang optimal dari
timbal balik user dan sistem.
Uraian di atas menjadi latar belakang pertimbangan bagi peneliti untuk
membuat judul SISTEM PAKAR DIAGNOSA PENYAKIT BATU
KARANG

FACTOR.

DENGAN

MENGGUNAKAN

METODE

CERTAINTY

1.2 Rumusan Masalah


Berdasarkan latar belakang masalah yang telah dikemukakan di atas, maka
Penulis merumuskan beberapa masalah sebagai berikut:
a. Bagaimana sistem pakar mampu mendiagnosis penyakit batu karang
menggunakan metode certainty factor?
b. Bagaimana sistem dapat diakses oleh pemakai secara cepat ?
1.3 Batasan Masalah
Adapun batasan masalah yang dimaksud adalah sebagai berikut:
a. Aplikasi yang dibuat menggunakan metode certainty factor.
b. Membuat aplikasi sistem pakar untuk mendiagnosis mendiagnosis penyakit
batu karang yang kontennya mencakup gejala penyakit, jenis penyakit,
keterangan penyait, solusi terbaik yang harus dicapai
c. Bahasa pemrograman yang digunakan adalah bahasa pemrograman PHP dan
MySQL

a.

1.4 Tujuan Penelitian


Merancang sebuah sistem pakar yang dapat mendiagnosis penyakit batu karang

b.

Informasi yang di dapat lebih up to date, mudah, cepat serta akurat


1.5 Manfaat Penelitian
Manfaat-manfaat yang diharapkan dari hasil penelitian ini adalah:
a. Bagi Mahasiswa
Wawasan pengetahuan di luar kampus, pengalaman dalam dunia kerja serta
bekal tambahan yang dapat dipergunakan untuk persiapan bila nanti terjun
dalam masyarakat.
b. Masyarakat luas
Dapat membantu masyarakat mendiagnosa mendiagnosis penyakit batu
karang.

1.6 Metodelogi Penelitian


Langkah-langkah yang ditempuh dalam menyelesaikan penelitian sebagai
berikut:
1. Studi literatur
Pada tahap ini penulis mengumpulkan infomasi dan mempelajari materi serta
sumber-sumber data yang berhubungan dengan sistem pakar, metode Certainty
Factor, jenis penyakit, gejala-gejala penyakit beserta solusinya maupun materi
lain yang terkait dengan penelitian ini.
2. Analisis data
Pada tahap ini dilakukan pengumpulan fakta-fakta yang mendukung
perancangan sistem dengan mengadakan konsultasi dengan seorang pakar dan
membandingkan hasil penelitian dengan yang ada pada buku penuntun dan
dilakukan perancangan Data Flow Diagram, Entity Relationship Diagram dan
perancangan antarmuka sesuai dengan hasil dari analisis sistem.
3. Implementasi sistem
Pada tahap ini sistem yang dirancang di implementasikan ke dalam bentuk
kode program php.
4. Pengujian
Pada tahap ini dilakukan pengujian sistem apakah berjalan dengan benar dan
sesuai dengan perancangan.
5. Penyusunan laporan
Pada tahap ini dilakukan penulisan dokumentasi hasil analisis dari aplikasi
sistem pakar dengan metode Certainty Factor untuk mendiagnosis penyakit
batu karang.
6. Kerangka Konsep
Berikut ini merupakan tahapan dalam perancangan sistem pakar diagnosa
penyakit dapat dilihat pada gambar 1.1

START

IDENTIFIKASI
TINJAUAN PUSTAKA
ANALISA KEBUTUHAN SISTEM

PERANCANGAN APLIKASI

PERANCANGAN JENIS PENYAKIT

PERANCANGAN SOLUSI

T
PENGUJIAN SISTEM

Y
END
Gambar 1.1 Kerangka Konsep
1.9 Sistematika Penulisan
Dalam skripsi, penulis akan menjelaskan sistematika dari penyusunan
skripsi yang terdiri dari beberapa bab, yaitu:
BAB I PENDAHULUAN
Pokok bahasan meliputi latar belakang permasalahan, perumusan
masalah, batasan masalah, tujuan penelitian, manfaat penelitian,
metodologi penelitian, dan sistematika penulisan.

BAB II LANDASAN TEORI


Pokok bahasan menguraikan teori-teori yang mendasari pembahasan
secara detail, dapat berupa definisi -definisi atau model yang
langsung berkaitan dengan ilmu atau masalah yang diteliti.
BAB III ANALISA DAN PERANCANGAN SISTEM
Bab ini menguraikan

tentang analisis terhadap permasalahan yang

terdapat di kasus yang sedang di teliti. Meliputi analisis terhadap


masalah sistem yang sedang berjalan, analisis hasil solusinya, analisis
kebutuhan terhadap system yang di usulkan, analisis kelayakan
sistem yang di usulkan. Perancangan sistem berisikan model-model
penyelesaian masalah sistem lama dengan membuat rancangan untuk
sistem baru yang diusulkan.
BAB IV IMPLEMENTASI
Bagian ini berisi penjelasan tentang lingkungan implemetasi (OS,
perangkat keras dan bahasa pemrograman yang digunakan), file-file
implementasi analisa dan perancangan sistem dari masing-masing
modul atau klas (relasinya) serta algoritma yang diimplementasikan.
BAB V PENGUJIAN DAN PEMBAHASAN
Untuk kategori topik pengembangan perangkat lunak (dimana
perangkat lunak sebagai produk utama/akhir), maka bagian ini berisi
penjelasan tentang strategi pengujian (unit, integrasi dan validasi) dan
teknik pengujian (black box atau

white box) yang dilakukan.

Dijelaskan juga seluruh kasus uji beserta hasil pengujiannya. Di dalam


penjelasan setiap kasus uji harus dimasukkan antara lain tujuan, data
masukan, prosedur uji dan hasil yang diharapkan.
BAB VI KESIMPULAN DAN SARAN
Kesimpulan memuat secara singkat dan jelas tentang hasil penelitian
yang diperoleh sesuai dengan tujuan penelitian. Kesimpulan didasarkan
atas pengujian dan analisis yang dilakukan di dalam proses penelitian.
Kesimpulan harus memiliki korelasi dengan rumusan masalah. Saran

digunakan untuk menyampaikan masalah yang dimungkinkan untuk


penelitian lebih lanjut. Saran berisi hal-hal yang diperlukan dalam
rangka pengembangan topik skripsi selanjutnya maupun perbaikan yang
harus dilakukan sesuai dengan kesimpulan yang didapatkan.

BAB II
LANDASAN TEORI
2.1

Tinjauan Pustaka
Tinjauan Pustaka mempunyai arti peninjauan kembali pustaka-pustaka yang

terkait (review of related literature). Sesuai dengan arti tersebut, suatu tinjauan
pustaka berfungsi sebagai peninjauan kembali (review) pustaka (laporan
penelitian, dan sebagainya) tentang masalah yang berkaitan tidak selalu harus
tepat identik dengan bidang permasalahan yang dihadapi tetapi termasuk pula
yang seiring dan berkaitan (collateral). Fungsi peninjauan kembali pustaka yang
berkaitan merupakan hal yang mendasar dalam penelitian.
2.1.1

Penelitian Terkait
Luther (2006) sistem pakar pendiagnosa penyakit anak menggunakan

certainty factor (cf). Sistem Pakar Pendiagnosa Penyakit Anak Menggunakan


Certainty Factor dapat digunakan untuk mendiagnosa penyakit anak dengan
tingkat kepercayaan yang telah ditentukan oleh pakar terhadap gejala-gejala yang
mempengaruhi probabilitas terjadinya suatu penyakit anak. Sistem ini akan
optimal jika seorang atau sekelompok pakar dalam hal ini dokter ahli anak telah
mendefenisikan secara jelas nilai CF setiap gejala penyakit terhadap kemungkinan
terjadinya penyakit anak.
Syatibi (2012) sistem pakar diagnosa awal penyakit kulit sapi berbasis
web dengan menggunakan metode certainty factor. sistem mampu melakukan
diagnosa penyakit kulit sapi berdasarkan gejala-gejala yang diderita pasien
meskipun gejala-gejala tersebut mengandung ketidakpastian. Hasil diagnosa
disertai nilai Certainty Factor yang menunjukkan tingkat kebenaran, keakuratan
dari kemungkinan penyakit kulit pada hewan sapi.
Ruen (2012) Implementasi Metode Certainty Factor Untuk Diagnosa
Penyakit

Jantung.

dalam

penelitian

yang

di

lakukan

adalah

mengimplementasikan Metode Certainty Factor untuk mendiagnosa penyakit


jantung.
Wahyudi (2013) Dari penelitian yang telah dilakukan, dihasilkan sebuah
perangkat lunak (software) baru tentang sistem pakar berbasis dekstop untuk
mendiagnosa penyakit udang galah. Sebagai penarikan kesimpulan mengunakan
metode Forward Chaining dan sebagai alat kepastian atau penarikan kesimpulan
menggunakan Theorema Bayes.
Syatibi (2012) sistem mampu melakukan diagnosa penyakit kulit sapi
berdasarkan gejala-gejala yang diderita pasien meskipun gejala-gejala tersebut
mengandung ketidakpastian. Hasil diagnosa disertai nilai Certainty Factor yang
menunjukkan tingkat kebenaran, keakuratan dari kemungkinan penyakit kulit
pada hewan sapi.
Afriani

(2012)

dalam

penelitian

yang

di

lakukan

adalah

mengimplementasikan Metode Forward Chaining untuk mendiagnosa penyakit


jantung.
Honggowibowo (2009) dalam penelitian yang mereka lakukan bahwa
mereka melakukan penelitian mengenai kepakaran dalam mendiagnosis penyakit
tanaman padi
2.1.2 Perbandingan Penelitian Terkait
No
1

Nama
Wahyudi

Tahun
2013

Metode
Forward Chaining

kesimpulan
Dari penelitian yang telah
dilakukan, dihasilkan sebuah
perangkat lunak (software)
baru tentang sistem pakar
berbasis dekstop untuk
mendiagnosa penyakit udang
galah. Sebagai penarikan
kesimpulan mengunakan
metode Forward Chaining dan
sebagai alat kepastian atau
penarikan kesimpulan
menggunakan Theorema
Bayes.

Syatibi

2012

Certainty Factor

sistem mampu melakukan


diagnosa penyakit kulit sapi
berdasarkan gejala-gejala yang
diderita pasien meskipun
gejala-gejala tersebut
mengandung ketidakpastian.
Hasil diagnosa disertai nilai
Certainty Factor yang
menunjukkan tingkat
kebenaran, keakuratan dari
kemungkinan penyakit kulit

Afriani

2012

Forward Chaining

pada hewan sapi.


dalam penelitian yang di
lakukan adalah
mengimplementasikan Metode
Forward Chaining untuk

Ruen

2012

Certainty Factor

mendiagnosa penyakit jantung.


dalam penelitian yang di
lakukan adalah
mengimplementasikan Metode
Certainty Factor untuk

Honggowibowo

2009

Forwad Chaining

mendiagnosa penyakit jantung.


dalam penelitian yang mereka
lakukan bahwa mereka
melakukan penelitian
mengenai kepakaran dalam
mendiagnosis penyakit

Luther

2006

Certainty Factor

tanaman padi
Sistem Pakar Pendiagnosa
Penyakit Anak Menggunakan
Certainty Factor dapat
digunakan untuk mendiagnosa
penyakit anak dengan tingkat
kepercayaan yang telah
ditentukan oleh pakar terhadap
gejala-gejala yang
mempengaruhi probabilitas
terjadinya suatu penyakit anak.

Sistem ini akan optimal jika


seorang atau sekelompok pakar
dalam hal ini dokter ahli anak
telah mendefenisikan secara
jelas nilai CF setiap gejala
penyakit terhadap
kemungkinan terjadinya
7

Rumaisa

2006

Certainty Factor

penyakit anak.
Aplikasi yang dikembangkan
ini bertujuan untuk
menentukan jenis gangguan
pada wanita mulai umur 17
tahun dengan hanya
memperhatikan gejalagejala
yang dialami. Dengan
menggunakan metode Certanty
Factor (CF), didapatkan nilai
Kemungkinan gangguan yang
dialami pasien.

2.2 Sistem Pakar


Sistem pakar adalah suatu program komputer yang dirancang untuk
mengambil keputusan seperti keputusan yang diambil oleh seorang atau beberapa
orang pakar. Menurut Marimin (1992), sistem pakar adalah sistem perangkat
lunak komputer yang menggunakan ilmu, fakta, dan teknik berpikir dalam
pengambilan keputusan untuk menyelesaikan masalah-masalah yang biasanya
hanya dapat diselesaikan oleh tenaga ahli dalam bidang yang bersangkutan.
Dalam penyusunannya, sistem pakar mengkombinasikan kaidah-kaidah penarikan
kesimpulan (inference rules) dengan basis pengetahuan tertentu yang diberikan
oleh satu atau lebih pakar dalam bidang tertentu. Kombinasi dari kedua hal
tersebut disimpan dalam komputer, yang selanjutnya digunakan dalam proses
pengambilan keputusan untuk penyelesaian masalah tertentu. Modul Penyusun
Sistem Pakar Suatu sistem pakar disusun oleh tiga modul utama (Staugaard,
1987), yaitu :
a. Modul Penerimaan Pengetahuan (Knowledge Acquisition Mode)

Sistem berada pada modul ini, pada saat ia menerima pengetahuan dari
pakar. Proses mengumpulkan pengetahuan-pengetahuan yang akan digunakan
untuk pengembangan sistem, dilakukan dengan bantuan knowledge engineer.
Peran knowledge engineer adalah sebagai penghubung antara suatu sistem
pakar dengan pakarnya
b. Modul Konsultasi (ConsultationMode)
Pada saat sistem berada pada posisi memberikan jawaban atas
permasalahan yang diajukan oleh user, sistem pakar berada dalam modul
konsultasi. Pada modul ini, user berinteraksi dengan sistem dengan menjawab
pertanyaan-pertanyaan yang diajukan oleh sistem.
c. Modul Penjelasan (Explanation Mode)
Modul ini menjelaskan proses pengambilan keputusan oleh sistem
(bagaimana suatu keputusan dapat diperoleh).
2.2.1 Ciri-Ciri Sistem Pakar
Sistem pakar yang baik harus memenuhi ciri-ciri sebagai berikut :
1.

Terbatas pada domain keahlian tertentu.

2.

Berdasarkan pada kaidah/rule tertentu.

3.

Dapat digunakan dalam berbagai jenis komputer.


4.

Mudah dimodifikasi, yaitu dengan menambah atau menghapus


suatu kemampuan dari basis pengetahuannya.

5.

Sistem dapat mengaktifkan kaidah secara searah yang sesuai,


dituntun oleh dialog dengan pemakai.

2.2.2 Keuntungan dan Kelemahan Sistem Pakar


Secara garis besar, banyak manfaat yang dapat diambil dengan adanya
sistem pakar, antara lain :
1.
2.
3.
4.
5.

Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli.


Bisa melakukan proses secara berulang secara otomatis.
Menyimpan pengetahuan dan keahlian para pakar.
Meningkatkan output dan produktivitas.
Meningkatkan kualitas.

6. Mampu mengambil dan melestarikan keahlian para pakar (terutama


yang termasuk keahlian langka).
7. Mampu beroperasi dalam lingkungan yang berbahaya.
8. Memiliki kemampuan untuk mengakses pengetahuan.
9. Memiliki reliabilitas.
10. Meningkatkan kapabilitas sistem komputer.
11. Memiliki kemampuan untuk bekerja dengan informasi yang tidak
lengkap dan mengandung ketidakpastian.
12. Sebagai media pelengkap dalam penelitian.
13. Meningkatkan kapabilitas dalam penyelesaian masalah.
14. Menghemat waktu dalam pengambilan keputusan.
Disamping memiliki beberapa keuntungan, sistem pakar juga memiliki
beberapa kelemahan, antara lain :
1. Biaya yang diperlukan untuk membuat dan memeliharanya sangat mahal.
2. Sulit dikembangkan. Hal ini tentu saja erat kaitannya dengan ketersediaan
pakar dibidangnya.

2.2.3 Struktur Sistem Pakar


Komponen utama pada struktur sistem pakar (Hu et al, 1987) meliputi:
1. Basis Pengetahuan (Knowledge Base)
Basis pengetahuan merupakan inti dari suatu sistem pakar, yaitu berupa
representasi pengetahuan dari pakar. Basis pengetahuan tersusun atas
fakta dan kaidah. Fakta adalah informasi tentang objek, peristiwa, atau
situasi. Kaidah adalah cara untuk membangkitkan suatu fakta baru dari
fakta yang sudah diketahui. Menurut Gondran (1986) dalam Utami
(2002), basis pengetahuan merupakan representasi dari seorang pakar,
yang kemudian dapat dimasukkan kedalam bahasa pemrograman khusus
untuk kecerdasan buatan.
2. Mesin Inferensi (Inference Engine)
Mesin inferensi berperan sebagai otak dari sistem pakar. Mesin inferensi
berfungsi untuk memandu proses penalaran terhadap suatu kondisi,
berdasarkan pada basis pengetahuan yang tersedia. Di dalam mesin
inferensi terjadi proses untuk memanipulasi dan mengarahkan kaidah,

model, dan fakta yang disimpan dalam basis pengetahuan dalam rangka
mencapai solusi atau kesimpulan. Dalam prosesnya, mesin inferensi
menggunakan strategi penalaran dan strategi pengendalian. Strategi
penalaran terdiri dari strategi penalaran pasti (Exact Reasoning) dan
strategi penalaran tak pasti (Inexact Reasoning). Exact reasoning akan
dilakukan jika semua data yang dibutuhkan untuk menarik suatu
kesimpulan tersedia, sedangkan inexact reasoning dilakukan pada
keadaan sebaliknya. Strategi pengendalian berfungsi sebagai panduan
arah

dalam

melakukan

prose

penalaran.

Terdapat

tiga

tehnik

pengendalian yang sering digunakan, yaitu Certainty Factor, backward


chaining, dan gabungan dari kedua tehnik pengendalian tersebut.
3. Basis Data (Database)
Basis data terdiri atas semua fakta yang diperlukan, dimana fakta-fakta
tersebut digunakan untuk memenuhi kondisi dari kaidah-kaidah dalam
sistem. Basis data menyimpan semua fakta, baik fakta awal pada saat
sistem mulai beroperasi, maupun fakta-fakta yang diperoleh pada saat
proses penarikan kesimpulan sedang dilaksanakan. Basis data digunakan
untuk menyimpan data hasil observasi dan data lain yang dibutuhkan
selama pemrosesan.
4. Antarmuka Pemakai (User Interface)
Fasilitas ini digunakan sebagai perantara komunikasi antara pemakai
dengan sistem. Hubungan antar komponen penyusun struktur sistem
pakar
2.3 Mekanisme Inferensi (Inference Engine)
Mekanisme Inferensi adalah bagian dari sistem pakar yang melakukan
penalaran dengan menggunakan isi daftar aturan berdasarkan urutan dan pola
terentu. Selama proses konsultasi antar sistem dengan pemakai, mekanisme
inferensi menguji aturan satu sampai kondisi aturan itu benar. Secara umum ada
dua teknik utama yang digunakan dalam mekanisme inferensi untuk pengujian
aturan, yaitu Metode Certainty Factor dan Backward Chaining.

2.3.1 Certainty Factor


Faktor Kepastian (Certainty Factor) menyatakan kepercayaan dalam sebuah
kejadian (atau fakta atau hipotesis) berdasarkan bukti atau penilaian pakar
(Turban, 2005). Certainty Factor menggunakan suatu nilai untuk mengasumsikan
derajad keyakinan seorang pakar

terhadap suatu data. Certainty Factor

memperkenalkan konsep keyakinan dan ketidakyakinan yang kemudian


diformulakan dalam rumusan dasar sebagai berikut :
CF [P,E] = MB [P,E] MD [P,E]
Keterangan :
CF : Certainty Factor
MB : Measure of Belief
MD : Measure of Disbelief
P : Probability
E : Evidence (Peristiwa/Fakta)
Berikut ini adalah deskripsi beberapa kombinasi Certainty Factor terhadap
berbagai kondisi :
1. Certainty Factor untuk kaidah dengan premis tunggal (single premis rules):
CF(H,E) = CF(E)*CF(rule)
= CF(user)*CF(pakar)
2. Certainty Factor untuk kaidah dengan premis majemuk (multiple premis
rules):
CF (A AND B ) = Minimum (CF (a),CF (b)) * CF (rule)
CF (A OR B ) = Maximum (CF (a),CF (b)) * CF (rule)
3. Certainty Factor untuk kaidah dengan kesimpulan yang serupa (similarly
concluded rules) :
CFcombine (CF1, CF2) = CF1 + CF2*(1-CF1)
2.4 PHP
PHP (PHP Hypertext Preprocessor) yang merupakan bahasa pemrogramman
berbasis web yang memiliki kemampuan untuk memproses data dinamis. PHP
dikatakan sebagai sebuah server-side embedded script language artinya sintaks-

sintaks dan perintah yang kita berikan akan sepenuhnya dijalankan oleh server
tetapi disertakan pada halaman HTML biasa. Aplikasi-aplikasi yang dibangun
oleh PHP pada umumnya akan memberikan hasil pada web browser, tetapi
prosesnya secara keseluruhan dijalankan di server. Pada prinsipnya server akan
bekerja apabila ada permintaan dari client. Dalam hal ini client menggunakan
kode-kode PHP untuk mengirimkan permintaan ke server (dapat dilihat pada
gambar dibawah). Ketika menggunakan PHP sebagai server-side embedded script
language maka server akan melakukan hal-hal sebagai berikut :
a. Membaca permintaan dari client/browser
b. Mencari halaman/page di server
c. Melakukan instruksi yang diberikan oleh PHP untuk melakukan
modifikasi pada halaman/page.
d. Mengirim kembali halaman tersebut kepada client melalui internet atau
intranet.

2.5 MySQL
SQL (Structured Query Language) adalah bahasa standar yang digunakan
untuk mengakses server database. MySQL sebenarnya merupakan susunan salah
satu konsep utama dalam database sejak lama. Keandalaan suatu sistem database
(DBMS) dapat diketahui dari cara kerja optimezernya dalam melakukan proses
perintah-perintah SQL yang dibuat oleh user maupun program-program
aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul
dibandingkan database server lainnya dalam query data. MySQL adalah satu dari
sekian banyak sistem database, merupakan terobosan solusi yang tepat dalam
aplikasi database.
1.

SQL tidak memiliki fasilitas pemrograman yang lengkap, tidak ada


looping ataupun percabangan. Sehingga untuk menutupi kelemahan ini
perlu digabung dengan bahasa pemrograman semisal Pascal. Dalam
training ini kita menggunakan MySQL sebgai SQL server karena berbagai
kelebihannya. Antara lain :

a.Source MySQL dapat diperoleh dengan mudah dan gratis.


b.Sintaksnya lebih mudah dipahami dan tidak rumit.
c.Pengaksesan database dapat dilakukan dengan mudah.
2.6 ERD (Entity Relationnship Diagram)
ERD (Entity Relationnship Diagram) pertama kali di deskripsikan oleh Peter
Chen dalam bukunya The Entity Relationship Model-Toward a Unifield of Data.
Dalam buku ini Chen mencoba merumuskan dasar-dasar model setelah itu
dikembangkan dan dimodifikasi oleh Chen dan banyak pakar lain.
ERD (Entity Relationship Diagram) adalah pemodelan data utama yang
membantu mengorganisasikan data dalam suatu proyek ke dalam entitas-entitas
dan menentukan hubungan antar entitas atau sejumlah notasi dan simbol untuk
menggambarkan struktur dan hubungan antar data. Ada beberapa macam elemen
yang umum digunakan yaitu :
1. Entitas/Entity adalah suatu tempat atau objek untuk menyimpan data.
Contoh: Entitas buku untuk menyimpan atribut mengenai buku (judul
buku, kode buku, pengarang, dsb). Entity digambarkan dengan persegi
panjang.
2. Atribut. Atribut berfungsi untuk mendeskripsikan entitas dan atribut
mempunyai nilai (harga). Atribut digambarkan dengan simbol ellips.
3. Relasi/Relationship. Database adalah kumpulan file yang saling berkaitan.
Pada model data relasi hubungan antar file direlasikan dengan kunci relasi.
Relasi ini digambarkan dengan garis dalam ERD.
4. Cardinalitas. Terdapat beberapa pengertian key sehubungan dengan
normalisasi dan ERD, antara lain :
a. Superkey adalah gugus dari sejumlah atribut entiti yang dapat
digunakan untuk mengindentifikasi obyek secara unik.
b. Candidate key adalah superkey yang jumlah atribut minimal dan
dapat bTerdiri sendiri.

c. Primary key adalah superkey yang dipilih oleh desainer atau


administrator basis data.
Dalam kardinalitas terdapat relasi dari antar table/instansi untuk
menghubungkan key-key yang telah terhubung. Relasi yang dapat terjadi ialah :
1. Satu ke satu (One to one)
Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A
berhubungan paling banyak dengan satu entitas pada himpunan entitas B.
2.

Satu ke banyak (One to many)


Setiap entitas pada himpunan entitas A dapat berhubungan dengan
banyak entitas pada himpunan entitas B, tetapi setiap entitas pada entitas
B dapat berhubungan dengan satu entitas pada himpunan entitas A.

3.

Banyak ke banyak (Many to many)


Setiap entitas pada himpunan entitas A dapat berhubungan dengan
banyak entitas pada himpunan entitas B.

2.7 Diagram Konteks


Diagram konteks adalah diagram yang terdiri dari suatu proses dan
menggambarkan ruang lingkup suatu sistem. Diagram konteks merupakan level
tertinggi dari DFD yang menggambarkan seluruh input ke sistem atau output dari
sistem. Ia akan memberi gambaran tentang keseluruhan sistem. Sistem dibatasi
oleh boundary (dapat digambarkan dengan garis putus). Dalam diagram konteks
hanya ada satu proses. Tidak boleh ada store dalam diagram konteks.
2.8 Data Flow Diagram (DFD)
Data Flow Diagram (DFD) adalah diagram yang menggunakan notasi-notasi
untuk menggambarkan arus dari sistem. DFD sering digunakan untuk
menggambarkan suatu sistem yang telah ada atau sistem baru yang akan di
kembangkan secara logika tanpa mempertimbangkan lingkungan fisik dimana
data tersebut mengalir (misanya lewat telepon seluler, surat, dan sebagainya) atau
lingkungan fisik dimana data tersebut akan disimpan (misalnya file kartu,
harddisk, tape, diskette, dan lain sebagainya).

2.8.1

Komponen Data Flow Diagram


Tabel 2.3 Simbol-simbol DFD
Model Yordan Demarko

No
.

Simbol

Keterangan
Terminator adalah entitas diluar sistem yang
berkomunikasi / berhubungan langsung
dengan sistem. Terminator dapat berupa
orang,
sekelompok
orang,
organisasi,
perusahaan/departemen yang berada diluar
sistem, diberi nama yang berhubungan dengan
sistem tersebut.
Arus Data digunakan untuk menerangkan
perpindahan data/paket data dari satu bagian
ke bagian lainnya.
Suatu proses adalah kegiatan atau kerja yang
dilakukan oleh orang, mesin atau komputerr
dari hasil suatu arus data yang masuk ke
dalam proses untuk dihasilkan arus data yang
akan keluar dari proses. Proses disesuaikan
dengan proses / kegiatan yang sedang
dilakukan.
Data Store adalah tempat penyimpanan data

Kita dapat menggunakan DFD untuk dua hal utama, yaitu untuk membuat
dokumentasi dari sistem informasi yang ada, atau untuk menyusun dokumentasi
untuk sistem informasi yang baru.
2.8.2

Syarat dan Fungsi DFD


Syarat-syarat pembuatan sebuah DFD, antara lain :
1. Pemberian nama untuk tiap komponen DFD.
2. Pemberian nomor pada komponen proses
3.

Penggambaran DFD sesering mungkin agar nyaman dilihat.

4.

Penghindaran penggambaran DFD yang rumit.

5. Emastian DFD yang dibentuk itu konsisten secara logika


Adapun fungsi dari DFD adalah sebagai berikut :

1. Membantu para analis sitem meringkas informasi tentang sistem,


mengetahui

hubungan

antar

sub-sub

sistem,

dan

membantu

perkembangan aplikasi secara efektif.


2. DFD berfungsi sebagai alat komunikasi yang baik antara pemakai dan
analis sistem. Menggambarkan sejumlah batasan otomasi untuk
pengembangan alternatif sistem fisik.
2.9 Entity Relationship Diagram (ERD)
ERD (Entity Relationnship Diagram)pertama kali di deskripsikan oleh Peter
Chen dalam bukunya The Entity Relationship Model-Toward a Unifield of
Data. Dalam buku ini Chen mencoba merumuskan dasar-dasar model setelah itu
dikembangkan dan dimodifikasi oleh Chen dan banyak pakar lain.
ERD (Entity Relationship Diagram) adalah pemodelan data utama yang
membantu mengorganisasikan data dalam suatu proyek kedalam entitas-entitas
dan menentukan hubungan antar entitas atau sejumlah notasi dan simbol untuk
menggambarkan struktur dan hubungan antar data. Ada beberapa macam elemen
yang umum digunakan yaitu :
1. Entitas/Entity adalah suatu tempat atau objek untuk menyimpan data.
Contoh: Entitas buku untuk menyimpan atribut mengenai buku (judul
buku, kode buku, pengarang, dsb). Entity digambarkan dengan persegi
panjang.
2. Atribut. Atribut berfungsi untuk mendeskripsikan entitas dan atribut
mempunyai nilai (harga). Atribut digambarkan dengan simbol ellips.
3. Relasi/Relationship. Database adalah kumpulan file yang saling
berkaitan. Pada model data relasi hubungan antar file direlasikan dengan
kunci relasi. Relasi ini digambarkan dengan garis dalam ERD.
4. Cardinalitas. Terdapat beberapa pengertian key sehubungan dengan
normalisasi dan ERD, antara lain :
a. Superkey adalah gugus dari sejumlah atribut entiti yang dapat
digunakan untuk mengindentifikasi obyek secara unik.
b. Candidate key adalah superkey yang jumlah atribut minimal dan
dapat bTerdiri sendiri.
c. Primary key adalah superkey yang dipilih oleh desainer atau
administrator basis data.

Dalam

kardinalitas

terdapat

relasi

dari

antar

table/instansi

untuk

menghubungkan key-key yang telah terhubung. Relasi yang dapat terjadi ialah :
1. Satu kesatu (One to one)
Hubungan relasi satu kesatu yaitu setiap entitas pada himpunan entitas A
berhubungan paling banyak dengan satu entitas pada himpunan entitas B.
penerima

mendapat

bantuan

2. Satu kebanyak (One to many)


Setiap entitas pada himpunan entitas A dapat berhubungan dengan
banyak entitas pada himpunan entitas B, tetapi setiap entitas pada entitas
B dapat berhubungan dengan satu entitas pada himpunan entitas A.
Penerima

Bekerja

Proyek

3. Banyak kebanyak (Many to many)


Setiap entitas pada himpunan entitas A dapat berhubungan dengan
banyak entitas pada himpunan entitas B.
Penerima

Bekerja

Proyek

BAB III
ANALISA DAN PERANCANGAN SISTEM
3.1 Analisis Sistem Berjalan
3.1.1 Analisis masalah
Terkadang orang pada awalnya tidak mengetahui jenis gejala maupun
penyakit batu karang yang dialami karena minimnya informasi yang mereka
ketahui. Untuk menyelasaikan masalah yang terjadi, di butuhkan suatu sistem
yang mampu diakses secara cepat berdasarkan data yang telah di konsultasi yaitu
data yang diambil dari rumah sakit. Penerapan sistem pakar dignosa penyakit batu
karang meliputi pengumpulan data gejala, penyakit, dan solusinya. Untuk
kepastian hipotesa penyakit ini diterpkan metode certainty factor.
3.1.2

Analisis Kebutuhan Data


Data yang diperoleh ialah data mengenai gejala-gejala penyakit, penyakit

dan cara penanggulangannya. Data tersebut didapat dari beberapa sumber,


internet, dan dari rumah sakit yang telah memberikan bimbingan dan pengarahan
serta informasi yang dibutuhkan selengkapnya dalam proses pembuatan sistem
pakar diagnosa penyakit batu karang ini.
3.1.3

Analisis Data Penyakit


Keberhasilan suatu sistem pakar terletak pada pengetahuan dan bagaimana

mengolah pengetahuan tersebut agar dapat ditarik suatu kesimpulan. Pengetahuan


yang diperoleh dari hasil wawancara dan analisa lewat buku dikonversi kedalam

sebuah tabel penyakit dan gejala guna mempermudah proses peencarian solusi.
Tabel jenis penyakit dan gejala ini digunakan sebagai pola pencocokan informasi
yang dimasukkan oleh pemakai dan basis pengetahuan.
Pada tabel jenis penyakit dab gejala terdapat dua jenis penyakit yang
ditunjukan oleh P001, P002, ... P003 dan gejala yang ditunjukkan oleh G001,
G002, ...G06. berikut ini adalah tabel jenis penyakit dan gejala yaitu pada tabel
3.1 yaitu tabel gejala dan jenis penyakit batu karang.
Tabel 4.1 Jenis Penyakit Dan Gejala
g/p
G001
G002
G003
G004
G005
G006

K001
X
X

K002
x
x
x
x

Keterangan Gejala penyakit :


G001 : Rasa pedih ketika kencing
G002 : Rasa loya (mual) & muntah tanpa sebab
G003 : Rasa seperti pasir berada dalam badan
G004 : Air kencing kotor & berbau busuk
G005 : Rasa sakit di kawasan pinggang
G006 : Rasa sakit pada alat sulit
Keterangan Dari Jenis Penyakit:
P001: Batu Karang Peringkat Awal
P002: Batu Karang Peringkat Kedua
P003 : Batu Karang Peringkat Ketiga
3.2 Perancangan Sistem
3.2.1

Penanganan Ketidakpastian

K003
x
x
x
x
x
x

Untuk sistem ini, tingkat kepastian sistem terhadap kesimpulan yang


diperoleh dihitung berdasarkan nilai probabilitas penyakit karena adanya
evident/gejala tertentu.
Sebagai contoh penerapan perumusan tingkat kepastian, Penyakit batu
karang awal ditunjukkan oleh gejala Rasa pedih ketika kencing, Rasa loya (mual)
& muntah tanpa sebab. Seandainya diketahui dari pakar batu karang bahwa
probabilitas penyakit batu karang awal adalah 0.03
P (Batu Karang Awal) = 0.03
P (Rasa pedih ketika kencing) = 0.4
P (Rasa loya (mual) & muntah tanpa sebab) = 0.5
dengan menganggap :
H : Batu Karang Awal
E1 : Rasa pedih ketika kencing
E2 : Rasa loya (mual) & muntah tanpa sebab
Nilai tingkat kepastian bahwa Batu Karang Awal disebabkan oleh Rasa pedih ketika

kencing dihitung oleh sistem


MB (H,E1)

= (0.4 0.03) / (1-0.03)


= 0.37 / 0.97
= 0.381

MD (H, E1)

= (0.03 0.03) / (0 0.03) = 0

CF (H, E1)

= MB (H, E1) MD (H, E1)


= 0.381 0
= 0.381

CF1

= 0.381

Dengan cara yang sama sistem menghitung tingkat kepastian penyakit Batu Karang

Awal berdasarkan gejala Rasa loya (mual) & muntah tanpa sebab
MB (H, E2)

= (0.5 0.03) / (1-0.03)


= 0.47 / 0.97
= 0.484

MD (H,E2)

= 0.03 0.03) / (0-0.03) = 0

CF (H, E2) MB (H,E2) = 0.484 0


= 0.484
CF2

= 0.484
Dari kedua perhitungan di atas, ketika sistem menyimpulkan bahwa

penyakit yang dialami adalah Batu Karang Awal maka tingkat kepastiannya
adalah hasil perhitungan (5) berikut ini:
CFkombinasi (CF1, CF2) = CF (H,E1) + CF (H,E2) (1-CF(H,E1)
CFk = CF(H,E1) + CF(H,E2) (1-CF(H,E1)
= 0.381 + 0.484 (1-0.381)

Info Data
Data penyakit
Pemakai

= 0.619*0.484+0.381
= 0.3 + 0.381
CFk1 = 0.681
Hasil dari perhitungan rumus menunjukkan bahwa nilai kepastian

Info Data penangulangan

mengalami penyakit batu karang awal dengan tingkat kepastian 0.681

Login
admin
InfoInfo
Data
penyakit
3.2.2
Info
DataData
gejalaContext
Info Data relasi

Diagram (DCD)

Login admin
Data penyakit
Data gejala
Data relasi

Sistem pakar diagnosa penyakit batu karang


Data penangulangan

ADMIN

Gambar 3.1 Data Context Diagram

PEMAKAI

Info Data penyakit

Data
relasi
Info
data
relasi
Info data gejala Info Data
penyakit

Gambar 3.1 diatas menunjukkan bahwa sistem pakar berinteraksi dengan 2

Info data gejala

external entity, yaitu Admin dan Pemakai. Seorang admin dapat memasukkan data
kepakaran ke dalam sistem serta dapat memperoleh informasi admin. Seorang
Databisa
gejalamelakukan konsultasi dengan sistem, yaitu dengan memilih
pemakai hanya
Info data

data penyakit seperti gejala penyakit, kemudian memperoleh hasil kesimpulan


gejala

atau solusi.
Data diagnosa

3.2.3 Data Flow Diagram (DFD) Level 1

Info data diagnosa

DFD Level 1 Pengolahan data admin dan pengguna, menggambarkan

Data diagnosa pemakai

mengenai login admin, pengolahan data admin, pengolahan data penyakit,

Info data pengolahan


diagnosa pemakai
data

relasi, pengolahan data gejala, pengolahan diagnosa. Gambar

DFD Level 1 Pengolahan data admin dan pengguna dapat dilihat pada gambar 3.2

Relasi

Info data gejala


Info Data penyakit

Info Data penyakit

Data penyakit

Login admin

Gambar 3.2 Data Flow Diagram Level 1


Invalid

5.

Login admin
Data login

DFD Level 1 Proses Login Admin


Proses 1 login admin di DFD level 1 dirincikan lagi menjadi dua subproses

yaitu verifikasi username dan password serta validasi username dan password.

Info Data login

Model penurunan proses tersebut dapat dilihat pada Gambar 3.3


ADMIN

Data login

Verivikasi username dan pasword

Validasi username dan pasword

Gambar 3.3 Data Flow Diagram Level 1 Proses login admin


6.

DFD Level 1 Proses Pengolahan Data Penyakit


Proses 2 pengolahan data penyakit di DFD level 1 dirincikan lagi menjadi

beberapa subproses. Model penurunan proses tersebut dapat dilihat pada Gambar
3.4

Info Ubah
Info Hapus
Info Tambah

Info update data penyakit


Info data penyakit

Hapus penya

Data penyakit
Info data penyakit

Gambar 3.4 Data Flow Diagram Level 1 Proses Pengolahan Data penyakit

Info Ubah
Info Hapus
Info Tambah

7.

DFD Level 2 Proses Pengolahan Data Gejala


Proses 3 pengolahan
data data
gejala
di DFD level 1 dirincikan lagi menjadi
Info update
gejala

Info data gejala

beberapa subproses. Model penurunan proses tersebut dapat dilihat pada Gambar
3.5

Hapus geja

Data gejala
Info data gejala

Info Data penyakit

Gambar 3.5 Data Flow Diagram Level 1 Proses Pengolahan Data Gejala

Data penyakit

Tampil

8.

DFD Level 1 Proses Pengolahan Data Relasi


Proses 4 pengolahan data relasi di DFD level 1 dirincikan lagi menjadi

beberapa subproses. Model penurunan proses tersebut dapat dilihat pada Gambar
3.6
Info data penyakit

Info data gejala


Info Pilih gejala
Info data relasi
Info
Pilih penyakit
Info
update
data relasi

Pilih gejala
Pilih penyakit

Gambar 3.6 Data Flow Diagram Level 1 Proses Pengolahan Data Relasi
9.

DFD Level 1 Proses Diagnosa

Pilih ge

Info data
Data gejala

diagnosa

Info data relasi


Info data gejala
Data diagnosa

Data relasi

Info data diagnosa

gejala
Proses 10 diagnosa di DFD level Data
1 dirincikan
lagi menjadi beberapa
Data penyakit

subproses. Model penurunan proses tersebut dapat dilihat pada Gambar 3.7
Data diagnosa

Info data gejala

Info data diagnosa


Info data penyakit
Data diagnosa pemakai

Data diagnosa
Info data diagnosa

diagnosa

Data diagnosa

Info data kerusakan

Data pemakai

Info Data penyakit

Gambar 3.7 Data Flow Diagram Level 1 Proses Diagnosa

3.2.4 Flowchart Sistem


Sistem flowchart merupakan diagram alir yang menggambarkan suatu
sistem peralatan komputer yang digunakan dalam proses pengolahan data serta
hubungan antar peralatan tersebut. Sistem flowchart tidak digunakan untuk
menggambarkan urutan langkah untuk memecahkan masalah , tetapi hanya untuk
menggambarkan prosedur dalam sistem yang dibentuk.
Admin

Input gejala, penyakit dan solusi

Sistem pakarData penyakit User


gejala, penyakit dan
solusi

Pilihan penyakit

gejala, penyakit dan solusi

Hasil Diagnosa

Diagnosa

Hasil Diagnosa

Gambar 4.8 Flowchart Sistem

3.2.5 Desain output


1. Hasil Diagnosa

Tmp gejala

HASIL DIAGNOSA
Nomor Diagnosa

PEMAKAI
: 9999

Tanggal Diagnosa : 99-99-9999

Nama Pemilik

: x-25-x

GEJALA

PENYAKIT

SOLUSI

1.
2.
3.
4.
5.

1.
2.
3.
4.
5.

1.
2.
3.
4.

x-100-x
x-100-x
x-100-x
x-100-x

x-100-x
x-100-x
x-100-x
x-100-x

x-100-x
x-100-x
x-100-x
x-100-x

PENYEBAB : x-100-x

3.2.6 Perancangan Database


Tabel-tabel yang digunakan dalam membangun Sistem Pakar Untuk
mendiagnosa penyakit batu karang Dengan Metode Certainty Factor ini terdiri
atas tabel, tabel gejala, tabel admin, tabel penyakit, Tabel diagnosa. Adapun
struktur tabelnya adalah sebagai berikut :
1. Tabel Gejala
File indeks : kd_gejala
Tabel 4.2 Tabel gejala
Nama Field

Type

kd_gejala
gejala

VARCHAR
TEXT

Ukura
n
50

Keterangan

Ukura
n
50
50
50

Keterangan

Ukura
n
50

Keterangan

Kode gejala
Nama gejala

2. Tabel admin
File indeks : id
Tabel 4.3 Tabel Admin
Nama Field

Type

id
usn
psw

VARCHAR
VARCHAR
VARCHAR

Id
Username
Password

3. Tabel Penyakit
File indeks : kd_penyakit
Tabel 4.4 Tabel penyakit
Nama Field

Type

kd_ penyakit

VARCHAR

Kode penyakit

penyakit

VARCHAR

50

Nama penyakit

4. Tabel Solusi
File indeks : kd_penyakit
Tabel 4.5 Tabel Solusi
Nama Field

Type

Kd_penyakit
Kd_gejala
solusi

VARCHAR

Ukura
n
50

Text

Keterangan
penyakit
Solusi

5. Tabel hasil diagnosa


File indeks : kd_penyakit
Tabel 4.5 Tabel hasil diagnosa
Nama Field

Type

Ukura
n

kd_ penyakit
Penyakit
Gejala
Solusi

Int
VARCHAR 50
VARCHAR 50
TEXT

Keterangan
Kode Penyakit
penyakit
Gejala
solusi

3.2.8 Perancangan Interface


Interface atau antar muka merupakan tampilan dari suatu program aplikasi
yang berperan sebagai media komunikasi yang digunakan sebagai sarana
SISTEM PAKAR DIAGNOSA PENYAKIT BATU KARANG
bERDialog antara program dengan user. Sistem yang akan dibanggun diharapkan
menyediakan interface yang mudah dipahami dan digunakan oleh user.
perancangan interface untuk aplikasi Sistem Pakar adalah sebagai berikut:
Home

a. Form Menu Utama


Konsultasi

Layar ini berfungsi menampilkan menu utama yang terdiri dari home,

Master

diagnosa, informasi penyakit,login pakar.


About
Login

GAMBAR

User name

Password

Gambar

Gambar

Nanda @ 2013

Gambar

Gambar

Gambar 4. 9 Form Menu Utama (User)

b. Form Menu Konsultasi

SISTEM PAKAR DIAGNOSA PENYAKIT BATU KARANG

Home
Konsultasi
Master
About

NKonsultasi
GEJALAPenyakit Batu Karang
O
1
2
3
4
5

YA

Login
User name

Password

Gambar 4. 10 Form Menu Konsultasi


Nanda @ 2013

SISTEM PAKAR DIAGNOSA PENYAKIT BATU KARANG

Home

c.

Form Menu Daftar Penyakit


DAFTAR
Konsultasi

PENYAKIT

Master
About
Laogout

Nanda @ 2013

Gambar 4. 11 Form Menu Daftar Penyakit

SISTEM PAKAR DIAGNOSA PENYAKIT BATU KARANG

Home

d. Form Menu Daftar Gejala


Konsultasi

DAFTAR GEJALA

Master
About
Laogout

Rosdiana @ 2013

Gambar 4. 12 Form Menu Daftar Gejala