diagnosa penyakit ispa pada bayi dan anak menggunakan finite … · 2018. 1. 26. · i . diagnosa...

23
i Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite State Automata Artikel Ilmiah Peneliti : Regie Wibhiyanto (672013157) Magdalena A. Ineke Pakereng, M.Kom. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga November 2016

Upload: others

Post on 19-Jan-2021

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

i

Diagnosa Penyakit ISPA pada Bayi dan Anak

Menggunakan Finite State Automata

Artikel Ilmiah

Peneliti :

Regie Wibhiyanto (672013157)

Magdalena A. Ineke Pakereng, M.Kom.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

November 2016

Page 2: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

ii

Diagnosa Penyakit ISPA pada Bayi dan Anak

Menggunakan Finite State Automata

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

untuk memperoleh Gelar Sarjana Komputer

Peneliti :

Regie Wibhiyanto (672013157)

Magdalena A. Ineke Pakereng, M.Kom.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

November 2016

Page 3: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

iii

Page 4: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

iv

Page 5: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

v

Page 6: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

vi

Page 7: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

vii

Page 8: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

1

Diagnosa Penyakit ISPA pada Bayi dan Anak

Menggunakan Finite State Automata

Regie Wibhiyanto

1, Magdalena A. Ineke Pakereng

2

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Jl. Diponegoro 52-60, Salatiga 50771, Indonesia

Email: [email protected], [email protected]

2

Abstract

System disease diagnosis is a computer program that trying to diagnose a disease of the

questions in the form of the symptomps suffered by the user. Finite State Automata used to

accommodate the possibility of that happening and then used to mapping how to diagnose the

disease runs. Research was completed through four phases, namely requirements analysis

and data collection, System planning, System Implemetation and Testing and Analysis.

Research counducted to produce applications for the diagnosis of diseases that can be to

used to diagnose wheter the user undiagnosed disease and provide information types of

illness.

Keywords : System Disease Diagnosis, Finite State Automata, Research Stage

Abstrak

Sistem diagnosa penyakit adalah sebuah program komputer yang mencoba untuk

mendiagnosa suatu penyakit dari pertanyaan berupa gejala yang diderita si pengguna.

Finite State Automata digunakan untuk mengakomodir kemungkinan yang terjadi

serta memetakan bagaimana proses diagnosa penyakit berjalan. Penelitian yang

dilakukan, diselesaikan melalui empat tahapan penelitian yaitu, Analisis kebutuhan

dan pengumpulan data, Perancangan sistem, Implementasi Sistem, Pengujian dan

Analisis. Penelitian yang dilakukan menghasilkan aplikasi diagnosa penyakit yang

dapat digunakan untuk mendiagnosa apakah user terdiagnosa penyakit serta memberi

informasi jenis penyakit yang diderita.

Kata Kunci : Sistem Diagnosa Penyakit, Finite State Automata, Tahapan Penelitian

1Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen

Satya Wacana Salatiga

2Staf Pengajar Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga

Page 9: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

2

1. Pendahuluan

Pada era modern ini, perkembangan teknologi mengalami kemajuan yang

pesat. Teknologi dapat mempermudah segala aktivitas manusia. Perkembangan

teknologi berpengaruh pada hampir seluruh bidang kehidupan. Salah satu contohnya

adalah bidang kesehatan. Para dokter ahli menggunakan teknologi untuk menemukan

solusi baru mengenai kesehatan manusia. Kesehatan merupakan hal yang berharga

bagi manusia, karena siapa saja dapat mengalami gangguan kesehatan.

ISPA (Infeksi Saluran Pernapasan Akut) merupakan penyakit infeksi saluran

pernapasan yang disebabkan oleh virus atau bakteri yang dapat menyerang siapa saja

termasuk bayi dan anak. Bayi dan anak sangat rentan terhadap kuman penyakit dan

kurangnya kepekaan terhadap gejala suatu penyakit merupakan ketakutan tersendiri

bagi orang tua. Apabila terjadi gangguan kesehatan terhadap anak maka mereka lebih

dulu mempercayakannya kepada pakar atau dokter ahli yang sudah mengetahui lebih

banyak tentang kesehatan, tanpa memperdulikan apakah gangguan tersebut masih

dalam tingkat rendah atau kronis [1].

Teori dan Bahasa Automata merupakan salah satu bagian ilmu komputer yang

didasari oleh model dan gagasan mendasar mengenai komputer, dengan

menggunakan metode ini akan dirancang sistem Diagnosa Penyakit.

Berdasarkan latar belakang tersebut, maka dilakukan penelitian untuk

Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite State Automata.

Adanya sistem ini diharapkan dapat memberi kemudahan bagi para orang tua anak

untuk mendapatkan informasi ataupun diagnosa penyakit ISPA (Infeksi Saluran

Pernapasan Akut) sehingga para orang tua dapat melakukan pencegahan lebih awal

yang sekiranya membutuhkan waktu jika harus berkonsultasi dengan dokter ahli.

2. Tinjauan Pustaka

Sudah banyak penelitian tentang pembuatan sistem diagnosa suatu penyakit

dan penggunaan Finite State Automata untuk merancang sebuah sistem maupun

aplikasi, salah satu penelitian yang menggunakan Finite State Automata adalah pada

penelitian yang berjudul “Perancangan dan Implementasi Finite Automata pada

Simulasi Vending Machine”, kesimpulan yang didapat penelitian ini adalah Finite

Automata dapat dijadikan sebagai logika dasar untuk membuat simulasi vending

machine. Lewat rancangan state diagram berdasarkan konsep Mealy machine yang

telah dibuat, maka apliksi simulasi vending machine dapat dibuat dan hasil dari setiap

input yang dipilih oleh user pada aplikasi sesuai dengan hasil rancangan tersebut [2].

Pada Penelitian yang berjudul Sistem Pakar untuk Mendiagnosa Penyakit

Ginjal dengan Metode Backward Chaining, membahas tentang penggunaan sistem

pakar yang digunakan untuk mendeteksi gejala-gejala penyakit ginjal. Sistem yang

dibangun menghasilkan output berupa kemungkinan penyakit ginjal yang diderita

berdasarkan gejala yang dirasakan oleh user. Sistem ini juga manampilkan

besarnya kepercayaan gejala tersebut terhadap kemungkinan penyakit ginjal yang

diderita oleh user. Besarnya nilai persentase tersebut merupakan hasil perhitungan

dengan menggunakan metode Backward Chaining [3].

Pada Penelitian yang berjudul “Penerapan Teori Bahasa dan Automata untuk

Page 10: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

3

Mengecek Kebenaran Format SMS pada SMS Premium”, kesimpulan yang

didapatkan melalui penelitian ini adalah algoritma teori bahasa dan automata cocok

untuk mengatasi permasalahan terhadap pengecekan format SMS premium. Ini telah

dibuktikan dengan tiga hal yang menjadi ciri-ciri algoritma yang baik telah dipenuhi

oleh algoritma teori bahasa dan automata untuk pengecekan tersebut, yaitu pertama

algoritma teori bahasa dan automata memberikan output yang benar terhadap hasil

yang diinginkan, kedua algoritma teori bahasa dan automata memberikan hasil yang

pasti terhadap string yang diberikan, dan yang ketiga adalah dengan menggunakan

algoritma teori bahasa dan automata diperoleh efisiensi waktu dan efisiensi memori

[4].

Berdasarkan penelitian-penelitian yang pernah dilakukan terkait penerapan

Finite State Automata, maka akan dilakukan penelitian yang membahas aplikasi

Diagnosa Penyakit ISPA Pada Bayi dan Anak Menggunakan Finite State Automata.

Sistem ini dirancang untuk memudahkan user melakukan pemeriksaan gejala

penyakit ISPA dengan mudah dan cepat.

Finite State Automata adalah mesin abstrak berupa sistem model matematika

dengan masukan dan output diskrit yang dapat mengenali bahasa paling

sederhana (bahasa reguler) dan dapat diimplementasikan secara nyata dimana

sistem dapat berada di salah satu dari sejumlah berhingga konfigurasi internal

disebut state. Finite State Automata mempunyai sekumpulan state dan aturan-aturan

untuk berpindah dari state yang satu ke state yang lain, tergantung dari simbolnya.

Finite automata mempunyai state awal, sekumpulan state dan state akhir. Finite

automata merupakan kumpulan dari lima elemen atau dalam bahasa matematis

dapat disebut sebagai 5 tuple, yaitu (Q, ∑, δ, S, F), dimana :

Q = himpunan state / kedudukan

∑ = himpunan simbol input / masukan / abjad

δ = fungsi transisi

S = state awal / kedudukan awal (initial state)

F = himpunan state akhir

Gambar 1 Contoh Diagram State untuk Finite State Automata [5]

Keterangan Gambar 1 : (1) Gambar lingkaran menyatakan state, (2) Label

pada lingkaran adalah nama state tersebut, (2) Busur panah menyatakan transisi atau

perpindahan state, (4) Gambar lingkaran yang didahului sebuah busur panah tanpa

lebih menyatakan state awal, (5) Gambar lingkaran ganda menyatakan final state.

Q = {q0, q1, q2}

∑ = {a, b}

Page 11: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

4

S = {q0}

F = {q1}

δ = relasi transisi

δ (q0, a) = q0

δ (q0, b) = q1

δ (q1, a) = q1

δ (q1, b) = q2

δ (q2, a) = q1

δ (q2, b) = q2

Berdasarkan fungsi transisi tersebut , dapat dibuat tabel transisi seperti pada Tabel 1.

Tabel 1 Tabel Transisi Berdasarkan Gambar 1 [5]

Δ A B

q0 q0 q1

q1 q1 q2

q2 q1 q2

Pada Tabel 1, apabila state q0 mendapat masukan berupa string „a‟ maka q0

akan tetap berada di state q0 kemudian apabila yang dibaca adalah string „b‟ maka q0

akan bergeser ke state q1. Selanjutnya pada state q1 apabila membaca string „a‟ maka

q1 akan tetap berada di state q1 dan jika q1 membaca input berupa string „b‟ maka q1

akan bergeser ke q2 yang merupakan final state. Untuk q2 akan kembali ke q1 jika

membaca input string „a‟ dan tetap pada q2 apabila membaca string „b‟.

3. Metode dan Perancangan Sistem

Penelitian yang dilakukan, diselesaikan melalui tahapan yang terbagi dalam

empat tahapan, yaitu : (1) Analisis kebutuhan dan pengumpulan data berupa gejala

penyakit ISPA, (2) Perancangan sistem (3) Implementasi Sistem, (4) Pengujian

Sistem dan analisis hasil pengujian.

Page 12: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

5

Gambar 2 Tahapan Penelitian

Tahapan penelitian pada Gambar 2, dapat dijelaskan sebagai berikut. Tahap

pertama: analisis kebutuhan dan pengumpulan data, yaitu mengumpulkan serta

menganalisis gejala-gejala yang ditimbulkan oleh penyakit ISPA serta mengurutkan

setiap gejala mulai dari gejala umum hingga ke gejala khusus; Tahap kedua:

perancangan sistem yang meliputi perancangan proses diagnosa penyakit ISPA dalam

bentuk flowchart; Tahap ketiga: implementasi sistem, yaitu mengimplementasikan

automata yang sudah dirancang ke dalam program; Tahap keempat: pengujian dan

analisis hasil pengujian, yaitu melakukan pengujian sistem serta analisis hasil

pengujian sistem untuk melihat apakah aplikasi yang telah dibuat sudah sesuai

dengan yang diharapkan atau tidak ada error.

Page 13: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

6

Gambar 3 Proses Diagnosa Penyakit ISPA

Rancangan Proses Diagnosa Penyakit ISPA pada Gambar 3 dirancang dengan

mengambil segala kemungkinan yang dapat terjadi saat proses Diagnosa Penyakit

ISPA. Proses pada Gambar 3 akan berguna dalam merancang desain finite state

automata karena segala kemungkinan yang ada sudah diwakilkan.

Berdasarkan Rancangan Proses Diagnosa Penyakit ISPA pada Gambar 3,

maka dapat dibuat rancangan finite state automata secara bertahap. Setiap proses

yang terjadi adalah sebuah state/kondisi pada finite state automata.

Page 14: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

7

4. Hasil dan Pembahasan

Untuk mendiagnosa suatu penyakit perlu diketahui terlebih dahulu gejala-

gejala yang ditimbulkan. Meskipun hanya dari gejala klinis (gejala-gejala yang

terlihat langsung maupun yang dirasakan oleh penderita), dokter dapat mengambil

suatu kesimpulan berupa penyakit yang diderita. Tetapi ada kalanya diperlukan

pemeriksaan lebih lanjut melalui pemeriksaan laboratorium untuk penyakit tertentu.

ISPA merupakan penyakit infeksi saluran pernapasan yang secara anatomi

dibedakan atas saluran napas atas mulai dari hidung sampai dengan faring dan saluran

napas bawah mulai dari laring sampai dengan alveoli, akibat invasi infecting agents

yang mengakibatkan reaksi inflasi saluran napas yang terlibat. Infeksi tersebut

disebabkan oleh virus dan bakteri, seperti bakteri streptococcus. Berdasarkan

klasifikasi anatomi dibedakan atas :

1. Infeksi saluran napas terbagi atas rhinitis, faringitis, tonsillitis.

2. Infeksi saluran napas bawah terbagi atas laringitis, trakheitis, bronkhitis,

bronkhiolitis, pneumonioa, abses pulmonum dan empiema.

3. Namun dari beberapa klasifikasi tersebut hanya tonsillitis, laringitis, bronkhitis,

bronkiolitis yang dapat didiagnosa secara klinis [6].

Gambar 4 Rancangan Diagram State Diagnosa Penyakit ISPA

Gambar 4 menunjukkan rancangan diagram state Diagnosa Penyakit ISPA Pada Bayi

dan Anak dengan tuple sebagai berikut:

Page 15: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

8

Q = {Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8, Q9, F1, F2, F3, F4, F5, F6}

∑ = {Yes, No, Q, R, S, T}

S = {Q1}

F = {F1, F2, F3, F4, F5, F6}

δ = Relasi Transisi

Relasi Transisi untuk positif ISPA dan terdiagnosa terkena Laringitis:

Δ = {((Q1, Yes),Q2), (Q1, No),Q2), (Q2, Yes),Q3), (Q2, No),Q3), (Q3, Yes),Q4), (Q5,

Yes),Q6), (Q5, No),Q6), (Q6, Yes),Q7), (Q6, No),Q7), (Q7, Yes),Q8),

(Q7,No),Q8), (Q8,Yes),F2, (F2, Yes),Q9),(Q9, Q), F3).

Relasi Transisi untuk positif ISPA dan terdiagnosa Bronkhitis:

Δ = {((Q1, Yes),Q2), (Q1, No),Q2), (Q2, Yes),Q3), (Q2, No),Q3), (Q3, Yes),Q4), (Q5,

Yes),Q6), (Q5, No),Q6), (Q6, Yes),Q7), (Q6, No),Q7), (Q7, Yes),Q8),

(Q7,No),Q8), (Q8,Yes),F2, (F2, Yes),Q9),(Q9, R), F4).

Relasi Transisi untuk positif ISPA dan terdiagnosa Bronkhiolitis:

Δ = {((Q1, Yes),Q2), (Q1, No),Q2), (Q2, Yes),Q3), (Q2, No),Q3), (Q3, Yes),Q4), (Q5,

Yes),Q6), (Q5, No),Q6), (Q6, Yes),Q7), (Q6, No),Q7), (Q7, Yes),Q8),

(Q7,No),Q8), (Q8,Yes),F2, (F2, Yes),Q9),(Q9, S), F5).

Relasi Transisi untuk positif ISPA dan jenis penyakit belum terdiagnosa:

Δ = {((Q1, Yes),Q2), (Q1, No),Q2), (Q2, Yes),Q3), (Q2, No),Q3), (Q3, Yes),Q4), (Q5,

Yes),Q6), (Q5, No),Q6), (Q6, Yes),Q7), (Q6, No),Q7), (Q7, Yes),Q8),

(Q7,No),Q8), (Q8,Yes),F2, (F2, Yes),Q9),(Q9, T), F6).

Relasi Transisi untuk negatif (belum terdiagnosa) terkena ISPA:

Δ = {((Q1, Yes),Q2), (Q1, No),Q2), (Q2, Yes),Q3), (Q2, No),Q3), (Q3, Yes),Q4), (Q5,

Yes),Q6), (Q5, No),Q6), (Q6, Yes),Q7), (Q6, No),Q7), (Q7, Yes),Q8), (Q7,

No),Q8), (Q8, No),F1).

Ada 15 (lima belas) state yaitu Balita Anda demam? (Q1), Balita Anda

terlihat kelelahan (dehidrasi) (Q2), Hidung tersumbat dan berair? (Q3), Balita Anda

batuk-batuk? (Q4), Susah menelan karena tenggorokan terasa sakit? (Q5), Suara

balita Anda serak? (Q6), Balita Anda sesak atau sulit untuk bernafas? (Q7), Cek

syarat diagnosa melalui skor, apakah skor >= 10 (Q8), Bagaimana karakteristik batuk

dan pernafasannya? (Q9), Belum terdiagnosa terkena ISPA (F1), Terdiagnosis

terkena ISPA (F2), Terdiagnosis Laringitis (F3), Terdiagnosa bronkhitis (F4),

Terdiagnosis bronkhiolitis (F5), Jenis penyakit belum terdiagnosa (F6). Sedangkan

input yang ada adalah Yes dan No, Batuk kuat serta kering dan suara serak disertai

tarikan nafas (inspirasi) berbunyi Stridor dan kasar dan hembusan nafas berbunyi (Q),

Batuk kering kemudian menjadi berdahak disertai nafas terengah-engah dan

hembusan nafas berbunyi (R), Batuk kering disertai dengan pernafasan dangkal dan

cepat dan hembusan nafas berbunyi (S), Karakteristik batuk berbeda dari yang

disebutkan (T). Untuk lebih lengkapnya lihat Tabel 2 dan Tabel 3.

Page 16: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

9

Tabel 2 Himpunan State

Himpunan State Deskripsi

Q1 Balita Anda Demam?

Q2 Balita Anda terlihat kelelahan?

Q3 Hidung tersumbat dan berair?

Q4 Balita Anda batuk-batuk?

Q5 Susah menelan karena tenggorokan

terasa sakit?

Q6 Suara balita Anda Serak?

Q7 Balita Anda sesak atau sulit untuk

bernafas?

Q8 Apakah skor >= 10

Q9 Bagaimana karakteristik batuk dan

pernafasannya?

F1 Belum terdiagnosa terkena ISPA.

F2 Terdiagnosis terkena ISPA

F3 Terdiagnosis Laringitis

F4 Terdiagnosis bronchitis

F5 Terdiagnosis bronchiolitis

F6 Jenis penyakit belum terdiagnosis

Tabel 3 Abjad Sebagai Simbol Input

Abjad Deskripsi

Yes Yes adalah input yang digunakan user untuk

menjawab pertanyaan yang diberikan

No No adalah input yang digunakan user untuk

menjawab pertanyaan yang diberikan

Q Batuk kuat serta kering dan suara serak

disertai tarikan nafas (inspirasi) berbunyi

Stridor dan kasar dan hembusan nafas

berbunyi

R Batuk kering kemudian menjadi berdahak

disertai nafas terengah-engah dan hembusan

nafas berbunyi

S Batuk kering disertai dengan pernafasan

dangkal dan cepat dan hembusan nafas

berbunyi

T Karakteristik batuk berbeda dari yang

disebutkan

Sistem dimulai dari state awal yaitu Q1 yang merupakan pertanyaan awal dari

gejala penyakit ISPA yang akan membaca input dari user berupa Yes atau No

sehingga state akan berpindah ke pertanyaan lanjutan yaitu state Q2, sistem akan

Page 17: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

10

melakukan hal yang sama, membaca input dari user lalu bergeser ke state berikutnya

sampai pada final state. Untuk mendiagnosa apakah user positif terkena penyakit

ISPA maka user harus memiliki skor lebih dari atau sama dengan 10 (sepuluh). Skor

didapatkan dari setiap jawaban user terhadap pertanyaan yang merupakan gejala

penyakit, setiap pertanyaan mempunyai skor masing-masing yang hanya didapat jika

user menjawab Yes, untuk Q1, Q2, Q3 dan Q7 mempunya skor 1 (satu) dan untuk Q4,

Q5 dan Q6 mempunyai skor 3 (tiga), jadi semakin khusus gejala yang dirasakan user

semakin besar peluang user terkena penyakit ISPA. Jika skor user kurang dari 10

(sepuluh) maka user didiagnosa negatif terkena ISPA.

Gambar 5 Proses Pengecekan Syarat Untuk Diagnosa

Gambar 5 adalah sebuah proses untuk melakukan pengecekan apakah user

positif terdiagnosa penyakit ISPA atau user belum negatif terkena ISPA. Pada

Gambar 5 terdapat 3 (tiga) buah state, yaitu Apakah skor >= 10 (Q8), belum

terdiagnosa terkena ISPA (F1) dan terdiagnosa terkena ISPA (F2). Apabila Q9

membaca abjad input No maka Q8 akan bergeser ke final state F1 dan jika Q9

membaca abjad input Yes maka Q8 akan bergeser ke final state F2.

Gambar 6 Proses Diagnosa Jenis Penyakit

Gambar 6 menunjukkan proses untuk mendiagnosa jenis penyakit ISPA apa

yang diderita user, disini apabila Bagaimana karakteristik batuk dan pernafasannya?

Page 18: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

11

(Q9) membaca input string Batuk kuat serta kering dan suara serak disertai tarikan

nafas (inspirasi) berbunyi Stridor dan kasar dan hembusan nafas berbunyi (Q) maka

state Q10 akan bergeser ke final state Terdiagnosa Laringitis (F3), kemudian jika

Bagaimana karakteristik batuk dan pernafasannya? (Q9) membaca input string Batuk

kering kemudian menjadi berdahak disertai nafas terengah-engah dan hembusan nafas

berbunyi (R) maka Q9 akan bergeser ke final state Terdiagnosa bronkhitis (F4), jika

Bagaimana karakteristik batuk dan pernafasannya? (Q10) membaca input string

Batuk kering disertai dengan pernafasan dangkal dan cepat dan hembusan nafas

berbunyi (S), maka state Q9 akan bergeser ke final state Terdiagnosa Bronkhiolitis

(F5), namun apabila Bagaimana karakteristik batuk dan pernafasannya? (Q9)

membaca input string Karakteristik batuk berbeda dari yang disebutkan (T) maka Q9

akan bergeser ke final state Jenis penyakit belum terdiagnosa (F6).

Pseudo-code Proses Untuk Mendiagnosa Penyakit 1. Integer skor1, skor2, skor3, skor4, skor5, skor6, skor7; 2. prompt the user E for input the Answer of the Quetions 1 3. save input to Q1 4. check to see if Q1 = "Yes"; if it is, skor1 = 1; 5. else if Q1 = "No" if it is, skor1 = 0; 6. prompt the user for input the Answer of the Question 2 7. save input to Q2 8. check to see if Q2 = "Yes"; if it is, skor2 = 1; 9. else if Q2 = "No" if it is, skor2 = 0; 10. prompt the user for input the Answer of the Questions 3 11. save input to Q3 12. check to see if Q3 = "Yes"; if it is, skor3 = 1; 13. else if Q3 = "No" if it is, skor3 = 0; 14. prompt the user for input the Answer of the Questions 4 15. save input to Q4 16. check to see if Q4 = "Yes"; if it is, skor4 = 3; 17. else if Q4 = "No" if it is, skor4 = 0; 18. prompt the user for input the Answer of the Questions 5 19. save input to Q5 20. check to see if Q5 = "Yes"; if it is, skor5 = 3; 21. else if Q5 = "No" if it is, skor5 = 0; 22. prompt the user for input the Answer of the Questions 6 23. save input to Q6 24. check to see if Q6 = "Yes"; if it is, skor6 = 3; 25. else if Q6 = "No" if it is, skor6 = 0; 26. prompt the user for input the Answer of the Questions 7 27. save input to Q7 28. check to see if Q7 = "Yes"; if it is, skor7 = 1; 29. else if Q7 = "No" if it is, skor7 = 0; 30. integer totalSkor = skor1 + skor2 + skor3 + skor4 + skor5 + skor6 + skor7; 31. 32. check to see if totalSkor >= 10 then print "Terdiagnosa Penyakit ISPA"; 33. if it is Not, print "Belum terdiagnosa terkena ISPA"; 34. prompt the user for input the Answer of the Questions 9 35. save input to Q9 36. check to see if Q9 = "Q" if it is, print "Terdiagnosis laringitis";

Page 19: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

12

37. check to see if Q9 = "R" if it is, print "Terdiagnosis Bronkhitis"; 38. check to see if Q9 = "S" if it is, "Terdiagnosis Bronkhiolitis"; 39. if it is Not, print "Jenis Penyakit ISPA belum terdiagnosa";

Rancangan pseudo-code akan mempermudah proses pembuatan aplikasi atau

program diagnosa penyakit ISPA. Pseudo-code merupakan rancangan yang

mendekati bahasa pemrograman namun masih dapat dimengerti oleh manusia

sehingga dapat digunakan sebagai dasar perancangan berbagai bahasa pemrograman

ataupun digunakan sebagai dasar pengembangan untuk perancangan lebih lanjut.

Program yang dibuat berdasarkan pseudocode, ditunjukkan pada Kode Program 1.

Kode Program 1 Perintah untuk Mendiagnosa Positif ISPA 1. private void btnYes_Click(object sender, EventArgs e)

2. {

3. if (nomor != maxNomor)

4. {

5. totalSkor += skor;

6. Pertanyaan pertanyaan = new Pertanyaan(nomor + 1, totalSkor);

7. this.Hide();

8. pertanyaan.Show();

9. }

10. else 11. { 12. if (totalSkor>=10) 13. { 14. Keadaan keadaan = new Keadaan(); 15. this.Hide(); 16. keadaan.Show(); 17. } 18. else 19. { 20. Diagnosa diagnosa = new Diagnosa("Anda belum terdiagnosa terkena ISPA"); 21. this.Hide(); 22. diagnosa.Show(); 23. } 24. }

25. }

Kode Program 1 merupakan perintah untuk menentukan diagnosa user

terhadap penyakit ISPA, user akan diminta menjawab 7 (tujuh) pertanyaan berupa

gejala-gejala yang sudah disediakan dan setiap jawaban user mempunyai skor untuk

menentukan diagnosa apakah user terkena penyakit ISPA, jika skor lebih dari atau

sama dengan 10 maka user akan terdiagnosa terkena penyakit ISPA namun apabila

skor kurang dari 10 maka user akan belum terdiagnosa terkena ISPA.

Kode Program 2 Perintah untuk Menentukkan Jenis Penyakit Yang Diderita User 1. public Keadaan()

2. {

3. string keadaan="";

4. InitializeComponent();

5. try

6. {

7. string koneksi =

"datasource=localhost;port=3306;username=root;password=";

8. MySqlConnection myKoneksi = new MySqlConnection(koneksi);

9. MySqlDataReader myReader;

10. string query = "select keadaan from regie.tb_terdiagnosa where nomor=1";

11. MySqlCommand myCommand = new MySqlCommand(query, myKoneksi);

Page 20: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

13

12. myKoneksi.Open(); 13. myReader = myCommand.ExecuteReader(); 14. while (myReader.Read()) 15. { 16. keadaan = (string)myReader["keadaan"]; 17. lblKeadaan1.Text = keadaan; 18. } 19. myKoneksi.Close(); 20. }

Kode Program 2 merupakan perintah untuk menentukan jenis penyakit ISPA,

user akan diminta menjawab pertanyaan tentang karakteristik penyakit yang dialami

oleh user.

Gambar 7 Tampilan Ketika Aplikasi Dijalankan

Gambar 7 merupakan tampilan pada saat aplikasi dijalankan, di tampilan ini

terdapat satu buah tombol yang apabila dipilih akan masuk ke dalam menu diagnosa.

Gambar 8 Tampilan Pertanyaan Gejala

Page 21: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

14

Gambar 8 merupakan tampilan pertanyaan berupa gejala seputar penyakit

ISPA, untuk mendiagnosa apakah user terdiagnosa ISPA atau belum terdiagnosa

ISPA maka user harus menjawab pertanyaan yang muncul di dalam sistem ini.

Gambar 9 Tampilan Hasil Diagnosa

Gambar 9 merupakan tampilan hasil diagnosa, apabila user terdiagnosa ISPA

maka akan muncul pertanyaan lanjutan untuk mendiagnosa jenis penyakit yang

diderita oleh user.

Gambar 10 Tampilan User Belum Terdiagnosa ISPA

Page 22: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

15

Gambar 10 merupakan tampilan apabila user belum terdiagnosa terkena

penyakit ISPA, terdapat dua buah tombol di dalam tampilan ini, apabila user memilih

tombol Diagnosa Ulang maka sistem akan kembali berjalan dan apabila user memilih

tombol Exit maka user secara otomatis akan keluar dari sistem.

Hasil pengujian dari implementasi sistem Diagnosa Penyakit ISPA pada Bayi

dan Anak Menggunakan Finite State Automata dilakukan dengan menganalisis sistem

untuk mengetahui kemampuan sistem dalam memberikan hasil deteksi. Data yang

diuji berjumlah 30 sampel data analisa pakar. Hasil rekomendasi yang diperoleh dari

perhitungan di sistem pakar, dicocokkan dengan hasil analisa dari automata. Hasil

pengujian akurasi sistem pakar dari 30 sampel yang telah diuji.

Nilai keakuratan sistem memiliki dua level yaitu 0 dan 1. Bernilai 0 apabila

diagnosa akhir sistem tidak sesuai dengan automata, dan bernilai 1 jika diagnosa

akhir sesuai dengan automata.

Tabel 4 Tabel Perbandingan Hasil Diagnosa Sistem dan Automata

No

kasus Diagnosa Pakar Diagnosa Sistem

Nilai

Keakuratan

1 Laringitis Laringitis 1

2 Bronchitis Bronchitis 1

3 Bronchiolitis Bronchiolitis 1

4 Laringitis Laringitis 1

5 Bronchiolitis Bronchiolitis 1

6 Laringitis Laringitis 1

7 Laringitis Laringitis 1

8 Bronchiolitis Bronchiolitis 1

9 Laringitis Laringitis 1

10 Bronchitis Bronchitis 1

11 Laringitis Laringitis 1

12 Bronchiolitis Bronchiolitis 1

13 Laringitis Laringitis 1

14 Bronchitis Bronchitis 1

15 Laringitis Laringitis 1

16 Bronchiolitis Bronchiolitis 1

17 Laringitis Laringitis 1

18 Bronchitis Bronchitis 1

19 Laringitis Laringitis 1

20 Bronchitis Bronchitis 1

21 Laringitis Laringitis 1

22 Bronchiolitis Bronchiolitis 1

23 Laringitis Laringitis 1

24 Bronchitis Bronchitis 1

25 Laringitis Laringitis 1

26 Bronchiolitis Bronchiolitis 1

27 Laringitis Laringitis 1

28 Bronchitis Bronchitis 1

Page 23: Diagnosa Penyakit ISPA pada Bayi dan Anak Menggunakan Finite … · 2018. 1. 26. · i . Diagnosa Penyakit ISPA pada Bayi dan Anak . Menggunakan . Finite State Automata. Artikel Ilmiah

16

29 Laringitis Laringitis 1

30 Laringitis Laringitis 1

Jumlah 30

Jika dihitung probabilitasnya :

X 100% =

X 100% = 100%

Jadi, dapat disimpulkan dari 30 data yang diuji mendapatkan nilai akurasi 100% yang

menunjukkan bahwa sistem diagnosa penyakit ISPA pada bayi dan anak dapat

bekerja dengan baik sesuai dengan pakar.

5. Simpulan

Berdasarkan hasil penelitian, dan pembahasan yang dilakukan ditarik

kesimpulan sebagai berikut (1) Finite State Automata dapat diimplementasikan dalam

program deteksi gejala penyakit/gangguan kesehatan; (2) Sistem Diagnosa Penyakit

ISPA Pada Bayi dan Anak membantu user untuk mendapatkan informasi ataupun

diagnosa penyakit ISPA (Infeksi Saluran Pernapasan Akut) sehingga para orang tua

dapat melakukan pencegahan lebih awal (3) Aplikasi yang dibangun mempunyai nilai

akurasi sampai 100% yang artinya bekerja dengan baik sesuai denagn pakar. Saran

pengembangan yang dapat diberikan untuk penelitian lebih lanjut adalah sebagai

berikut : (1) Penambahan state untuk langkah awal pencegahan jika user positif

terdiagnosa penyakit ISPA; (2) Pengembangan sistem seperti menambahkan jenis

penyakit yang sering terjadi pada bayi dan anak, agar orang tua anak lebih mudah

mendapatkan informasi tentang berbagai macam penyakit.

6. Daftar Pustaka

[1] Gilbert, P. 1986. Penyakit yang Lazim pada Anak-anak. Jakarta: Arcan.

[2] Irawan, J. C., Perancangan dan Implementasi Finite Automata pada Simulasi

Vending Machine, Skripsi, Salatiga: Universitas Kristen Satya Wacana.

[3] Tarigan, F., 2014. Sistem Pakar Untuk Mendiagnosa Penyakit Ginjal Dengan

Metode Backward Chaining, Skripsi: Medan: Sekolah Tinggi Manajemen

Informatika Komputer.

[4] Sugiono, B., 2010. Penerapan Teori Bahasa dan Automata untuk Mengecek

Kebenaran Format SMS pada SMS Premium, Skripsi, Salatiga: Universitas

Kristen Satya Wacana.

[5] Utdirartatmo, F., 2001. Teori Bahasa dan Otomata. Yogyakarta: J & J

Learning.

[6] Staf Pengajar Ilmu Kesehatan Anak Fakultas Kedokteran Universitas

Indonesia. 1985. Ilmu Kesehatan Anak. Jilid 1. Jakarta: Infomedika.