1. PROYEK AKHIR
PEMBANGUNAN SISTEM PAKAR PADA
PERANGKAT MOBILE DENGAN WML DAN PHP
UNTUK PENYAKIT PARU PADA ANAK
DEASY ASTRID NATALIA
NRP. 7403.030.037
Dosen Pembimbing:
TITA KARLITA,S.KOM
NIP. 132 300 680
ENTIN MARTIANA K,S.KOM
NIP. 132 282 692
JURUSAN TEKNOLOGI INFORMASI
POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
SURABAYA 2006
2. PROYEK AKHIR
PEMBANGUNAN SISTEM PAKAR PADA
PERANGKAT MOBILE DENGAN WML DAN PHP
UNTUK PENYAKIT PARU PADA ANAK
DEASY ASTRID NATALIA
NRP. 7403.030.037
Dosen Pembimbing:
TITA KARLITA,S.KOM
NIP. 132 300 680
ENTIN MARTIANA K,S.KOM
NIP. 132 282 692
JURUSAN TEKNOLOGI INFORMASI
POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
SURABAYA 2006
3. PEMBANGUNAN SISTEM PAKAR PADA PERANGKAT
MOBILE DENGAN WML DAN PHP
UNTUK PENYAKIT PARU PADA ANAK
Oleh :
Deasy Astrid Natalia
7403.030.037
Diajukan Sebagai Salah Satu Syarat untuk menyelesaikan Studi
pada Program Pendidikan Diploma III
di
Politeknik Elektronika Negeri Surabaya-ITS
Disetujui oleh :
Tim Penguji Proyek Akhir : Dosen Pembimbing :
1. Dosen Penguji I 1. Dosen Pembimbing I
Arna Fariza,S.Kom,M.Kom Tita Karlita,S.Kom
NIP : 132 233 198 NIP: 132 300 680
2. Dosen Penguji II 2. Dosen Pembimbing II
Afrida Helen, ST, M.Kom Entin Martiana K,S.Kom
NIP : 132 170 593 NIP : 132 282 692
3. Dosen Penguji III
Tessy Badriyah, S.Kom,MT
NIP : 132 297 020
Mengetahui,
Ketua Jurusan Teknologi Informasi
Iwan Syarif, S.Kom, M.Kom
NIP: 132 134 725
4. ABSTRAK
Pada saat ini penggunaan teknologi perangkat mobile telah
berkembang pesat dan memasyarakat. Sebagian besar masyarakat
menggunakannya tidak hanya untuk kepentingan berkomunikasi saja,
tetapi juga untuk mendapatkan informasi secara cepat dan efisien
dengan aplikasi berorientasi internet melalui teknologi WAP.
Perkembangan teknologi Kecerdasan Buatan yang terjadi telah
memungkinkan Sistem Pakar untuk diaplikasikan penggunaannya dalam
perangkat mobile dengan WML dan PHP. Salah satunya dalam
pemberian informasi mengenai berbagai masalah kesehatan, terutama
masalah kesehatan paru anak. Metode sistem pakar yang digunakan
adalah forward dan backward chaining dengan pembuatan tree dari data-
data penunjang.
Dengan fasilitas yang diberikan untuk user dan administrator,
memungkinkan baik user maupun administrator untuk menggunakan
sistem ini sesuai kebutuhannya masing-masing. User diberi kemudahan
dalam mengetahui informasi berbagai jenis penyakit paru anak dengan
gejala-gejala klinisnya, informasi rumah sakit paru di beberapa daerah
serta konsultasi layaknya dengan seorang dokter paru anak melalui
beberapa pertanyaan yang harus dijawab user untuk mengetahui hasil
diagnosanya. Sedangkan administrator dimudahkan dalam
memanajemen sistem, baik proses tambah, hapus maupun update data
terbaru.
Tugas akhir ini diharapkan mampu memberikan informasi
segala hal yang berhubungan dengan masalah kesehatan paru anak
secara cepat dan efisien secara timbal baik antara user dan sistem tetapi
tetap optimal meski dalam small device.
Kata kunci : perangkat mobile, sistem pakar, forward dan backward
chaining, WAP.
i
5. ABSTRACT
The fast growing of device technology, making the possibility
of accessing internet using mobile device easily. Most people not only
use it for communicating, but also for getting information by WAP
technology.
The growing of Artificial Intelligence making the possibility of
using an Expert System to be applicated into mobile device using WML
and PHP. As example for giving information about medical problem,
especially in children lunge disease. Forward and backward chaining by
making a tree is an expert system method that used in this final project.
Facility that has given to user and administrator, is possible for
each user use this system in different needs. User can be able to know all
information about kinds of children lunge disease and its symptoms,
location of lunge hospital in several area, and consultation like a medical
check with the doctor by answering the questions to know what is the
diagnose. Otherwise, administrator can be able to manage the system,
not only adding data, deleting but also updating the newest data.
We expect that this final project can give all information related
to children lunge disease easily and efficiently, but still optimal even in
a small device.
Keywords : mobile device, expert systems, forward and backward
chaining, WAP.
ii
6. KATA PENGANTAR
Puji dan syukur kami ucapkan ke hadirat Tuhan YME , yang
telah memberikan rahmat dan berkat-Nya kepada kami sehingga dapat
menyelesaikan Proyek Akhir ini tepat pada waktunya.
Adapun judul Proyek Akhir ini adalah :
PEMBANGUNAN SISTEM PAKAR PADA
PERANGKAT MOBILE DENGAN WML DAN PHP
UNTUK PENYAKIT PARU PADA ANAK
Proyek Akhir ini dibuat sebagai persyaratan kelulusan pada
program studi di Politeknik Elektronika Negeri Surabaya jurusan
Teknologi Informasi, Institut Teknologi Sepuluh Nopember, Surabaya.
Kami menyadari sepenuhnya bahwa pembuatan Proyek Akhir ini
masih jauh dari kesempurnaan, dikarenakan keterbatasan ilmu
pengetahuan yang kami miliki. Oleh sebab itu kami berharap adanya
saran dan kritik yang membangun sehingga dapat memperbaiki dan
membenahi kekurangan-kekurangan yang ada.
Akhir kata, semoga buku proyek akhir ini dapat memberi manfaat
serta dapat digunakan sebagai salah satu referensi untuk pengembangan
Proyek Akhir di kemudian hari dan dapat menjadi nilai tambah
khususnya bagi penyusun dan umumnya bagi pembaca.
Surabaya, Agustus 2006
Penyusun
iii
7. UCAPAN TERIMA KASIH
Syukur ke hadirat Tuhan YME atas segala nikmat yang telah
dilimpahkan. Kami menyadari bahwa terwujudnya proyek akhir ini tidak
lepas dari bantuan, bimbingan doa serta dukungan dari berbagai pihak.
Dengan segala kerendahan hati, keikhlasan dan ketulusan, kami
ingin menyampaikan rasa terima kasih dan penghargaan yang sebesar-
besarnya kepada :
1. My Lord, Jesu Christe, for giving me a beautiful life and beautiful
world. Thanks for blessing, be with you I shall never fall.
2. Kedua Orang tua tercinta yang membesarkan kami dengan penuh
kasih sayang, perjuangan dan pengorbanan serta doa yang selalu
ditujukan demi kesuksesan ananda.
3. Kakak-kakakku yang cerewet tapi baik, makasih untuk segala
’sindirannya’, jadi motivator yang bagus buat bangkit.
4. Bapak Dr. Ir. Titon Dutono, M.Eng, selaku Direktur Politeknik
Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember.
5. Bu Tita Karlita, S.Kom dan Bu Entin Martiana K,S.Kom selaku
dosen pembimbing yang telah meluangkan waktu untuk memberikan
bimbingan, pengarahan, dorongan serta semangat sehingga kami
dapat menyelesaikan Proyek Akhir ini.
6. Bapak Sritusta Sukaridhoto yang telah membantu proses peng-
upload-an proyek akhir ini, maaf Pak banyak merepotkan.
7. Alfante Syafa’at, the one who always giving me his trust for
throughing these all. No words can say how much I thank to you,
your patience, advice, love and understand will always be the
greatest part in my live. I dedicated this for you just to fulfill my
promise, and you can see now, I did it.“Ich werden dich immer
Lieben, ich sehr verlangen. ”
8. My sisters, ‘Animal Kingdoms’ family, you are the greatest, I love
you all. Wish you all the best.
9. Si papi, Ujang Fajar, yg selalu anterin aq pulang kalo kemaleman di
kampus, pinjemin komputernya, nemenin beli roti ‘goyeng’, makan
soto, ngehibur aq pas sedih or seneng, dan smuanya. Good luck for
you bro’,I know u can do it. Thanks for everything, you are more
than just my friend, my brother.
iv
8. 10. Si Dodol, Doni, makasih ya uda jadi ’partner’ selama 3 tahun ini,
bahkan bantuin benerin program ampe jam 2 pagi di lab TA. Wish u
all the best bro’, you are so talented, it’s a blessing.
11. 79’s crew terutama penghuni lantai 3, baik bidadari (Nia, Pu3, Vbri,
Ira, Silvie, Qq, Sophie ’pinguku’, Nupi) maupun bidadaranya (Koko,
Aa’ yang jenius, Agung, Candra ’Parat’, Pras ’Bapet’, Arief ’Cak
Ri’, Mboko, terutama Mas Yoga yang uda mau minjemin HP-nya
tuk TAku), thanx ya uda ijinin aq, ‘penyelundup ilegal’, ngerasain
susah n seneng bareng hadapin TA, kasih sayang kalian, smuanya
yang gak bakal aq lupain seumur hidup. You are the best guys!
12. Para bidadari dan bidadara IT-B’03 lainnya, IT-A’03, D4 IT’03
lainnya, makasih banyak atas dukungan, semangat, dan persahabatan
yang terjalin selama ini, semoga berakhirnya perkuliahan ini, bukan
berarti berakhir pula persahabatan kita. Keep in contact yach,
wherever and whenever you are!
13. Semua dosen, karyawan, mahasiswa-mahasiswi PENS-ITS ataupun
semua pihak yang tidak dapat penyusun sebutkan satu-persatu,
terima kasih atas segala bantuan, dukungan dan doanya.
Penyusun menyadari bahwa “tak ada gading yang tak retak”,
demikian juga dalam penyusunan buku proyek akhir ini, namun
demikian penyusun berharap semoga buku ini dapat memberikan
manfaat bagi kita semua.
Surabaya, Agustus 2006
Penyusun
v
9. DAFTAR ISI
ABSTRAK....................................................................................... i
KATA PENGANTAR..................................................................... iii
UCAPAN TERIMA KASIH........................................................... iv
DAFTAR ISI................................................................................... vi
DAFTAR GAMBAR...................................................................... viii
DAFTAR TABEL........................................................................... xi
BAB I PENDAHULUAN
1.1 Latar Belakang......................................................................... 1
1.2 Permasalahan........................................................................... 2
1.3 Batasan Masalah...................................................................... 2
1.4 Tujuan Proyek Akhir................................................................ 2
1.5 Metode Proyek Akhir............................................................... 3
1.6 Sistematika Pembahasan.......................................................... 4
BAB II DASAR TEORI
2.1 Kecerdasan Buatan.................................................................... 6
2.2 Sistem Pakar.............................................................................. 6
2.2.1 Ciri-ciri Sistem Pakar...................................................... 7
2.2.2 Keuntungan Sistem Pakar............................................... 7
2.2.3 Kelemahan Sistem Pakar................................................. 8
2.2.2 Alasan Pengembangan Sistem Pakar............................... 8
2.2.3 Modul Penyusun Sistem Pakar........................................ 8
2.2.4 Struktur Sistem Pakar...................................................... 9
2.2.5 Teknik Representasi Pengetahuan................................... 10
2.2.6 Inferencing dengan Rule : Forward dan Backward
Chaining............................................................................ 11
2.3 Wireless Application Protocol (WAP)...................................... 11
2.3.1 Apa itu WAP?.................................................................. 12
2.3.2 Mengembangkan Aplikasi WAP..................................... 12
2.3.2.1 Pengembangan Aplikasi WAP dengan PHP.......... 16
2.3.2.2 Interaksi PHP dengan MySQL 18
BAB III PERANCANGAN DAN PEMBUATAN
PERANGKAT LUNAK
3.1 Rancangan Umum……………………………………………. 19
3.2 Uraian Perancangan Sistem...................................................... 20
3.2.1 Perancangan Data............................................................. 20
vi
10. 3.2.1.1 Data-Data Penyakit dan Gejala Klinisnya.............. 24
3.2.1.2 Penyusunan Basis Data........................................... 25
3.2.1.2.1 Pembuatan Tabel..................................... 28
3.2.1.2.2 Pembuatan Relasi Antar Tabel................ 29
3.2.2 Perancangan Proses........................................................ 29
3.2.2.1 Diagram Alir Sistem............................................. 36
3.2.2.2 Fungsi-fungsi yang Digunakan dalam Sistem....... 39
3.2.3 Perancangan AntarMuka................................................ 39
3.2.3.1 Pembuatan Tree..................................................... 41
3.2.3.2 Struktur Data yang digunakan............................... 41
3.2.3.3 Blok Arsitektur Sistem.......................................... 42
3.2.3.3 Desain Homepage.................................................. 43
3.2.3.4 Implementasi Sistem..............................................
BAB IV PENGUJIAN DAN ANALISA
4.1 Pengujian Umum ...................................................................... 45
4.2 Pengujian Sistem....................................................................... 45
4.2.1 Pengujian Sistem User..................................................... 47
4.2.1.1 Pengujian Proses Forward..................................... 49
4.2.1.2 Pengujian Proses Backward.................................. 51
4.2.2 Pengujian Sistem Admin................................................. 53
4.2.2.1 Tambah Data……………………………………. 55
4.2.2.2 Hapus Data............................................................ 60
4.2.2.3 Update Data.......................................................... 63
4.3 Analisa Program....................................................................... 68
BAB V PENUTUP
5.1 Simpulan................................................................................... 71
5.2 Saran......................................................................................... 71
DAFTAR PUSTAKA
LAMPIRAN
BIODATA PENYUSUN
vii
11. DAFTAR GAMBAR
Gambar 2.1 Diagram network pada WAP.................................. 13
Gambar 2.2 Proses komunikasi browser nirkabel dengan
nirkabel...................................................................... 16
Gambar 3.1 Struktur tabel penyakit.............................................. 25
Gambar 3.2 Struktur tabel gejala.................................................. 25
Gambar 3.3 Struktur tabel gejala_penyakit.................................. 26
Gambar 3.4 Struktur tabel pertanyaan......................................... 27
Gambar 3.5 Relationship antar tabel............................................ 28
Gambar 3.6 Diagram alir sistem user........................................... 30
Gambar 3.7 Diagram alir manajemen sistem............................... 32
Gambar 3.8 Diagram alir mode edit tambah data........................ 33
Gambar 3.9 Diagram alir mode edit hapus data.......................... 34
Gambar 3.10 Diagram alir mode edit update data......................... 35
Gambar 3.11 Tampilan proses sistem pakar.................................. 39
Gambar 3.12 Blok Arsitekstur Sistem........................................... 41
Gambar 3.13 Desain Homepage Sistem......................................... 43
Gambar 3.14 Halaman Utama........................................................ 43
Gambar 3.15 Halaman Login......................................................... 44
Gambar 3.16 Menu Utama User.................................................... 44
Gambar 3.17 Menu Utama Admin................................................. 44
Gambar 4.1 Tampilan halaman utama pada emulator WAP........ 46
Gambar 4.2 Tampilan pesan error pada command prompt.......... 46
Gambar 4.3 Tampilan halaman utama pada perangkat mobile.... 46
Gambar 4.4 Tampilan halaman utama lanjutan pada perangkat
mobile....................................................................... 47
Gambar 4.5 Halaman login.......................................................... 47
Gambar 4.6 Menu Utama User Umum......................................... 48
Gambar 4.7 Halaman utama menu Lokasi Rumah Sakit Paru..... 48
Gambar 4.8 Pilihan daerah Lokasi Rumah Sakit Paru................. 48
Gambar 4.9 Informasi Lokasi Rumah Sakit Paru........................ 49
Gambar 4.10 Halaman Utama menu Konsultasi Penyakit............ 49
Gambar 4.11 Tampilan pertanyaan 1 Konsultasi Penyakit............ 50
Gambar 4.12 Menu jawaban pertanyaan....................................... 50
Gambar 4.13 Tampilan pertanyaan 2 Konsultasi Penyakit........... 50
Gambar 4.14 Hasil kesimpulan diagnosa penyakit....................... 51
Gambar 4.15 Halaman Utama menu Macam Penyakit................. 51
Gambar 4.16 Tampilan pilihan Macam Penyakit.......................... 52
Gambar 4.17 Tampilan pilihan Macam Penyakit lanjutan............. 52
Gambar 4.18 Hasil informasi gejala dari suatu penyakit................ 52
viii
12. Gambar 4.19 Menu jawaban why dalam pilihan jawaban.............. 53
Gambar 4.20 Hasil informasi akses menu why.............................. 53
Gambar 4.21 Halaman login admin............................................... 53
Gambar 4.22 Tampilan halaman login admin................................ 54
Gambar 4.23 Tampilan pesan jika password salah........................ 54
Gambar 4.24 Tampilan pesan jika password benar....................... 54
Gambar 4.25 Pilihan proses edit admin......................................... 54
Gambar 4.26 Pilihan proses tambah data....................................... 55
Gambar 4.27 Pilihan tambah gejala pada penyakit tertentu........... 56
Gambar 4.28 Pilihan tambah gejala pada penyakit tertentu
lanjutan...................................................................... 56
Gambar 4.29 Informasi data gejala sebelum ditambahkan............. 56
Gambar 4.30 ID gejala baru............................................................ 57
Gambar 4.31 Nama gejala baru...................................................... 57
Gambar 4.32 Urutan pertanyaan gejala baru.................................. 57
Gambar 4.33 Informasi sistem jika berhasil ditambahkan............. 57
Gambar 4.34 Gejala penyakit baru berhasil ditambahkan............. 58
Gambar 4.35 Informasi ID dan jenis penyakit yang ada................ 59
Gambar 4.36 ID dan nama penyakit yang ditambahkan................ 59
Gambar 4.37 Tampilan pesan sistem jika proses tambah berhasil 59
Gambar 4.38 Halaman hasil proses tambah penyakit.................... 59
Gambar 4.39 Proses pemberian ID dan nama gejala pada
penyakit baru............................................................ 60
Gambar 4.40 Tampilan pesan sistem jika proses insert berhasil.... 60
Gambar 4.41 Halaman hasil penambahan gejala penyakit baru..... 60
Gambar 4.42 Pilihan proses delete data.......................................... 61
Gambar 4.43 Informasi semua gejala beserta IDnya...................... 61
Gambar 4.44 Menuliskan ID gejala yang akan dihapus................. 62
Gambar 4.45 Halaman hasil delete gejala....................................... 62
Gambar 4.46 Informasi semua jenis penyakit paru anak serta
IDnya......................................................................... 63
Gambar 4.47 Menuliskan ID penyakit yang akan dihapus............. 63
Gambar 4.48 Tampilan pesan jika proses delete data berhasil....... 63
Gambar 4.49 Pilihan proses update data......................................... 64
Gambar 4.50 Pilihan proses update data......................................... 64
Gambar 4.51 Informasi semua ID dan gejala yang ada.................. 65
Gambar 4.52 Informasi semua ID dan gejala sebelum
ditambahkan.............................................................. 65
Gambar 4.53 ID gejala yang dipilih............................................... 65
Gambar 4.54 Nama gejala sebelum di-edit.................................... 65
ix
13. Gambar 4.55 Nama gejala yang baru............................................. 66
Gambar 4.56 Pesan yang ditampilkan jika berhasil update............ 66
Gambar 4.57 Halaman hasil update gejala..................................... 66
Gambar 4.58 Informasi semua nama penyakit beserta IDnya........ 67
Gambar 4.59 ID penyakit yang akan di-edit................................... 67
Gambar 4.60 Nama penyakit sebelum di-edit................................. 67
Gambar 4.61 Nama penyakit yang di-edit...................................... 68
Gambar 4.62 Tampilan pesan jika proses update berhasil.............. 68
Gambar 4.63 Halaman hasil proses update nama penyakit............ 68
x
14. DAFTAR TABEL
Tabel 1. Tabel penyakit ………………………………………….. 25
Tabel 2. Tabel gejala_penyakit....................................................... 26
Tabel 3. Tabel penyakit…………………………………………... 27
Tabel 4. Tabel pertanyaan………………………………………... 28
xi
15. BAB I
PENDAHULUAN
1.1 LATAR BELAKANG
Dengan adanya kemajuan teknologi yang semakin pesat,
berpengaruh pula pada perkembangan perangkat mobile saat ini,
sehingga penggunaan perangkat mobile semakin memasyarakat.
Perkembangan ini sangatlah membantu dalam menyajikan informasi
yang cepat dan efisien dengan pengaksesan internet melalui perangkat
mobile tersebut. Meski perangkat mobile merupakan small device
dengan layar penyajian yang sangat terbatas, tetapi penyajian
informasinya pun tidak kalah optimal layaknya informasi yang diakses
dari personal computer, tergantung bagaimana cara penyajiannya.
Seiring perkembangan teknologi, dikembangkan pula suatu
teknologi yang mampu mengadopsi proses dan cara berpikir manusia
yaitu teknologi Artificial Intelligence atau Kecerdasan Buatan. Sistem
Pakar adalah salah satu bagian dari Kecerdasan Buatan yang
mengandung pengetahuan dan pengalaman yang dimasukkan oleh satu
atau banyak pakar ke dalam satu area pengetahuan tertentu sehingga
setiap orang dapat menggunakannya untuk memecahkan berbagai
masalah yang bersifat spesifik, dalam hal ini adalah permasalahan
kesehatan paru anak.
Kesehatan anak adalah dambaan setiap orang tua dalam setiap
keluarga, terlebih mengingat usia anak-anak yang rentan terhadap
penyakit merupakan ketakutan tersendiri bagi orang tua. Ketakutan ini
bukanlah tanpa alasan, karena terkadang kesibukan orang tua
menyebabkan keterlambatan penanganan kesehatan anak sehingga
banyak penderita paru berusia anak-anak berjatuhan bahkan meninggal
dunia. Kebutuhan informasi yang cepat dan tepat dari seorang pakar
kesehatan anak sangatlah dibutuhkan. Hal inilah yang mendorong
pembangunan sebuah sistem pakar kesehatan paru anak untuk
diwujudkan.
Penyampaian informasi pun dilakukan menggunakan perangkat
mobile dengan meminta request dari user. Request tersebut akan
diproses dalam sistem, kemudian hasilnya akan dikirim lagi ke user
dengan ditampilkan pada layar perangkat mobile. Diharapkan sistem ini
1
16. mampu memberikan informasi yang optimal dengan timbal balik dari
user dan sistem.
1.2 PERMASALAHAN
Permasalahan yang timbul dari pembuatan proyek akhir ini
adalah :
• Bagaimana cara membuat sistem pakar menggunakan tree dari
data-data penyakit paru pada anak.
• Bagaimana cara memanage sistem (mengedit, menghapus
ataupun menambahkan data) di dalam sistem pakar.
• Bagaimana cara menyajikan informasi tersebut secara optimal
dan cocok untuk ditampilkan ke dalam small device.
1.3. BATASAN MASALAH
Batasan-batasan maslah yang digunakan dalam proyek akhir ini
adalah :
• Data-data penunjang penyakit paru yang digunakan hanya pada
usia anak-anak saja.
• Perangkat mobile yang digunakan adalah handphone ataupun
PDA phone.
• Pembangunan sistem pakar menggunakan tree dengan metode
inferensi forward dan backward chaining dari data-data
penunjang.
• Penyimpanan data-data penunjang menggunakan database
MySQL.
• Interaksi antara program dan user menggunakan pertanyaan
yang diberikan melalui proses dialog yang memerlukan
jawaban ya atau tidak dari user.
• Bahasa pemrograman yang digunakan menggunakan WML dan
PHP.
1.4 TUJUAN PROYEK AKHIR
Proyek akhir ini bertujuan untuk membangun sebuah sistem
berbasis pengetahuan kedokteran dalam mendiagnosa penyakit paru
pada anak yang dapat ditampilkan dalam perangkat mobile, sehingga
alasan efisiensi waktu dan kurangnya pengetahuan masyarakat akan
kesehatan anak dapat teratasi.
2
17. 1.5 METODE PROYEK AKHIR
Dalam pembuatan proyek akhir ini meliputi langkah-langkah
sebagai berikut :
• Studi literatur.
Dilakukan studi literatur atau tinjauan pustaka tentang
konsep dan teori dasar sistem pakar serta pengembangan
program WAP.
• Pengumpulan data.
Melakukan proses pencarian data-data penunjang mengenai
gejala klinis jenis-jenis penyakit paru anak yang diperoleh
dari survei dan studi pustaka ilmu kesehatan anak.
• Perencanaan sistem.
Perencanaan pembuatan sistem meliputi perencanaan sistem
pakar dalam perancangan tree serta menyusun rule-rule dan
konklusi.
• Penyusunan basis data.
Data-data penunjang yang didapatkan berupa suatu
kesimpulan, fakta-fakta dan aturan yang mengatur proses
pencarian data yang saling berhubungan satu sama lain
disimpan ke dalam basis data MySQL sebagai media
penyimpanan.
• Pembuatan program komputer yang meliputi pembuatan antar
muka dan mesin inferensi.
Pembuatan program dilakukan menggunakan pemrograman
WAP dengan WML dan PHP sebagai aplikasi dalam
menampilkan sistem pakar tersebut ke dalam perangkat
mobile.
• Uji coba sistem.
Pengujian sistem yang telah dibuat dengan menggunakan
emulator WAP ataupun perangkat mobile secara langsung.
• Perbaikan/penambahan data.
Setelah sistem diuji coba dan terjadi beberapa
kekurangan/kelemahan, maka perlu diperbaiki atau diedit
lagi data-data yang ada sehingga sistem yang dibuat lebih
bersifat valid lagi hasilnya.
• Analisa.
3
18. Dari pengujian sistem dan perbaikan/penambahan data dibuat
analisa sistemnya apakah bekerja seperti yang direncanakan.
• Simpulan.
Dibuat kesimpulan dari pengujian sistem proyek akhir
dengan membandingkan apakah hasilnya seperti yang
diharapkan pada tujuan proyek akhir sebelumnya.
1.6 SISTEMATIKA PEMBAHASAN
Sistematika pembahasan yang akan diuraikan dalam buku
laporan proyek akhir ini terbagi dalam beberapa bab yang akan dibahas
sebagai berikut :
BAB I : Pendahuluan.
Bab ini menjelaskan secara umum mengenai latar belakang
masalah, permasalahan dengan batasan-batasan masalah ang
digunakan, tujuan, metode serta sistematika pembahasan
proyek akhir ini.
BAB II : Teori Penunjang.
Bab ini berisi dasar-dasar teoritis kecerdasan buatan dan
sistem pakar untuk melandasi pemecahan masalah serta teori-
teori sehubungan dengan Wireless Application Protocol
(WAP) sebagai teknologi yang digunakan dalam pembuatan
proyek akhir ini.
BAB III : Perancangan dan Pembuatan Perangkat Lunak.
Bab ini membahas tentang perancangan umum maupun
uraian lebih lanjut mengenai perancangan sistem dalam
pembuatan perangkat lunak. Uraian perancangan sistem ini
meliputi perancangan data mengenai data input dan output
sistem, perancangan proses mengenai bagaimana sistem akan
bekerja dengan proses-proses tertentu, maupun perancangan
antar muka dalam desain dan implementasi yang akan
digunakan dalam pembuatan proyek akhir ini.
BAB IV : Pengujian dan Analisa.
Bab ini menjelaskan tentang pengujian sistem secara umum
maupun terperinci. Pengujian sistem secara umum akan
membahas mengenai lingkungan uji coba untuk
4
19. menggunakan sistem ini. Selanjutnya secara lebih terperinci
dijelaskan dalam pengujian sistem meliputi skenario
pengujian baik user umum maupun admin, beserta langkah-
langkah dalam uji coba sistem. Dari seluruh hasil uji coba
tersebut, kemudian dianalisa kembali apakah telah sesuai
dengan tujuan pembuatan pada bab I.
BAB V : Penutup
Bab ini berisi simpulan yang telah didapatkan dari hasil uji
coba sistem dan analisanya mengenai keterkaitan dengan
tujuan pembuatan sistem, dan selanjutnya akan dikemukakan
saran-saran mengenai penggunaan sistem serta bahan
masukan dari penulis bagi rencana pengembangan proyek
akhir untuk masa yang akan datang.
5
20. BAB II
TEORI PENUNJANG
2.1 KECERDASAN BUATAN
Kecerdasan Buatan adalah ide-ide untuk membuat suatu
perangkat lunak komputer yang memiliki kecerdasan sehingga
perangkat lunak komputer tersebut dapat melakukan suatu pekerjaan
yang dilakukan oleh manusia. Adapun pekerjaan itu adalah berupa
konsultasi yang dapat memberikan suatu informasi berupa saran-saran
yang akan sangat berguna.
Kecerdasan Buatan memungkinkan komputer untuk berpikir
dengan cara menyederhanakan program. Dengan cara ini, Kecerdasan
Buatan dapat menirukan proses belajar manusia sehingga informasi baru
dapat diserap dan digunakan sebagai acuan di masa-masa mendatang.
Kecerdasan atau kepandaian itu didapat berdasarkan
pengetahuan dan pengalaman, untuk itu agar perangkat lunak yang
dikembangkan dapat mempunyai kecerdasan maka perngakat lunak
tersebut harus diberi suatu pengetahuan dan kemampuan untuk menalar
dari pengetahuan yang telah didapat dalam menemukan solusi atau
kesimpulan layaknya seorang pakar dalam bidang tertentu yang bersifat
spesifik.
Kecerdasan Buatan menawarkan media dan uji teori
kecerdasan. Teori ini dapat dinyatakan dalam bahasa program komputer
dan dibuktikan melalui eksekusinya pada komputer nyata.
2.2. SISTEM PAKAR
Secara umum, sistem pakar adalah sistem yang berusaha
mengadopsi pengetahuan manusia ke komputer yang dirancang untuk
memodelkan kemampuan menyelesaikan masalah seperti layaknya
seorang pakar. Dengan sistem pakar ini, orang awam pun dapat
menyelesaikan masalahnya atau hanya sekedar mencari suatu informasi
berkualitas yang sebenarnya hanya dapat diperoleh dengan bantuan para
ahli di bidangnya. Sistem pakar ini juga akan dapat membantu aktivitas
6
21. para pakar sebagai asisten yang berpengalaman dan mempunyai asisten
yang berpengalaman dan mempunyai pengetahuan yang dibutuhkan.
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.
2.2.1 Ciri-Ciri Sistem Pakar
Sistem pakar yang baik harus memenuhi ciri-ciri sebagai
berikut :
• Memiliki informasi yang handal.
• Mudah dimodifikasi.
• Dapat digunakan dalam berbagai jenis komputer.
• Memiliki kemampuan untuk belajar beradaptasi.
2.2.2 Keuntungan Sistem Pakar
Secara garis besar, banyak manfaat yang dapat diambil dengan
adanya sistem pakar, antara lain :
1. Memungkinkan orang awam bisa mengerjakan pekerjaan para
ahli.
2. Bisa melakukan proses secara berulang secara otomatis.
3. Menyimpan pengetahuan dan keahlian para pakar.
4. Meningkatkan output dan produktivitas.
5. 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 reabilitas.
10. Meningkatkan kapabilitas sistem komputer.
11. Memiliki kemampuan untuk bekerja dengan informasi yang
tidak lengkap dan mengandung ketidakpastian.
12. Sebagai media pelengkap dalam pelatihan.
13. Meningkatkan kapabilitas dalam penyelesaian masalah.
14. Menghemat waktu dalam pengambilan keputusan.
7
22. 2.2.3 Kelemahan Sistem Pakar
Di samping 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 di bidangnya.
3. Sistem Pakar tidak 100% bernilai benar.
2.2.4 Alasan Pengembangan Sistem Pakar
Sistem pakar sendiri dikembangkan lebih lanjut dengan alasan :
• Dapat menyediakan kepakaran setiap waktu dan di berbagai
lokasi.
• Secara otomatis mengerjakan tugas-tugas rutin yang
membutuhkan seorang pakar.
• Seorang pakar akan pensiun atau pergi.
• Seorang pakar adalah mahal.
• Kepakaran dibutuhkan juga pada lingkungan yang tidak
bersahabat.
2.2.5 Modul Penyusun Sistem Pakar
Menurut Staugaard (1987) suatu sistem pakar disusun oleh tiga
modul utama yaitu :
1. 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.
2. Modul Konsultasi (Consultation Mode)
Pada saat sistem berada pada posisi memberikan
jawaban atas permasalahan yang diajukan oleh user, sistem
pakar berada dalam modul konsultasi. Pada modul ini, user
8
23. berinteraksi dengan sistem dengan menjawab pertanyaan-
pertanyaan yang diajukan oleh sistem.
3. Modul Penjelasan (Explanation Mode)
Modul ini menjelaskan proses pengambilan keputusan
oleh sistem (bagaimana suatu keputusan dapat diperoleh).
2.2.6 Struktur Sistem Pakar
Komponen utama pada struktur sistem pakar menurut 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.
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 forward chaining, backward chaining, dan gabungan
dari kedua tehnik pengendalian tersebut.
3. Basis Data (Data Base)
9
24. 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 komputer.
2.2.7 Teknik Representasi Pengetahuan
Representasi pengetahuan adalah suatu teknik untuk
merepresentasikan basis pengetahuan yang diperoleh ke dalam suatu
skema/diagram tertentu sehingga dapat diketahui relasi/keterhubungan
antara suatu data dengan data yang lain. Teknik ini membantu
knowledge engineer dalam memahami struktur pengetahuan yang akan
dibuat sistem pakarnya.
Terdapat beberapa teknik representasi pengetahuan yang biasa
digunakan dalam pengembangan suatu sistem pakar, yaitu :
1. Rule-Based Knowledge
Pengetahuan direpresentasikan dalam suatu bentuk fakta
(facts) dan aturan (rules). Bentuk representasi ini terdiri atas
premise dan kesimpulan.
2. Frame-Based Knowledge
Pengetahuan direpresentasikan dalam suatu bentuk hirarki
atau jaringan frame.
3. Object-Based Knowledge
Pengetahuan direpresentasikan sebagai jaringan dari obyek-
obyek. Obyek adalah elemen data yang terdiri dari data dan
metoda (proses).
4. Case-Base Reasoning
Pengetahuan direpresentasikan dalam bentuk kesimpulan
kasus (cases).
10
25. 2.2.8 Inferencing dengan Rule : Forward dan Backward Chaining
Inferensi dengan rules merupakan implementasi dari modus
ponen, yang direfleksikan dalam mekanisme search (pencarian). Dapat
pula mengecek semua rule pada knowledge base dalam arah forward
maupun backward. Proses pencarian berlanjut sampai tidak ada rule
yang dapat digunakan atau sampai sebuah tujuan (goal) tercapai.
Ada dua metode inferencing dengan rules, yaitu forward
chaining atau data-driven dan backward chaining atau goal-driven.
a. Backward chaining
• Menggunakan pendekatan goal-driven, dimulai dari
ekspektasi apa yang diinginkan terjadi (hipotesis),
kemudian mengecek pada sebab-sebab yang mendukung
(ataupun kontradiktif) dari ekspektasi tersebut.
• Jika suatu aplikasi menghasilkan tree yang sempit dan
cukup dalam, maka gunakan backward chaining.
b. Forward chaining
• Forward chaining merupakan grup dari multiple inferensi
yang melakukan pencarian dari suatu maslah kepada
solusinya.
• Jika klausa premis sesuai dengan situasi (bernilai TRUE),
maka proses akan meng-assert konklusi.
• Forward chaining adalah data-driven karena inferensi
dimulai dengan informasi yang tersedia dan baru konklusi
diperoleh.
• Jika suatu aplikasi menghasilkan tree yang lebar dan tidak
dalam, maka gunakan forward chaining.
2.3 WIRELESS APPLICATION PROTOCOL (WAP)
Internet, sejak pertengahan tahun 1990-an hingga kini, telah
mengubah cara kita berkomunikasi dan berinteraksi. Internet
memungkinkan terjadinya pertukaran informasi secara cepat dalam
lingkup yang global, yaitu dunia. Informasi kemudian menjadi wilayah
publik, dapat diakses dari manapun.
Perkembangan sistem komunikasi personal nirkabel (wireless)
yang pesat telah membangkitkan gagasan-gagasan tentang akses internet
dan informasi dari perangkat komunikasi personal nirkabel dengan
tingkat mobilitas tinggi. Bagaimana bisa? Teknologi Wireless Aplication
11
26. Protocol (WAP) merupakan sinergi dari kombinasi internet dan dunia
komunikasi nirkabel.
2.3.1 Apa itu WAP ?
Wireless Application Protocol (WAP) merupakan protokol bagi
perangkat-perangkat nirkabel yang menyediakan layanan komunikasi
data bagi pengguna, baik dalam bentuk yang berhubungan dengan
telekomunikasi maupun aplikasi-aplikasi berorientasi internet.
Struktur WAP mengadopsi topologi layer-layer yang ada pada
Internet Protocol (model TCP/IP). Ini terkait dengan tujuan dibuatnya
WAP, yaitu memberikan akses internet bagi alat komunikasi mobile
nirkabel.
Protokol mengatur bagaimana format paket data dan layanan-
layanan terhadap paket data pada setiap layer, bagaimana suatu layer
memberikan layanan kepada layer lain yang berada di atasnya.
2.3.2 Mengembangkan Aplikasi WAP
Pengembangan aplikasi WAP dilakukan dalam suatu
lingkungan kerja yang disebut Wireless Application Environment
(WAE). Inti dari WAE ini terdiri dari Wireless Markup Language
(WML) dan Wireless Markup Language Script (WMLScript).
Untuk menjangkau dunia internet, sebuah ponsel dengan
teknologi WAP harus berjalan via WAP Gateway. WAP Gateway ini
bertindak sebagai perantara, menghubungkan jaringan mobile dan
internet dengan menerjemahkan Hypertext TransferProtocol (HTTP)
menjadi Wireless Session Protocol (WSP). Gambar di bawah ini
menunjukkan skema sederhana hubungan antara web server, gateway
dan ponsel dengan WAP.
WML Binary WML
User Agent
Web Server WAP Gateway
Gambar 2.1 Diagram network pada WAP
12
27. Web server melayani permintaan dari user melalui ponsel untuk
sebuah aplikasi WAP. Hubungan ini dilakukan melalui perantara WAP
Gateway. Aplikasi dalam WAP dibentuk dalam format WML. Untuk
menjalankan suatu aplikasi WAP, sama halnya dengan internet biasa.
Kita tinggal mengetikkan URL yang dikehendaki, misalnya :
http://mobileinternet.ericsson.com. Karena itu, untuk membuat aplikasi
WAP yang kita butuhkan adalah sebuah web server untuk menangani
permintaan user akan aplikasi WAP, misalnya Apache, Microsoft
Internet Information Service (IIS), ataupun PWS (Personal Web Server).
WML merupakan bahasa mark-up yang berbasis pada
Extensible Markup Language (XML). WML adalah analogi dari HTML
yang berjalan pada protokol nirkabel. Tag-tag pada WML mirip dengan
tag-tag yang ada pada HTML .
Data WML terstruktur dalam bentuk koleksi kartu atau card.
Sebuah koleksi card disebut deck. Tiap deck tersusun dari isi yang
terstruktur dan spesifikasi navigasi. Pengguna melakukan navigasi
dalam susunan card, melihat isi tiap card, mengisi informasi yang
dibutuhkan, membuat pilihan dan bernavigasi ke card selanjutnya atau
kembali ke card sebelumnya.
Dalam HTML, user interface ditampilkan dalam bentuk
halaman-halaman hypertext. Navigasi dilakukan pengguna dalam card-
card tersebut seperti halnya navigasi pada halaman-halaman HTML di
mana dalam card pada suatu deck dapat memiliki hyperlink ke card yang
lain.
Jika WML merupakan analogi dari HTML pada media
nirkabel, maka WMLScript merupakan analogi yang tepat dari
JavaScript. WMLScript, seperti halnya JavaScript, berjalan pada sisi
client (client side scripting). Bedanya, WMLScript tidak dpat
ditempatkan menjadi satu dengan halaman WML yang menggunkan
fungsi-fungsi dari WMLScript.
Fungsi-fungsi WMLScript yang akan digunakan oleh halaman
WML ditempatkan dalam file yang terpisah. Pemisahan ini memberikan
suatu keuntungan, yaitu dalam fokus pembuatan aplikasi. Jika kita
bekerja dengan halaman WML, maka kita hanya berfokus pada isi atau
user interface halaman yang kita inginkan. Dengan WMLScript, kita
berfokus pada pembuatan prosedur atau fungsi dari logika
pemrograman.
Aplikasi WML yang kita buat dapat diakses menggunakan
browser ang disebut dengan user agent (UA). UA mendownload
13
28. halaman WML dan atau WMLScript yang dibutuhkan dan merender
halaman tersebut. Hasil render halaman WML amat bergantung pada
tipe perangkat yang digunakan. Dan tampilan yang diperoleh mungkin
berbeda antara ponsel dengan kemampuan grafis yang baik dengan yang
hanya mendukung modus teks.
a. Prolog WML
Statemen pertama dalam sebuah dokumen XML dalam sebuah
dokumen WML disebut prolog. prolog ini adalah optional (tidak harus
ada), dan mengandung dua baris kode:
• Deklarasi XML: digunakan untuk mendefinisikan versi XML
• Deklarasi DTD: penunjuk ke file yang mengandung DTD
dokumen ini.
Contoh prolog adalah sebagai berikut:
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">
Setelah prolog, setiap dokumen XML mengandung sebuah
elemen tunggal yang mengandung semua sub elemen dan entity yang
lainnya. Seperti kalau di HTML, semua elemen dikurung oleh karakter
<> dan </>. Misal :
<element>datadatadata</element>
Hanya boleh ada satu elemen dokumen per dokumen. Dengan
WML, elemen dokumennya adalah <wml>; (seperti di html elemen
dokumennya adalah <html>) semua elemen lainnya termasuk di
dalamnya. Dua cara paling umum untuk menyimpan data dalam
dokumen XML adalah dengan element dan attribute.
• Element adalah item-item berstruktur dalam dokumen tersebut
yang ditandai dengan tag elemen pembuka dan penutup.
Element juga dapat mengandung sub-element.
14
29. • Attribute biasanya digunakan untuk mendeskripsikan sebuah
elemen.
Contoh, misalkan ada kode spt ini:
<!-- Ini kartu login -->
<card id="LoginCard" title="Login">
Silakan pilih nama user anda.
</card>
Dalam kode di atas, element card mengandung attribute id dan title.
(Catatan: komentar di WML mirip dengan HTML tetapi harus tampil
dalam tag <!-- -->.
b. Element WML yang Valid
WML mendefinisikan sebelumnya sebuah kumpulan element
yang dapat dikombinasikan bersama-sama untuk membuat sebuah
dokumen WML. Pencantuman Elemen-elemen ini dapat dibagi menjadi
dua kelompok: - Element Deck/Card; dan - Element Event.
• Element Deck/Card : wml, card, template, head, access, meta.
• Element Event : do, ontimer, onenterforward,
onenterbackward, onpick, onevent, postfield.
• Task : go, prev, refresh, noop.
• Variabel : setvar
• User input : input, select, option, optgroup, fieldset.
• Anchor, Image, dan Timer : a, anchor, img, timer.
• Text Formatting : br, p, table, tr, td.
Setiap elemen di atas dimasukkan ke dalam dokumen dengan
sintaks seperti ini:
<element>nilai elemen itu</element>
Jika sebuah elemen tidak punya data di dalamnya (sebagaimana
biasanya dalam kasus menformat elemen dengan <br> misalnya), kita
dapat menghemat dengan hanya memasukkan satu tag yang ditambahi
karakter / (misal: <br/>)
2.3.2.1 Pengembangan Aplikasi WAP dengan PHP
15
30. Untuk membuat aplikasi WAP menjadi lebih dinamis dan
interaktif, yang mampu memberikan dan menerima respon dari dan ke
pengakses, kita dapat menggunakan bahasa-bahasa script yang berjalan
pada sisi server (server side-scripting). Dalam proyek akhir ini kita akan
menggunakan PHP ( PHP Hypertext Processor), bahasa script server-
side yang tangguh, populer di internet dan gratis untuk memberi unsur
dinamik dan interaktif pada aplikasi WAP.
Pada prinsipnya, komunikasi antara web server dengan
perangkat WAP sesama dengan hubungan antara web server dengan
browser berbasis PC, hanya saja dalam hal ini ada satu tahap tambahan.
Tahap ekstra yang dibutuhkan adalah transfer informasi oleh WAP
gateway. WAP gateway bertindak sebagai perantara antara browser
nirkabel dengan server tempat informasi berada.
WIRELESS MOBILE SERVICES PROVIDER INTERNET
NETWORK
WEB SERVER
WAP
GATEWAY
PHP
Perangkat
Mobile
MySQL
DATABASE
Gambar 2.2 Proses komunikasi browser nirkabel dengan web server
Yang berperan sebagai WAP gateway biasanya adalah
perusahaan telekomunikasi yang menyediakan layanan telepon nirkabel
atau telepon seluler. Misalkan kita telah membuat sebuah deck yang
berisi dua buah card. Kemudian user dengan perangkat nirkabelnya
melakukan permintaan atau request terhadap deck tersebut. Maka, urut-
urutan event yang terjadi untuk permintaan user tersebut adalah sebagai
berikut :
1. Request dikirimkan ke WAP gateway dengan protokol WAP.
WAP gateway, di bawah “kendali” dari perangkat WAP,
16
31. melakukan request untuk URL tertentu dengan menggunakan
protocol HTTP.
2. Request ditransmisikan via internet ke alamat IP dari perangkat
WAP (alamat IP dari suatu perangkat WAP ditentukan oleh
operator).
3. Request mencapai tujuan akhirnya, yaitu web server. Server
membaca header dan memproses permintaan dokumen WAP.
Kode program PHP yang terdapat dalam dokumen ini
dikompilasi dan diformat sesuai dengan kebutuhan.
4. Dokumen atau deck WAP yang telah diproses ini dikirimkan
kembali melalui WAP gateway. Pada gateway, isi dari deck
dikompres menjadi data biner dan dikirimkan ke perangkat
WAP.
Adalah mungkin (dan sangat mudah) untuk menambahkan
unsur dinamik ke dalam WML dengan PHP. Pengembangan aplikasi
WAP dengan PHP memungkinkan kita membuat aplikasi seperti
database, mailserver, pengiriman pesan, dll. Supaya script PHP dapat
didukung oleh perangkat WAP, script ini harus menghasilkan output
header WML kepada client. Karena itu, setiap dokumen WML yang
berisi kode PHP harus menyertakan baris-baris berikut yang
ditempatkan pada awal deck :
<?php
//mengirim header
header(”Content-type:text/vnd.wap.wml”);
echo(“<?xml version=”1.0”?>”);
echo(”<!DOCTYPE wml PUBLIC ”-//WAPFORUM//DTD WML
1.1//EN””http://www.wapforum.org/DTD/wml_1.1.xml”>”;
?>
Deklarasi ini diperlukan karena PHP secara default mengirim baris
Content-type: text/html.
2.3.2.2 Interaksi PHP dengan MySQL
Komunikasi antara user dengan WAP browser dengan web
server dapat menjadi lebih interaktif dengan penggunaan database.
Dengan adanya PHP yang bekerja pada sisi server, komunikasi interaktif
dapat dilakukan dengan antara user dengan server, baik Apache sebagai
web server maupun database server MySQL. User yang mengakses
17
32. dapat memperoleh data atau informasi dari server dan server dapat
menyimpan data yang dikirimkan user dalam database MySQL
Database yang dipakai adalah MySQL dengan beberapa alasan,
antara lain karena MySQL gratis dan mudah dipelajari. Dalam PHP
terdapat banyak fungsi yang digunakan sebagai penghubung atau
antarmuka dengan MySQL sehingga data dalam database dapat dilihat
dari internet. Banyak situs di internet yang menggunakan PHP-MySQL
dalam mengembangkan situsnya.
18
33. BAB III
PERANCANGAN DAN PEMBUATAN
PERANGKAT LUNAK
3.1 RANCANGAN UMUM
Prosedur perancangan sistem secara umum untuk pembangunan
sistem pakar pada perangkat mobile dengan WML dan PHP untuk
penyakit paru pada anak ini terdiri atas beberapa tahap, antara lain
meliputi perancangan :
1. Data
Perancangan data yang dimaksudkan adalah perancangan
data-data yang berkaitan dengan pembuatan perangkat
lunak, meliputi :
• Data input
Termasuk di dalamnya data-data penunjang
sebagai inputan pembuatan sistem.
• Data output
Dari data input di atas, bagaimana sistem akan
menggunakannya hingga didapatkan data baru
sebagai output sistem.
2. Proses
Perancangan proses yang dimaksudkan adalah bagaimana
sistem akan bekerja, proses-proses apa yang digunakan,
mulai dari masuknya data input yang kemudian diproses
oleh sistem hingga menjadi data output.
3. Antarmuka
Perancangan antarmuka disini mengandung penjelasan
tentang penggunaan tree dan keterangannya serta struktur
data yang kita gunakan dalam sistem yang kita buat.
3.2 URAIAN PERANCANGAN SISTEM
Perancangan sistem ini terdiri atas beberapa tahap yang akan
diuraikan pada sub bab di bawah ini.
19
34. 3.2.1 Perancangan Data
Dalam perancangan data, akan dijelaskan bagaimana
data-data yang terdapat dalam sistem sesuai dengan fungsinya
sebagai data input ataupun data output sistem.
3.2.1.1 Data-Data Penyakit dan Gejala Klinisnya
1. Bronkitis
Gejala klinis :
• batuk kering
• batuk berdahak setelah 2-3 hari
• suara ada lendir
• dahak kental dan kuning
• sesak napas
• mengeluh rasa sakit retrostenal
• mengi
2. Asma Episodik Jarang
Gejala klinis :
• sesak napas
• mengi selama 3-4 hari
• batuk selama 10-14 hari
• produksi lendir berlebihan
• terdapat pada usia 3-6 tahun
• serangan 3-4x setahun
• gejala timbul di malam hari
3. Asma Episodik Sering
Gejala klinis :
• sesak napas
• mengi
• batuk
• produksi lendir berlebihan
• gejala timbul di malam hari
• terjadi pada umur < 3 tahun, dan 8-13 tahun
• serangan 3-4x setahun
• hay fever
4. Asma Kronik/Persisten
Gejala klinis :
• terjadi pada umur 6 bulan atau <3 tahun
• gejala timbul di malam hari
20
35. • gangguan pertumbuhan
• sesak napas
• mengi tiap hari
• batuk
• produksi lendir berlebihan
5. Asma Episodik Berat dan Berulang
Gejala klinis :
• sesak napas
• mengi
• batuk
• produksi lendir berlebihan
• ISPA (infeksi saluran napas atas)
• pada anak kecil dan umur sebelum sekolah
6. Asma Persisten pada Bayi
Gejala klinis :
• sesak napas
• mengi dengan takhipnu selama beberapa hari
atau beberapa minggu
• batuk
• produksi lendir berlebihan
• umur 3-12 bulan
7. Asma Hipersekresi
Gejala klinis :
• sesak napas
• mengi
• batuk
• produksi lendir berlebihan
• suara napas berderak
• terdapat pada anak kecil dan umur permulaan
sekolah
8. Asma karena Beban Fisik
Gejala klinis :
• sesak napas
• mengi
• batuk
• produksi lendir berlebihan
• setelah melakukan kegiatan fisik
9. Asma dengan Alergen
Gejala klinis :
21
36. • sesak napas
• mengi
• batuk malam keras dan kering
• batuk terjadi pada jam 1-4 pagi
• produksi lendir berlebihan
• pada umur 2-6 tahun
10. Batuk Malam
Gejala klinis :
• sesak napas
• mengi
• batuk
• produksi lendir berlebihan
• asma pada jam 1-4 pagi
11. Asma Buruk di Pagi Hari
Gejala klinis :
• terjadi pada anak kecil dan bayi
• suhu naik mendadak sampai 39-400 C
• disertai kejang demam yang tinggi
• anak gelisah
• pernapasan cepat dan dangkal
• pernapasan cuping hidung
• sianosis sekitar hidung dan mulut
• disertai muntah dan diare
12. Bronkopneumonia
Gejala klinis :
• badan menggigil
• bayi kejang
• suhu naik sampai 39-400 C
• sesak napas
• pernapasan cuping hidung
• sianosis sekitar hidung dan mulut
• nyeri pada dada
• batuk mula-mula kering dan berdahak
• anak lebih suka tiduran pada sebelah dada yang
terkena
13. Pneumonia Lobaris
Gejala klinis :
22
37. • ISPA
• batuk pilek
• sesak napas
• pernapasan dangkal dan cepat
• anak gelisah,
• sianotik
• pernapasan cuping hidung
• mengi
14. Bronkiolitis Akut
Gejala klinis :
• disebabkan oleh penyakit lain seperti : asma,
bronkitis, bronkopneumonia
15. Atelektasis
Gejala klinis :
• terjadi 24 jam setelah operasi
• dispnu (sesak napas)
• sianosis (kebiruan)
• takikardia (nadi cepat)
• nyeri dada
• gelisah
• kenaikan suhu badan
16. Atelektasis Masif
Gejala klinis :
• dispnu ekspirator
• ronki basah dan nyaring
17. Emfisema Obstruktif
Gejala klinis :
• krepitasi (ada udara) di daerah kulit yang
emfisematis
18. Emfisema Bulosa
Gejala klinis :
• nyeri di sisi toraks yang terkena
• dispnu
• batuk
• bersin
• karena latihan jasmani yang berat
19. Pneumotoraks
Gejala klinis :
• sesak napas
23
38. • mengi
• batuk
• suara adanya lendir
• setelah melakukan kegiatan fisik yang berlebihan
20. Empiema Torasis
Gejala klinis :
• suhu mendadak tinggi
• takikardia
• dispnea
• sianosis
• batuk-batuk
• tampak sakit berat
• demam remiten
Data-data di atas adalah data tentang berbagai jeins
penyakit paru pada anak beserta gejala-gejala klinis yang
ditimbulkannya. Data tersebut merupakan data awal sebagai
inputan dari sistem sebelum diproses menjadi data output.
3.2.1.2 Penyusunan Basis Data
Basis Data merupakan suatu media penyimpanan yang
digunakan untuk menyimpan data-data penunjang sebagai
inputan sistem dan kemudian diolah menjadi data output
sistem. Basis Data yang dibuat pada proyek akhir ini
menggunakan MySQL.
Di bawah ini adalah tahap-tahap penyusunan basis
data yang digunakan:
3.2.1.2.1 Pembuatan Tabel
a. Desain tabel penyakit
24
39. Gambar 3.1 Struktur tabel penyakit
Tabel penyakit digunakan untuk menyimpan data jenis-jenis
penyakit paru pada anak.
Field id_p merupakan nilai id yang diset sebagai primary key
pada tabel penyakit.
Field nama_peny merupakan keterangan nama jenis penyakit
paru pada anak.
Contoh tabel :
Tabel 1. Tabel Penyakit
b. Desain tabel gejala
Gambar 3.2 Struktur tabel gejala
Tabel gejala digunakan untuk menyimpan data berbagai macam
gejala klinis penyakit paru pada anak.
Field id_g merupakan nilai id yang diset sebagai primary key
pada tabel gejala.
25
40. Field gejala_peny merupakan keterangan nama jenis penyakit
paru pada anak.
Contoh tabel :
Tabel 2. Tabel gejala_penyakit
c. Desain tabel gejala_penyakit
Gambar 3.3 Struktur tabel gejala_penyakit
Tabel gejala_penyakit digunakan untuk menampung rule jenis
penyakit yang berhubungan dengan berbagai macam gejala klinis
penyakit paru pada anak.
Field id_p merupakan foreign key yang berhubungan dengan
id_p pada tabel penyakit.
Field id_g merupakan foreign key yang berhubungan dengan
id_g pada tabel gejala.
Contoh tabel :
Tabel 3. Tabel penyakit
26
41. d. Desain tabel pertanyaan
Gambar 3.4 Struktur tabel pertanyaan
Tabel pertanyaan digunakan untuk mengatur rule berupa gejala
yang akan ditampilkan sebagai pertanyaan sesuai kode yang saling
berhubungan untuk didapatkan suatu kesimpulan.
Field Kode merupakan kode tiap pertanyaan yang akan
ditampilkan.
Field tny_sblm merupakan kode dari pertanyaan yang telah
diajukan sebelumnya.
Field tny_skrg merupakan id gejala yang akan ditampilkan
sebagai pertanyaan untuk user.
Field tny_ya merupakan kode pertanyaan selanjutnya jika pada
pertanyaan saat ini memilih jawaban ’Yes’.
Field tny_tdk merupakan kode pertanyaan selanjutnya jika
pada pertanyaan saat ini memilih jawaban ’No’.
Contoh tabel :
Tabel 4. Tabel pertanyaan
27
42. 3.2.1.2.2 Pembuatan Relasi Antar Tabel
Setelah tabel dibuat, maka tabel-tabel tersebut akan
direlasikan. Hal ini akan sangat berguna dalam proses
pengeditan data.
Tabel pertanyaan akan berelasi dengan tabel gejala dan
tabel penyakit.
Tabel gejala akan berelasi dengan tabel pertanyaan dan
tabel gejala_penyakit.
Tabel penyakit akan berelasi dengan tabel pertanyaan
dan tabel gejala_penyakit.
Tabel gejala_penyakit akan berelasi dengan tabel gejala
dan tabel penyakit.
Di bawah ini adalah skema relasi antar tabel yang telah
kita buat pada database sebelumnya.
gejala
pertanyaan
id_g gejala_penyakit
gejala_peny
Kode
tny_sblm
tny_skrg id_g
tny_ya id_p
tny_tdk penyakit
id_p
nama_peny
Gambar 3.5 Relationship antar tabel
3.2.2 Perancangan Proses
28
43. Perancangan proses akan menjelaskan bagaimana sistem bekerja
untuk mengolah data input menjadi data output dengan fungsi-fungsi
yang telah direncanakan. Untuk perlu diketahui, bahwa sistem ini akan
digunakan oleh dua user, yaitu user penderita (umum) dan user
administrator.
3.2.2.1 Diagram Alir Sistem
Di bawah ini akan ditampilkan diagram alir sistem user
menggunakan metode forward dan backward chaining, serta diagram
alir manajemen sistem dalam mengedit data melalui proses tambah,
hapus atau update data.
a. Diagram Alir Sistem User
Diagram alir sistem user adalah diagram yang
menunjukkan bagaimana aliran proses yang terjadi dalam
sistem user. Bagaimana aliran proses jika menggunakan
metode backward/forward chaining akan dijelaskan lebih
lanjut di dalam sub bab ini.
29
44. START
Pilih Metode
BW
FW/BW Pilih Jenis Penyakit
FW
Select Query→
id_p,tabel=”penyakit”
tny_skrg → Kode() id_g,id_p,tabel=”gejala
tny_ya=Kode(),tabel=”pertanyaan” _penyakit”
tny_tdk=Kode(),tabel=”pertanyaan” id g,tabel=”gejala”
Tampil tny skrg()
T Hasil
Answer
Y
Kode(), tny_ya= Kode()
Tabel=”pertanyaan”
Kode(), tny_tdk= Kode()
Tabel=”pertanyaan”
Nama_peny
Tabel “Penyakit”
Hasil
Ulang END
Gambar 3.6 Diagram alir sistem user
30
45. Dari diagram alir di atas, dapat dijelaskan langkah-langkah
proses yang dilakukan adalah sebagai berikut :
Saat kita mulai menjalankan sistem, kita berada pada posisi
START. Kemudian kita pilih metode yang akan digunakan. Pilihan
metode berupa FW untuk representasi Forward Chaining dan BW untuk
representasi Backward Chaining.
Bila memilih metode BW, selanjutnya kita akan memilih jenis
penyakit yang kita inginkan. Dari jenis penyakit yang kita pilih tersebut,
sistem akan melakukan query select id_p pada tabel penyakit,id_g dan
id_p pada tabel gejala_penyakit, yang kemudian diquerykan dengan
id_g paad tabel gejala. Maka, akan didapatkan hasil gejala-gejala klinis
yang berhubungan dnegan penyakit yang kita pilih sebelumnya.
Bila memilih metode FW,pertama kali kita akan melakukan
select kode pertama pada tabel pertanyaan. Dari hasil select tersebut,
akan ditampilkan gejala pada tny_skrg milik tabel pertanyaan kode
pertama. Kemudian user menginputkan jawaban Ya (Yes) atau Tidak
(No).
Jika user menginputkan jawaban Ya, maka sistem akan menuju
pada kode untuk tny_ya dari kode sebelumnya. Apabila pada kode
sekarang didapatkan bahwa tny_ya berisi kode penyakit, maka
melakukan select nama_peny pada tabel penyakit. Sehingga
didapatkanlah hasil nama penyakit yang didiagnosa.
Jika user menginputkan jawaban Tidak, maka sistem akan
menuju pada kode untuk tny_tdk dari kode sebelumnya. Apabila pada
kode sekarang didapatkan bahwa tny_tdk berisi kode penyakit, maka
melakukan select nama_peny pada tabel penyakit. Sehingga
didapatkanlah hasil nama penyakit yang didiagnosa.
Apabila saat user memilih jawaban ya/tidak bukan didapatkan
id penyakit tetapi kode pertanyaan selanjutnya, maka kembali ke proses
awal FW. Jika sebaliknya, menuju ke posisi END.
31
46. b. Diagram Alir Manajemen Sistem
start
1 Pilih mode 2
edit
3
4
end
Gambar 3.7 Diagram alir manajemen sistem
Dari diagram alir di atas, dapat dijelaskan langkah-langkah
proses yang dilakukan adalah sebagai berikut :
Saat kita mulai menjalankan sistem, kita berada pada posisi
START. Selanjutnya, admin akan diberi pilihan mode edit yang akan
digunakan. Mode edit yang tersedia adalah tambah, hapus dan update
data.
Setelah melalui proses-proses edit yang dipilih, maka tiap-tiap
mode edit akan berakhir pada posisi END sebagai tanda pengakhiran
program.
1. Mode Edit Tambah Data
32
47. 1
penyakit
gejala
Input id_p, nama
tambah Select tabel
penyakit
“penyakit”
Input id_g, nama
Create new penyakit,
gejala
Tabel=”penyakit”,Tabel=”pertanyaan”
hasil Create new gejala,
Tabel=”gejala”,
Tabel=”gejala_penyakit”,
Input id_g, nama Tabel=”pertanyaan”
gejala
hasil 4
Create new gejala,
Tabel=”gejala”,
Tabel=”gejala_penyakit”,Tabel =”pertanyaan”
hasil
Gambar 3.8 Diagram alir mode edit tambah data
Dari diagram alir di atas, dapat dijelaskan langkah-langkah
proses yang dilakukan adalah sebagai berikut :
Admin akan diberi pilihan untuk menambah gejala atau
penyakit dengan gejalanya. Penambahan penyakit yang baru haruslah
diikuti pengisian gejala yang baru pula.
Bila memilih untuk menambah gejala yang baru, maka admin
harus memilih penyakit mana yang diberi gejala tersebut. Setelah
memilih jenis penyakitnya, admin harus memasukkan id dan nama
gejala yang baru. Kemudian informasi tersebut akan diproses dengan
proses create gejala baru pada tabel gejala, gejala_penyakit, dan
pertanyaan. Selanjutnya, sistem akan menampilkan penambahan gejala
tersebut sebagai gejala tambahan pada penyakit yang dipilih.
Sedangkan bila memilih untuk menambah penyakit yang baru,
maka admin harus memasukkan id dan nama penyakit yang baru.
Setelah memasukkan, akan terjadi proses penambahan penyakit tersebut
33
48. pada tabel penyakit. Kemudian, sistem akan menampilkan penambahan
penyakit tersebut.
Selanjutnya, admin harus memasukkan id dan gejala yang
baru. Kemudian informasi tersebut akan diproses dengan proses create
gejala baru pada tabel gejala, gejala_penyakit, dan pertanyaan. Langkah
berikutnya, sistem akan menampilkan penambahan gejala tersebut
sebagai gejala tambahan pada penaykit yang dipilih.
Jika proses-proses di atas telah dilakukan, sistem akan menuju
kondisi END.
2. Mode Edit Hapus Data
2
penyakit gejala
Input id_p hapus
Input id_g
Select tabel=”penyakit”, Select tabel=”gejala”,
Tabel=”gejala_penyakit”, Tabel=”gejala_penyakit”,
Tabel=”pertanyaan” Tabel=”pertanyaan”
Delete penyakit Delete gejala
hasil hasil
4
Gambar 3.9 Diagram alir mode edit hapus data
Dari diagram alir di atas, dapat dijelaskan langkah-langkah
proses yang dilakukan adalah sebagai berikut :
Admin akan diberi pilihan untuk melakukan penghapusan
gejala penyakit atau penyakit.
Jika admin memilih untuk menghapus gejala, admin harus
memasukkan id gejala yang dipilih. Kemudian sistem akan melakukan
select id tersebut pada tabel gejala, gejala_penyakit dan pertanyaan.
Setelah sistem melakukan select, maka sistem akan melakukan proses
34
49. delete gejala tersebut. Selanjutnya, sistem akan menampilkan hasil
delete yang telah dilakukan.
Jika admin memilih untuk menghapus penyakit, admin harus
memasukkan id penyakit yang dipilih. Kemudian sistem akan
melakukan select id tersebut pada tabel penyakit, gejala_penyakit dan
pertanyaan. Setelah sistem melakukan select, maka sistem akan
melakukan proses delete penyakit tersebut. Selanjutnya, sistem akan
menampilkan hasil delete yang telah dilakukan.
Bila proses-proses di atas telah dilakukan, sistem akan menuju
kondisi END.
3. Mode Edit Update Data
3
penyakit
gejala
Input id_p update Input id_g
Select tabel=”penyakit” Select tabel=”gejala”
Input nama gejala
Input nama
baru
penyakit baru
Update penyakit Update gejala
hasil hasil
4
Gambar 3.10 Diagram alir mode edit update data
Dari diagram alir di atas, dapat dijelaskan langkah-langkah
proses yang dilakukan adalah sebagai berikut :
Admin akan diberi pilihan untuk melakukan peng-update-an
gejala penyakit atau penyakit.
Jika admin memilih untuk meng-update gejala, admin harus
memasukkan id gejala yang dipilih. Kemudian sistem akan melakukan
35
50. select id tersebut pada tabel gejala. Setelah sistem melakukan select,
maka sistem akan meminta admin memasukkan nama gejala yang baru.
Selanjutnya, sistem akan melakukan proses update data lama dengan
yang baru. Barulah kemudian sistem menampilkan hasil proses update.
Jika admin memilih untuk meng-update penyakit, admin harus
memasukkan id penyakit yang dipilih. Kemudian sistem akan
melakukan select id tersebut pada tabel penyakit. Setelah sistem
melakukan select, maka sistem akan meminta admin memasukkan nama
penyakit yang baru. Selanjutnya, sistem akan melakukan proses update
data lama dengan yang baru. Barulah kemudian sistem menampilkan
hasil proses update.
Bila proses-proses di atas telah dilakukan, sistem akan menuju
kondisi END.
3.2.2.2 Fungsi-fungsi yang Digunakan dalam Sistem
Di dalam proses sistem, akan digunakan fungsi-fungsi yang
berbeda baik untuk user umum maupun user admin.
Pada sistem user, akan digunakan fungsi-fungsi seperti di bawah
ini :
a. Backward chaining
Fungsi ini terdapat di lampiran pada file mcmpeny.php.
Pada proses ini, pertama-tama user akan diberikan pilihan
mengenai berbagai jenis penyakit paru pada anak. Pilihan user kemudian
akan men-select semua gejala yang berhubungan dengan jenis penyakit
yang dipilih untuk ditampilkan informasinya.
b. Forward chaining
Fungsi ini terdapat di lampiran pada file konsul.php.
Pada proses ini, pertama-tama user akan diberi pertanyaan
mengenai gejala yang paling umum dialami untuk semua jenis penyakit
paru anak. User diberikan pilihan jawaban, pilihan jawaban ’Yes’ untuk
representasi user mengalami gejala tersebut dan jawaban ’No’ untuk
representasi user tidak mengalami gejala tersebut.
Dari pilihan jawaban itulah, maka sistem akan mengarah pada
kode pertanyaan yang dituju. Kode pertanyaan yang dituju akan
36
51. menampilkan gejala selanjutnya sebagai pertanyaan berikutnya.
Tentunya pertanyaan yang tampil hanya untuk gejala-gejala yang
berkaitan saja dengan mengarah pada suatu jenis penyakit tertentu.
Begitu seterusnya sistem akan berjalan hingga didapatkan kode
pertanyaan berikutnya yang berisi kesimpulan penyakit yang diderita.
Sedangkan pada user admin, akan digunakan fungsi-fungsi
seperti di bawah ini :
1. Tambah data
Dalam proses tambah data ini meliputi penambahan gejala
penyakit dan penyakit.
a) Gejala penyakit
Fungsi ini terdapat di lampiran pada file addgp2.php dan
insert.php.
Pada proses penambahan gejala penyakit ini, akan terjadi
penambahan pada tabel gejala, gejala_penyakit, dan pertanyaan. Fungsi
di atas adalah fungsi yang digunakan pada perubahan dalam tabel
pertanyaan. Perubahan pada tabel pertanyaan akan menambah tiap kode
pertanyaan setelah kode yang disisipkan. Sedangkan untuk kode
sebelum kode yang disisipkan tidak ada perubahan.
b) Penyakit
Fungsi ini terdapat di lampiran pada file addp.php dan
addgp221.php
Pada proses penambahan penyakit ini, akan terjadi penambahan
pada tabel penyakit, gejala_penyakit, dan pertanyaan. Untuk penyakit
baru ini tentunya memiliki gejala-gejala klinis yang baru pula, maka
proses penambahan gejalanya sendiri sama dengan proses penambahan
gejala penyakit sebelumnya.
37
52. 2. Hapus data
Dalam proses hapus data ini meliputi penghapusan gejala
penyakit dan penyakit.
a) Gejala penyakit
Fungsi ini terdapat di lampiran pada file delg2.php.
Pada proses penghapusan gejala penyakit ini, akan terjadi
penghapusan pada tabel gejala, gejala_penyakit, dan pertanyaan. Fungsi
di atas kita gunakan saat ada perubahan dalam tabel pertanyaan. Untuk
kode setelah gejala yang dihapus, maka kode pertanyaan akan berkurang
sebanyak jumlah gejala yang dihapus.
b) Penyakit
Fungsi ini terdapat di lampiran pada file delp2.php.
Pada proses penghapusan penyakit ini, akan terjadi
penghapusan pada tabel penyakit, gejala_penyakit, dan pertanyaan. Di
dalam tabel pertanyaan, untuk kode pertanyaan yang penyakitnya
dihapus, maka isi tabel pertanyaan tersebut menjadi penyakit berinisial
Ptd.
3. Update data
Dalam proses edit data ini meliputi pengeditan gejala penyakit
dan penyakit.
a) Gejala penyakit
Fungsi ini terdapat di lampiran pada file upgej3.php.
Pada proses pengeditan gejala penyakit ini, akan terjadi
pengeditan pada tabel gejala, gejala_penyakit, dan pertanyaan. Data baru
akan tersimpan dalam tabel-tabel tersebut setelah di-update.
b) Penyakit
Fungsi ini terdapat di lampiran pada file uppeny3.php.
38
53. Pada proses pengeditan penyakit ini, akan terjadi penghapusan
pada tabel penyakit, gejala_penyakit, dan pertanyaan. Data baru akan
tersimpan dalam tabel-tabel tersebut setelah di-update.
3.2.3 Perancangan Antarmuka
User interface merupakan bagian dari sistem pakar yang
digunakan sebagai media atau alat komunikasi antar user dan sistem. Di
dalam user interface ini dibedakan dua user :
• User penderita (umum) adalah user yang menggunakan
sistem pakar ini untuk mencari informasi dari gangguan-
gangguan yang dideritanya atau sekedar mencari informasi
jenis-jenis penyakit paru pada anak beserta gejalanya.
• User administrator adalah user yang bertugas untuk
melakukan proses editing, penambahan dan perawatan data
di dalam sistem pakar jika diperlukan perubahan
3.2.3.1 Pembuatan Tree
Pembuatan tree pada data digunakan untuk mempermudah dalam
proses penalaran data yang akan dimasukkan ke dalam database pada
program yang telah dibuat. Proses penalaran yang digunakan akan
menggunakan proses penalaran dengan metode forward dan backward
chaining.
forward
Gejala Klinis Penyakit
backward
Gambar 3.11 Tampilan proses sistem pakar
Dari gambar di atas dapat dijelaskan bahwa terdapat dua
metode dalam sistem pakar, yaitu :
• Forward chaining
39
54. User harus mengetahui gejala-gejala klinis yang
diderita sebagai bahan untuk menjawab pertanyaan
yang diberikan oleh program. Pertanyaan yang
diberikan berupa gejala yang saling berhubungan
dengan gejala-gejala yang telah dijawab sebelumnya,
hingga didapatkan kesimpulan diagnosa jenis
penyakitnya.
• Backward chaining
User dapat mengetahui informasi mengenai berbagai
macam jenis penyakit dengan gejala-gejala klinis yang
ditimbulkannya.
Tree dan kode penyakit serta gejala terdapat pada halaman
lampiran .
Dari tree yang terlampir pada lampiran, maka dapat dijelaskan
sebagai berikut :
Sebagai root, gejala 5 (dengan asumsi penulisan diawali huruf G
untuk semua gejala yang tersimpan dalam database, misal : G5) adalah
gejala yang paling banyak dijumpai pada berbagai jenis penyakit paru
pada anak.
Jika gejala 5 memang dialami user, dalam asumsi pilihan adalah
Ya (Yes), maka gejala 1 akan ditanyakan sebagai pertanyaan
selanjutnya.
Apabila gejala 1 memang dialami (Ya/Yes), maka akan
ditampilkan gejala 3 untuk pertanyaan selanjutnya, sebaliknya jika tidak
dialami (Tidak/No), maka gejala 20 yang akan ditampilkan sebagai
pertanyaan selanjutnya.
Sedangkan jika gejala 5 memang tidak dialami user, dalam
asumsi pilihan adalah Tidak (No), maka gejala 29 akan ditanyakan
sebagai pertanyaan selanjutnya.
Apabila gejala 29 memang dialami (Ya/Yes), maka akan
ditampilkan penyakit dengan id : R (dengan asumsi penulisan diawali
huruf P untuk semua jenis penyakit yang tersimpan dalam database,
misal : PR) sebagai hasil/kesimpulan diagnosa, sebaliknya jika tidak
dialami (Tidak/No), maka gejala 20 yang akan ditampilkan sebagai
pertanyaan selanjutnya.
Maka, proses-proses di atas akan berlangsung terus menerus
hingga didapatkan hasil/kesimpulan dari tiap-tiap percabangan.
40
55. 3.2.3.2 Struktur Data yang digunakan
Dalam sistem admin ini, untuk penyimpanan data-data dalam
database menggunakan struktur array yang berurutan tiap barisnya.
Misal :
$nol=$row[0];
…
$satu=$row[1];
…
$tiga=$row[3];
…
$empat=$row[4];
...
$sql="UPDATE pertanyaan SET
Kode=$nol,tny_sblm=$satu,tny_ya='$ya',tny_tdk='$tdk'
where Kode =$kod";
3.2.3.3 Blok Arsitektur Sistem
Untuk perancangan antar muka, di bawah ini akan ditunjukkan
blok arsitektur sistem yang digunakan pada proyek akhir.
Web Server
request request
Sistem Pakar
Perangkat WAP
Mobile Gateway
PHP
response
response
MySQL
Database
Gambar 3.12 Blok Arsitektur Sistem
Dari gambar di atas, dapat dijelaskan bahwa urutan event yang
terjadi dalam sistem adalah :
41
56. 1. User/admin melakukan request alamat URL yang dituju ke
WAP Gateway pada dari perangkat mobile.
2. Request tersebut akan ditransmisikan via internet dari
perangkat mobile.
3. Kemudian request akan diteruskan ke web server. Server
membaca header dan memproses permintaan dokumen WAP.
Kode program PHP yang terdapat dalam dokumen ini
dikompilasi dengan sistem pakar dan diformat sesuai dengan
kebutuhan. Jika memang dibutuhkan untuk penggunaan
database, maka akan terjadi pula koneksi ke database yang
digunakan, yaitu MySQL.
4. Dokumen atau deck WAP yang telah diproses ini dikirimkan
kembali melalui WAP gateway sebagai response atas request
sebelumnya.
5. Pada gateway, isi dari deck dikompres menjadi data biner
dan dikirimkan ke perangkat mobile.
3.2.3.4 Desain Homepage
Dalam pembuatan antarmuka sistem berupa homepage, maka di
bawah ini adalah desain homepage yang digunakan.
42
57. FW
Konsultasi Penyakit
Menu Utama User BW
:
-Konsultasi Macam Penyakit
-Macam Penyakit
-Lokasi RS
Lokasi RS
Halaman Halaman Gejala Penyakit
Utama Login
Tambah data
Penyakit
Menu Utama Gejala Penyakit
Admin :
-Tambah data Hapus data
-Hapus data Penyakit
-Update data
Gejala Penyakit
Update data
Penyakit
Gambar 3.13 Desain Homepage Sistem
3.2.3.5 Implementasi Sistem
Dari desain homepage sistem yang telah kita buat sebelumnya,
maka dapat kita implementasikan seperti beberapa contoh tampilan
berikut :
Gambar 3.14 Halaman Utama
43
58. Gambar 3.15 Halaman Login
Gambar 3.16 Menu Utama User
Gambar 3.17 Menu Utama Admin
44
59. BAB IV
PENGUJIAN DAN ANALISA
4.1 PENGUJIAN UMUM
Dalam bab ini akan dijelaskan mengenai hasil uji coba
perangkat lunak pembangunan sistem pakar pada perangkat mobile
dengan WML dan PHP untuk penyakit paru pada anak.
Selain itu, dari hasil uji coba yang telah dilakukan akan
dianalisa apakah rancangan ini dapat memenuhi tujuan yang akan
dicapai seperti yang telah dipaparkan pada Bab I.
Berikut ini adalah spesifikasi perangkat lunak sebagai sistem
pendukung aplikasi yang dibuat :
• apache2triad1.5.2 yang meliputi Apache sebagai web
servernya, PHP untuk bahasa pemrogramannya dan MySQL
sebagai databasenya.
• upsdkW41e keluaran Openwave Sytems,Inc. sebagai
emulator WAP sebelum dijalankan ke perangkat mobile yang
sesungguhnya.
4.2 PENGUJIAN SISTEM
Sebelum kita mulai untuk menjalankan aplikasi yang kita buat,
kita harus memastikan bahwa gateway student.eepis-its.edu sebagai web
server lokal telah aktif dan sukses dijalankan. Hal ini sangat penting kita
perhatikan karena aplikasi hanya dapat running jika web sever juga
running (aktif). Setelah web server telah aktif, maka pada perangkat
mobile kita mengetikkan alamat URL sebagai berikut:
http://student.eepis-its.edu/~astrid/index.php. Tetapi untuk uji coba
sebelum pada perangkat mobile yang sesungguhnya, terlebih dahulu kita
gunakan pada emulator WAP dengan Apache sebagai web server lokal.
Sehingga pada emulator, kita dapat mengetikkan alamat URL sebagai
berikut: http://localhost/taku/index.wml. Jika setelah mengakses
halaman tersebut didapatkan tampilan halaman utama, maka kita dapat
memulai pengujian baik sistem user atau sistem admin yang kita
inginkan.
45
60. Gambar 4.1 Tampilan halaman utama pada emulator WAP
Gambar 4.2 Tampilan pesan error pada command prompt
Gambar 4.3 Tampilan halaman utama pada perangkat mobile
46
61. Gambar 4.4 Tampilan halaman utama lanjutan pada perangkat mobile
4.2.1 PENGUJIAN SISTEM USER
Saat user mengakses alamat URL yang kita sebutkan di atas,
maka kita akan mengakses halaman utama. Selanjutnya, kita akan
berada pada halaman login agar sistem dapat mengetahui user yang
sedang aktif dan apa yang ingin dilakukannya. Sebagai user umum,
sebaiknya kita memilih link Umum karena jika kita memilih link
Admnistrator maka akan terdapat autentifikasi yang hanya diketahui
oleh admin saja.
Selanjutnya, kita akan dihadapkan pada menu utama user
dengan pilihan Konsultasi Penyakit, Macam Penyakit dan Lokasi
Rumah Sakit Paru.
Perlu diketahui, bahwa dengan memilih menu Konsultasi
Penyakit, informasi yang didapatkan adalah representasi dari metode
Forward Chaining. Sedangkan menu Macam Penyakit, informasi yang
didapatkan adalah representasi dari metode Backward Chaining. Dan
menu Lokasi Rumah Sakit Paru adalah menu yang akan menampilkan
informasi alamat Rumah Sakit Paru yang terletak di beberapa daerah di
Indonesia.
Gambar 4.5 Halaman login
47
62. Gambar 4.6 Menu Utama User Umum
Gambar 4.7 Halaman utama menu Lokasi Rumah Sakit Paru
Pilihan daerah untuk Lokasi Rumah Sakit Paru hanya di
beberapa daerah saja, tetapi hal ini tidak berarti bahwa selain daerah
yang ditunjuk tidak terdapat rumah sakit paru.
Gambar 4.8 Pilihan daerah Lokasi Rumah Sakit Paru
48
63. Gambar 4.9 Informasi lokasi Rumah Sakit Paru
1) Pengujian Proses Forward
Pada proses ini, pertama-tama user akan diberi pertanyaan
mengenai gejala yang paling umum dialami untuk semua jenis penyakit
paru anak. User diberikan pilihan jawaban, pilihan jawaban ’Yes’ untuk
representasi user mengalami gejala tersebut dan jawaban ’No’ untuk
representasi user tidak mengalami gejala tersebut.
Dari pilihan jawaban itulah, maka sistem akan mengarah pada
kode pertanyaan yang dituju. Kode pertanyaan yang dituju akan
menampilkan gejala selanjutnya sebagai pertanyaan berikutnya.
Tentunya pertanyaan yang tampil hanya untuk gejala-gejala yang
berkaitan saja dengan mengarah pada suatu jenis penyakit tertentu.
Begitu seterusnya sistem akan berjalan hingga didapatkan kode
pertanyaan berikutnya yang berisi kesimpulan penyakit yang diderita.
Untuk pengujian proses forward ini, kita dapat melihat pada
menu informasi Konsultasi Penyakit.
Gambar 4.10 Halaman utama menu Konsultasi Penyakit
49
64. Gambar 4.11 Tampilan pertanyaan 1 Konsultasi Penyakit
Gambar 4.12 Menu jawaban pertanyaan
Gambar 4.13 Tampilan pertanyaan 2 Konsultasi Penyakit
50
65. Gambar 4.14 Hasil kesimpulan diagnosa penyakit
2) Pengujian Proses Backward
Pada proses ini, pertama-tama user akan diberikan pilihan
mengenai berbagai jenis penyakit paru pada anak. Pilihan jenis penyakit
user akan menentukan semua gejala yang berhubungan dengan jenis
penyakit yang dipilih untuk ditampilkan informasinya.
Dalam pengujian proses backward, kita dapat melihat pada
menu informasi Macam Penyakit dan menu jawaban why dari pilihan
informasi Konsultasi Penyakit. Dari menu why ini, kita dapat melihat
kembali jawaban apa saja yang sudah kita berikan sebelumnya, sehingga
diharapkan kita mampu memberikan informasi yang tepat pada sistem.
Selanjutnya, sistem dapat memberikan informasi yang tepat pula pada
user.
Gambar 4.15 Halaman utama menu Macam Penyakit
Gambar 4.16 Tampilan pilihan Macam Penyakit
51
66. Gambar 4.17 Tampilan pilihan Macam Penyakit lanjutan
Pada halaman pilihan macam penyakit, kita harus menuliskan
nomor pilihan berdasarkan jenis penyakit yang ingin kita ketahui
informasi gejala-gejalanya.
Gambar 4.18 Hasil informasi gejala dari suatu penyakit
Sedangkan di bawah ini adalah hasil uji coba pilihan menu why dalam
Konsultasi Penyakit.
Gambar 4.19 Menu jawaban why dalam pilihan jawaban
52
67. Gambar 4.20 Hasil informasi akses menu why
4.2.2 PENGUJIAN SISTEM ADMIN
Dalam proses pengeditan data, user admin harus melakukan
proses login pada interface. Pada halaman login admin, admin diminta
memasukkan username dan password. Hal ini untuk menghindari
penyalahgunaan manajemen sistem oleh selain admin. Setelah admin
berhasil login, user dapat memilih mode edit apa yang akan dilakukan.
Mode edit yang diberikan berupa tambah, hapus dan update data yang
ada.
Gambar 4.21 Halaman login admin
Gambar 4.22 Tampilan halaman login admin
53
68. Gambar 4.23 Tampilan pesan jika password salah
Gambar 4.24 Tampilan pesan jika password benar
Gambar 4.25 Pilihan proses edit admin
1) Tambah Data
Dalam proses tambah data ini, admin diberi pilihan untuk
menambah gejala atau jenis penyakit yang baru.
54
69. Gambar 4.26 Pilihan proses tambah data
a. Gejala Penyakit
Apabila admin memilih untuk menambah gejala penyakit baru,
maka sistem akan menanyakan jenis penyakit mana gejala baru tersebut
akan ditambahkan. Karena, penambahan gejala ini tidak diberikan untuk
semua jenis penyakit paru yang ada, sebab belum tentu semua jenis
penyakit paru yang ada mengandung gejala tersebut.
Setelah jenis penyakit yang ingin ditambahkan gejalanya
dipilih, maka sistem akan menampilkan kembali gejala-gejala awal
sebelum ada penambahan data baru sebagai informasi.
Sebelum kita mulai menuliskan nama gejala baru tersebut,
sistem meminta admin untuk menulis ID gejala yang baru. Sistem juga
memberikan informasi ID gejala terakhir yang telah tersimpan dalam
database agar tidak terjadi duplikasi ID. Kemudian kita dapat
menuliskan nama gejala yang ingin ditambahkan.
Setelah menulis ID dan nama gejala baru tersebut, sistem akan
menanyakan pada urutan pertanyaan ke berapa gejala baru tersebut ingin
ditampilkan. Semua informasi tersebut dibutuhkan sistem sebgai inputan
proses tambah gejala.
Dari semua informasi yang dibutuhkan sistem untuk gejala baru
tersebut, maka setelah berhasil disimpan oleh sistem akan dimunculkan
tampilan pesan sistem. Untuk meyakinkan admin bahwa data telah
berhasil ditambahkan, maka sistem memberi fasilitas untuk
menampilkan kembali penyakit dan gejala lama maupun baru yang
ditambahkan.
55