BAB IV PERANCANGAN SISTEM
Perancangan akan dimulai setelah tahap analisis terhadap sistem selesai dilakukan. Perancangan dapat didenifisikan sebagai penggambaran, perencanaan dan pembuatan sketsa atau pengaturan dari beberapa elemen yang terpisah ke dalam satu kesatuan yang utuh dan berfungsi. Tahapan ini menyangkut mengkonfigurasi dari komponen-komponen perangkat lunak dan perangkat keras dari suatu sistem sehingga setelah instalasi dari sistem akan benar-benar memuaskan dari rancang bangun yang telah ditetapkan pada akhir tahap analisis sistem. Untuk membuat suatu aplikasi yang memiliki kemampuan handal, maka perlu sebuah perancangan perangkat lunak dengan tujuan untuk memperbaiki masalah yang terjadi. Perancangan perangkat lunak secara umum bertujuan untuk memberikan gambaran secara umum kepada pemakai aplikasi yang baru dan juga merupakan persiapan dari rancangan terperinci dengan mengidentifikasi komponen-komponen aplikasi. Rancangan ini meliputi Flowchart yang disusulkan, Diagram Konteks, Data Flow Diagram, Entity Relationship Diagram, Struktur Program, Rancangan Input, Rancangan Proses dan Rancangan Output.
61
62
4.1
Flowchart aplikasi sistem pakar diagnosa penyakit pernafasan anak Flowchart adalah penggambaran secara grafis dari langkah-langkah
prosedur dari suatu program. Pada bagian ini akan dijelaskan langkah-langkah dalam menjalankan aplikasi diagnosa penyakit anak yang dirancang. Proses yang terjadi pada sistem secara sederhana dapat dijelaskan, dimana pada proses diagnosa user akan dihadapkan dengan pertanyaan gejala dan setiap pertanyaan gajala tersebut akan dijawab dengan memiilih tombol Ya atau Tidak yang ditampilkan oleh sistem sampai tombol berhenti menentukan diagnosa yang tepat. Setelah user memilih jawaban dari pilihan gejala yang telah disediakan, maka sistem akan membaca pilihan yang dimasukkan oleh user yang disesuaikan dengan aturan pada basis pengetahuan. Pada setiap aturan terdapat solusi berisi nilai 0 (solusi = 0) dan solusi berisi
kode
penyakit
G001,
G002,
dan
seterusnya (solusi = KodePenyakit, misal solusi = G007). Dimana solusi = 0, sistem akan terus membaca aturan selanjutnya dan menampilkan pertanyaan beserta pilihan gejala selanjutnya sesuai aturan (sistem terus melakukan proses diagnosa). Sedangkan solusi = KodePenyakit, sistem berhenti menampilkan pertanyaan beserta pilihan gejala (berhenti melakukan proses tanya jawab atau diagnosa) dan menampilkan hasil diagnosa berupa nama penyakit dan pilihan gejala user pada proses diagnosa. Berdasarkan solusi pada aturan tersebut maka sistem dapat memutuskan apakah sistem berhenti melakukan proses diagnosa atau lanjut melakukan proses diagnosa. Sistem berhenti melakukan proses diagnosa jika menemukan solusi = KodePenyakit. Sistem lanjut melakukan proses diagnosa
63
jika menemukan solusi = 0 dan berhenti jika menemukan solusi = KodePenyakit pada aturan berikutnya. Proses yang terjadi pada sistem tersebut dapat dilihat pada gambar 4.1 diagram flowchart sistem:
Mulai
Menampilkan pertanyaan gejala dengan ketentuan : A. Gejala dengan jml kemunculan terbanyak B. Gejala yang ditampilkan sesuai dgn alur diagnosa
Baca pilihan gejala Sesuaikan dengan aturan
T
Y If solusi = 0
Solusi = KodePenyakit
Data diagnosa disimpan
Tampil Hasil Diagnosa
Selesai
Gambar 4.1 Flowchart Sistem Pakar untuk diagnosis Penyakit Pernafasan Anak
64
4.2
Diagram konteks Diagram konteks merupakan gambaran secara umum mengenai sebuah
sistem
yang
dirancang
secara
global,
yaitu
suatu
diagram
yang
mempersentasikan atau mengambarkan hubungan antara sistem dengan luar lingkungan luar sistem yang mempengaruhi operasi sistem. Sistem
ditunjukan
dalam
satu
lingkungan
yang
mengambarkan
keseluruhan proses dalam sistem dan hubungannya dengan entitas. Diagram konteks pada sistem pakar ini dapat dilihat pada gambar 4.2.
Data Login Pakar Data User Data Gejala Data Penyakit Data Pengetahuan
Data Login User Data Diagnosa
Sistem Pakar Diagnosa Penyakit Anak dengan Metode
User
Pakar
Forward Chaining
Info Login User Valid Info Login User Invalid Info Hasil Diagnosa
Info Login Pakar Valid Info Login Pakar Invalid Info User Info Gejala Info Penyakit Info Pengetahuan
Gambar 4.2 Diagram Konteks sistem pakar untuk diagnosa penyakit anak
Dari gambar diatas dapat dijelaskan bahwa diiagram konteks terdiri dari 2 entitas yaitu Pakar dan User. User memberikan input ke sistem berupa data pasien serta konsultasi yang dilakukan pasien berdasarkan pertanyaan-pertanyaan yang diberikan sistem. Pakar memberikan input berupa data dasar dan akuisisi
65
pengetahuan penyakit pernafasan, sehingga nantinya akan mengeluarkan output kepada user berupa saran untuk penyakit dan hasil pemeriksaan dari pasien tersebut. 4.3 Data Flow Diagram (DFD) Data Flow Diagram merupakan representasi grafik dari sebuah sistem yang menunjukan proses-proses dalam sebuah sistem dan aliran data yang masuk dan keluar dari proses tersebut secara logika dimana data tersebut mengalir atau lingkungan fisik dimana data tersebut akan disimpan. DFD sistem pakar untuk diagnosa anak ini dimulai dari DFD level 0 sampai level 2. 4.3.1 Data Flow Diagram (DFD) Level 0 Info login user valid Info login user invalid Info login pakar valid Info login pakar invalid Data login pakar
Pakar
Data user Data gejala Data penyakit Data Pengetahuan Info user Info gejala Info penyakit Info Pengetahuan Data penyakit Data penyakit
1. Login
Data login user
Data user
User
Login valid Data user
2.* Pengolahan Data
Data user Data gejala Data gejala
User Penyakit
Data Pengetahuan Data Pengetahuan
Gejala
Pengetahuan Login valid Data Pengetahuan Data penyakit Data gejala
Hasil Diagnosa
Data diagnosa
Data hasil diagnosa
3.* Diagnosa
Data diagnosa
Info hasil diagnosa
Gambar 4.3 DFD level 0 Sistem pakar untuk diagnosa Penyakit Anak
66
DFD level 0 memberikan gambaran umum proses-proses dalam aplikasi beserta input dan output. Pada level ini terdapat 3 proses, yaitu : 1. Proses 1.0, Login. Proses ini digunakan untuk mengakses aplikasi agar dapat melakukan proses-proses yang sesuai dengan tingkat status kepenggunaannya. 2. Proses 2.0, Pengolahan Data. Proses ini dilakukan untuk mengimputkan data diantaranya terdapat data user, data gejala, data penyakit dan data pengetahuan atau aturan. 3. Proses 3.0, Diagnosa. Proses ini dilakukan untuk konsultasi dengan system sehingga mendapatkan hasil diagnosa dari petanyaan yang dijawab oleh user. 4.3.2 Data Flow Diagram (DFD) Level 1 Proses 2.0 DFD Level 1 proses 2.0 Pengolahan data, memiliki empat proses utama yaitu Pengolahan User, Gejala, Penyakit, dan Pengetahuan. Semua proses ini hanya dapat akses oleh Pakar seperti terlihat pada Gambar 4.4
67
Data user
2.1 Pengolahan User
Info user
User
Data user Data user
Data gejala
2.2 Pengolahan Gejala Info gejala
Gejala
Data gejala Data gejala
Pakar
Data penyakit
2.3 Pengolahan Penyakit
Penyakit
Data Penyakit Data penyakit
Info penyakit
Data gejala Data Pengetahuan Info Pengetahuan
Pengetahuan
Data Pengetahuan
2.4 Pengolahan Pengetahuan
Data penyakit
Data Pengetahuan
Gambar 4.4 DFD Level 1 Proses 2.0 Pengolahan Data DFD level 1 Proses 2 terdiri dari 4 proses diantaranya : 1. Proses 2.1, Pengolahan Data Pasien. Proses ini digunakan untuk melakukan pengolahan data pasien diantaranya menambah, merubah menghapus dan menyimpan. 2. Proses 2.2, Pengolahan Data Gejala. Proses ini digunakan untuk melakukan pengolahan data gejala diantaranya menambah, merubah, menghapus dan menyimpan.
68
3. Proses 2.3, Pengolahan Data Penyakit. Proses ini digunakan untuk melakukan pengolahan data penyakit diantaranya menambah, merubah, menghapus dan menyimpan. 4. Proses 2.4, Pengolahan Data Pengetahuan. Proses ini digunakan untuk melakukan
pengolahan
data
pengetahuan
diantaranya
menambah,
merubah, menghapus dan menyimpan. 4.3.3 Data Flow Diagram (DFD) Level 1 proses 3.0 DFD Level 1 proses 3.0 memiliki dua proses utama yaitu Diagnosa Gejala dan Diagnosa Penyakit. Proses ini diakses oleh User seperti terlihat pada Gambar 4.5.
Data diagnosa Info diagnosa
3.1 Diagnosa Gejala
Data penyakit
Data Pengetahuan
Data diagnosa Data hasil diagnosa
Data gejala
Pengetahuan Hasil_Diagnosa Penyakit
User
Gejala
Data hasil diagnosa
Data gejala Data Pengetahuan
Data diagnosa
Data diagnosa Info hasil diagnosa
3.2 Diagnosa Penyakit
Data penyakit
Gambar 4.5 DFD Level 1 Proses 3.0 Diagnosa
69
DFD level 1 Proses 3 terdiri dari 2 proses diantaranya : 1. Proses 3.1, Diagnosa Gejala. Proses ini menampilkan pertanyaan gejala yang ada. 2. Proses 3.2, Diagnosa Penyakit. Proses ini menghitung nilai dari gejala yang telah dipilih, kemudaian menampilkan hasil dari diagnosa yang telah dilakukan. 4.4 Analisis Basis Data Basis data merupakan kumpulan file-file yang yang mempunyai kaitan satu sama lain sehingga membentuk kesatuan yang terintegrasi. Diagram
E-R
adalah
alat bantu
dalam memodelkan data dan
menggambarkan hubungan antara data, sehingga dapat dilihat hubungan antar entitas. Diagram E-R yang diusulkan untuk sistem yang akan dibangun dapat dilihat pada gambar 4.6
KodeGejala
Id Pengetahuan
NamaGejala
Kode Penyakit KodeGejala
1
Gejala
n
Memiliki
Pengetahuan/ Aturan
1
Memiliki
Penyebab
No Diagnosa
Penanganan
Kode Penyakit
n JmlGejala
Penyakit
1
m
Menghasilkan
Kode Diagnosa
Diagnosa Kode Pasien
Kode Penyakit
Nama Penyakit
Tanggal Persen
Kode Gejala
Gambar 4.6 ERD Sistem Pakar untuk diagnosa Penyakit Anak
70
ERD adalah hubungan antar table one to one, one to many, many to many. Pada hubungan antar tabel diagnosa penyakit anak ini, dari gambar 4.6 dapat diketahui keterangan sebagai berikut : 1. Hubungan antar tebel gejala dan pengetahuan adalah one to many karena 1 gejala bisa memiliki banyak pengetahuan. 2. Hubungan antar table pengetahuan dan diagnosa adalah one to many karena 1 pengetahuan memiliki banyak diagnosa. 3. Hubungan antar table penyakit dan hasil diagnosa adalah one to many karena 1 penyakit bisa menghasilkan banyak diagnosa. 4.5
Perancangan Data Perancangan data terdiri dari struktur file, pengkodean dan struktur
program yang terdapat pada ERD dari sistem pakar diagnosa penyakit anak.
4.5.1 Struktur File
Didalam pembuatan program dibutuhkan suatu spesifikasi file yang dimaksudkan untuk dapat melakukan kegiatan-kegiatan dalam pengaturan pencarian data dan pembuatan laporan yang dapat mempermudah kerja sistem komputer. Untuk ini aplikasi diagnosa penyakit anak ini membutuhkan spesifikasi file untuk mempermudah dalam melakukan kegiatan pemrograman yang dapat dilihat dari tabel-tabel berikut ini :
71
1. Nama Tabel
: Login
Primary Key
: Id Tabel 4.1 Struktur File Data Tabel Login
No 1 2 3 4 5
Nama_Field Id Nama Username Password Jabatan
2. Nama Tabel
Tipe int Varchar Varchar Varchar Varchar
Ukuran 50 50 50 50
Keterangan Primary Key Nama Username Password Jabatan
: Gejala
Primary Key
: KodeGejala Tabel 4.2 Struktur File Data Tabel Gejala
No Nama_Field 1 KodeGejala 2 NamaGejala
3. Nama Tabel
Tipe Varchar Varchar
Ukuran 10 200
Keterangan Primary Key Nama Gejala
: Pasien
Primary Key
: KodePasien Tabel 4.3 Struktur File Data Tabel Pasien
No 1 2 3 4 5 6 7
Nama_Field KodePasien JenisKelamin TempatLahir Alamat Nama TanggalLahir Umur
Tipe Varchar Varchar Varchar Text Varchar Datetime Int
Ukuran 50 50 50 50 -
Keterangan Primary Key Jenis Kelamin Tempat Lahir Alamat Nama Tanggal Lahir Umur
72
4. Nama Tabel
: Tabel Pasien_Diagnosa
Primary Key
: KodeDiagnosa
Tabel 4.4 Struktur File Data Tabel Pasien_Diagnosa No 1 2 3 4
Nama_Field KodeDiagnosa KodePasien KodeGejala Tanggal
5. Nama Tabel
Tipe Varchar Varchar Varchar Datetime
Ukuran 50 50 50 -
Keterangan Primary Key Foreign key dari tabel Pasien Foreign key dari tabel Gejala Tanggal
: Pengetahuan
Primary Key
: IdPengetahuan Tabel 4.5 Struktur File Data Tabel Pengetahuan
No Nama_Field 1 IdPengetahuan 2 KodePenyakit 3 KodeGejala
6. Nama Tabel
Tipe Varchar Varchar Varchar
Ukuran 50 50 50
Keterangan Primary Key Foreign key dari tabel Penyakit Foreign key dari tabel Gejala
: Tabel Penyakit
Primary Key
: KodePenyakit Tabel 4.6 Struktur File Data Tabel Penyakit
No 1 2 4 7 8
Nama_Field KodePenyakit NamaPenyakit Penyebab Penanganan JmlGejala
Tipe Varchar Varchar Text Text Int
Ukuran 50 50 -
Keterangan Primary key Nama Penyakit Penyebab Penanganan Jumlah Gejala
73
7. Nama Tabel
: Hasil_Diagnosa_Header
Primary Key
: Nodiagnosa
Tabel 4.6 Struktur File Data Tabel Hasil Diagnosa Header No 1 2 3 4 5 6
Nama_Field NoDiagnosa KodeDiagnosa KodePasien KodePenyakit Persen Tanggal
Tipe Int Varchar Varchar Varchar Decimal Datetime
Ukuran 50 50 50 18 -
Keterangan Primary key Nama Penyakit Penyebab Penanganan Persen Tanggal
4.5.2 Perancangan Pengkodean Tahapan pengkodean dapat membantu dalam pengidentifikasian suatu objek, sehingga kesalahan dalam identifikasi objek dapat dihindari. 1. Kode Penyakit Kode penyakit terdiri dari 6 digit yaitu sebagai berikut : XXX
099 Nomor urut Penyakit Singkatan dari Penyakit
Contoh : PNY-001, menyatakan penyakit dengan nomor urut penyakit 01. 2. Kode Gejala Kode gejala terdiri dari 6 digit yaitu sebagai berikut : XXX
099 Nomor urut Gejala Singkatan dari Gejala
Contoh : GJL-001, menyatakan gejala dengan no urut 001.
74
4.5.3 Perancangan Struktur Program Struktur program adalah suatu konsep pembuatan yang mempunyai fungsi untuk mengelompokkan instruksi kedalam sub program fungsional dimana setiap sub program tersebut memiliki tugas dan fungsi tertentu yang digunakan untuk mendukung dari keseluruhan program yang dibuat. Struktur program yang dibuat adalah sebagai berikut :
Struktur Program
INPUT
PROSES
OUTPUT
Gejala
Diagnosa dari informasi yang diinput
Hasil Diagnosa Solusi / Saran yang dilakukan
Penyakit
Pengetahuan
Data Diagnosa
Keterangan : yang dicetak tebal dilakukan oleh Pakar.
Gambar 4.7 Struktur Program Aplikasi diagnosa Penyakit Pernafasan Anak
4.5.4
Perancangan Struktur Menu Struktur menu merupakan bentuk umum dalam suatu perancangan aplikasi
yang dapat memudahkan pengguna dalam menggunakan aplikasi yang dibangun.
75
Dengan adanya struktur menu ini, maka proses pengolahan data diharapkan lebih cepat dilakukan, sehingga keterlambatan dalam penyajian data dapat ditekan seminimal mungkin. Struktur menu yang dibuatkan dalam aplikasi ini terdiri dari menu-menu dan sub menunya. Dapat dilihat dari gambar berikut :
Menu
Login
Pakar
User
Pengolahan Data Gejala
Penelurusan Diagnosa
Pengolahan Data Penyakit Pengolahan Data Pengetahuan Pengolahan Data Diagnosa
Gambar 4.8 Struktur Menu Aplikasi Diagnosia Penyakit Anak 4.5.6
Perancangan Antarmuka Perancangan
antarmuka
bertujuan
untuk
memberikan
gambaran
tentang aplikasi yang akan dibangun, sehingga akan mempermudah dalam mengimplementasikan aplikasi dan pembuatan aplikasi yang User friendly.
76
Rancangan aplikasi sistem pakar untuk diagnosa penyakit anak yang akan dibangun adalah sebagai berikut.
X
Form Utama File Input User Tool About
SISTEM PAKAR DIAGNOSA PENYAKIT ANAK
Gambar 4.9 Perancangan Tampilan Menu Utama
X
Form Login File Input User Tool About Username Password Akses
Ok
Cancel
Gambar 4.10 Perancangan Tampilan Menu Login
77
SISTEM PAKAR DIAGNOSA PENYAKIT ANAK KELOLA DATA GEJALA PENYAKIT
Kode Gejala
:
Nama Gejala :
Kode Gejala
Baru
Nama Gejala
Simpan
Ubah
Hapus
Gambar 4.11 Perancangan Tampilan Menu Pengolahan Data Gejala
SISTEM PAKAR DIAGNOSA PENYAKIT ANAK KELOLA DATA PENYAKIT
Kode Penyakit
:
Nama Penyakit : Penyebab
:
Penanganan
:
Kode Penyakit
Nama Penyakit
Penyebab
Ubah Data Penyebab & Penanganan
Penanganan
Keluar
Gambar 4.12 Perancangan Tampilan Menu Pengolahan Data Penyakit
78
SISTEM PAKAR DIAGNOSA PENYAKIT ANAK KELOLA DATA PENGETAHUAN
Id Pengetahuan : Nama Penyakit
:
Nama Gejala
:
Id Pengetahuan
Baru
Kode Gejala
Kode Penyakit
Simpan
Ubah
Nama Penyakit
Nama Gejala
Hapus
Gambar 4.13 Perancangan Tampilan Menu Pengolahan Data Pengetahuan
SISTEM PAKAR DIAGNOSA PENYAKIT ANAK PROSES DIAGNOSA Kode Diagnosa :
Tanggal :
Kode Pasien : Nama : Tempat Lahir : Tgl Lahir : Jenis Kelamin :
Laki-laki
Perempuan
Alamat :
Password :
Baru
Simpan
Ubah
Keluar
Ulangi Diagnosa
Jawablah gejala yang dirasakan dibawah ini :
Ya
Tidak
Simpan
Hasil
Gambar 4.14 Perancangan Tampilan Menu Pengolahan Data Diagnosa Penyakit
79
SISTEM PAKAR DIAGNOSA PENYAKIT ANAK HASIL DIAGNOSA
Nomor Dianosa
:
Nama
:
Tempat Lahir
:
Tanggal Lahir
:
Jenis Kelamin Umur Alamat
: : :
Tanggal
:
Berdasarkan analisis, maka hasil diagnosa adalah : Nama Penyakit Nilai Proporsi
: Batuk Pilek : 90 %
Penyebab
:
Penanganan
:
Gejala yang dipilih
: 1. Batuk 2. Pilek 3. Bersin
Catatan : Terjangkit (nilai : 75% - 100%), Kemungkinan menderita (nilai : <75%) Jika ditemukan gejala, maka segera lakukan pengobatan
Gambar 4.15 Perancangan Tampilan Hasil Diagnosa Penyakit