BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Masalah Seperti yang kita ketahui, penyakit gastritis merupakan penyakit yang paling umum diderita masyarakat saat ini. Penyakit gastritis atau yang dikenal dengan istilah dyspepsia atau maag merupakan kondisi yang sangat mengganggu aktivitas bila tidak ditangani dengan tepat dan dapat berakibat fatal. Penyakit Gastritis banyak dijumpai pada masyarakat dari berbagai usia, profesi, maupun lapisan masyarakat. Mengenai jenis kelamin, ternyata baik lelaki maupun perempuan bisa terkena penyakit ini. Hasil survei Fakultas Kedokteran Universitas Indonesia (FKUI) yang dialnsir dari situs www.health.kompas.com menunjukkan bahwa sekitar 60% penduduk Jakarta yang termasuk usia produktif sudah terkena maag. Bahkan pada anak-anak sendiri sudah ada sekitar 27% yang mengidap sakit maag. Pengetahuan dasar tentang penyakit gastritis sangatlah penting dipahami agar tidak terjadi keterlambatan ataupun kesalahan dalam mendiagnosis serta mengobati penyakit ini. Oleh karena itu berdasarkan analisis masalah diatas, maka melalui sistem ini diharapkan menjadi pilihan alternatif konsultasi serta informasi bagi masyarakat mengenai penyakit gastritis, dan masalah yang dianalisis adalah tentang berbagai penyakit gastritis dan penyakit lain yang gejalanya mirip dengan penyakit gastritis beserta gejala atau penyebabnya serta penanganan terhadap penyakit tersebut.
3.2 Analisis Sumber Pengetahuan Sumber pengetahuan sistem pakar ini yang terdiri dari data penyakit gastritis dan penyakit lain yang gejalanya mirip penyakit gastritis beserta definisi,
92
93
pengobatan, pencegahan serta gejala atau penyebabnya diperoleh dari berbagai sumber informasi seperti buku, e-book, internet, serta dari hasil wawancara dengan seorang dokter umum, dr. Rudy Hermanto Kurniawan.
3.3 Analisis Penyakit dan Gejala Langkah
pertama
dalam
mengembangkan
sistem
pakar
adalah
mengidentifikasikan permasalahan yang akan dikaji, dalam hal ini adalah mengidentifikasikan permasalahan yang akan dibuat telebih dahulu, adapun masalah-masalah yang diambil dalam pembuatan sistem pakar ini adalah gejalagejala pada penyakit gastritis, penyakit lanjutan dari penyakit gastritis
dan
penyakit lain yang gejalanya mirip dengan penyakit gastritis serta diagnosis penyakitnya. Berdasarkan sumber-sumber pengetahuan yang telah diuraikan sebelumnya, maka selanjutnya dapat diklasifikasikan jenis penyakit gastritis, serta penyakit lainnya yang memiliki gejala mirip dengan penyakit gastritis, yaitu sebagai berikut:
1. Gastritis akut a. Definisi Penyakit gastritis akut merupakan jenis penyakit gastritis yang menyerang penderitanya secara tiba-tiba dan tidak terjadi terus-menerus. Bila tidak ditangani dengan tepat maka penyakit gastritis akut dapat menjadi kronis. Pada penyakit gastritis akut, gejalanya masih tidak separah gejala-gejala gastritis kronis. b. Penyebab Infeksi Bakteri Mengkonsumsi Obat-Obatan tertentu seperti:
94
Antibiotik golongan macrolite.
Obat penghilang nyeri seperti Nonsteroidal Antiinflamatory Drugs (NSAIDs) misalnya aspirin, ibnuproven (Advil, Motrin, dan lain-lain).
Obat pengencer darah.
Sering mengkonsumsi makanan atau minuman tertentu seperti:
Alkohol.
Kafein.
Makanan asam dan pedas.
Makanan bergas.
Makanan berlemak.
Stress. Pola hidup yang tidak sehat. c. Gejala Gastritis akut ditandai dengan gejala-gejala: Rasa nyeri ulu hati (sebelah kiri rongga dada bawah). Mual. Pusing. Kembung akibatnya cepat merasa kenyang. Dalam waktu tiga puluh menit hingga satu jam setelah makan, merasakan sesak napas. Sering buang gas.
95
Sering bersendawa. d. Pengobatan Menurut dr. Rudy Hermanto Kurniawan, diperlukan beberapa langkah untuk mengobati penyakit gastritis yaitu dengan pemberian obat untuk: Melapisi lambung dengan mengkonsumsi sukralfat. Menetralisir asam lambung dengan mengkonsumsi antasida. Menghilangkan kembung dengan mengkonsumsi enzyplex. Menekan produksi asam lambung dengan mengkonsumsi:
Simetidin, atau
Ranitidine, atau
Famotidin, atau
Omeprazol, atau
Lansoprazol, atau
Pantoprazol.
Mengatasi kejang pada saluran pencernaan dengan mengkonsumsi antispasmodik.
Selain itu, hindari mengkonsumsi makanan pemicu gastritis, dan biasakan makan yang teratur
2. Gastritis kronis a. Definisi Menurut dr. Rudy Hermanto Kurniawan, gastritis kronis dapat ditentukan lebih akurat jika telah dilakukan pemeriksaan di laboratorium. Namun umumnya penderita gastritis kronis memiliki gejala-gejala yang lebih parah
96
intensitasnya dibandingkan dengan gastritis akut. Pada gastritis kronis, biasanya penderita akan mengalami muntah darah atau berak darah. b. Penyebab Infeksi Bakteri Mengkonsumsi Obat-Obatan tertentu seperti:
Antibiotik golongan macrolite.
Obat penghilang nyeri seperti Nonsteroidal Antiinflamatory Drugs (NSAIDs) misalnya aspirin, ibnuproven (Advil, Motrin, dan lain-lain).
Obat pengencer darah.
Sering mengkonsumsi makanan atau minuman tertentu seperti:
Alkohol.
Kafein.
Makanan asam dan pedas.
Makanan bergas.
Makanan berlemak.
Stress. Pola hidup yang tidak sehat. c. Gejala Gastritis kronis ditandai dengan gejala-gejala: Rasa nyeri ulu hati (sebelah kiri rongga dada bawah). Mual.
97
Pusing Muntah. Kembung akibatnya cepat merasa kenyang. Dalam waktu tiga puluh menit hingga satu jam setelah makan, merasakan sesak napas. Sering buang gas. Sering bersendawa. Berak Darah/feses berwarna hitam atau muntah darah. Demam dengan suhu konstan. Diare kurang dari empat kali dalam 24 jam Tidak nafsu makan. Lemas. d. Pengobatan Menurut dr. Rudy Hermanto Kurniawan, pengobatan untuk gastritis kronis masih sama dengan gastritis akut. Diperlukan beberapa langkah untuk mengobati penyakit gastritis yaitu dengan pemberian obat untuk: Melapisi lambung dengan mengkonsumsi sukralfat. Menetralisir asam lambung dengan mengkonsumsi antasida. Menghilangkan kembung dengan mengkonsumsi enzyplex. Menekan produksi asam lambung dengan mengkonsumsi:
Simetidin, atau
98
Ranitidin, atau
Famotidin, atau
Omeprazol, atau
Lansoprazol, atau
Pantoprazol.
Mengatasi kejang pada saluran pencernaan dengan mengkonsumsi antispasmodik.
Selain itu, hindari mengkonsumsi makanan pemicu gastritis, dan biasakan makan yang teratur
3. Penyakit Jantung a. Definisi Merupakan suatu kondisi dimana organ jantung tidak dapat bekerja secara normal. b. Penyebab Tekanan darah tinggi. Usia > 45 tahun. Faktor genetis. Merokok. Minum Alkohol. Tidur tidak teratur.
99
c. Gejala Tidak mengalami kesembuhan setelah diberikan obat gastritis/maag. Rasa nyeri ulu hati. Rasa nyeri menyebar ke punggung hingga bagian bahu kiri. Penurunan tekanan darah (hipotensi). Gelisah. Keringat dingin. 4. Thypus a. Definisi Merupakan penyakit infeksi yang menyerang usus halus, disebabkan oleh sejenis bakteri yaitu Salmonella typhi. b. Penyebab Kondisi tubuh yang tidak fit sehingga menyebabkan daya tahan tubuh menurun. Mengkonsumsi makanan atau minuman yang mengandung bakteri Salmonella typhi, biasanya yang kurang higienis. c. Gejala Tidak mengalami kesembuhan setelah diberikan obat gastritis/maag. Nyeri ulu hati. Demam menyerupai alur pelana kuda, pada pagi hingga siang hari demam agak menurun sedangkan menjelang sore hingga malam hari demam meninggi kembali. Terjadi pada dua hingga 7 hari.
100
Kembung Mual Lemas. Lidah bagian tengah berwarna putih dan pinggir-pinggirnya berwarna merah serta tidak rata/berkerut. 5. Hepatitis a. Definisi Merupakan penyakit yang menyerang organ hati dimana terjadi peradangan yang disebabkan oleh virus hepatitis. b. Penyebab Mengkonsumsi makanan ataupun minuman yang terinfeksi oleh virus hepatitis. c. Gejala Tidak mengalami kesembuhan setelah diberikan obat gastritis/maag. Mual Muntah Skleral atau bagian mata yang berwarna putih akan menjadi kekuningkuningan. Kulit berwarna kuning. Warna air urin berwarna seperti teh. Mengalami rasa nyeri pada perut bagian kanan.
101
3.4 Analisis Perangkat keras Perangkat keras yang digunakan untuk sistem pakar ini adalah dengan spesifikasi sebagai berikut: 1. Processor : Intel(R) Core(TM) i3-2330M CPU @ 2.20GHz 2.20 GHz 2. RAM : 2 GB 3. VGA : 256 MB 4. Harddisk : 80 GB 5. Monitor 14” dengan resolusi layar 1024 x 768 pixels 6. Keyboard serta Mouse.
3.5 Analisis Perangkat Lunak Perangkat lunak yang digunakan untuk sistem pakar ini, adalah dengan spesifikasi sebagai berikut: 1. Untuk membangun sistem a. Sistem operasi Microsoft Windows 7 Ultimate b. Xampp 1.8.1 (terintegrasi dengan interpreter PHP, database MySQL dan web server Apache) c. Microsoft Expression Web 4 d. Microsoft Expression Design 4 e. Google Chrome 2. Untuk mengakses sistem a. Sistem operasi Microsoft Windows b. Software browser Google Chrome
102
3.6 Analisis Tabel Keputusan dan Pohon Keputusan Tabel keputusan digunakan sebagai acuan dalam membuat pohon keputusan dan kaidah yang digunakan. Berdasarkan analisa masalah penyakit dan gejala di atas, maka tabel keputusan pada sistem pakar diagnosa penyakit gastritis dapat dilihat pada tabel berikut. Tabel 3.1 Tabel Keputusan Gejala G001 G002 G003 G004 G005 G006 G007 G008 G009 G010 G011 G012 G013 G014 G015 G016 G017 G018 G019 G020 G021 G022 G023 G024
P001 X X X X X X X
P002 X X X X X X X X X X X X X X
Penyakit P003 X
P004 X X
P005
X
X
X
X
X X X X X X X X X X X
103
Keterangan Penyakit: P001
: Gastritis Akut
P002
: Gastritis Kronis
P003
: Penyakit Jantung
P004
: Thypus
P005
: Hepatitis
Keterangan Gejala: G001
:
Rasa nyeri ulu hati (sebelah kiri rongga dada bawah)
G002
:
Mual
G003
:
Pusing
G004
:
Kembung
G005
:
Dalam waktu tiga puluh menit hingga satu jam setelah makan, merasakan sesak napas
G006
:
Sering buang gas
G007
:
Sering bersendawa
G008
:
Muntah
G009
:
Berak Darah/feses berwarna hitam
G010
:
Muntah darah
G011
:
Demam dengan suhu konstan
G012
:
Diare kurang dari empat kali dalam 24 jam
G013
:
Tidak nafsu makan
104
G014
:
Lemas
G015
:
Rasa nyeri menyebar ke punggung hingga bagian bahu kiri
G016
:
Penurunan tekanan darah (hipotensi)
G017
:
Gelisah
G018
:
Keringat dingin
G019
:
Demam menyerupai alur pelana kuda, pada pagi hingga siang hari demam agak menurun sedangkan menjelang sore hingga malam hari demam meninggi kembali. Terjadi pada dua hingga 7 hari
G020
:
Skleral atau bagian mata yang berwarna putih akan menjadi kekuning-kuningan
G021
:
Kulit berwarna kuning
G022
:
Warna air urin berwarna seperti teh
G023
:
Mengalami rasa nyeri pada perut bagian kanan
G024
:
Lidah bagian tengah akan berwarna putih dan pinggir-pinggirnya berwarna merah serta tidak rata/berkerut.
105
Mengacu pada Tabel 3.1, dapat dibuat pohon keputusan sebagai berikut :
Gambar 3.1 Pohon Keputusan Keseluruhan
106
Gambar 3.2 Pohon Keputusan Penelusuran Penyakit Gastritis Kronis dan Thypus
107
Gambar 3.3 Pohon Keputusan Penelusuran Penyakit Jantung
Gambar 3.4 Pohon Keputusan Penelusuran Penyakit Gastritis Akut
108
Gambar 3.5 Pohon Keputusan Penelusuran Penyakit Hepatitis
Keterangan Penyakit: P001
: Gastritis Akut
P002
: Gastritis Kronis
P003
: Penyakit Jantung
P004
: Thypus
P005
: Hepatitis
Keterangan Gejala: G001
:
Rasa nyeri ulu hati (sebelah kiri rongga dada bawah)
G002
:
Mual
G003
:
Pusing
G004
:
Kembung
109
G005
:
Dalam waktu tiga puluh menit hingga satu jam setelah makan, merasakan sesak napas
G006
:
Sering buang gas
G007
:
Sering bersendawa
G008
:
Muntah
G009
:
Berak Darah/feses berwarna hitam
G010
:
Muntah darah
G011
:
Demam dengan suhu konstan
G012
:
Diare kurang dari empat kali dalam 24 jam
G013
:
Tidak nafsu makan
G014
:
Lemas
G015
:
Rasa nyeri menyebar ke punggung hingga bagian bahu kiri
G016
:
Penurunan tekanan darah (hipotensi)
G017
:
Gelisah
G018
:
Keringat dingin
G019
:
Demam menyerupai alur pelana kuda, pada pagi hingga siang hari demam agak menurun sedangkan menjelang sore hingga malam hari demam meninggi kembali. Terjadi pada dua hingga 7 hari
G020
:
Skleral atau bagian mata yang berwarna putih akan menjadi kekuning-kuningan
G021
:
Kulit berwarna kuning
G022
:
Warna air urin berwarna seperti teh
110
G023
:
Mengalami rasa nyeri pada perut bagian kanan
G024
:
Lidah bagian tengah akan berwarna putih dan pinggir-pinggirnya berwarna merah serta tidak rata/berkerut.
3.7 Analisis Kaidah Produksi Kaidah produksi biasanya dituliskan dalam bentuk jika-maka (IFTHEN). Kaidah ini dapat dikatakan sebagai hubungan implikasi dua bagian, yaitu bagian premise (jika) dan bagian konklusi (maka). Apabila bagian premise dipenuhi maka bagian konklusi juga akan bernilai benar. Sebuah kaidah terdiri dari klausaklausa. Sebuah klausa mirip sebuah kalimat subyek, kata kerja dan objek yang menyatakan suatu fakta. Ada sebuah klausa premise dan klausa konklusi pada sebuah kaidah. Suatu kaidah juga dapat terdiri atas beberapa premis dan lebih dari satu konklusi. Antara premis dan konklusi dapat berhubungan dengan “OR” atau “AND”. Berikut kaidah-kaidah produksi dalam menganalisis penyakit: Rule 1 : IF
G001
Rule 2 : IF
G001
AND G002
AND G002
AND G004
AND G004
AND G005
AND G005
AND G003
AND G011
AND G006
AND G012
AND G007
AND G013
THEN P001
AND G014 AND G009 AND G010 AND G003 AND G006 AND G007 THEN P002
111
Rule 3 : IF
G001
Rule 4 : IF
G001
AND G015
AND G002
AND G016
AND G004
AND G017
AND G014
AND G018
AND G024
THEN P003
THEN P004
Rule 5 : IF
G002
AND G008 AND G004 AND G020 AND G021 AND G022 AND G023 THEN P005
112
3.8 Perancangan UML (Unified Modeling Language) 3.8.1 Model Fungsional (Functional Modeling) 1. Diagram Aktivitas (Activity Diagram) Diagram aktivitas digunakan untuk memodelkan perilaku dalam proses bisnis independen pada objek. Dalam banyak hal, diagram aktivitas dapat dipandang sebagai data flow diagram (DFD) yang canggih yang digunakan sehubungan dengan analisis terstruktur. Namun, tidak seperti DFD, diagram aktivitas mencakup notasi yang membahas pemodelan paralel, kegiatan bersamaan dan proses pengambilan keputusan yang kompleks(Alan Dennis, Barbara Haley Wixom dan David Paul Tegarden, 2009:159). Dengan demikian, diagram aktivitas dapat digunakan untuk memodelkan segala sesuatu dari alur kerja bisnis tingkat tinggi yang melibatkan banyak use case yang berbeda, hingga ke perincian use case secara individual. Singkatnya, diagram aktivitas dapat digunakan untuk memodelkan segala jenis proses (Alan Dennis, Barbara Haley Wixom dan David Paul Tegarden, 2009:159). Berikut ini merupakan activity diagram sistem pakar penyakit gastritis.
113
Gambar 3.6 Activity Diagram
114
2. Deskripsi Use Case (Use Case Description) Sebelum merancang use case diagram, dirancangkan use case description terlebih dahulu. Berikut ini merupakan use case description sistem pakar penyakit gastritis berdasarkan activity diagram yang telah dirancang sebelumnya.
Tabel 3.2 Use Case Description Melakukan Login Admin Use Case Name: Melakukan Login Admin ID: 1 Importance Level: High Detail, Essential Primary Actor: Admin Use Case Type: AdminIngin mendapatkan akses untuk menambah atau melakukan perubahan data penyakit pada Stakeholders and Interests: website.
Brief Description:
Use Case ini menggambarkan bagaimana admin melakukan login pada website sistem pakar penyakit gastritis.
Trigger: Admin External Type: Relationships: Admin Association: Include: Extend: Generalization: Normal Flow of Events: 1. Admin membuka halaman website sistem pakar gastritis. 2. Admin memilih submenu Admin 3. Jika Admin lupa password, Subflows S-1 dijalankan. 4. Admin menginput username dan password. 5. Admin mengklik tombol Login. Subflows: S-1: Lupa Password 1. Admin mengklik link Lupa Password. 2. Admin menginput username 3. Admin mengklik tombol Submit 4. Admin mengecek email dan menemukan email dari Admin Sistem Pakar Gastritis berisi password baru admin. Alternate/exceptional Flows: 1. 2. 3.
115
Tabel 3.3 Use Case Description Mengubah Password Admin Use Case Name: Mengubah Password Admin ID: 2 Importance Level: High Detail, Essential Primary Actor: Admin Use Case Type: Admin- Ingin memastikan passwordnya bersifat privat. Stakeholders and Interests: Brief Description:
Use Case ini menggambarkan bagaimana admin melakukan perubahan password pada website sistem pakar penyakit gastritis.
Trigger: Admin External Type: Relationships: Admin Association: Include: Extend: Generalization: Normal Flow of Events: 1. Setelah melakukan Login, Admin memilih halaman Ubah Password pada submenu Admin. 2. Admin menginput data-data yang diperlukan. 3. Admin mengklik tombol Simpan 4. Admin dapat mengecek email untuk memastikan apakah password berhasil diubah. Subflows:
Alternate/exceptional Flows: 3a: Admin batal melakukan perubahan password, tombol Batal diklik.
116
Tabel 3.4 Use Case Description Mengolah Data Penyakit Use Case Name: Mengolah Data Penyakit ID: 3 Importance Level: High Detail, Essential Primary Actor: Admin Use Case Type: AdminIngin memastikan kelengkapan data dan keakuratan data pada sistem pakar penyakit Stakeholders and Interests: gastritis dengan mengolah data penyakit. UserIngin diagnosis yang dilakukannya akurat. Brief Description:
Use Case ini menggambarkan bagaimana admin mengolah data penyakit pada website sistem pakar penyakit gastritis.
Trigger: Admin External Type: Relationships: Admin Association: Include: Extend: Generalization: Normal Flow of Events: 1. Setelah melakukan Login, Admin memilih halaman Daftar Penyakit pada submenu Admin. 2. Admin memutuskan akan melakukan penambahan, perubahan atau penghapusan data. Jika Admin ingin melakukan penambahan data, subflows S1 dijalankan. Jika Admin ingin melakukan perubahan data, subflows S2 dijalankan. Jika Admin ingin melakukan penghapusan data, subflows S3 dijalankan. Subflows: S-1: Penambahan Data 1. Admin mengklik tombol Tambah 2. Admin mengisi data-data penyakit baru yang akan ditambah. 3. Admin mengklik tombol Simpan. S-2: Perubahan Data 1. Admin mengklik tombol Edit 2. Admin melakukan perubahan data penyakit. 3. Admin mengklik tombol Simpan. S-3: Penghapusan Data 1. Admin mengklik tombol Hapus 2. Admin mengklik tombol konfirmasi Ya untuk mengkonfirmasi penghapusan data penyakit. Alternate/exceptional Flows: S-1, 3a1: Admin batal melakukan penambahan data, tombol Batal diklik. S-2, 3a2: Admin batal melakukan perubahan data, tombol Batal diklik. S-3, 2a1: Admin batal melakukan penghapusan data, tombol konfirmasi Tidak diklik.
117
Tabel 3.5 Use Case Description Mengolah Data Gejala Use Case Name: Mengolah Data Gejala ID: 4 Importance Level: High Detail, Essential Primary Actor: Admin Use Case Type: AdminIngin memastikan kelengkapan data dan keakuratan data pada sistem pakar penyakit Stakeholders and Interests: gastritis dengan mengolah data gejala. UserIngin diagnosis yang dilakukannya akurat. Brief Description:
Use Case ini menggambarkan bagaimana admin mengolah data gejala pada website sistem pakar penyakit gastritis.
Trigger: Admin External Type: Relationships: Admin Association: Include: Extend: Generalization: Normal Flow of Events: 1. Setelah melakukan Login, Admin memilih halaman Daftar Gejala pada submenu Admin. 2. Admin memutuskan akan melakukan penambahan, perubahan atau penghapusan data gejala. Jika Admin ingin melakukan penambahan data, subflows S1 dijalankan. Jika Admin ingin melakukan perubahan data, subflows S2 dijalankan. Jika Admin ingin melakukan penghapusan data, subflows S3 dijalankan. Subflows: S-1: Penambahan Data 1. Admin mengklik tombol Tambah 2. Admin mengisi data-data gejala baru yang akan ditambah. 3. Admin mengklik tombol Simpan. S-2: Perubahan Data 1. Admin mengklik tombol Edit 2. Admin melakukan perubahan data gejala. 3. Admin mengklik tombol Simpan. S-3: Penghapusan Data 1. Admin mengklik tombol Hapus 2. Admin mengklik tombol konfirmasi Ya untuk mengkonfirmasi penghapusan data gejala. Alternate/exceptional Flows: S-1, 3a1: Admin batal melakukan penambahan data, tombol Batal diklik. S-2, 3a2: Admin batal melakukan perubahan data, tombol Batal diklik. S-3, 2a1: Admin batal melakukan penghapusan data, tombol konfirmasi Tidak diklik.
118
Tabel 3.6 Use Case Description Mengolah Data Relasi Use Case Name: Mengolah Data Relasi ID: 5 Importance Level: High Detail, Essential Primary Actor: Admin Use Case Type: AdminIngin memastikan kelengkapan data dan keakuratan data pada sistem pakar penyakit gastritis dengan mengolah data relasi antara Stakeholders and Interests: penyakit dan gejala yang dimiliki. UserIngin diagnosis yang dilakukannya akurat. Brief Description:
Use Case ini menggambarkan bagaimana admin mengolah data relasi penyakit dan gejala pada website sistem pakar penyakit gastritis.
Trigger: Admin External Type: Relationships: Admin Association: Include: Extend: Generalization: Normal Flow of Events: 1. Setelah melakukan Login, Admin memilih halaman Relasi pada submenu Admin. 2. Admin memutuskan akan melakukan penambahan atau perubahan data relasi. 3. Admin menginput relasi. 4. Admin mengklik tombol Simpan Subflows:
Alternate/exceptional Flows: 3a: Admin batal melakukan perubahan data, tombol Batal diklik. .
119
Tabel 3.7 Use Case Description Mengolah Bobot Gejala Use Case Name: Mengolah Bobot Gejala ID: 6 Importance Level: High Detail, Essential Primary Actor: Admin Use Case Type: AdminIngin memastikan kelengkapan data dan keakuratan data pada sistem pakar penyakit Stakeholders and Interests: gastritis dengan mengolah bobot gejala. UserIngin diagnosis yang dilakukannya akurat. Brief Description:
Use Case ini menggambarkan bagaimana admin mengolah bobot gejala pada website sistem pakar penyakit gastritis.
Trigger: Admin External Type: Relationships: Admin Association: Include: Extend: Generalization: Normal Flow of Events: 1. Setelah melakukan Login, Admin memilih halaman Bobot Gejala pada submenu Admin. 2. Admin memutuskan akan melakukan penambahan atau perubahan bobot gejala. 3. Admin menginput bobot gejala. 4. Admin mengklik tombol Simpan. Subflows:
Alternate/exceptional Flows: 3a: Admin batal melakukan perubahan data bobot gejala, tombol Batal diklik.
120
Tabel 3.8 Use Case Description Melakukan Logout Admin Use Case Name: Melakukan Logout Admin ID: 7 Importance Level: High Detail, Essential Primary Actor: Admin Use Case Type: Admin- Ingin memastikan akses admin tidak bisa diakses oleh pihak-pihak lain. Stakeholders and Interests:
Brief Description:
Use Case ini menggambarkan bagaimana admin melakukan logout pada website sistem pakar penyakit gastritis.
Trigger: Admin External Type: Relationships: Admin Association: Include: Extend: Generalization: Normal Flow of Events: 1. Admin memilih tombol logout pada submenu Admin 2. Pada submenu Admin akan kembali ke halaman Login Admin. Subflows:
Alternate/exceptional Flows: 4. 5. 6.
121
Tabel 3.9 Use Case Description Melakukan Registrasi User Use Case Name: Melakukan Registrasi User ID: 8 Importance Level: High Detail, Essential Primary Actor: User Use Case Type: User- Ingin melakukan diagnosis pada sistem pakar penyakit gastritis. Stakeholders and Interests:
Brief Description:
Use Case ini menggambarkan bagaimana user melakukan registrasi pada website sistem pakar penyakit gastritis.
Trigger: User External Type: Relationships: User Association: Include: Extend: Generalization: Normal Flow of Events: 1. User membuka website sistem pakar penyakit gastritis. 2. User memilih submenu Diagnosis. 3. User mengklik link Registrasi. 4. User mengisi data-data yang dibutuhkan. 5. User mengklik tombol Daftar. 6. User mengecek email untuk memastikan bahwa proses registrasi berhasil. Subflows:
Alternate/exceptional Flows:
122
Tabel 3.10 Use Case Description Melakukan Login User Use Case Name: Melakukan Login User ID: 9 Importance Level: High Detail, Essential Primary Actor: Admin Use Case Type: User- Ingin mendapatkan akses untuk dapat melakukan diagnosis pada sistem pakar penyakit gastritis Stakeholders and Interests:
Brief Description:
Use Case ini menggambarkan bagaimana user melakukan login pada website sistem pakar penyakit gastritis.
Trigger: User External Type: Relationships: User Association: Include: Extend: Generalization: Normal Flow of Events: 1. User memilih submenu Diagnosis. 2. Jika User lupa password, Subflows S-1 dijalankan. 3. User menginput username dan password. 4. User mengklik tombol Login. Subflows: S-1: Lupa Password 1. User mengklik link Lupa Password. 2. User menginput username 3. User mengklik tombol Submit 4. User mengecek email dan menemukan email dari Admin Sistem Pakar Gastritis berisi password baru User. Alternate/exceptional Flows: 7. 8. 9.
123
Tabel 3.11 Use Case Description Melakukan Password User Use Case Name: Mengubah Password User ID: 10 Importance Level: High Detail, Essential Primary Actor: User Use Case Type: User- Ingin memastikan passwordnya bersifat privat. Stakeholders and Interests: Brief Description:
Use Case ini menggambarkan bagaimana User melakukan perubahan password pada website sistem pakar penyakit gastritis.
Trigger: User External Type: Relationships: User Association: Include: Extend: Generalization: Normal Flow of Events: 1. Setelah melakukan Login, User memilih halaman Ubah Password pada submenu Diagnosis. 2. User menginput data-data yang diperlukan. 3. User mengklik tombol Simpan 4. User dapat mengecek email untuk memastikan apakah password berhasil diubah. Subflows:
Alternate/exceptional Flows: 3a: User batal melakukan perubahan password, tombol Batal diklik.
124
Tabel 3.12 Use Case Description Mengolah Data Profil Use Case Name: Mengolah Data Profil ID: 11 Importance Level: High Detail, Essential Primary Actor: User Use Case Type: User- Ingin data profilnya sesuai dengan data user yang sebenarnya Stakeholders and Interests:
Brief Description:
Use Case ini menggambarkan bagaimana user mengolah data profil user pada website sistem pakar penyakit gastritis.
Trigger: User External Type: Relationships: User Association: Include: Extend: Generalization: Normal Flow of Events: 1. Setelah melakukan Login, User memilih halaman Profil pada submenu Diagnosis. 2. User mengubah data profil. 3. User mengklik tombol Simpan. Subflows:
Alternate/exceptional Flows: 3a: User batal melakukan perubahan data profil, tombol Batal diklik.
125
Tabel 3.13 Use Case Description Melakukan Diagnosis Use Case Name: Melakukan Diagnosis ID: 12 Importance Level: High Detail, Essential Primary Actor: User Use Case Type: User- Ingin memastikan jenis penyakit yang dideritanya. Stakeholders and Interests: Brief Description:
Use Case ini menggambarkan bagaimana user melakukan diagnosis penyakit pada website sistem pakar penyakit gastritis.
Trigger: User External Type: Relationships: User Association: Include: Extend: Generalization: Normal Flow of Events: 1. Setelah melakukan Login, User memilih halaman Diagnosis pada submenu Diagnosis. 2. User memutuskan akan melakukan diagnosis dengan metode backward chaining, atau forward chaining. Jika User ingin melakukan diagnosis dengan metode backward chaining, subflows S1 dijalankan. Jika User ingin melakukan diagnosis dengan metode forward chaining, subflows S2 dijalankan. 3. Setelah selesai melakukan diagnosis, makan hasil diagnosis akan ditampilkan. Subflows: S-1: Backward Chaining 1. User memilih Pilihan Backward Chaining 2. User memilih jenis penyakit yang diduga dideritanya. 3. User menginput jawaban backward chaining yang ditanyakan. S-2: Forward Chaining 1. User memilih Pilihan Forward Chaining 2. User menginput jawaban forward chaining yang ditanyakan. Alternate/exceptional Flows:
126
Tabel 3.14 Use Case Description Melakukan Logout User Use Case Name: Melakukan Logout User ID: 13 Importance Level: High Detail, Essential Primary Actor: User Use Case Type: UserIngin memastikan akses User tidak bisa diakses oleh pihak-pihak lain. Stakeholders and Interests:
Brief Description:
Use Case ini menggambarkan bagaimana User melakukan logout pada website sistem pakar penyakit gastritis.
Trigger: User External Type: Relationships: User Association: Include: Extend: Generalization: Normal Flow of Events: 1. User memilih tombol logout pada submenu Diagnosis. 2. Pada submenu Diagnosis akan kembali ke halaman Login User. Subflows:
Alternate/exceptional Flows: 10. 11. 12.
127
3. Diagram Use Case (Use Case Diagram) Setelah dilakukan perancangan use case descripton, use case diagram pun mulai dirancang berdasarkan use case description yang telah dirancang sebelumnya. Berikut ini adalah use case diagram sistem pakar penyakit gastritis.
Gambar 3.7 Use Case Diagram
128
3.8.2 Model Struktural (Structural Modeling) 1. Diagram Kelas (Class Diagram) Sebuah class diagram adalah model statis yang menunjukkan class-class dan hubungan antar class yang tetap konstan dalam sistem dari waktu ke waktu (Alan Dennis, Barbara Haley Wixom dan David Paul Tegarden, 2009:209-213). Berikut ini adalah class diagram untuk sistem pakar penyakit gastritis.
Gambar 3.8 Class Diagram
129
3.8.3 Model Perilaku (Behavioral Modeling) 1. Diagram Urutan (Sequence Diagram) Sequence diagram menggambarkan objek-objek yang berpartisipasi dalam use case dan memberikan pesan yang melewati objek dari waktu ke waktu untuk satu use case. Sebuah sequence diagram adalah model dinamis yang menunjukkan urutan eksplisit pesan yang lewat di antara objek dalam interaksi didefinisikan. Karena sequence diagram menekankan pengiriman pesan berbasis waktu dari aktivitas yang terjadi di antara satu set objek, sequence diagram ini sangat membantu untuk memahami spesifikasi real time dan use case kompleks (Alan Dennis, Barbara Haley Wixom dan David Paul Tegarden, 2009:209-240). Dari bentuk use case diagram dan class diagram yang telah digambarkan sebelumnya, dapat dibuat sequence diagram.
Gambar 3.9 Sequence Diagram Melakukan Login Admin
130
Gambar 3.10 Sequence Diagram Mengubah Password Admin
Gambar 3.11 Sequence Diagram Mengolah Data Penyakit
131
Gambar 3.12 Sequence Diagram Mengolah Data Gejala
Gambar 3.13 Sequence Diagram Mengolah Data Relasi
132
Gambar 3.14 Sequence Diagram Mengolah Bobot Gejala
Gambar 3.15 Sequence Diagram Melakukan Logout Admin
Gambar 3.16 Sequence Diagram Melakukan Registrasi User
133
Gambar 3.17 Sequence Diagram Melakukan Login User
Gambar 3.18 Sequence Diagram Mengubah Password User
134
Gambar 3.19 Sequence Diagram Mengolah Data Profil User
Gambar 3.20 Sequence Diagram Melakukan Diagnosis
135
Gambar 3.21 Sequence Diagram Melakukan Logout User
3.9 Perancangan Basis Data Dalam perancangan basis data sistem pakar ini, penulis membuat beberapa buah tabel yang saling berelasi. Tabel-tabel tersebut terdiri dari tabel data pakar, tabel data user, tabel gejala, tabel penyakit, tabel tmp analisa, tabel tmp gejala, tabel tmp penyakit, tabel relasi penyakit-gejala dan tabel hasil diagnosa. Adapun struktur dan deskripsi dari masing-masing tabel sebagai berikut:
1. Tabel Data Admin Tabel ini digunakan untuk menyimpan data admin yang terdiri dari username, password, dan nama. Dalam tabel ini, yang menjadi primary key adalah username. Adapun struktur tabelnya dapat dilihat pada tabel 3.15. Tabel 3.15 Tabel Admin Atribute username password nama
Tipe Data Varchar Varchar Varchar
Panjang 30 10 30
Keterangan Primary Key
136
2. Tabel Data User Tabel ini digunakan untuk menyimpan data user (pengguna) yang terdiri dari email, password, nama, usia, jenkel dan alamat. Dalam tabel ini, yang menjadi primary key adalah email. Adapun struktur tabelnya dapat dilihat pada tabel 3.16. Tabel 3.16 Tabel User Atribute email password nama usia jenkel alamat
Tipe Data Varchar Varchar Varchar Int Varchar Varchar
Panjang 30 10 30 2 9 50
Keterangan Primary Key
3. Tabel Gejala Tabel ini berisi data gejala untuk setiap penyakit ya n g berupa KodeGejala dan NamaGejala. Dalam tabel ini KodeGejala sebagai primary key. Adapun struktur tabelnya dapat dilihat pada tabel 3.17. Tabel 3.17 Tabel Gejala Atribute KodeGejala NamaGejala
Tipe Data Varchar Varchar
Panjang 4 100
Keterangan Primary Key
4. Tabel Penyakit Tabel ini berisi data penyakit yang berupa KodePenyakit, NamaPenyakit, DefinisiPenyakit, PenyebabPenyakit, SolusiPenyakit dan KodeJenisPenyakit. Dalam tabel ini KodePenyakit sebagai primary key sedangkan KodeJenisPenyakit merupakan foreign key yang datanya mengacu ke tabel data jenis penyakit. Adapun struktur tabelnya dapat dilihat pada tabel 3.18.
137
Tabel 3.18 Tabel Penyakit Atribute KodePenyakit NamaPenyakit DefinisiPenyakit PenyebabPenyakit SolusiPenyakit KodeJenisPenyakit
Tipe Data Varchar Varchar Longtext Longtext Longtext Varchar
Panjang 4 30
Keterangan Primary Key
4
Foreign Key
5. Tabel Tmp Analisa Tabel ini digunakan untuk menyimpan sementara data analisa penyakit pada saat proses diagnosis user. Tabel ini terdiri dari email, KodePenyakit dan KodeGejala. Dalam tabel ini, email merupakan foreign key yang datanya mengacu ke tabel user dan KodePenyakit merupakan foreign key yang datanya mengacu ke tabel penyakit serta KodeGejala merupakan foreign key yang datanya mengacu ke tabel gejala. Adapun struktur tabelnya dapat dilihat pada tabel 3.19. Tabel 3.19 Tabel Tmp Analisa Atribute email KodePenyakit KodeGejala
Tipe Data varchar varchar varchar
Panjang 30 4 4
Keterangan Foreign Key Foreign Key Foreign Key
6. Tabel Tmp Gejala Tabel ini digunakan untuk menyimpan sementara data gejala penyakit pada saat proses diagnosa user. Tabel ini terdiri dari email, KodeGejala dan status. Dalam. tabel ini, email merupakan foreign key yang datanya mengacu ke tabel user dan KodeGejala merupakan foreign key yang datanya mengacu ke tabel gejala. Adapun struktur tabelnya dapat dilihat pada tabel 3.20.
138
Tabel 3.20 Tabel Tmp Gejala Atribute
Tipe Data varchar varchar enum (‘1’, ‘0’)
email KodeGejala status
Panjang 30 4
Keterangan Foreign Key Foreign Key
7. Tabel Tmp Penyakit Tabel ini digunakan untuk menyimpan sementara data penyakit pada saat proses diagnosa user. Tabel ini terdiri dari email dan KodePenyakit. Dalam tabel ini, email merupakan foreign key yang datanya mengacu ke tabel data user dan KodePenyakit merupakan foreign key yang datanya mengacu ke tabel penyakit. Adapun struktur tabel tmp penyakit dapat dilihat pada tabel 3.21. Tabel 3.21 Tabel Tmp Penyakit Atribute email KodePenyakit
Tipe Data varchar varchar
Panjang 30 4
Keterangan Foreign Key Foreign Key
8. Tabel Relasi Tabel ini digunakan untuk menghubungkan data penyakit dengan data gejala (relasi) serta menyimpan nilai bobot tiap-tiap gejala penyakit (nilai Certainty Factor). Tabel ini terdiri dari KodePenyakit, KodeGejala dan bobot. Dalam tabel ini, KodePenyakit merupakan foreign key yang datanya mengacu ke tabel data penyakit dan KodeGejala merupakan foreign key yang datanya mengacu ke tabel gejala. Adapun struktur tabel relasi penyaki-gejala dapat dilihat pada tabel 3.22. Tabel 3.22 Tabel Relasi Atribute KodePenyakit KodeGejala
Tipe Data varchar varchar
Panjang 4 4
Keterangan Foreign Key Foreign Key
139
bobot
int
3
9. Tabel Diagnosis Tabel ini digunakan untuk menyimpan data hasil diagnosis-diagnosis user. Tabel ini terdiri dari KodeDiagnosis, email, KodePenyakit, TanggalDiagnosis dan persentase. Dalam tabel ini, id_diagnosa merupakan primary key sedangkan username merupakan foreign key yang datanya mengacu ke tabel data user dan kode_penyakit merupakan foreign key yang datanya mengacu ke tabel penyakit. Adapun struktur tabelnya dapat dilihat pada tabel 3.23. Tabel 3.23 Tabel Diagnosis Atribute
Tipe Data varchar varchar varchar datetime int
KodeDiagnosis
email KodePenyakit TanggalDiagnosis persentase
Panjang 4 30 4
Keterangan Primary Key Foreign Key Foreign Key
3
10. Tabel Jenis Penyakit Tabel ini digunakan untuk menyimpan data jenis penyakit. Tabel ini terdiri dari KodeJenisPenyakit dan NamaJenisPenyakit. Tabel 3.24 Tabel Jenis Penyakit Atribute KodeJenisPenyakit NamaJenisPenyakit
Tipe Data varchar varchar
Panjang 4 30
Keterangan Primary Key
140
3.10
Perancangan Struktur Menu
Perancangan struktur menu berisikan menu dan submenu yang berfungsi memudahkan user didalam menggunakan sistem. 3.10.1 Struktur Menu Sistem Struktur menu pada sistem terdiri dari halaman beranda, daftar penyakit, diagnosis, tips, bantuan, informasi dan admin.
Gambar 3.22 Struktur Menu Sistem
141
Gambar 3.23 Struktur SubMenu Admin
142
Gambar 3.24 Struktur SubMenu User
143
3.11
Perancangan Antar Muka
Perancangan antar muka bertujuan untuk memberikan gambaran tentang aplikasi
yang
akan
dibangun.
Sehingga
akan
mempermudah
mengimplementasikan aplikasi. 3.11.1 Perancangan Halaman Utama Sistem Berikut ini adalah rancangan halaman utama sistem.
Gambar 3.25 Rancangan Halaman Utama Sistem 3.11.2 Perancangan Halaman Bantuan Berikut ini adalah rancangan halaman bantuan.
Gambar 3.26 Rancangan Halaman Bantuan
dalam
144
3.11.3 Perancangan Halaman Informasi Berikut ini adalah rancangan halaman informasi.
Gambar 3.27 Rancangan Halaman Informasi 3.11.4 Perancangan Halaman Tips Berikut ini adalah rancangan halaman tips.
Gambar 3.28 Rancangan Halaman Tips
145
3.11.5 Perancangan Halaman Daftar Penyakit Berikut ini adalah rancangan halaman daftar pemyakit.
Gambar 3.29 Rancangan Halaman Daftar Penyakit 3.11.6 Perancangan Halaman Login Admin Berikut ini adalah rancangan halaman login admin
. Gambar 3.30 Rancangan Halaman Login Admin
146
3.11.7 Perancangan Halaman Lupa Password Admin Berikut ini adalah rancangan halaman lupa password admin
. Gambar 3.31 Rancangan Halaman Lupa Password Admin 3.11.8 Perancangan Halaman Ubah Password Admin Berikut ini adalah rancangan halaman lupa password admin
Gambar 3.32 Rancangan Halaman Ubah Password Admin
147
3.11.9 Perancangan Halaman Pengolahan Penyakit Berikut ini adalah rancangan halaman pengolahan penyakit
Gambar 3.33 Rancangan Halaman Pengolahan Penyakit 3.11.10 Perancangan Halaman Tambah Data Penyakit Berikut ini adalah rancangan halaman tambah data penyakit
Gambar 3.34 Rancangan Halaman Tambah Penyakit
148
3.11.11 Perancangan Halaman Ubah Data Penyakit Berikut ini adalah rancangan halaman ubah data penyakit
Gambar 3.35 Rancangan Halaman Ubah Penyakit 3.11.12 Perancangan Halaman Pengolahan Gejala Berikut ini adalah rancangan halaman pengolahan gejala.
Gambar 3.36 Rancangan Halaman Pengolahan Gejala
149
3.11.13 Perancangan Halaman Penambahan Gejala Berikut ini adalah rancangan halaman penambahan gejala.
Gambar 3.37 Rancangan Halaman Penambahan Gejala 3.11.14 Perancangan Halaman Perubahan Gejala Berikut ini adalah rancangan halaman perubahan gejala.
Gambar 3.38 Rancangan Halaman Perubahan Gejala
150
3.11.15 Perancangan Halaman Pengolahan Relasi Berikut ini adalah rancangan halaman pengolahan relasi.
Gambar 3.39 Rancangan Halaman Pengolahan Relasi 3.11.16 Perancangan Halaman Pengolahan Bobot Gejala Berikut ini adalah rancangan halaman pengolahan bobot gejala.
Gambar 3.40 Rancangan Halaman Pengolahan Bobot Gejala
151
3.11.17 Perancangan Halaman Registrasi User Berikut ini adalah rancangan halaman registrasi user.
. Gambar 3.41 Rancangan Halaman Registrasi User 3.11.18 Perancangan Halaman Login User Berikut ini adalah rancangan halaman login user.
. Gambar 3.42 Rancangan Halaman Login User
152
3.11.19
Perancangan Halaman Lupa Password User
Berikut ini adalah rancangan halaman lupa password user.
. Gambar 3.43 Rancangan Halaman Lupa Password User 3.11.20
Perancangan Halaman Ubah Password User
Berikut ini adalah rancangan halaman lupa password user.
Gambar 3.44 Rancangan Halaman Ubah Password User
153
3.11.21 Perancangan Halaman Profil User Berikut ini adalah rancangan halaman profil user.
Gambar 3.45 Rancangan Halaman Profil User 3.11.22 Perancangan Halaman Ubah Profil User Berikut ini adalah rancangan halaman ubah profil user.
Gambar 3.46 Rancangan Halaman Ubah Profil User
154
3.11.23 Perancangan Halaman Diagnosis Berikut ini adalah rancangan halaman diagnosis.
Gambar 3.47 Rancangan Halaman Diagnosis 3.11.24 Perancangan Halaman Diagnosis Backward Chaining Berikut ini adalah rancangan halaman diagnosis backward chaining.
Gambar 3.48 Rancangan Halaman Diagnosis Backward Chaining
155
3.11.25 Perancangan Halaman Diagnosis Forward Chaining Berikut ini adalah rancangan halaman diagnosis forward chaining.
Gambar 3.49 Rancangan Halaman Diagnosis Forward Chaining 3.11.26 Perancangan Halaman Hasil Diagnosis Berikut ini adalah rancangan halaman hasil diagnosis.
Gambar 3.50 Rancangan Halaman Hasil Diagnosis
156
3.11.27 Perancangan Halaman Lihat Hasil Diagnosis Berikut ini adalah rancangan halaman lihat hasil diagnosis atau riwayat.
Gambar 3.51 Rancangan Halaman Lihat Hasil Diagnosis