Pakar untuk Mendiagnosa Penyakit Vertigo Dengan Metode Backward Chaining Berbasis Web

(1)

DENGAN METODE BACKWARD CHAINING

BERBASIS WEB

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana Program Strata Satu Jurusan Teknik Informatika

Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia

ANGGI SEPTIAN HIDAYAT

10106088

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

BANDUNG


(2)

ii

EXPERT SYSTEM

TO DIAGNOSE VERTIGO DISEASE

WITH BACKWARD CHAINING METHOD

WEB BASED

By

ANGGI SEPTIAN HIDAYAT

10106088

Expert system is a computer based system using knowledge, fact, and logical technique in solving a problem which usually can be solve by the expert in a certain field. Expert system can be applied in various fields, included in medical field, by diagnosing a disease.

Expert system in this research is a system which is used to diagnose vertigo disease which is classified on vestibular canal damage; there are peripheral vertigo and central vertigo. Diagnosing vertigo disease process begin by, user answer some questions from system based on their own suffered disease. This expert system has dynamic characteristic, It means the user who has access right as pakar is able to manage knowledge along with the development of recent knowledge. The used inference method is backward chaining method and depth first search as a searching method. It is web based expert system. It’s accessible whenever and wherever by people when they are connected with internet and it built by using PHP programming language and MySQL database.

The built system can give the additional information about vertigo beside the information from the doctor and also give the conclusion of the diagnosing result about the suffered disease especially vertigo base on the answers of the patients. The additional facilities of knowledge and the change of rules make the system can be renewed without change the programming structures.

Keywords : Expert system, backward chaining, depth first search, PHP dan MySQL


(3)

i

SISTEM PAKAR

UNTUK MENDIAGNOSA PENYAKIT VERTIGO

DENGAN METODE BACKWARD CHAINING

BERBASIS WEB

Oleh

ANGGI SEPTIAN HIDAYAT

10106088

Sistem pakar adalah sistem berbasis komputer yang menggunakan pengetahuan, fakta, dan tehnik penalaran dalam memecahkan masalah yang biasanya hanya dapat dipecahkan oleh seorang pakar dalam bidang tertentu. Sistem pakar dapat diterapkan diberbagai bidang, termasuk dibidang kedokteran, dengan cara mendiagnosis suatu penyakit.

Sistem pakar pada penelitian ini merupakan sistem yang digunakan untuk mendiagnosis vertigo yang diklasifikasikan berdasarkan kerusakan sistem saluran vestibular, yaitu vertigo periferal dan vertigo sentral. Proses diagnosis penyakit dimulai dengan cara, user menjawab beberapa pertanyaan yang diajukan oleh sistem berdasarkan penyakit yang diderita yang dianggap sesuai dengan gejala yang ia alami. Sistem pakar ini bersifat dinamis, artinya seorang user yang memiliki hak akses sebagai pakar dapat mengelola basis pengetahuan sesuai dengan perkembangan ilmu pengetahuan yang ada. Metode inferensi yang digunakan adalah metode runut mundur (backward chaining) dan metode pencariannya adalah depth first search. Sistem pakar ini berbasis web sehingga dapat diakses kapanpun dan di manapun oleh masyarakat selama mereka terhubung dengan internet dan sistem ini dibangun menggunakan bahasa pemrograman PHP dan database MySQL.

Sistem yang dibangun dapat memberikan informasi tambahan selain dari dokter mengenai vertigo dan dapat memberikan kesimpulan hasil diagnosis mengenai penyakit yang dialami pasien khususnya vertigo berdasarkan gejala-gejala yang telah dijawab. Dengan adanya fasilitas penambahan pengetahuan dan perubahan aturan, maka sistem dapat diperbaharui tanpa harus merubah struktur pemrograman yang ada.

Kata Kunci : Sistem pakar, backward chaining, depth first search, PHP dan MySQL.


(4)

v DAFTAR ISI

ABSTRAK... ... ...i

ABSTRACT…………. ...ii

KATA PENGANTAR...iii

DAFTAR ISI... v

DAFTAR TABEL... ...xii

DAFTAR GAMBAR... xiv

DAFTAR SIMBOL.... ... xx

DAFTAR LAMPIRAN...xxiii

BAB I PENDAHULUAN... 1

1.1 Latar Belakang Masalah... 1

1.2 Rumusan Masalah... 3

1.3 Maksud dan Tujuan ... 4

1.4 Batasan Masalah ... 5

1.5 Metodologi Penelitian ... 6

1.6 Sistematika Penulisan ... 8

BAB II LANDASAN TEORI... 10

2.1 Kecerdasan Buatan ... 10

2.2 Vertigo ... 11

2.2.1 Patofisiologi... 11

2.2.2 Anamnesis ... 14

2.2.3 Penyebab Vertigo... 14

2.2.4 Gejala Vertigo ... 16

2.2.5 Jenis-Jenis Vertigo... 17

2.2.6 Terapi Vertigo ... 23

2.3 Sistem Pakar ... 27

2.3.1 Sejarah Sistem Pakar... 27


(5)

2.3.3 Ciri-ciri Sistem Pakar... 31

2.3.4 Keuntungan Sistem Pakar ... 32

2.3.5 Arsitektur Sistem Pakar ... 32

2.3.6 Orang yang Terlibat dalam Sistem Pakar... 34

2.3.7 Kategori Masalah Sistem Pakar... 35

2.3.8 Inferensi... 36

2.4 PHP ... 42

2.4.1 Sejarah PHP... 42

2.4.2 Kelebihan PHP ... 43

2.5 MySQL... 45

2.5.1 Sejarah MySQL ... 45

2.6 JavaScript ... 47

2.7 AJAX ... 49

BAB III ANALISIS DAN PERANCANGAN SISTEM... 52

3.1 Analisis Masalah... 52

3.2 Analisis Sistem Pakar ... 52

3.3 Analisis Kebutuhan Data... 53

3.4 Representasi Pengetahuan ... 57

3.4.1 Tabel Penyakit ... 58

3.4.2 Tabel Gejala ... 58

3.4.3 Tabel Relasi Penyakit dan Gejala ... 62

3.4.4 Atruran Kaidah Produksi... 63

3.4.5 Pohon Pelacakan dan Penelusuran Penyakit ... 65

3.5 Metode Inferensi... 66

3.5.1 Backward Chaining... 66

3.5.2 Depth First Search ... 66

3.6 Analisis Kebutuhan Fungsional... 67

3.6.1 Entity Relationship Diagram (ERD)... 67

3.6.2 Data Context Diagram (DCD)... 68

3.6.3 Data Flow Diagram (DFD) Level 1... 69

3.6.3 DFD Level 2 Proses 1 (Login Pakar)... 70


(6)

3.6.5 DFD Level 2 Proses 3 (Pengolahan Data Gejala) ... 72

3.6.6 DFD Level 2 Proses 4 (Pengolahan Data Relasi)... 73

3.6.7 DFD Level 2 Proses 5 (Pengolahan Data Pasien) ... 74

3.6.8 DFD Level 2 Proses 6 (Pengolahan Data Istilah)... 75

3.6.9 DFD Level 2 Proses 7 (Pengolahan Data Tips dan Artikel Kesehatan) ... 76

3.6.10 DFD Level 2 Proses 8 (Pengolahan Data Pakar)... 77

3.6.11 DFD Level 2 Proses 9 (Daftar Pasien)... 78

3.6.12 DFD Level 2 Proses 10 (Diagnosa) ... 79

3.6.13 DFD Level 2 Proses 11 (Pengolahan Data Pesan) ... 80

3.6.14 Spesifikasi Proses ... 81

3.6.15 Kamus Data ... 100

3.6.16 Skema Relasi ... 104

3.7 Analisis Kebutuhan Non Fungsional ... 105

3.7.1 Analisis Kebutuhan Pengguna (User)... 105

3.7.2 Analisis Kebutuhan Perangkat Keras (Hardware)... 106

3.7.3 Analisis Kebutuhan Perangkat Lunak (Software) ... 106

3.8 Struktur Tabel ... 107

3.9 Flowchart... 114

3.10 Struktur Menu... 119

3.11 Perancangan Antarmuka ... 120

3.11.1 Perancangan Halaman Depan Aplikasi... 120

3.11.2 Perancangan Halaman Login Pakar... 121

3.11.3 Perancangan Halaman Validasi Login Pakar ... 122

3.11.4 Perancangan Halaman Login Pasien... 123

3.11.5 Perancangan Halaman Validasi Login Pasien... 124

3.11.6 Perancangan Halaman Daftar Pasien Baru ... 125

3.11.7 Perancangan Halaman Daftar Pasien Baru ... 126

3.11.8 Perancangan Halaman Hasil Pencarian... 128

3.11.9 Perancangan Halaman Detail Artikel... 129

3.11.10 Perancangan Halaman Informasi Daftar Penyakit... 130


(7)

3.11.12 Perancangan Halaman Peringatan ... 132

3.11.13 Perancangan Halaman Pasien... 133

3.11.14 Perancangan Halaman Konfirmasi ... 134

3.11.15 Perancangan Halaman Diagnosa (Pertanyaan)... 135

3.11.16 Perancangan Halaman Hasil Diagnosa ... 136

3.11.17 Perancangan Halaman Kontak ... 137

3.11.18 Perancangan Halaman Depan Pakar ... 138

3.11.19 Perancangan Pesan Validasi Keluar ... 139

3.11.20 Perancangan Halaman Daftar Penyakit... 139

3.11.21 Perancangan Halaman Tambah Penyakit... 140

3.11.22 Perancangan Validasi Halaman Tambah Penyakit ... 141

3.11.23 Perancangan Halaman Hasil Pencarian Penyakit ... 142

3.11.24 Perancangan Halaman Hasil Pencarian Penyakit ... 143

3.11.25 Perancangan Halaman Hasil Pencarian Penyakit ... 144

3.11.26 Perancangan Halaman Daftar Gejala ... 144

3.11.27 Perancangan Halaman Hasil Pencarian Gejala... 145

3.11.28 Perancangan Halaman Hasil Pencarian Gejala... 146

3.11.29 Perancangan Halaman Tambah Gejala ... 147

3.11.30 Perancangan Halaman Validasi Tambah Gejala ... 148

3.11.31 Perancangan Pesan Hapus Gejala... 148

3.11.32 Perancangan Halaman Relasi dan Aturan ... 149

3.11.33 Perancangan Halaman Daftar Pasien ... 150

3.11.34 Perancangan Halaman Hasil Diagnosa ... 151

3.11.35 Perancangan Halaman Rincian Hasil Diagnosa ... 152

3.11.36 Perancangan Halaman Rincian Data Pasien... 153

3.11.37 Perancangan Halaman Hasil Pencarian Pasien... 154

3.11.38 Perancangan Halaman Hasil Pencarian Pasien... 155

3.11.39 Perancangan Halaman Daftar Istilah ... 156

3.11.40 Perancangan Halaman Tambah Daftar Istilah... 157

3.11.41 Perancangan Halaman Pesan Validasi Tambah Daftar Istilah... 158


(8)

3.11.43 Perancangan Halaman Tambah Daftar Tips dan Artikel

... 160

3.11.44 Perancangan Halaman Pesan Validasi Tambah Daftar Tips dan Artikel ... 161

3.11.45 Perancangan Halaman Detail ... 162

3.11.46 Perancangan Halaman Informasi Profil ... 163

3.11.47 Perancangan Halaman Informasi Pesan... 164

3.12 Persentase Keputusan... 165

3.13 Algoritma Tree ... 166

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM... 172

4.1 Implementasi ... 172

4.1.1Implementasi Perangkat Keras ... 172

4.1.2Implementasi Perangkat Lunak ... 172

4.1.3Implementasi Persentase Keputusan ... 173

4.1.4Implementasi Algoritma Tree... 174

4.1.5Implementasi Antarmuka ... 180

4.1.5.1Halaman Depan... 180

4.1.5.2Halaman Login Pakar ... 181

4.1.5.3Halaman Validasi Login Pakar ... 181

4.1.5.4Halaman Validasi Login Pakar ... 182

4.1.3.5Halaman Daftar Pasien ... 182

4.1.3.6Halaman Validasi Daftar Pasien ... 183

4.1.3.7Halaman Validasi Daftar Pasien ... 183

4.1.3.8Halaman Daftar Pasien Baru... 184

4.1.3.9Halaman Informasi Daftar Penyakit... 185

4.1.3.10Halaman Informasi Arsip ... 185

4.1.3.11Halaman Informasi Arsip ... 186

4.1.3.12Halaman Hasil Pencarian... 186

4.1.3.13Halaman Validasi Pencarian ... 187

4.1.3.14Halaman Depan Pakar ... 187

4.1.3.15Halaman Daftar Penyakit... 188


(9)

4.1.3.17Pesan Konfirmasi Hapus Data Penyakit... 189

4.1.3.18Pesan Konfirmasi Ubah Data Penyakit ... 189

4.1.3.19Halaman Daftar Gejala ... 190

4.1.3.20Pesan Konfirmasi Hapus Data Gejala ... 190

4.1.3.21Halaman Tambah Daftar Gejala ... 191

4.1.3.22Pesan Konfirmasi Ubah Data Gejala... 191

4.1.3.23Halaman Relasi Gejala dan Penyakit ... 192

4.1.3.24Halaman Daftar Pasien ... 192

4.1.3.25Pencarian Data Pasien ... 193

4.1.3.26Halaman Hasil Pencarian Data Pasien ... 193

4.1.3.27Halaman Hasil Pencarian Data Pasien ... 194

4.1.3.28Halaman Hasil Pencarian Data Pasien ... 194

4.1.3.29Halaman Rincian Data Pasien... 195

4.1.3.30Halaman Daftar Istilah ... 195

4.1.3.31Halaman Daftar Tips dan Artikel Kesehatan .... 196

4.1.3.32Halaman Detail Tips dan Artikel Kesehatan .... 196

4.1.3.33Halaman Tambah Data Tips dan Artikel Kesehatan ... 197

4.1.3.34Halaman Ubah Data Tips dan Artikel Kesehatan ... ... 197

4.1.3.35Pesan Konfirmasi Ubah Data Tips dan Artikel Kesehatan ... 198

4.1.3.36Halaman Informasi Profil Pakar ... 198

4.1.3.37Halaman Ubah Profil Pakar ... 199

4.1.3.38Halaman Ubah Password Pakar ... 199

4.1.3.39Halaman Lihat Log Pakar... 200

4.1.3.40Halaman Lihat Log Pasien... 200

4.1.3.41Halaman Daftar Pesan ... 201

4.1.3.42Halaman Rincian Pesan ... 201

4.1.3.43Pesan Konfirmasi Logout Pakar ... 202

4.1.3.44Halaman Depan Pasien... 202


(10)

4.1.3.46Halaman Konfirmasi ... 203

4.1.3.47Halaman Konsultasi Pasien ... 204

4.1.3.48Halaman Hasil Diagnosa ... 204

4.2 Pengujian... 205

4.2.1 Rencana Pengujian... 205

4.2.2 Kasus dan Hasil Pengujian... 207

4.2.3 Kesimpulan Hasil Pengujian Alpha... 228

4.2.4 Pengujian Beta... 228

4.2.5 Kesimpulan Hasil Pengujian Beta ... 232

BAB V KESIMPULAN DAN SARAN... 233

5.1 Kesimpulan... 233

5.2 Saran ... 233


(11)

1 BAB I PENDAHULUAN

1.1 Latar Belakang Masalah

Teknologi semakin berkembang seiring dengan meningkatnya kebutuhan setiap individu di berbagai bidang, seperti di bidang bisnis, pendidikan, psikologi, dan tentu saja dibidang kesehatan. Dengan perkembangan teknologi saat ini, semua orang dapat berkomunikasi serta memperoleh dan menyampaikan berbagai informasi yang dibutuhkan kapan pun dan dimana pun mereka berada secara cepat, akurat dan ekonomis. Fenomena tersebut kemudian mendorong para ahli untuk mengembangkan kegunaan komputer agar dapat membantu pekerjaan manusia.

Kesehatan merupakan hal yang sangat penting dalam kehidupan. Namun terkadang kesadaran akan pola hidup yang sehat dan pola makan yang teratur masih terabaikan. Banyak penyakit dan gejala-gejala yang timbul akibat pola hidup dan pola makan yang tidak teratur, salah satunya adalah vertigo. Vertigo merupakan sakit kepala yang berbeda dari gejala sakit kepala biasa dan migren. Vertigo adalah suatu sensasi gerakan atau rasa gerak dari tubuh atau lingkungan sekitarnya dengan gejala yang timbul, terutama dari jaringan otonomik yang disebabkan oleh gangguan alat keseimbangan tubuh (PERDOSSI, 1999 : 1) yang ditandai dengan perasaan berputar, dunia serasa bergoyang, benda sekeliling berputar, rasa mau jatuh bahkan adakalanya benar-benar terjatuh, disertai dengan mual, muntah, keringat dingin serta merasa lebih baik jika berbaring, tapi vertigo


(12)

terus berlanjut meski tidak bergerak sama sekali, kadang merasa enak bila tutup mata dan vertigo berulang saat mata dibuka.

Terkadang seorang penderita vertigo itu sendiri pada awalnya tidak mengetahui jenis gejala maupun penyakit yang dideritanya karena minimnya informasi yang mereka ketahui. Bila seorang penderita vertigo ingin mengetahui tentang gejala-gejala, penyebab serta cara penanggulangan yang baik maka mereka akan mendatangi dokter untuk berkonsultasi. Akan tetapi, hal tersebut tidak dapat dilakukan oleh semua orang mungkin karena faktor perekonomian yang kurang mencukupi ataupun karena tuntutan kesibukan dan aktifitas mereka yang padat sehingga tidak bisa menyesuaikan dengan jadwal konsultasi praktek dokter. Terkadang ketika berkonsultasi pun informasi hasil diagnosa yang disampaikan oleh dokter tidak sepenuhnya dipaparkan secara mendetail.

Sistem pakar adalah sistem berbasis komputer yang menggunakan pengetahuan, fakta, dan teknik penalaran dalam memecahkan masalah yang biasanya hanya dapat dipecahkan oleh seorang pakar dalam bidang tersebut (Martin dan Oxman, 1988). Sistem pakar dapat diterapkan diberbagai bidang, termasuk dibidang kedokteran, dengan cara mendiagnosis suatu penyakit.

Berdasarkan fenomena tersebut, maka dapat disimpulkan bahwa dibutuhkan sebuah sistem pakar berbasis web agar dapat diakses kapan pun sebagai alternatif penyajian informasi dan konsultasi yang lebih ekonomis melihat jumlah penderita vertigo tidak sedikit dikalangan masyarakat. Dan menilik permasalahan yang ada, sistem pakar ini cocok menggunakan metode inferensi backward chaining sebagai metode penelusurannya karena penelusuran yang dilakukan diawali dengan suatu hipotesis yang kemudian akan diuji kebenarannya


(13)

berdasarkan gejala-gejala yang muncul. Backward chaining adalah metode penelusuran dengan pendekatan goal-driven, dimulai dari ekspektasi apa yang diinginkan terjadi (hipotesis), kemudian mengecek pada sebab-sebab yang mendukung (ataupun kontradiktif) dari ekspektasi tersebut. Metode ini cocok digunakan untuk memcahkan masalah diagnosis (Schnupp, 1989) dan merupakan cara yang efesien untuk memecahkan masalah yang dimodelkan sebagai masalah pemilihan terstruktur (Kusrini, 2006 : 37).

Penelitian dan pembangunan sistem pakar mengenai diagnosa penyakit telah dilakukan oleh beberapa individu. Namun, dalam penelitian tugas akhir dan skripsi ini terdapat beberapa perbedaan, diantaranya objek penelitian, bahasa pemrograman serta metode penelusuran yang digunakan dalam pembangunan sistem guna menarik kesimpulan akhir.

Berdasarkan latar belakang tersebut, maka penulis mengangkat topik yang berjudul ”Sistem Pakar Untuk Mendiagnosa Penyakit Vertigo Dengan Metode Backward Chaining Berbasis Web”.

1.2 Rumusan Masalah

Dalam penelitian ini terdapat masalah-masalah yang timbul diantaranya sebagai berikut :

1. Bagaimana masyarakat dapat memperoleh dan menyampaikan informasi kapan pun dan dimana pun mereka berada secara cepat, akurat dan ekonomis.

2. Terkadang seorang penderita penyakit vertigo itu sendiri pada awalnya tidak mengetahui apa yang dideritanya karena minimnya informasi yang mereka ketahui.


(14)

3. Tidak semua penderita vetigo dapat berkonsultasi ke dokter mengenai gejala-gejala, penyebab serta cara penanggulangan vertigo dikarenakan faktor perekonomian yang kurang memadai ataupun karena tuntutan aktifitas dan kesibukan mereka yang padat sehingga tidak bisa menyesuaikan dengan jadwal praktek dokter spesialis.

4. Informasi yang dipaparkan oleh dokter terkadang tidak mendetail.

Berdasarkan beberapa masalah tersebut, maka dapat dirumuskan masalahnya adalah bagaimana membangun Sistem Pakar Untuk Mendiagnosa Penyakit Vertigo Dengan Metode Backward Chaining Berbasis Web.

1.3 Maksud dan Tujuan

Maksud dari penelitian ini adalah membangun Sistem Pakar Untuk Mendiagnosa Penyakit Vertigo Dengan Metode Backward Chaining Berbasis Web.

Adapun tujuan dibangunnya sistem ini adalah :

1. Mempermudah masyarakat untuk memperoleh dan menyampaikan informasi kapanpun dan dimanapun mereka berada secara cepat, akurat dan ekonomis.

2. Memberikan fasilitas konsultasi bagi user guna mendiagnosa kemungkinan user terkena vertigo.

3. Memberikan informasi mengenai gejala-gejala serta bagaimana terapi penanggulangan yang baik tentang vertigo.

4. Menampilkan informasi secara detail dari hasil diagnosa.

5. Menampilkan informasi secara detail dari hasil diagnosa dalam format .pdf.


(15)

6. Menampilkan informasi secara detail history (log) dari aktivitas yang dilakukan oleh admin (pakar) dan user (pasien).

1.4 Batasan Masalah

Dari beberapa kajian tersebut maka batasan masalahnya adalah sebagai berikut :

1. Sistem yang dibangun ditujukan untuk menentukan dan memberikan informasi mengenai gejala-gejala dan terapi penanggulangan vertigo yang baik.

2. Data yang diperoleh ialah data mengenai pengertian vertigo, jenis-jenis vertigo, gejala-gejala vertigo, dan terapi penangulangan vertigo.

3. Jenis vertigo yang didiagnosa adalah berdasarkan kerusakan sistem saluran vestibular, yaitu vertigo periferal dan vertigo sentral.

4. Sistem pakar ini berbasis web sehingga dapat digunakan kapanpun dan di manapun oleh user.

5. Pembangunan sistem pakar ini menggunakan metode inferensi Backward Chaining.

6. Untuk metode pencarian, sistem ini menggunakan metode Depth first search.

7. Aplikasi ini dibangun menggunakan bahasa pemrograman PHP dan database MySQL.

8. Pengguna sistem adalah administrator (pakar) dan end user (pasien) sebagai pengakses informasi.


(16)

1.5 Metodologi Penelitian

Metodologi penelitian merupakan tahap-tahap penelitian yang harus diterapkan sebelum melakukan pemecahan masalah. Dalam menganalisa digunakan metode–metode sebagai berikut :

1. Tahap Penelitian 1) Wawancara

Mengadakan tanya-jawab (interview) langsung kepada pihak yang terkait. 2) Observasi

Melakukan pengamatan dan pengumpulan data obyek penelitian. 3) Studi Literatur

Metode yang dipakai untuk mengumpulkan data yang sifatnya teoritis dengan membaca buku-buku atau literatur yang ada hubungannya dengan laporan tugas akhir dan skripsi.

2. Pembangunan Perangkat Lunak

Teknik analisis data dalam pembuatan perangkat lunak menggunakan paradigma perangkat lunak secara waterfall. Waterfall adalah sebuah pengembangan model perangkat lunak yang dilakukan secara berurutan atau sekuensial, adapun model ini dimulai pada tahap :

1) System Engineering

Merupakan bagian dari sistem yang terbesar dalam pengerjaan suatu proyek, dimulai dengan menetapkan berbagai kebutuhan dari semua elemen yang diperlukan sistem dan mengalokasikannya ke dalam pembentukan perangkat lunak.


(17)

2) Analysis

Merupakan tahap menganalisis hal-hal yang diperlukan dalam pelaksanaan proyek pembuatan perangkat lunak.

3) Design

Tahap penerjemahan dari data yang dianalisis ke dalam bentuk yang mudah dimengerti oleh user. Pada tahap ini dilakukan pembuatan tabel aturan, membuat basis pengetahuan serta interface (antarmuka).

4) Coding

Tahap ini merupakan suatu proses mengubah desain menjadi bentuk yang dapat dimengerti oleh komputer yaitu dengan bahasa pemrograman. 5) Testing

Merupakan tahap pengujian terhadap perangkat lunak yang dibangun. 6) Maintenance

Tahap akhir dimana suatu perangkat lunak yang sudah selesai dapat mengalami perubahan–perubahan atau penambahan sesuai dengan permintaan user.

Gambar 1.3 Metodologi Pengembangan Sistem Model Waterfall System

Engineering

Analysis

Design

Coding

Testing


(18)

1.6 Sistematika Penulisan

Sistematika penulisan laporan tugas akhir dan skripsi ini dibagi menjadi beberapa bab dengan pokok pembahasan. Sistematika secara umum adalah sebagai berikut :

Bab I Pendahuluan

Bab ini membahas tentang latar belakang, perumusan masalah, maksud dan tujuan, batasan masalah, metodologi penelitian, dan sistematika penulisan.

Bab II Landasan Teori

Membahas mengenai berbagai konsep dasar dan teori-teori yang berkaitan dengan topik penelitian yang dilakukan dan hal-hal yang berguna dalam proses analisis permasalahan serta tinjauan terhadap penelitian-penelitian serupa yang telah pernah dilakukan sebelumnya termasuk sintesisnya. Bab III Analisis dan Perancangan Sistem

Menganalisis masalah dari model penelitian untuk memperlihatkan keterkaitan antarvariabel yang diteliti serta model matematis untuk analisisnya.

Bab IV Implementasi dan Pengujian Sistem

Menguraikan tentang bagaimana mengimplementasikan setiap prosedur yang telah dirancang pada bab sebelumnya ke dalam bentuk bahasa pemrograman untuk membuat aplikasi, kemudian akan dilakukan pengujian terhadap prosedur tersebut dan melakukan pembahasan terhadap prosedur tesebut.


(19)

Bab V Kesimpulan dan Saran

Berisi kesimpulan dan saran yang sudah diperoleh dari hasil penulisan skripsi dan tugas akhir.


(20)

10 BAB II LANDASAN TEORI

2.1 Kecerdasan Buatan

Kecerdasan buatan adalah suatu ilmu yang mempelajari tentang cara membuat komputer agar memiliki kemampuan bekerja seperti dan sebaik manusia. Adapun definisi lain, kecerdasan buatan merupakan kawasan penelitian, aplikasi, dan instruksi yang terkait dengan pemrograman komputer untuk melakukan sesuatu hal yang dalam pandangan manusia adalah cerdas (H. A. Simon : 1987).

Ada tiga tujuan kecerdasan buatan, yaitu : membuat komputer lebih cerdas, mengerti tentang kecerdasan, dan membuat mesin lebih berguna. Teknologi kecerdasan buatan dipelajari dalam beberapa bidang penelitian, seperti (Kusrini, 2006 : 5) :

1. Formal tasks (matematika, games).

2. Perceptron, robotics, natural language, common sense, reasoning.

3. Expert tasks (financial analysis, medical diagnostics, engineering, scientific analysis, dll).

Ada beberapa konsep yang harus dipahami dalam kecerdasan buatan (Kusrini, 2006 : 5) :

1. Turing Test-Metode Pengujian Kecerdasan.

2. Pemrosesan Simbolik.

3. Heuristic.


(21)

5. Pencocokan Pola (Pattern Matching).

2.2 Vertigo

Kata ”vertigo” berasal dari bahasa Latin yaitu vertere yang artinya

memutar. Nama ini diberikan kepada orang yang biasanya merasa dunia di sekitarnya berputar sehingga hilang keseimbangan. Vertigo merupakan sakit kepala yang berbeda dari gejala sakit kepala biasa dan migren. Vertigo adalah suatu sensasi gerakan atau rasa gerak dari tubuh atau lingkungan sekitarnya dengan gejala yang timbul, terutama dari jaringan otonomik yang disebabkan oleh gangguan alat keseimbangan tubuh (PERDOSSI, 1999 : 1) yang ditandai dengan perasaan berputar, dunia serasa bergoyang, benda sekeliling berputar, rasa mau jatuh bahkan adakalanya benar-benar terjatuh, disertai dengan mual, muntah, keringat dingin serta merasa lebih baik jika berbaring, tapi vertigo terus berlanjut meski tidak bergerak sama sekali, kadang merasa enak bila tutup mata dan vertigo berulang saat mata dibuka.

2.2.1 Patofisiologi

Rasa pusing atau vertigo disebabkan oleh gangguan alat keseimbangan tubuh yang mengakibatkan ketidakcocokan antara posisi tubuh yang sebenarnya dengan apa yang dipersepsikan oleh susunan saraf pusat (Cermin Dunia Kedokteran, 2004 : 41).

Ada beberapa teori yang berusaha menerangkan kejadian tersebut (Cermin Dunia Kedokteran, 2004 : 41) :


(22)

1. Teori Rangsang Berlebihan (Overstimulation)

Teori ini berdasarkan asumsi bahwa rangsang yang berlebihan

menyebabkan hiperemi kanalis semisirkularis sehingga fungsinya

terganggu; akibatnya akan timbul vertigo, nistagmus, mual dan muntah.

2. Teori Konflik Sensorik

Menurut teori ini terjadi ketidakcocokan masukan sensorik yang berasal

dari berbagai reseptor sensorik perifer yaitu antara mata (visus),

vestibulum dan proprioseptik, atau ketidakseimbangan (asimetri) masukan sensorik dari sisi kiri dan kanan. Ketidakcocokan tersebut menimbulkan kebingungan sensorik di sentral sehingga timbul respons yang dapat

berupa nistagmus (usaha koreksi bola mata), ataksia atau sulit berjalan

(gangguan vestibuler, serebelum) atau rasa melayang, berputar (yang

berasal dari sensasi kortikal). Berbeda dengan teori rangsang berlebihan,

teori ini lebih menekankan gangguan proses pengolahan sentral sebagai penyebab.

3. Teori Neural Mismatch

Teori ini merupakan pengembangan teori konflik sensorik. Menurut teori ini otak mempunyai memori/ingatan tentang pola gerakan tertentu sehingga jika pada suatu saat dirasakan gerakan yang aneh atau tidak sesuai dengan pola gerakan yang telah tersimpan, timbul reaksi dari

susunan saraf otonom. Jika pola gerakan yang baru tersebut dilakukan

berulang-ulang akan terjadi mekanisme adaptasi sehingga berangsur-angsur tidak lagi timbul gejala.


(23)

4. Teori Otonomik

Teori ini menekankan perubahan reaksi susunan saraf otonom sebagai usaha adaptasi gerakan (perubahan posisi). Gejala klinis timbul jika sistem

simpatis terlalu dominan, sebaliknya hilang jika sistem parasimpatis

mulai berperan.

5. Teori Neurohumoral

Diantaranya teori histamin (Takeda), teori dopamin (Kohl) dan teori

serotonin (Lucat) yang masing-masing menekankan peranan

neurotransmiter tertentu dalam mempengaruhi sistem saraf otonom yang menyebabkan timbulnya gejala vertigo.

6. Teori sinap

Merupakan pengembangan teori sebelumnya yang meninjau peranan

neurotransmisi dan perubahan-perubahan biomolekuler yang terjadi pada

proses adaptasi, belajar dan daya ingat. Rangsang gerakan menimbulkan

stres yang akan memicu sekresi CRF (corticotropin releasing factor);

peningkatan kadar CRF selanjutnya akan mengaktifkan susunan saraf simpatik yang selanjutnya mencetuskan mekanisme adaptasi berupa meningkatnya aktivitas sistem saraf parasimpatik. Teori ini dapat menerangkan gejala penyerta yang sering timbul berupa pucat, berkeringat diawal serangan vertigo akibat aktivitas simpatis, yang berkembang menjadi gejala mual, muntah dan hipersalivasi setelah beberapa saat akibat dominasi aktivitas susunan saraf parasimpatis.


(24)

2.2.2 Anamnesis

Pertama-tama ditanyakan bentuk vertigonya, apakah terasa seperti melayang, goyang, berputar, tujuh keliling, serasa naik perahu dan sebagainya. Perlu diketahui juga keadaan yang memprovokasi timbulnya vertigo, seperti perubahan posisi kepala dan tubuh, keletihan, ketegangan. Dari segi profil waktu, seperti apakah timbulnya akut atau perlahan-lahan, hilang timbul, paroksimal, kronik, progresif atau membaik. Beberapa penyakit tertentu mempunyai profil waktu yang karakteristik (Cermin Dunia Kedokteran, 2004 : 42).

Apakah juga ada gangguan pendengaran yang biasanya

menyertai/ditemukan pada lesi alat vestibuler atau n vestibularis. Penggunaan

obat-obatan seperti streptomisin, kanamisin, salisilat, antimalaria dan lain-lain

yang diketahui ototoksik/vestibulotoksik dan adanya penyakit sistemik seperti

anemi, penyakit jantung, hipertensi, hipotensi, penyakit paru juga perlu ditanyakan. Juga kemungkinan trauma akustik (Cermin Dunia Kedokteran, 2004 : 42).

2.2.3 Penyebab Vertigo

Vertigo bukan terjadi karena faktor keturunan. Vertigo tidak boleh disepelekan karena bisa menjadi pertanda penyakit yang serius, seperti tumor

otak, hipertensi (tekanan darah tinggi), diabetes mellitus (kencing manis), jantung,

dan ginjal. Semakin dini vertigo ditangani akan semakin cepat dapat diatasi. Vertigo bisa terjadi karena :

1. Infeksi virus yang menyerang area labirin

2. Infeksi bakteri yang mengenai telinga tengah


(25)

4. Serangan migren

5. Sirkulasi darah yang berkurang yang dapat menyebabkan aliran darah ke

otak berkurang

6. Mabuk kendaraan

7. Alkohol

8. Kelainan Neurologis

a. Sklerosis multipel

b. Patah tulang tengkorak yang disertai cedera pada labirin,

persarafannya atau keduanya

c. Tumor otak

d. Tumor yang menekan saraf vestibularis.

Vertigo biasanya muncul karena adanya gangguan sistem vestibular

(misalnya terdapat gangguan pada struktur telinga bagian dalam, saraf vestibular,

batang otak, dan otak kecil/cerebellum). Sistem vestibular bertanggung jawab

untuk mengintegrasikan rangsangan terhadap indera dan gerakan tubuh. Selain itu

sistem vestibular bertugas menjaga agar suatu obyek ada di fokus penglihatan saat

tubuh bergerak. Ketika kepala bergerak, sinyal ditransmisikan ke labirin, yang

terdapat di telinga bagian dalam. Labirin kemudian membawa informasi ke saraf

vestibular yang kemudian diteruskan ke batang otak dan otak kecil, yang berfungsi mengontrol keseimbangan, postur, dan kordinasi gerak.


(26)

Gambar 2.1 Gangguan Sistem Vestibular

2.2.4 Gejala Vertigo

Vertigo bisa merupakan gejala yang mandiri, namun bisa juga timbul bersama dengan gejala lainnya (PERDOSSI, 1999 : 19). Berikut ini adalah gejala umum vertigo:

1) Mual.

2) Muntah.

3) Keringat dingin.

4) Pandangan gelap.

5) Lelah dan stamina menurun.

6) Memori dan daya pikir menurun.

7) Tidak mampu berkonsentrasi.

8) Pusing.


(27)

10)Lemas (contoh : tidak mampu menggenggam erat benda dengan telapak tangan).

11)Keadaan sekitar terasa berputar, benda diam di sekitar nampak bergoyang

(Oscillpsia) dan nampak ganda (Diplopia).

12)Sukar menelan.

13)Kelumpuhan otot-otot wajah.

14)Sakit kepala yang parah.

15)Kesadaran terganggu.

16)Hilangnya koordinasi.

17)Telinga Berdenging (tinnitus) atau hilangnya pendengaran.

18)Posisi kepala terfiksasi kearah tertentu.

19)Sensitif pada cahaya terang dan suara.

20)Rasa seolah-olah akan terjatuh pada permulaan tidur.

21)Hilang keseimbangan, seperti tidak bisa tegak dan tidak bisa stabil ketika

berdiri dan atau duduk jalan sempoyongan dan jalan membelok.

22)Ketika berbaring miring atau ketika kepalanya menengadah ke atas

keadaan sekitar terasa berputar selama 15-20 detik.

23)Pandangan tidak fokus (gerakan mata ulang-alik diluar kemauan

(nistagimus atau nystagmoid jerks)).

2.2.5 Jenis-Jenis Vertigo

Vertigo bukan suatu penyakit tersendiri, melainkan gejala dari penyakit yang letak lesi dan penyebabnya berbeda-beda. Oleh karena itu, pada setiap penderita vertigo harus dilakukan anamnesis dan pemeriksaan yang cermat dan terarah untuk menentukan bentuk vertigo, letak lesi dan penyebabnya.


(28)

Saluran vestibular adalah salah satu organ bagian dalam telinga yang senantiasa mengirimkan informasi tentang posisi tubuh ke otak untuk menjaga keseimbangan. Vertigo diklasifikasikan menjadi dua kategori berdasarkan saluran

vestibular yang mengalami kerusakan, yaitu :

1. Vertigo Periferal

Vertigo perifer (peripheral vertigo) disebabkan oleh disfungsi struktur

perifer hingga ke batang otak (brain stem). Vertigo periferal terjadi jika

terdapat gangguan di saluran yang disebut kanalis semisirkularis, yaitu

telinga bagian tengah yang bertugas mengontrol keseimbangan. Vertigo jenis ini biasanya diikuti gejala-gejala seperti:

1) Mual.

2) Muntah.

3) Keringat dingin.

4) Pandangan gelap.

5) Lelah dan stamina menurun.

6) Memori dan daya pikir menurun.

7) Tidak mampu berkonsentrasi.

8) Pusing.

Sentral

Fisikologik Ketinggian, mabuk udara

Vertigo Patologik

Perifer

Sindroma Fobia Psikogenik

BPPV Meniere

Infeksi Trauma Iskemi


(29)

9) Telinga Berdenging (tinnitus).

10)Posisi kepala terfiksasi kearah tertentu.

11)Sensitif pada cahaya terang dan suara.

12)Rasa seolah-olah akan terjatuh pada permulaan tidur.

13)Hilang keseimbangan, seperti tidak bisa tegak dan tidak bisa stabil

ketika berdiri dan atau duduk jalan sempoyongan dan jalan membelok.

14)Ketika berbaring miring atau ketika kepalanya menengadah ke atas

keadaan sekitar terasa berputar selama 15-20 detik.

15)Pandangan tidak fokus (gerakan mata ulang-alik diluar kemauan

(nistagimus atau nystagmoid jerks)).

Beberapa kondisi yang dapat menyebabkan vertigo perifer antara lain : 1) Benign paroxysmal positional vertigo (BPPV)

2) Drug-induced vertigo (vertigo yang disebabkan oleh obat)

3) Labyrinthitis

4) Ménière's disease

5) Vestibular neuritis

2. Vertigo Sentral

Vertigo sentral (central vertigo) terjadi jika ada sesuatu yang tidak normal

di dalam otak, khususnya di bagian saraf keseimbangan, yaitu daerah

percabangan otak dan serebelum (otak kecil). Beberapa penyakit yang

dapat menyebabkan vertigo sentral antara lain : 1) Acoustic schwannomas atau meningiomas

2) Cerebellar pontine angle tumors


(30)

4) Cerebellar hemorrhage

5) Vertebrobasilar insufficiency

6) Stroke.

7) Multiple sclerosis (gangguan tulang belakang dan otak)

8) Tumor.

9) Trauma di bagian kepala.

10)Migren.

11)Kondisi peradangan pada leher.

12)Neurodegenerative illnesses (penyakit akibat kemunduran fungsi saraf) yang menimbulkan dampak pada otak kecil.

Gejala vertigo sentral biasanya terjadi secara bertahap, penderita akan mengalami hal-hal seperti:

1) Mual.

2) Muntah.

3) Keringat dingin.

4) Pandangan gelap.

5) Lelah dan stamina menurun.

6) Memori dan daya pikir menurun.

7) Tidak mampu berkonsentrasi.

8) Pusing.

9) Sulit berdiri.

10)Lemas (contoh : tidak mampu menggenggam erat benda dengan


(31)

11)Keadaan sekitar terasa berputar, benda diam di sekitar nampak

bergoyang (Oscillpsia) dan nampak ganda (Diplopia).

12)Sukar menelan

13)Kelumpuhan otot-otot wajah

14)Sakit kepala yang parah

15)Kesadaran terganggu

16)Hilangnya koordinasi

Berdasarkan gejalanya yang menonjol atau klinis, vertigo dapat dibagi atas beberapa kelompok penyakit (PERDOSSI, 1999 : 21) :

1. Vertigo yang paroksismal.

Vertigo yang paroksismal adalah vertigo yang serangannya datang secara

mendadak, berlangsung selama beberapa menit atau beberapa hari, kemudian menghilang sempurna. Tetapi suatu ketika serangan tersebut muncul kembali. Vertigo jenis ini dapat dibedakan berdasarkan gejala penyertanya, yaitu :

1) Vertigo yang disertai dengan keluhan telinga

Kelompok penyakit ini memiliki kumpulan gejala (sindroma) yang

sama yang disebut sindrom meniere. Yang termasuk dalam kelompok

ini adalah morbus meniere, araknoditis ponto serebelaris, sindrom

lermoyes, serangan iskemia sepintas arteria vertebralis, sindroma Cogan, Tumor fosa kranii posterior, kelainan gigi (Ondontogen).


(32)

2) Vertigo yang tanpa disertai keluhan telinga

Yang termasuk kelompok ini adalah serangan isekmia sepintas arteria

vertebro basilaris, epilepsi, vertigo akibat lesi lambung, ekuivalen

migren, vertigo pada anak (vertigo de L’enfance), labirin picu (trigger

labyrinth).

3) Vertigo yang timbulnya dipengaruhi oleh perubahan posisi

Yang termasuk kelompok ini adalah vertigo posisional paroksismal

yang laten dan vertigo posisional paroksismal benigna.

2. Vertigo yang kronis

Yaitu vertigo yang menetap lama, keluhannya konstan tidak membentuk serangan-serangan akut. Vertigo jenis ini dapat dibedakan berdasarkan gejala penyertanya, yaitu :

1) Vertigo yang disertai dengan keluhan dari telinga

Yang termasuk kelompok ini adalah otitis media kronika, meningitis

TB, labirintitis kronika, lesi labirin akibat bahan ototoksik, tumor serebelopontis.

2) Vertigo yang tidak disertai dengan keluhan dari telinga

Yang termasuk kelompok ini adalah kontusio serebri, esenfalitis

pontis, sindrom pasca komosio, pelagra, siringobulbi, hipoglikemi, sklerosis multipleks, kelainan okuler, intoksikasi obat-obatan, kelainan

psikis, kelainan kardiovaskular, kelainan endokrin.

3) Vertigo yang timbulnya dipengaruhi oleh perubahan posisi

Yang termasuk kelompok ini adalah Hipotensi ortostatik dan vertigo


(33)

3. Vertigo yang serangannya mendadak/akut, berangsur-angsur mengurang Vertigo jenis ini dapat dibedakan berdasarkan gejala penyertanya, yaitu :

1) Vertigo yang disertai dengan keluhan dari telinga

Yang termasuk kelompok ini adalah trauma labirin, herpes zoster

otikus, labirintis akuta, pendarahan labirin, neuritis VIII, cedera

arteria auditiva atau arteria vestibulokoklearis.

2) Vertigo yang tidak disertai dengan keluhan dari telinga

Yang termasuk kelompok ini adalah neuronitis vestibularis, neuritis

vestibularis, sindrom arteria vestibularis anterior, ensenfalitis vestibularis, vertigo epidemika, sklerosis multipleks, hematobulbi,

sumbatan arteria serebeli inferior posterior.

2.2.6 Terapi Vertigo

Terapi vertigo terdiri atas (PERDOSSI, 1999 : 41) :

1. Terapi Kausal

Kebanyakan kasus vertigo tidak diketahui penyebabnya. Walaupun demikian bilamana penyebabnya dapat ditemukan, maka terapi kausal merupakan pilihan utama.

2. Terapi Simtomatik

Terapi ini ditujukan pada dua gejala utama, yaitu rasa vertigo (berputar, melayang) dan gejala otonom (mual, muntah). Gejala-gejala tersebut

timbul paling berat pada vertigo vestibular fase akut dan biasanya akan

menghilang dalam beberapa hari berkat adanya mekanisme kompensasi sentral. Namun, oleh karena pada fase ni pasien biasanya merasa cemas dan menderita, maka harus diberikan obat simtomatik. Oleh karena


(34)

obat-obatan supresan vestibular dapat menghalangi mekanisme kompensasi sentral, maka pemberiannya secukupnya saja untuk mngurangi gejala, tuijuannya agar pasien dapat segera dimobilisasi untuk melakukan latihan rehabilitasi.

3. Terapi Rehabilitatif

Tujuan terapi mi adalah untuk menimbulkan dan meningkatkan

kompensasi sentral dan habituasi pada pasien dengan gangguan vestibular.

Mekanisme kerja terapi ini adalah melalui :

1) Substitusi Sentral oleh sistem visual dan somatosensori untuk fungsi

vestibular yang terganggu.

2) Mengaktifkan kendali pada tonus inti vestibular oleh sereblum, sistem

visual, dan somatsensori.

3) Menimbulkan habituasi, yaitu berkurangnya respon terhadap stimulasi

sensorik yang diberikan berulang-ulang.

Untuk terapi rehabilitatif ini, penderita diberikan latihan yang disebut

latihan vestibular (Vestibular Exercise) :

1) Metode Brandt-Daroff

Latihan vestibular untuk pengobatan Benign Paroxysmal Positional

Vertigo (BPPV) caranya adalah pasien duduk tegak di tepi tempat tidur dengan kaki tergantung. Lalu tutup kedua mata dan berbaring dengan cepat pada salah satu sisi tubuh selama 30 detik, kemudian duduk tegak kembali. Setelah 30 detik, baringkan tubuh lain ke sisi lain dengan cara yang sama, tunggu 30 detik, setelah itu duduk tegak kembali. Lakukan latihan ini 5 kali pada pagi hari dan 5 kali pada


(35)

malam hari sampai 2 hari berturut-turut tidak timbul vertigo lagi (Brandt T. dan Daroff R.B., 1980 : 106-484).

Gambar 2.3 Terapi Metode Brandt-Daroff

Pada penderita gangguan vestibular lain selain BPPV, setelah lewat

fase akut, dimana rasa mual dan muntahnya sudah menghilang,

diberikan latihan vestibular lain, diantaranya :

2) Latihan Visual-Vestibular

a. Pada pasien yang harus berbaring :

a) Melirik ke atas, ke bawah, ke samping kanan, ke samping kiri.

Selanjutnya gerakan serupa sambil menatap jari yang digerakkan pada jarak 30 cm, mula-mula gerakkannya lambat, makin lama makin cepat.

b) Gerakkan kepala fleksi dan ekstensi, makin lama makin cepat.

Lalu diulangi dengan mata tertutup. Setelah itu, gerakkan kepala ke kiri dan ke kanan dengan urutan yang sama.


(36)

a) Gerakkan kepala dengan cepat ke atas dan ke bawah, seperti sedang manggut, sebanyak 5 kali, lalu tunggu 10 detik atau lebih lama sampai vertigo menghilang. Ulangi latihan tersebut sebanyak 5 kali.

b) Gerakkan kepala menatap ke kiri atau ke kanan atas selama 30

detik, kembali ke posisi biasa selama 30 detik, lalu menatap ke atas sisi lain selama 30 detik dan seterusnya. Ulangi latihan sebanyak 3 kali.

c) Sambil duduk membungkuk dan mengambil benda yang

diletakkan di lantai.

c. Untuk pasien yang sudah bisa berdiri (berjalan) :

a) Sambil berdiri gerakkan mata, kepala seperti pada latihan a-a),

a-b), b-a), dan b-b).

b) Duduk di kursi lalu berdiri dengan mata terbuka dan tertutup.

3) Latihan berjalan (Gait Exercise)

a. Jalan menyebrang ruangan dengan mata terbuka dan tertutup

bergantian.

b. Berjalan tandem dengan mata terbuka dan tertutup bergantian. Lalu

jalan tandem dengan kepala menghadap ke atas.

c. Jalan turun-naik pada lantai miring atau undakan dengan mata

terbuka dan tertutup bergantian.

d. Jalan mengelilingi seseorang sambil melempar bola dengannya.

e. Physical conditioning dengan melakukan olahraga bowling, basket, jogging, dan rowing.


(37)

2.3 Sistem Pakar

Sistem pakar adalah sistem berbasis komputer yang menggunakan pengetahuan, fakta, dan teknik penalaran dalam memecahkan masalah yang biasanya hanya dapat dipecahkan oleh seorang pakar dalam bidang tersebut (Martin dan Oxman, 1988).

Pada dasarnya sistem pakar diterapkan untuk mendukung aktifitas pemecahan masalah. Beberapa aktifitas pemecahan yang dimaksud, yaitu pembuat

keputusan (decision making), pemaduan pengetahuan (knowledge fusing),

pembuatan desain (designing), perencanaan (planning), prakiraan (forecasting),

pengaturan (regulating), pengendalian (controlling), diagnosa (diagnosing),

perumusan (prescribing), penjelasan (explaining), pemberian nasihat (advising),

dan pelatihan (tutoring) (Kusrini, 2006 : 11).

Biasanya sistem pakar hanya digunakan untuk memecahkan masalah yang memang sulit untuk dipecahkan dengan pemrograman biasa, mengingat biaya yang diperlukan untuk membuat sistem pakar jauh lebih besar dari pembuatan sistem biasa (Kusrini, 2006 :12).

Dengan sistem pakar, orang awam pun dapat menyelesaikan masalah yang cukup rumit yang sebenarnya hanya dapat diselesaikan dengan bantuan para ahli. Bagi para ahli, sistem pakar juga akan membantu aktivitasnya sebagai asisten yang pandai.

2.3.1 Sejarah Sistem Pakar

Sistem pakar dikembangkan pertama kali tahun 1960 oleh Artificial


(38)

hasil suatu penelitian yang didominasi oleh suatu penalaran bahwa pengetahuan yang digabungkan dengan komputer akan menghasilkan prestasi pakar. GPS yang berupa sebuah prosedur yang dikembangkan oleh Allan Newell, John Cliff Shaw,

dan Hebert Simon sari Logic Theorist yang merupakan sebuah percobaan untuk

menciptakan mesin yang cerdas.

Beberapa sistem pakar yang terkenal antara lain :

1. MYCIN

1) Paling terkenal, dibuat oleh Edward Shortlife of Standford University

tahun 1970

2) Sistem pakar medical yang bisa mendiagnosa penyakit infeksi dan

merekomendasi pengobatan

3) MYCIN membantu dokter mengidentifikasi pasien yang menderita

penyakit. Dokter duduk di depan komputer dan memasukkan data pasien: umur, riwayat kesehatan, hasil laboratorium dan informasi terkait lainnya. Dengan informasi ini ditambah pengetahuan yang sudah ada dalam komputer, MYCIN mendiagnosa selanjutnya merekomendasi obat dan dosis yang harus dimakan. MYCIN sebagai penasehat medis, tidak dimaksudkan untuk mengantikan kedudukan seorang dokter. Tetapi membantu dokter yang belum berpengalaman dalam penyakit tertentu. Juga untuk membantu dokter dalam mengkonfirmasi diagnosa dan terapi yang diberikan kepada pasien apakah sesuai dengan diagnosa dan terapi yang ada dalam basis pengetahuan yang sudah dimasukkan ke dalam MYCIN, karena


(39)

MYCIN dirancang oleh dokter-dokter yang ahli dibidang penyakit tersebut.

4) Kesimpulan : sistem pakar seperti MYCIN bisa digunakan sebagai

bahan pembanding dalam pengambilan solusi dan pemecahan masalah. Keputusan terakhir atas pengobatan tersebut tetap menjadi tanggung jawab dokter.

2. DENDRAL

Mengidentifikasi struktur molekular campuran kimia yang tak dikenal.

3. XCON

1) Merupakan sistem pakar untuk membantu konfigurasi sistem komputer

besar, membantu melayani order langganan sistem komputer DEC VAX 11/780 ke dalam sistem spesifikasi final yang lengkap

2) Komputer besar seperti VAX terbuat dari ratudan komponen yang

berbeda digabung dan disesuaikan dengan konfigurasi tertentu yang diinginkan oleh para pelanggan. Ada ribuan cara dimana asesosri

Pcboard, kabel, disk drive, periperal, perangkat lunak, dan lainnya bisa

dirakit ke dalam konfigurasi yang sangat rapih. Untuk

mengidentifikasi hal-hal tersebut diperlukan waktu

berhari-hari/berminggu-minggu agar bisa memenuhi spesifikasi yang diinginkan pemesan, tapi dengan XCON bisa dalam beberapa menit.

4. XSEL

1) Dirancang untuk membantu karyawan bagian penjualan dalam


(40)

tersebut sering menghadapi kesulitan dalam memilih suatu komponen yang paling tepat

2) Basis pengetahuan yang ada pada XSEL membantu mengarahkan para

pemesan serius untuk memilih konfigurasi yang dikehendaki, kemudian XSEL memilih CPU, memori, periperal dan menyarankan paket software tertentu yang paling tepat dengan konfigurasinya.

5. PROSPECTOR

1) sistem pakar yang membantu ahli geologi dalam mencari dan

menemukan deposit

2) Basis pengetahuan berisi bermacam-macam mineral dan batu-batuan.

Banyak pakar geologi diwawancarai dan pengetahuan mereka tentang berbagai bentuk biji deposit dimasukkan ke dalam sistem pakar.

3) Ahli geologi melacak biji deposit dengan pergi ke lapangan untuk

meninjau medan dan mengumpulkan bukti yang ada seperti ciri-ciri geologi dicatat, sampel tanah dan batu-batuan. Sistem pakar mengevaluasi areal dalam bentuk pertanyaan dan data-data tersebut dimasukkan, kemudian Prospector memberikan rekomendasi yang menunjukkan jumlah deposit yang ada dan apakah menguntungkan atau tidak bila dieksplorasi atau di bor lebih lanjut.

2.3.2 Pemakai Sistem Pakar

Sistem pakar dapat digunakan oleh (Kusrini, 2006 : 14):

1. Orang awam yang bukan pakar untuk meningkatkan kemampuan mereka

dalam memecahkan masalah.


(41)

Sistem pakar merupakan program yang dapat menggantikan keberadaan seorang pakar. Alasan mendasar mengapa sistem pakar dikembangkan (Kusrini, 2006 : 14) :

1. Dapat menyediakan kepakaran setiap waktu dan diberbagai lokasi

2. Secara otomatis mengerjakan tugas-tugas rutin yang membutuhkan

seorang pakar.

3. Seorang pakar akan pensiun atau pergi.

4. Kepakaran dibutuhkan juga pada lingkungan yang tidak bersahabat.

2.3.3 Ciri-ciri Sistem Pakar

Adapun ciri-ciri sistem pakar adalah sebagai berikut (Kusrini, 2006 : 14) :

1. Terbatas pada bidang yang spesifik.

2. Dapat memberikan penalaran untuk data-data yang tidak lengkap atau

tidak pasti.

3. Dapat mengemukan rangkaian alasan yang diberikan dengan cara yang

dapat dipahami.

4. Berdasarkan pada rule atau kaidah tertentu.

5. Dirancang untuk dapat dikembangkan seara bertahap

6. Output bersifat nasihat atau anjuran.

7. Output tergantung dari dialog dengan user.


(42)

2.3.4 Keuntungan Sistem Pakar

Adapun keuntungan dari sistem pakar adalah sebagai berikut (Kusrini, 2006 : 15) :

1. Membuat seorang yang awam dapat bekerja seperti layaknya seorang

pakar

2. Dapat bekerja dengan informasi yang tidak lengkap atau tidak pasti

3. Meningkatkan output dan produktifitas. Sistem pakar dapat bekerja lebih

cepat daripada manusia. Keuntungan ini berarti mengurangi jumlah pekerja yang dibutuhkan, dan akhirnya akan mereduksi biaya.

4. Meningkatkan kualitas.

5. Sistem pakar menyediakan nasehat yang konsisten dan dapat mengurangi

tingkat kesalahan.

6. Membuat peralatan yang kompleks lebih mudah dioperasikan karena

sistem pakar dapat melatih pekerja yang tidak berpengalaman.

7. Handal.

8. Sistem pakar tidak akan lelah atau bosan.

9. Memiliki kemampuan untuk memecahkan masalah yang kompleks.

10.Memungkinkan pemindahan pengetahuan ke lokasi yang jauh serta

memperluas jangkauan seorang pakar, dapat diperoleh dan dipakai di mana saja.

2.3.5 Arsitektur Sistem Pakar

Sistem pakar memiliki beberapa komponen utama, yaitu antarmuka

pengguna (user interface), basis data sistem pakar (expert system database),


(43)

inferensi (inference mechanism). Selain itu ada satu komponen yang hanya ada

pada beberapa sistem pakar, yaitu fasilitas penjelasan (explanation facility)

(Martin dan Oxman, 1988).

Antarmuka pengguna adalah perangkat lunak yang menyediakan media komunikasi antara pengguna dengan sistem. Basis data sistem pakar berisi pengetahuan setingkat pakar pada subyek tertentu. Berisi pengetahuan yang dibutuhkan untuk memahami, merumuskan, dan menyelesaikan masalah. Basis data ini terdiri atas 2 elemen dasar (Kusrini, 2006 : 17) :

1. Fakta, sesuai masalah dan teori yang terkait.

2. Heuristik khusus atau rules, yang langsung menggunakan pengetahuan

untuk menyelesaikan masalah khusus.

Pengetahuan ini dapat berasal dari pakar, jurnal, majalah, dan sumber pengetahuan yang lain.

Fasilitas akuisisi pengetahuan merupakan perangkat lunak yang menyediakan fasilitas dialog anatara pakar dengan sistem. Fasilitas akuisisi ini digunakan untuk memasukan fakta-fakta dan kaidah-kaidah sesuai dengan perkembangan ilmu. Meliputi proses pengumpulan, pemindahan, dan perubahan dari kemampuan pemecahan masalah seorang pakar atau sumber terdokumentasi ke program komputer, yang bertujuan untuk memperbaiki dan atau mengembangkan basis pengetahuan.

Mekanisme inferensi merupakan perangkat lunak yang melakukan penalaran dengan menggunakan pengetahuan yang ada untuk menghasilkan suatu kesimpulan atau hasil akhir. Dalam komponen ini dilakukan pemodelan proses berpikir manusia.


(44)

Fasilitas penjelasan berguna dalam memberikan penjelasan kepada pengguna mengapa komputer meminta suatu informasi tertentu dari pengguna dan dasar apa yang digunakan komputer sehingga dapat menyimpulkan suatu kondisi.

Arsitektur dasar dari sistem pakar dapat dilihat pada Gambar 2.4 (Giarrantano dan Riley, 1994).

Memori kerja dalam arsitektur sistem pakar merupakan bagian yang berisi fakta-fakta masalah yang ditemukan dalam suatu sesi, berisi fakta-fakta tentang suatu masalah yang ditemukan dalam proses konsultasi.

2.3.6 Orang yang Terlibat dalam Sistem Pakar

Untuk memahami perancangan sistem pakar, perlu dipahami mengenai siapa saja yang berinteraksi dengan sistem. Mereka adalah (Kusrini, 2006 : 19):

1. Pakar (domain expert), seorang ahli yang dapat menyelesaikan masalah

yang sedang diusahakan untuk dipecahkan oleh sistem. Aturan

Mesin

Memori Kerja (Fakta)

Fasilitas Penjelasan

Akuisisi Pengetahuan

Antarmuka Pengguna


(45)

2. Membangun pengetahuan (knowledge engineer), seseorang yang menterjemahkan pengetahuan seorang pakar dalam bentuk deklaratif sehingga dapat digunakan oleh sistem pakar.

3. Pengguna (user), seseorang yang berkonsultasi dengan sistem untuk

mendapatkan saran yang disediakan oleh pakar.

4. Pembangun sistem (system engineer), seorang yang membuat antarmuka

pengguna, merancang bentuk basis pengetahuan secara deklaratif dan mengimplementasikan mesin inferensi.

2.3.7 Kategori Masalah Sistem Pakar

Masalah-masalah yang dapat diselesaikan dengan sistem pakar, yaitu (Kusrini, 2006 : 21) :

1. Interpretasi, membuat kesimpulan atau deskripsi dari sekumpulan data

mentah.

2. Prediksi, memproyeksikan akibat-akibat yang dimungkinkan dari

situasi-situasi tertentu.

3. Diagnosis, menentukan sebab malfungsi dalam situasi kompleks yang

didasarkan pada gejala-gejala yang teramati.

4. Desain, menentukan konfigurasi komponen-komponen sistem yang cocok

dengan tujuan-tujuan kinerja tertentu yang memenuhi kendala-kendala tertentu.

5. Perencanaan, merencanakan serangkaian tindakan yanga akan dapat

mencapai sejumlah tujuan dengan kondisi awal tertentu.

6. Debugging dan Repair, menentukan dan menginterpretasikan cara-cara untuk mengatasi malfungsi.


(46)

7. Instruksi, mendeteksi dan mengoreksi definisi dalam pemahaman domain subyek.

8. Pengendalian, mengatur tingkah laku suatu environment yang kompleks.

9. Selection, mengidentifikasi pilihan terbaik dari sekumpulan kemungkinan. 10.Simulation, pemodelan interaksi antara komponen-komponen sistem. 11.Monitoring, membandingkan hasil pengamatan dengan kondisi yang

diharapkan.

2.3.8 Inferensi

Inferensi merupakan proses untuk menghasilkan informasi dari fakta yang

diketahui atau diasumsikan. Inferensi adalah konklusi logis (logical conclution)

atau implikasi berdasarkan informasi yang tersedia (Kusrini, 2006 : 35).

2.3.8.1Mesin Inferensi

Dalam sistem pakar, proses inferensi dilakukan pada suatu modul yang

disebut mesin inferensi, yang dikenal juga sebagai struktur kontrol atau penerjemah aturan (dalam sistem pakar berbasis-aturan). Komponen ini sebenarnya adalah program komputer yang menyediakan metodologi untuk

mempertimbangkan informasi dalam pengetahuan dan workplace, dan

merumuskan kesimpulan.

Mesin inferensi adalah keahlian yang dibutuhkan yang tersimpan di

dalam knowledge base (basis pengetahuan), komputer diprogram sehingga dapat


(47)

2.3.8.2 Metode Inferensi

Metode inferensi adalah mekanisme berfikir dan pola-pola penalaran yang digunakan oleh sistem untuk mencapai suatu kesimpulan. Metode ini akan menganalisa masalah tertentu dan selanjutnya akan mencari jawaban atau kesimpulan yang terbaik. Penalaran dimulai dengan mencocokan kaidah-kaidah dalam basis pengetahuan dengan fakta-fakta yang ada dalam basis data.

Terdapat dua cara (metode) mekanisme inferensi dalam sistem pakar berbasis aturan, yaitu:

1. Runut maju (forward chaining) Runut maju adalah aturan-aturan diuji satu

demi satu dalam urutan tertentu (data driven). Dalam metode ini, data

digunakan untuk menentukan aturan mana yang akan dijalankan, kemudian aturan tersebut dijalankan. Proses diulangi sampai ditemukan suatu hasil (Wilson, 1998).

Contoh :

Terdapat 10 aturan yang tersimpan dalam basis pengetahuan yaitu : R1 : if A and B then C

R2 : if C then D R3 : if A and E then F R4 : if A then G R5 : if F and G then D R6 : if G and E then H R7 : if C and H then I R8 : if I and A then J R9 : if G then J


(48)

R10 : if J then K

Fakta awal yang diberikan hanya A dan E, ingin membuktikan apakah K

bernilai benar. Proses penalaran forward chaining terlihat pada gambar

dibawah :

Gambar 2.5 Proses Penalaran Forward Chaining

2. Runut mundur (backward chaining) adalah penalaran dimulai dari

kesimpulan dan akan dibuktikan kebenarannya (goal driven). Metode ini

merupakan cara yang efesien untuk memecahkan masalah yang dimodelkan sebagai masalah yang terstruktur. Tujuan dari inferensi ini adalah mengambil pilihan terbaik dari banyak kemungkinan (Kusrini,

2006 : 37). Metode backward chaining ini cocok digunakan untuk

memecahkan masalah diagnosis (Schnupp, 1989). Contoh:

Seperti pada contoh forward chaining, terdapat 10 aturan yang sama pada

basis pengetahuan dan fakta awal yang diberikan hanya A dan E. ingin

membuktikan apakah K bernilai benar. Proses penalaran backward


(49)

Gambar 2.6 Proses Penalaran Backward Chaining

Kedua cara di atas dipengaruhi oleh macam penelusuran yang terdiri atas 3 macam atau teknik penelusuran:

1. Depth first search

Depth first search merupakan teknik penelusuran dari node ke node bergerak menurun ke tingkat dalam yang berurutan.

Proses pencarian dilakukan dengan mengunjungi cabang terlebih dahulu hingga tiba di simpul terakhir. Jika tujuan yang diinginkan belum tercapai maka pencarian dilanjutkan ke cabang sebelumnya, turun ke bawah jika

1

7

9 8

5

6 2

4 3

Gambar 2.7 Depth First Search


(50)

memang masih ada cabangnya. Begitu seterusnya hingga diperoleh tujuan

akhir (goal).

2. Breadth first search

Breadth first search merupakan teknik penelusuran pada semua node dalam satu level sebelum berpindah ke level di bawahnya.

3. Best first search

Best first search merupakan kombinasi dari metode depth first search dan

breadth first search dengan mengambil kelebihan-kelebihan dari kedua metode tersebut. Pada metode best first search ini, pencarian node tujuan atau goal, mengizinkan untuk mengunjungi sebuah node yang ada pada level yang lebih rendah jika ternyata node yang berada pada level yang lebih tinggi memiliki nilai heuristik yang lebih buruk (rendah). Hal ini sangat berbeda apabila pencarian dilakukan dengan metode hill climbing, dimana pada metode hilll climbing tidak diperbolehkannya untuk mengunjungi sebuah node pada level yang rendah yang meskipun node tersebut mempunyai nilai heuristik yang lebih baik (tinggi).

1

7

9 8

5

6 2

4 3

Gambar 2.8 Breadth First Search


(51)

2.3.9 Representasi Pengetahuan

Agar pengetahuan dapat digunakan dalam sistem, pengetahuan harus direpresentasikan dalam format tertentu yang kemudian dihimpun dalam suatu basis pengetahuan. Cara merepresentasikan pengetahuan akan mempengaruhi perkembangan, efesiensi, dan perbaikan sistem (Kusrini, 2006 : 23).

Penalaran merupakan kemampuan untuk membentuk model mental yang menggambarkan obyek yang tepat dan merepresentasikannya dalam aksi yang dilakukan suatu obyek (Martin dan Oxman, 1988). Pengetahuan dapat diklasifikasikan menjadi tiga, yaitu pengetahuan prosedural, pengetahuan deklaratif, dan pengetahuan tacit. Pengetahuan prosedural lebih menekankan bagaimana melakukan sesuatu. Pengetahuan deklaratif menjawab pertanyaan apakah sesuatu bernilai salah atau benar. Sedangkan pengetahuan tacit merupakan pengetahuan yang tidak diungkapkan dengan bahasa. Misalnya, bagaimana cara memindahkan tangan.

Representasi pengetahuan merupakan metode yang digunakan untuk mengkodekan pengetahuan dalam sebuah sistem pakar yang berbasis pengetahuan. Perepresentasian dimaksudkan untuk menangkap sifat-sifat penting problema dan membuat informasi itu dapat diakses oleh prosedur pemecahan problema.

Beberapa model repersentasi pengetahuan yang penting antara lain (Kusrini, 2006 : 24) :

1. Logika Predikat.

2. Logika Proporsional.


(52)

4. Object Attribute Value (OAV).

5. Bingkai (Frame).

6. Kaidah Produksi.

2.4 PHP

PHP merupakan singkatan dari Hypertext Preprocessor, adalah sebuah

bahasa scripting yang terpasang pada HTML. Sebagian besar sintaks mirip dengan bahasa C, Java, asp dan Perl, ditambah beberapa fungsi PHP yang spesifik. Tujuan utama bahasa ini adalah untuk memungkinkan perancang web untuk menulis halaman web dinamik dengan cepat.

Sampai saat ini telah banyak database yang telah didukung oleh PHP dan kemungkinan akan terus bertambah. Database tersebut adalah dBase, DBM, FilePro, mSQL, MySQL, Oracle, Postgres, Sybase, dan Velocis. Selain itu PHP juga mendukung koneksi dengan protokol IMAP, SNMP, NNTP dan POP3. Contoh terkenal dari aplikasi PHP adalah phpBB dan MediaWiki (software di belakang Wikipedia). PHP juga dapat dilihat sebagai pilihan lain dari ASP.NET/C#/VB.NET Microsoft, ColdFusion Macromedia, JSP/Java Sun Microsystems, dan CGI/Perl. Contoh aplikasi lain yang lebih kompleks berupa CMS yang dibangun menggunakan PHP adalah Mambo, Joomla!, Postnuke, Xaraya, dan lain-lain.

2.4.1 Sejarah PHP

PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada

waktu itu PHP masih bernama FI (Form Interpreted), yang wujudnya berupa


(53)

Selanjutnya Rasmus merilis kode sumber tersebut untuk umum dan

menamakannya PHP/FI, kependekan dari Hypertext Preprocessing’/Form

Interpreter. Dengan perilisan kode sumber ini menjadi open source, maka banyak programmer yang tertarik untuk ikut mengembangkan PHP.

Pada November 1997, dirilis PHP/FI 2.0. Pada rilis ini interpreter PHP

sudah diimplementasikan dalam program C. Dalam rilis ini disertakan juga modul-modul ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan.

Pada tahun 1997, sebuah perusahaan bernama Zend menulis ulang interpreter

PHP menjadi lebih bersih, lebih baik, dan lebih cepat. Kemudian pada Juni 1998,

perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikan rilis

tersebut sebagai PHP 3.0. Pada pertengahan tahun 1999, Zend merilis interpreter

PHP baru dan rilis tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling banyak dipakai pada awal abad ke-21. Versi ini banyak dipakai disebabkan kemampuannya untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan dan stabilitas yang tinggi. Pada Juni 2004, Zend merilis PHP

5.0. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Versi

ini juga memasukkan model pemrograman berorientasi objek ke dalam PHP untuk menjawab perkembangan bahasa pemrograman ke arah paradigma berorientasi objek.

2.4.2 Kelebihan PHP

Pada saat ini bahasa PERL dan CGI sudah jauh ketinggalan zaman

sehingga sebagian besar designer web banyak beralih ke bahasa server-side

scripting yang lebih dinamis seperti PHP. Seluruh aplikasi berbasis web dapat dibuat dengan PHP. Namun kekuatan yang paling utama PHP adalah pada


(54)

konektivitasnya dengan system database di dalam web. Sistem database yang dapat didukung oleh PHP adalah :

1. Oracle

2. MySQL

3. Ms. Access

4. Sybase

5. PostgreSQL

6. dan lainnya

Kelebihan PHP dari bahasa pemrograman lain adalah :

1. PHP dapat berjalan di berbagai sistem operasi seperti windows 98/NT,

UNIX/LINUX, solaris maupun macintosh.

2. PHP mendukung komunikasi dengan layanan seperti protocol IMAP,

SNMP, NNTP, POP3 bahkan HTTP.

3. Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak

melakukan sebuah kompilasi dalam penggunaanya.

4. Web Server yang mendukung PHP dapat ditemukan di mana-mana dari

mulai IIS sampai dengan apache, dengan konfigurasi yang relatif mudah.

5. Dalam sisi pengembangan lebih mudah, karena banyaknya milis-milis dan

developer yang siap membantu dalam pengembangan.

6. Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling

mudah karena referensi yang banyak.

7. PHP adalah bahasa open source yang dapat digunakan diberbagai mesin

(linux, unix, windows) dan dapat dijalankan secara runtime melalui


(55)

2.5 MySQL

MySQL adalah Open Source Software yang menggunakan GPL (GNU

General Public License) dan merupakan sebuah sistem manajemen database yang saling berhubungan. Database adalah sekumpulan data yang terstruktur. Untuk menambah, mengakses dan memproses data yang tersimpan pada database komputer, dibutuhkan manajemen database seperti MySQL.

2.5.1 Sejarah MySQL

MySQL dikembangkan oleh sebuah perusahaan Swedia bernama MySQL AB, yang kala itu bernama TcX DataKonsult AB, sejak sekitar 1994-1995, meski cikal bakal kodenya bisa disebut sudah ada sejak 1979. Tujuan mula-mula TcX membuat MySQL pada waktu itu juga memang untuk mengembangkan aplikasi Web. Kala itu Michael Widenius, atau “Monty”, pengembang satu-satunya di TcX, memiliki aplikasi UNIREG dan rutin ISAM yang dibuat sendiri dan sedang mencari antarmuka SQL untuk ditempelkan di atasnya. Mula-mula TcX memakai

mSQL, atau “mini SQL”. mSQL adalah satu-satunya kode database open source

yang tersedia dan cukup sederhana saat itu, meskipun sudah ada Postgres. Namun mSQL tidaklah cukup cepat maupun fleksibel. Versi pertama mSQL bahkan tidak memiliki indeks.

Nama MySQL (baca: mai és kju él) tidak jelas diambil dari mana. Ada yang bilang ini diambil dari huruf pertama dan terakhir nama panggilan Michael Widenius, Monty. Ada lagi yang bilang kata My diambil dari nama putri Monty, yang memang diberi nama My karena Monty memang aslinya seorang Finlandia.


(56)

MySQL versi 1.0 dirilis Mei 1996 secara terbatas kepada empat orang. Baru di bulan Oktober versi 3.11.0 dilepas ke publik. Namun mula-mula kode ini

tidak diberikan di bawah lisensi General Public License.

Versi publik pertama, yang hanya berjalan di Linux dan Solaris serta sebagian besar masih belum terdokumentasi itu, dengan berangsur-angsur diperbaiki dan ditambah fitur demi fiturnya. Tapi tetap dengan fokus utama pengembangan pada kelangsingan dan kecepatan. Artinya, fitur yang menyebabkan MySQL menjadi lambat tidaklah ditambahkan, atau ditunda dulu, atau ditambahkan tapi menjadi fitur yang opsional. Versi awal MySQL ini, meski sudah bisa dipakai untuk aplikasi Web sederhana, belumlah memadai sama sekali untuk aplikasi bisnis.

Versi-versi akhir 3.22 pada tahun 1998-1999, MySQL menjadi semakin populer dan dilirik orang. Stabilitasnya sudah baik. Kecepatannya meningkat. Sudah tersedia di berbagai platform, termasuk Windows. Seri 3.22 ini banyak dipakai di berbagai instalasi, mungkin hingga sekarang, sehingga MySQL AB tetap memberikan dukungan technical support untuk seri ini.

Kelebihan-kelebihan MySQL antara lain : 1. Open Source program.

2. Dapat bekerja di beberapa platform yang berbeda, seperti LINUX,

Windows, MacOS dll.

3. Dapat dikoneksikan pada bahasa C, C++, Java, Perl, PHP dan Python.

4. Memiliki lebih banyak type data seperti : signed/unsigned integer yang


(57)

CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET dan tipe ENUM.

5. Mendukung penuh terhadap kalimat SQL GROUP BY dan ORDER BY.

Mendukung terhadap fungsi penuh ( COUNT ( ),COUNT (DISTINCT), AVG ( ), STD ( ), SUM ( ), MAX ( ) AND MIN ( ) ).

6. Mendukung terhadap LEFT OUTHER JOIN dengan ANSI SQL dan

sintak ODBC.

7. Mendukung ODBC for Windows 95 (dengan source program). Semua

fungsi ODBC 2.5 dan sebagainya. Sebagai contoh kita dapat menggunakan Access untuk connect ke MySQL server.

8. Menggunakn GNU automake, autoconf, dan LIBTOOL untuk portabilitas.

9. Kita dapat menggabungkan beberapa table dari database yang berbeda

dalam query yang sama.

10. Ditulis dengan menggunakan bahasa C dan C++. Diuji oleh compiler yang

sangat jauh berbeda.

11.Privilege (hak) dan password sangat fleksibel dan aman serta mengujinkan

Host-Based’ Verifikasi.

2.6 JavaScript

JavaScript merupakan kode bahasa Java yang diselipkan diantara kode

HTML untuk dijalankan pada komputer client. Javascript diperkenalkan pertama

kali oleh Netscape pada tahun 1995. Pada awalnya bahasa yang sekarang disebut

JavaScript ini dulunya dinamai “LiveScript” yang berfungsi sebagai bahasa

sederhana untuk browser Netscape Navigator 2 yang sangat populer pada saat itu. Kemudian sejalan dengan sedang giatnya kerjasama antara Netscape dan Sun


(58)

(pengembang bahasa pemrograman “Java”) pada masa itu, maka Netscape memberikan nama “JavaScript” kepada bahasa tersebut pada tanggal 4 Desember 1995. Pada saat yang bersamaan Microsoft sendiri mencoba untuk

mengadaptasikan teknologi ini yang mereka sebut sebagai “Jscript” di browser

milik mereka yaitu Internet Explorer 3. JavaScript sendiri merupakan modifikasi dari bahasa pemrograman C++ dengan pola penulisan yang lebih sederhana dari bahasa pemrograman C++.

JavaScript adalah bahasa pemrograman yang khusus untuk halaman web agar halaman web menjadi lebih hidup. Kalau dilihat dari suku katanya terdiri atas dua suku kata, yaitu Java dan Script. Java adalah Bahasa pemrograman berorientasi objek, sedangkan Script adalah serangkaian instruksi program.

Ada beberapa hal yang harus diperhatikan dalam pengelolaan

pemrograman JavaScript, diantaranya JavaScript adalah “case sensitive”, yang

artinya JavaScript membedakan huruf besar dan huruf kecil, Jika Anda pernah belajar bahasa pemrograman seperti Turbo C atau C++, maka sama seperti bahasa pemrograman tersebut, dimana huruf T tidak sama dengan huruf t. Dalam bahasa pemrograman JavaScript juga, sebagai contoh fungsi perintah var tidak boleh ditulis Var dan juga tidak boleh ditulis VAR (huruf besar semua), yang benar adalah var (huruf kecil semua). Perintah lain adalah new Date tidak boleh ditulis new date (huruf kecil semua), dan banyak yang lainnya.


(59)

2.7 AJAX

Teknologi informasi telah membuka mata dunia akan sebuah dunia baru, interaksi baru dan sebuah jaringan bisnis dunia yang tanpa batas. Disadari betul bahwa perkembangan teknologi yang disebut internet telah mengubah pola interaksi masyarakat.

Pertama kali AJAX diperkenalkan oleh Jesse James Garret dari Adaptive

Path tahun 2005. Ia mempublikasikan artikel yang berjudul “AJAX : A New

Approach to Web Aplications”.

Asynchronous JavaScript And XML, atau disingkat Ajax, adalah suatu teknik pemrograman berbasis web untuk menciptakan aplikasi web interaktif. Tujuannya adalah untuk memindahkan sebagian besar interaksi pada komputer

web surfer, melakukan pertukaran data dengan server di belakang layar, sehingga halaman web tidak harus dibaca ulang secara keseluruhan setiap kali seorang pengguna melakukan perubahan. Hal ini akan meningkatkan interaktivitas, kecepatan, dan usability. Ajax merupakan kombinasi dari:

1. XHTML (atau HTML) dan CSS untuk bahasa mark up dan tampilan.

2. DOM yang diakses dengan client side scripting language, khususnya

implementasi ECMAScript seperti JavaScript dan JScript, untuk menampilkan secara dinamis dan berinteraksi dengan informasi yang ditampilkan

3. Objek XMLHttpRequest untuk melakukan pertukaran data asinkronus

dengan web server. Pada beberapa framework dan kasus Ajax, objek IFrame lebih dipilih daripada XMLHttpRequest untuk melakukan pertukaran data dengan web server.


(60)

4. XML umumnya digunakan sebagai format untuk pengiriman data, walaupun format lain juga memungkinkan, seperti HTML, plain text, JSON dan EBML.

Seperti halnya DHTML, LAMP, atau SPA, Ajax bukanlah teknologi spesifik, melainkan merupakan gabungan dari teknologi yang dipakai bersamaan. Bahkan, teknologi turunan/komposit yang berdasarkan Ajax, seperti AFLAX sudah mulai bermunculan.

AJAX adalah teknologi browser (client-side) yang tidak tergantung pada

software web server tertentu. AJAX juga bukan bahasa pemrograman baru tetapi

teknik baru penggunaan standar yang telah ada. AJAX berbasiskan standar terbuka seperti JavaScript, XML, HTML / XHTML, CSS. Dengan JavaScript AJAX dapat mengirimkan dan menerima data antara web server dan web browser.

teknik yang di gunakan AJAX akan bergantian bertukar data dan me-refresh ulang

seluruh halaman. AJAX didukung sebagian besar browser popular

sehinggaaplikasi AJAX adalah aplikasi cross-platform dan cross-browser.

Keuntungan aplikasi AJAX dengan aplikasi desktop :

1. Dapat menjangkau pengguna yang luas.

2. Mudah di-install.

3. Mudah dikembangkan.

4. Mudah dipelihara.

Beberapa web komersial yang sudah menggunakan teknologi ajax diantaranya sebagai berikut :

1. http://www.gmail.com


(61)

3. http://news.yahoo.com

4. http://www.google.com/webhp?complete=1


(62)

52 BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Masalah

Terkadang seorang penderita vertigo itu sendiri pada awalnya tidak mengetahui jenis gejala maupun penyakit yang dideritanya karena minimnya informasi yang mereka ketahui. Bila seorang penderita vertigo ingin mengetahui tentang gejala-gejala, penyebab serta cara penanggulangan yang baik maka mereka akan mendatangi dokter untuk berkonsultasi. Akan tetapi, hal tersebut tidak dapat dilakukan oleh semua orang mungkin karena faktor perekonomian yang kurang mencukupi ataupun karena tuntutan kesibukan dan aktifitas mereka yang padat sehingga tidak bisa menyesuaikan dengan jadwal praktek dokter. Terkadang ketika berkonsultasi pun informasi hasil diagnosa yang disampaikan oleh dokter tidak sepenuhnya dipaparkan secara mendetail.

Berdasarkan hal tersebut, maka diperlukan suatu alat bantu yang mampu merepresentasikan keahlian seorang pakar (dokter spesialis) dan dapat diakses dimanapun dan kapanpun.

3.2 Analisis Sistem Pakar

Dalam membangun sistem pakar dilakukan beberapa tahapan analisis : 1. Informasi menentukan masalah yang akan dibangun sistem pakarnya. 2. Mengumpulkan data yang diperlukan untuk membangun sistem berupa

jenis-jenis penyakit, gejala-gejala penyakit, pengertian penyakit, dan saran terapi penanggulangan penyakit melalui studi literatur, penelitian, dan


(1)

xix

Gambar 4.38 Halaman Ubah Password Pakar ... 199

Gambar 4.39 Halaman Lihat Log Pakar ... 200

Gambar 4.40 Halaman Lihat Log Pasien ... 200

Gambar 4.41 Halaman Daftar Pesan... 201

Gambar 4.42 Halaman Rincian Pesan... 201

Gambar 4.43 Pesan Konfirmasi Logout Pakar... 202

Gambar 4.44 Halaman Depan Pasien... 202

Gambar 4.45 Halaman Kontak Pasien ... 203

Gambar 4.46 Halaman Konfirmasi ... 203

Gambar 4.47 Halaman Konsultasi Pasien... 204

Gambar 4.48 Halaman Hasil Diagnosa... 204


(2)

DAFTAR LAMPIRAN

Lampiran A Listing Program ... A-1 Lampiran B Hasil Kuesioner... B-1 Lampiran C Surat Penelitian ... C-1


(3)

234 DAFTAR PUSTAKA

1. Anurogo, Dito. (25 Februari 2009 00.52 WIB). Cara Asyik Mengenali Vertigo Perifer dan Vertigo Sentral.

http://www.kabarindonesia.com/berita.php?pil=3&jd=Cara+Asyik+ Mengenali+Vertigo+Perifer+dan+Vertigo+Sentral&dn=2009022422 3740

2. Brandt T. dan Daroff R.B., 1980 . Diambil dari buku PERDOSSI yang berjudul Vertigo Patofisiologi, Diagnosis dan Terapi, Pertemuan Ilmiah Tahunan (PIT) PERDOSSI. Editor, PERDOSSI.

3. Dewati, Eva. (15 April 2010 WIB). Vertigo Pada Kelainan Neurologis. http://repository.ui.ac.id/contents/koleksi/11/f56b3f7f7de1da5887ee0 1064deb50a9b3bf017b.pdf

4. Dwiyantoro, Kiky. (6 Juni 2009). Pengertian dan Sejarah PHP. http://kikysroger.ngeblogs.com/Pengertian-Sejarah-PHP/

5. Giarrantano dan Riley. 1994. Diambil dari buku Kusrini yang berjudul Sistem Pakar Teori dan Aplikasi. Andi Yogyakarta : Yogyakarta.

6. Hakim, Lukmanul. (2008). Membongkar Trik Rahasia Para Master PHP. Lokomedia. Yogyakarta.

7. Hakim, Lukmanul. (2009). Jalan Pintas Menjadi Master PHP. Lokomedia. Yogyakarta.

8. Hakim, Lukmanul. (2009). Trik Rahasia Master PHP Terbongkar Lagi. Lokomedia. Yogyakarta.

9. H. A. Simon. 1987. Diambil dari buku Kusrini yang berjudul Sistem Pakar Teori dan Aplikasi. Andi Yogyakarta : Yogyakarta.


(4)

235

10. J.,Aboe Amar, Suryamiharja, Andradi, dan Nurimaba, Nurjaman (PERDOSSI). 1999. Vertigo Patofisiologi, Diagnosis dan Terapi, Pertemuan Ilmiah Tahunan (PIT) PERDOSSI, Malang, Indonesia. Editor, PERDOSSI.

11. Kusrini. (2006). Sistem Pakar Teori dan Aplikasi. Andi Yogyakarta : Yogyakarta.

12. Marel. (13 Februari 2010 15.25 WIB). Apa sih obat vertigo ?

http://id.answers.yahoo.com/rss/question?qid=20080715030450AAC kOc

13. Martin dan Oxman. 1988. Diambil dari buku Kusrini yang berjudul Sistem Pakar Teori dan Aplikasi. Andi Yogyakarta : Yogyakarta.

14. Munir, Rinaldi dan Leoni Lidya. Algoritma dan Pemrograman Buku 2. Informatika : Bandung.

15. Mustika, I Made.( Senin, 02 Januari 2010). Vertigo dan Pencegahannya. http://www.balipost.com/mediadetail.php?module=detailberitamingg u&kid=24&id=27405

16. Nugroho, Adi. 2009. Algoritma Struktur Data Dengan C#. Andi : Yogyakarta.

17. Nugroho, Bunafit. (2008). Membuat Aplikasi Sistem Pakar. Gava Media : Yogyakarta.

18. Pausta Yugianus. (13 Februari 2010 15.19 WIB). Sistem Pakar. http://paustayugianus.blog.upi.edu/2009/10

19. Ramdhani, Agus. (27 Agustus 2009 6.34 WIB). Tentang MySQL. http://www.o-om.com


(5)

236

20. Wreksoatmodjo, Budi Riyanto. (12 April 2010 13.56 WIB). Vertigo : Aspek Neurologi,http://www.kalbe.co.id/files/cdk/files/144_14VertigoAspe kNeurologi.pdf/144_14VertigoAspekNeurologi.html

21. Rouist. (7 Juli 2009). Pengertian (Definisi) PHP & MySQL. http://masrois.com/pengertian-definisi-php-mysql/

22. Rozi, Imam Fahrur. (8 Januari 2008 15.53 WIB). Langkah Implementasi Depth First Search. http://ifrozi.wordpress.com/2008/01/08/langkah-implementasi-depth-first-search/

23. Santoso, Sugeng. (15 April 2010 11.50 WIB). Penyakit Vertigo. http://webcache.googleusercontent.com/search?q=cache:t60Ge3PRlI 0J:images.sugengsantoso5ka17.multiply.multiplycontent.com/attach ment/0/SvWcFAoKCH0AABHyHIo1/6.PENYAKIT%2520VERTIG O.doc%3Fnmid%3D294710823+pengertian+vertido+sentral&cd=6 &hl=id&ct=clnk&gl=id.

24. Schnupp. 1989. Diambil dari buku Kusrini yang berjudul Sistem Pakar Teori dan Aplikasi. Andi Yogyakarta : Yogyakarta.

25. Siagan, Luckman. 2008. Aplikasi Sistem Pakar Untuk Mendiagnosa Penyakit THT Menggunakan Metode Forward Chaining. Universitas Komputer Indonesia : 34.

26. Supono. (5 Agustus 2009). Apa Itu JavaScript. http://supono.wordpress.com/

author/supono/

27. Wiely, Stefanus. (13 Februari 2010 15.15 WIB). Kesehatan Gejala Vertigo.

http://beriman-hati.blogspot.com/2009/07/kesehatan-gejala-vertigo.html

28. Yayasan Total Sarana Edukasi. (15 Juni 2009). Pengertian JavaScript. http://www.total.or.id


(6)

RIWAYAT HIDUP

Data Pribadi

Nama : Anggi Septian Hidayat NIM : 10106088

Tempat Tanggal Lahir : Bogor, 27 Agustus 1988 Jenis Kelamin : Laki - laki

Agama : Islam Pekerjaan : Mahasiswa Status : Belum Menikah

Alamat Tempat Tinggal : Jalan Dipati Ukur Kubang Sari 3 No. 41 RT 01/06 Bandung

Alamat Asal : Kp. Babakan Cibatok No.55 RT 04/04 Desa Cibatok 1 Kec. Cibungbulang Kab. Bogor 16630 No. Telp (HP) : 0856 5999 8056

E-mail : anggi.septian.hidayat@gmail.com

Latar Belakang Pendidikan

1992-1994 TK Mutia Kabupaten Bogor

1994-2000 SD Negeri 3 Cibatok Kabupaten Bogor

2000-2003 SMP Negeri 1 Cibungbulang Kabupaten Bogor 2003-2006 SMA Negeri 1 Leuwiliang Kabupaten Bogor 2006-sekarang Mahasiswa Teknik Informatika

Program S1

Universitas Komputer Indonesia

Pengalaman Organisasi

2003-2004 Anggota Majalah Sekolah Anda (MASA) SMA Negeri 1 Leuwiliang Kabupaten Bogor

2004-2005 Anggota Basket SMA Negeri 1 Leuwiliang Kabupaten Bogor

Kegiatan yang pernah diikuti

09 – 19 Desember 2007 Programming Contest 2007 Unikom

09 Mei 2008 Workshop Perakitan PC dan Instalasi Dual OS Tabloid Computer News

2 – 31 Juli 2009 Kerja Praktek (Dinas Energi Dinas Energi dan Sumber Daya Mineral Provinsi Jawa Barat). 12 Desember 2009 Seminar Get ready for windows 7

6 – 17 April 2010 Penelitian Skripsi dan Tugas Akhir (Rumah Sakit DR. H. Marzoeki Mahdi Bogor)