You are on page 1of 83

ANALISIS DAN PERANCANGAN APLIKASI SISTEM PAKAR DENGAN METODE BACKWARD CHAINING UNTUK MENDIAGNOSIS PENYAKIT TANAMAN KOPI

SKRIPSI

ABRAGUS SABRA 091421044

PROGRAM EKSTENSI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2011

ANALISIS DAN PERANCANGAN APLIKASI SISTEM PAKAR DENGAN METODE BACKWARD CHAINING UNTUK MENDIAGNOSIS PENYAKIT TANAMAN KOPI

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer

ABRAGUS SABRA 091421044

PROGRAM EKSTENSI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2011

PERSETUJUAN

Judul

Kategori Nama Nomor Induk Mahasiswa Program Studi Departemen Fakultas

: ANALISIS DAN PERANCANGAN APLIKASI SISTEM PAKAR DENGAN METODE BACKWARD CHAINING UNTUK MENDIAGNOSIS PENYAKIT TANAMAN KOPI : SKRIPSI : ABRAGUS SABRA : 091421044 : EKSTENSI S1 ILMU KOMPUTER : ILMU KOMPUTER : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di Medan, Juni 2011 Komisi Pembimbing Pembimbing 2 : Pembimbing 1

Dian Rachmawati, S.Si, M.Kom NIP 198307232009122004

Syahril Efendi, S.Si, MIT NIP 196711101996021001

Diketahui /Disetujui oleh Program Studi S1 Ilmu Komputer FMIPA USU Ketua,

Dr. Poltak Sihombing, M.Kom NIP 196203171991021001

PENGHARGAAN

Puji dan syukur penulis panjatkan kepada Allah SWT, dengan limpahan karunia-Nya skripsi ini berhasil diselesaikan dalam waktu yang telah ditetapkan. Ucapan terima kasih penulis sampaikan kepada Bapak Syahril Efendi, S.Si, M.I.T selaku Dosen Pembimbing I dan Ibu Dian Rachmawati, S.Si., M. Kom selaku pembimbing II yang telah memberikan panduan dan penuh kepercayaan kepada penulis untuk menyempurnakan skripsi ini. Dan tak lupa pula saya ucapkan terima kasih kepada dosen penguji Bapak Ade Candra, S.T., M. Kom dan Bapak Drs. Marihat Situmorang, M.Si yang telah memberikan masukan berupa saran dan kritik kepada saya untuk menyempurnakan skripsi ini. Ucapan terima kasih juga ditujukan kepada Ketua dan Sekretaris Program Ekstensi S1 Ilmu Komputer Bapak Dr. Poltak Sihombing, M.kom dan Ibu Maya Silvi Lidya, B.sc, M.Sc. Dekan dan Pembantu Dekan Fakultas Matematika dan Imu Pengetahuan Alam Universitas Sumatera Utara, semua dosen Program Ekstensi S1 Ilmu Komputer FMIPA USU, pegawai di FMIPA USU. Akhirnya tidak terlupakan kepada keluarga tersayang Ibunda Ruhaida dan Ayahanda Samsuar, serta abang dan kakak saya, abang Zikrul Alim, kak Yuni, abang Fauzan Azima, Kak Yanni, Serta Adik saya Idham Chalid yang senantiasa memberikan kasih sayang dan dukungan semangat dalam menyelesaikan skripsi ini. Teman-teman satu angkatan saya juliandri, fadli, ibal, nina, arif, yamin, brafi, uci, bayu serta teman-teman yang tidak dapat saya sebutkan satu persatu, saya ucapkan terima kasih atas ide, saran dan bantuan kepada saya selama menyelesaikan skripsi ini. Teman-teman kos persikota yoga selaku sepupu saya, uji dan sopian. Semoga Allah SWT akan membalasnya.

ABSTRAK

Dewasa ini teknologi komputer berkembang dengan sangat pesat. Pemanfaatan komputer sudah merambah ke berbagai bidang kehidupan. Kecerdasan buatan merupakan bagian ilmu pengetahuan komputer yang banyak dimanfaatkan karena kemampuannya yang dapat menirukan cara berfikir manusia. Dan sistem pakar merupakan salah satu cabang dari kecerdasan buatan yang mempelajari bagaimana mengadopsi cara berfikir seorang pakar dalam menyelesaikan suatu permasalahan, dan membuat suatu keputusan maupun mengambil kesimpulan dari sejumlah fakta yang ada. Dalam hal ini sistem pakar digunakan untuk mendiagnosa penyakit pada tanaman kopi dengan menggunakan metode backward chaining. Dengan tujuan dapat membantu dalam mendiagnosa penyakit pada tanaman kopi dan mendapatkan hasil diagnosa yang tepat dan akurat. Bahasa pemrograman dan program aplikasi penunjang yang digunakan dalam pembuatan sistem pakar ini yaitu bahasa pemrograman Microsoft Visual Basic 6.0 dan menggunakan Database Management System Microsoft Office Access 2003.

Kata Kunci : Kecerdasan Buatan, Sistem Pakar, Backward Chaining, Diagnosa, Tanaman Kopi.

ANALYSIS AND DESIGN EXPERT SYSTEM APPLICATION WITH BACKWARD CHAINING METHOD TO DIAGNOSE DISEASE OF COFFE PLANT

ABSTRACT

Nowadays computer technology growing very fast. The utilization of computer already cut down into various living area. The artificial intelligence is part of computer knowledges that mostly use because the ability to imitate human thought. And expert system is one of branch of artificial intelligence that learning how to adopt an expert thought within finished the problem, and make some decision as well as take the conclusion from an amount of fact that exist. In this case, expert system is use to diagnosis of disease at coffe plant with backward chaining method. By means of able to support diagnosis of disease at coffe plant and get the result precise and accurate. Programming language and supporting application program which is use in the making this expert system are Microsoft Visual basic 6.0 programming language and Database Management System Microsoft Office Access 2003.

Keyword : Artificial Intelligence, Expert System, Backward Chaining, Diagnose, Coffe Plant.

DAFTAR ISI

Halaman Persetujuan Pernyataan Penghargaan Abstrak Abstract Daftar Isi Daftar Tabel Daftar Gambar Bab 1 Pendahuluan 1.1 Latar Belakang 1.2 Rumusan Masalah 1.3 Batasan Masalah 1.4 Tujuan Penelitian 1.5 Manfaat Penelitian 1.6 Metode Penelitian 1.7 Sistematika Penulisan Bab 2 Landasan Teori 2.1 Kecerdasan Buatan 2.2 Sistem Pakar 2.2.1 Sejarah Sistem Pakar 2.2.2 Ciri-ciri Sistem Pakar 2.2.3 Keuntungan dan Kelemahan Sistem Pakar 2.2.4 Konsep Dasar Sistem Pakar 2.2.5 Struktur Sistem Pakar 2.2.6 Basis Pengetahuan 2.2.7 Representasi Pengetahuan 2.2.8 Mekanisme Inferensi (Inference Engine) 2.2.8.1 Metode Forward Chaining 2.2.8.2 Metode Backward Chaining 2.3 Tanaman Kopi 2.4 Penyakit Tanaman Bab 3 Analisis dan Perancangan Sistem 3.1 Analisis Permasalahan 3.2 Diagnosis Penyakit Tanaman Kopi 3.3 Penyakit Tanaman Kopi 3.4 Analisis Komponen 3.4.1 Model Analisis 3.4.2 Spesifikasi Proses 3.4.3 Kamus Data ii iii iv v vi vii ix x 1 1 3 3 3 4 4 5 7 7 7 8 9 9 10 11 13 14 14 14 15 16 17 19 19 19 20 25 25 29 33

3.4.4 Entity Relationship Diagram 3.5 Perancangan Struktur Program 3.6 Perancangan Antarmuka Bab 4 Implementasi Sistem 4.1 Spesifikasi Perangkat Keras dan Perangkat Lunak 4.2 Implementasi Sistem 4.2.1 Halaman Sistem Login 4.2.2 Halaman Menu Utama 4.2.3 Halaman Pilih Penyakit 4.2.4 Halaman Pertanyaan 4.2.5 Halaman Data Penyakit 4.2.6 Halaman Data Solusi 4.2.7 Halaman Hasil Diagnosis 4.2.8 Halaman Basis Pengetahuan 4.3 Pengujian Sistem Bab 5 Kesimpulan dan Saran 5.1 Kesimpulan 5.2 Saran Daftar Pustaka Lampiran

35 35 36 44 44 44 45 45 46 47 47 48 49 50 51 54 54 54 56 57

DAFTAR TABEL

Halaman Tabel 3.1 Kamus data Tabel list_user Tabel 3.2 Kamus data Tabel penyakit Tabel 3.3 Kamus data Tabel knowledge Tabel 3.4 Kamus data Tabel solusi 34 34 34 35

DAFTAR GAMBAR

Halaman Gambar 2.1 Struktur Sistem Pakar Gambar 2.2 Proses Forward Chaining Gambar 2.3 Proses Backward Chaining Gambar 2.4 Tanaman Kopi Gambar 3.1 Diagram Backtracking Penyakit Karat Daun Gambar 3.2 Diagram Backtracking Penyakit Jamur Upas Gambar 3.3 Diagram Backtracking Penyakit Mati Ujung Gambar 3.4 Diagram Backtracking Penyakit Bercak Daun Cercospora Gambar 3.5 Diagram Backtracking Penyakit Akar Coklat Gambar 3.6 Diagram Backtracking Penyakit Kanker Belah Gambar 3.7 Diagram Backtracking Penyakit Akar Hitam Gambar 3.8 DFD Level 0 Gambar 3.9 DFD Level 1 Gambar 3.10 DFD Level 2 Proses Login Gambar 3.11 DFD Level 2 Proses Diagnosis Gambar 3.12 DFD Level 2 Proses Pengetahuan Gambar 3.13 DFD Level 2 Proses Jenis Penyakit Gambar 3.14 DFD Level 2 Proses Solusi Gambar 3.15 Entity Relationship Diagram Gambar 3.16 Struktur Program Gambar 3.17 Rancangan Form Sistem Login Gambar 3.18 Rancangan Form Menu Utama Gambar 3.19 Rancangan Form Pilih Penyakit Gambar 3.20 Rancangan Form Pertanyaan Gambar 3.21 Rancangan Form Data Penyakit Gambar 3.22 Rancangan Form Data Solusi Gambar 3.23 Rancangan Form Hasil Diagnosis Gambar 3.24 Rancangan Form Basis Pengetahuan Gambar 4.1 Halaman Sistem Login Gambar 4.2 Halaman Menu Utama Gambar 4.3 Halaman Pilih Penyakit Gambar 4.4 Halaman Pertanyaan Gambar 4.5 Halaman Data Penyakit Gambar 4.6 Halaman Data Solusi Gambar 4.7 Halaman Hasil Diagnosis Gambar 4.8 Halaman Basis Pengetahuan 11 15 16 16 20 21 22 23 23 24 25 26 26 27 27 28 28 29 35 36 37 38 38 39 40 41 42 43 45 46 46 47 48 49 50 51

BAB 1 PENDAHULUAN

1.1 Latar Belakang

Kopi merupakan salah satu komoditas yang sangat penting, tidak saja sebagai sumber mata pencaharian tapi juga menduduki tatanan perekonomian nasional, usaha tani kopi memberikan sumbangan cukup besar sebagai sumber devisa dalam menopang pembangunan nasional yang tinggi, sehingga dapat dijadikan sebagai sumber pendapatan petani. Indonesia merupakan negara penghasil kopi terbesar di dunia setelah Brazil dan Columbia. Sebagai komoditas yang mempunyai nilai ekonomis tinggi, sudah selayaknya pengembangan usaha tani kopi ini mendapat perhatian yang besar, mengingat kontribusinya yang besar pada perekonomian nasional. Permintaan pasar dalam negeri terhadap kopi dari tahun ke tahun makin meningkat sejalan dengan pertambahan penduduk. Oleh sebab itu peluang untuk pemsaran kopi masih terbuka.

Rendahnya produktivitas kopi antara lain disebabkan oleh teknik budidaya tanaman yang kurang memadai, sehingga mendorong timbulnya berbagai gangguan pertumbuhan tanaman. Faktor-faktor yang mempengaruhi pertumbuhan dan produktivitas kopi harus diperhatikan. Salah satu faktor yang dapat mengurangi pertumbuhan dan produktivitas kopi adalah adanya penyakit tanaman.

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 para pakar sebagai 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.

Sudah banyak sistem pakar yang dikembangkan di berbagai bidang yakni bidang kedokteran, ekonomi, elektronika, komputer, pertanian dan bidang lainnya. Salah satu sistem pakar yang digunakan pada bidang pertanian adalah Sistem Pakar Diagnosa Penyakit Tanaman Padi Berbasis Web dengan Metode Forward Chaining dan Backward Chaining (Anton Setiawan Honggowibowo, 2009). Sistem pakar ini dirancang dengan menggunakan metode runut maju (Forward Chaining) dan metode runut balik (Backward Chaining). Dimana runut tersebut dimotori oleh data masukan gejala-gejala penyakit tanaman padi dan selanjutkan mencoba menggambarkan kesimpulannya berupa nama penyakit tanaman padi yang terjangkit beserta pengendaliannya. Sistem pakar yang juga dikembangkan di bidang pertanian adalah Perancangan Sistem Pakar Diagnosis Penyakit Utama Tanaman Kelapa Sawit (Dewi Yanti, 2008). Sistem pakar ini menggunakan metode inferensi Forward Chaining yaitu proses inferensi yang memulai pencarian dari premis atau data menuju konklusi.. Program ini cukup bermanfaat dalam memberikan informasi, sehingga membantu pengguna dalam menangani penyakit tanaman kelapa sawit pada tahap pembibitan dan tanaman di lapangan.

Mencermati hal-hal di atas maka penulis mendapatkan ide untuk memanfaatkan teknologi komputer yaitu merancang aplikasi sistem pakar yang digunakan untuk membantu dalam mendiagnosis penyakit yang menyerang tanaman kopi. Perancangan suatu program aplikasi sistem pakar gunanya untuk melakukan diagnosa mengenai penyakit pada tanaman kopi. Program aplikasi sistem pakar ini mendapat masukan/informasi dari para petani tanaman kopi dan beberapa sumber lain seperti buku, majalah untuk dijadikan landasan bagi seorang pakar melakukan diagnosa terhadap penyakit tanaman kopi dan hasil diagnosa yang diberikan oleh

program aplikasi sistem pakar ini diharapkan dapat membantu tidak hanya petani kopi, tetapi juga kalangan umum yang memerlukan informasi ini.

1.2 Rumusan Masalah

Berdasarkan latar belakang di atas maka rumusan masalahnya adalah bagaimana merancang suatu sistem pakar untuk mendiagnosa penyakit tanaman beserta saran pengendaliannya pada tanaman kopi.

1.3 Batasan Masalah

Penulis membuat batasan masalah yang akan dijadikan pedoman dalam pelaksanaan skripsi, yaitu: 1. Sistem tidak menentukan hama dari tanaman kopi. 2. Sistem pakar ini hanya akan mendiagnosis gejala-gejala fisik yang muncul pada tanaman kopi 3. Input berupa gejala-gejala penyakit tanaman kopi 4. Output yang dihasilkan adalah penyakit tanaman beserta pengendaliannya. 5. Sistem ini hanya mendiagnosis penyakit tanaman kopi jenis arabika. 6. Perancangan program aplikasi sistem pakar ini menggunakan Visual Basic 6.0 dan Database Management System Microsoft Office Access 2003.

1.4 Tujuan Penelitian

Tujuan dari skripsi ini adalah untuk merancang suatu sistem pakar yang dapat dikembangkan lebih lanjut untuk memberikan informasi mengenai penyakit tanaman kopi beserta pengendaliannya yang nantinya dapat digunakan untuk mengurangi resiko berproduksi suatu tanaman.

1.5 Manfaat Penelitian

Manfaat dari sistem pakar ini adalah memberikan kemudahan bagi user untuk mendiagnosis penyakit tanaman kopi berdasarkan gejala yang tampak dan sistem akan memberikan cara pengendalian penyakit, khususnya bagi petani perkebunan dan tidak menutup kemungkinan sistem pakar ini digunakan oleh penyuluh pertanian yang bukan dibidang penyakit tanaman sehingga dapat menggantikan peran dari seorang pakar penyakit tanaman khususnya penyakit tanaman kopi.

1.6 Metode Penelitian

Langkah-langkah yang ditempuh dalam menyelesaikan penelitian sebagai berikut: 1. Studi literatur Pada tahap ini penulis mengumpulkan infomasi dan mempelajari materi serta sumber-sumber data yang berhubungan dengan sistem pakar, metode backward chaining, jenis penyakit tanaman kopi, gejala-gejala penyakit tanaman kopi beserta pengendaliannya maupun materi lain yang terkait dengan penelitian ini.

2. Analisis data Pada tahap ini dilakukan pengumpulan fakta-fakta yang mendukung perancangan sistem dengan mengadakan konsultasi dengan seorang pakar dan membandingkan hasil penelitian dengan yang ada pada buku penuntun dan dilakukan perancangan Data Flow Diagram, Entity Relationship Diagram dan perancangan antarmuka sesuai dengan hasil dari analisis sistem.

3. Implementasi sistem Pada tahap ini sistem yang dirancang di implementasikan ke dalam bentuk kode program Visual Basic 6.0.

4. Pengujian Pada tahap ini dilakukan pengujian sistem apakah berjalan dengan benar dan sesuai dengan perancangan.

5. Penyusunan laporan Pada tahap ini dilakukan penulisan dokumentasi hasil analisis dari aplikasi sistem pakar dengan metode backward chaining untuk mendiagnosis penyakit tanaman kopi.

1.7

Sistematika Penulisan PENDAHULUAN Bab ini berisi tentang latar belakang masalah, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian dan sistematika penulisan.

BAB 1 :

BAB 2 :

LANDASAN TEORI Pada bab ini dibahas dasar teori-teori kecerdasan buatan dan sistem pakar untuk mendukung pembahasan bab selanjutnya.

BAB 3 :

ANALISIS DAN PERANCANGAN Pada bab ini membahas tentang analisis dan perancangan sistem yang berisi tentang analisis permasalahan, analisis komponen sistem pakar, rancangan basis data, entity relationship diagram, data flow diagram dan perancangan antarmuka.

BAB 4 :

IMPLEMENTASI SISTEM Pada bab ini membahas implementasi antarmuka dari perancangan sistem yang telah dirancang pada bab sebelumnya.

BAB 5 :

KESIMPULAN DAN SARAN Bab ini berisi tentang kesimpulan penulis dari penelitian yang dilakukan serta saran-saran untuk pengembangan aplikasi lebih lanjut.

BAB 2 LANDASAN TEORI

2.1 Kecerdasan Buatan

Kecerdasan Buatan ( Artificial Intelligence atau AI) di definisikan sebagai kecerdasan yang di tunjukkan oleh suatu entitas buatan. Sistem seperti ini umumnya di anggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer (games), logika fuzzy, jaringan syaraf tiruan dan robotika.

2.2 Sistem Pakar

Secara umum, sistem pakar (expert system) adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli [7]. Sistem pakar yang baik dirancang agar dapat menyelelasikan suatu permasalahan tertentu dengan meniru kerja dari para ahli. Dengan sistem pakar ini, orang awampun dapat menyelesaikan masalah yang cukup rumit yang sebenarnya hanya dapat diselesaikan dengan bantuan para ahli. Bagi para ahli, sistem pakar ini juga akan membantu aktivitasnya sebagai asisten yang sangat berpengalaman.

Ada beberapa definisi tentang sistem pakar, antara lain : a. Menurut Durkin : Sistem pakar adalah suatu program komputer yang dirancang untuk memodelkan kemampuan penyelesaian masalah yang dilakukan seorang pakar. b. Menurut Ignizio : Sistem pakar adalah suatu model dan prosedur yang berkaitan, dalam suatu domain tertentu, yang mana tingkat keahliannya dapat dibandingkan dengan keahlian seorang pakar. c. Menurut Giarratano dan Riley : Sistem pakar adalah suatu sistem komputer yang bisa menyamai atau meniru kemampuan seorang pakar.

2.2.1

Sejarah Sistem Pakar

Sistem Pakar mulai di kembangkan pada pertengahan tahun 1960-an oleh Artificial Intelligence Corporation. Pada pertengahan tahun 1960-an, terjadi pergantian dari program serba bisa (general-purpose) ke program yang spesialis (special-purpose) dengan di kembangkannya DENDRAL oleh E. Feigenbaum dari Universitas Stanford dan kemudian oleh MYCIN.

Pada pertengahan tahun 1970, beberapa sistem pakar mulai muncul. Sebuah pengetahuan kunci yang di pelajari saat itu adalah kekuatan dari sistem pakar berasal dari pengetahuan spesifik yang dimilikinya, bukan dari formalisme-formalisme khusus dan pola penarikan kesimpulan yang digunakannya.

Awal 1980 teknologi sistem pakar yang mula-mula dibatasi oleh suasana akademis mulai muncul sebagai aplikasi komersil, khususnya XCON, XSEL (dikembangkan dari R-1 pada Digital Equiptment Corp.) dan CATS-1 (dikembangkan oleh General Electric).

Sistem pakar untuk melakukan diagnosis kesehatan telah di kembangkan sejak pertengahan tahun 1970. Sistem pakar untuk melakukan diagnosis pertama di buat oleh Bruce Buchanan dan Edward Shortliffe di Stanford University. Sistem ini diberi nama MYCIN (Heckerman, 1986). MYCIN merupakan program interaktif yang

melakukan diagnosis penyakit meningitis dan infeksi bacremia serta memberikan rekomendasi terapi antimikroba. MYCIN mampu memberikan penjelasan atas penalarannya secara detail. Dalam uji coba, dia mampu menunjukkan kemampuan seperti seorang spesialis. Meskipun MYCIN tidak pernah di gunakan secara rutin oleh dokter, MYCIN merupakan inferensi yang bagus dalam kecerdasan buatan yang lain

2.2.2

Ciri-Ciri Sistem Pakar

Sistem pakar yang baik harus memenuhi ciri-ciri sebagai berikut [13]: 1. Terbatas pada domain keahlian tertentu. 2. Berdasarkan pada kaidah/rule tertentu. 3. Dapat digunakan dalam berbagai jenis komputer. 4. Mudah dimodifikasi, yaitu dengan menambah atau menghapus suatu kemampuan dari basis pengetahuannya. 5. Sistem dapat mengaktifkan kaidah secara searah yang sesuai, dituntun oleh dialog dengan pemakai.

2.2.3

Keuntungan dan Kelemahan Sistem Pakar

Secara garis besar, banyak manfaat yang dapat diambil dengan adanya sistem pakar, antara lain [7] : 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 reliabilitas.

10. Meningkatkan kapabilitas sistem komputer. 11. Memiliki kemampuan untuk bekerja dengan informasi yang tidak lengkap dan mengandung ketidakpastian. 12. Sebagai media pelengkap dalam penelitian. 13. Meningkatkan kapabilitas dalam penyelesaian masalah. 14. Menghemat waktu dalam pengambilan keputusan.

Disamping memiliki beberapa keuntungan, sistem pakar juga memiliki beberapa kelemahan, antara lain [7] : 1. Biaya yang diperlukan untuk membuat dan memeliharanya sangat mahal. 2. Sulit dikembangkan. Hal ini tentu saja erat kaitannya dengan ketersediaan pakar dibidangnya. 3. Sistem Pakar tidak 100% bernilai benar.

2.2.4

Konsep Dasar Sistem Pakar

Menurut Efraim Turban, konsep dasar sistem pakar mengandung : keahlian, ahli, pengalihan keahlian, inferensi, aturan dan kemampuan menjelaskan. Keahlian adalah suatu kelebihan penguasaan pengetahuan di bidang tertentu yang diperoleh dari pelatihan, membaca atau pengalaman. Contoh bentuk pengetahuan yang termasuk keahlian adalah : a. Fakta-fakta pada lingkup permasalahan tertentu. b. Teori-teori pada lingkup permasalahan tertentu. c. Prosedur-prosedur dan aturan-aturan berkenaan dengan lingkup permasalahan tertentu. d. Strategi-strategi global untuk menyelesaikan masalah. e. Meta-knowledge (pengetahuan tentang pengetahuan).

Bentuk-bentuk ini memungkinkan para ahli untuk dapat mengambil keputusa lebih cepat dan lebih baik daripada seseorang yang bukan ahli. Seorang ahli adalah seseorang yang mampu menjelaskan suatu tanggapan, mempelajari hal-hal baru seputar topik permasalahan (domain), menyusun kembali pengetahuan jika dipandang

perlu, memecah aturan-aturan jika dibutuhkan, dan menentukan relevan tidaknya keahlian mereka. Pengalihan keahlian dari para ahli ke komputer untuk kemudian dialihkan lagi ke orang lain yang bukan ahli, merupakan tujuan utama dari sistem pakar. Proses ini membutuhkan 4 aktivitas yaitu : a. Tambahan pengetahuan (dari para ahli atau sumber-sumber lainnya). b. Representasi pengetahuan (ke komputer). c. Inferensi pengetahuan. d. Pengalihan pengetahuan ke user.

2.2.5

Struktur Sistem Pakar

Sistem pakar terdiri dari dua bagian utama yaitu development environment dan consultation environment [7]. Development environment digunakan untuk

memasukkan pengetahuan pakar ke dalam lingkungan sistem pakar, sedangkan consultation environment digunakan oleh pengguna yang bukan pakar guna memperoleh pengetahuan pakar. Komponen-komponen sistem pakar dalam kedua bagian tersebut dapat dilihat pada gambar berikut.

Gambar 2.1 Struktur Sistem Pakar

Di bawah ini akan di jelaskan secara ringkas komponen-komponen membentuk sistem pakar: 1. AntarMuka Pengguna (User Interface)

yang

User interface merupakan mekanisme yang di gunakan oleh pengguna dan sistem pakar untuk berkomunikasi, informasi yang di terima dari pemakai di ubahnya ke dalam bentuk yang dapat di terima oleh sistem dan di mengerti oleh pemakai.

2. Basis pengetahuan (knowledge base) Basis pengetahuan mengandung pengetahuan untuk pemahaman, formulasi, dan penyelesaian masalah, komponen ini disusun atas dua elemen dasar, pertama yaitu fakta berisikan informasi tentang obyek permasalahan tertentu dan aturan berisikan aturan cara bagaimana memperoleh fakta baru dari fakta yang telah diketahui.

3. Akuisisi Pengetahuan (Knowledge Acquisition) Akuisisi pengetahuan adalah akumulasi, transfer dan transformasi keahlian dalam menyelesaikan masalah-masalah dari sumber pengetahuan dalam program komputer.

4. Mesin Inferensi Mesin inferensi adalah bagian yang mengandung mekanisme fungsi berpikir dan pola-pola penalaran sistem yang di gunakan oleh seorang pakar. Mekanisme ini akan menganalisa suatu masalah tertentu dan selanjutnya akan mencari jawaban atau kesimpulan yang terbaik.

5. Workplace Workplace merupakan area dari sekumpulan memori kerja (working memory). Workplace digunakan untuk merekam hasil-hasil antara dan kesimpulan yang dicapai.

6. Fasilitas Penjelasan Faslitas penjelasan adalah komponen tambahan yang akan meningkatkan kemampuan sistem pakar. Komponen ini menggambarkan penalaran sistem kepada pemakai.

7. Perbaikan Pengetahuan. Pakar memiliki kemampuan untuk menganalisis dan meningkatkan kinerjanya serta kemampuan untuk belajar dari kinerjanya. Kemampuan tersebut adalah penting dalam pembelajaran terkomputerisasi, sehingga program akan mampu menganalisi penyebab kesuksesan dan kegagalan yang di alaminya.

2.2.6

Basis pengetahuan

Basis pengetahuan mengandung pengetahuan untuk pemahaman, formulasi, dan penyelesaian masalah yang dapat berasal dari pakar, jurnal, majalah, dan sumber pengetahuan lain. Kaidah adalah cara untuk membangkitkan suatu fakta baru dari fakta yang sudah diketahui. Ada 2 bentuk basis pengetahuan yang umum digunakan, yaitu [7]: 1. Penalaran berbasis aturan (Rule-Based Reasoning) Pada penalaran berbasis aturan, pengetahuan direpresentasikan dengan menggunakan aturan berbentuk : If-Then. Penalaran ini digunakan jika terdapat sejumlah pengetahuan pakar pada suatu permasalahan tertentu, dan pakar dapat melakukan penyelesaian secara berurutan.

2. Penalaran berbasis kasus (Cased-Based Reasoning) Pada penalaran ini, basis pengetahuan akan berisi solusi-solusi yang telah dicapai sebelumnya, kemudian akan diturunkan suatu solusi untuk keadaan yang terjadi sekarang.

Representasi Pengetahuan

Pengetahuan merupakan kemampuan untuk membentuk model mental yang menggambarkan objek dengan tepat dan merepresentasikannya dalam aksi yang dilakukan terhadap suatu objek. Representasi pengetahuan merupakan metode yang digunakan untuk mengkodekan pengetahuan dalam sebuah sistem pakar yang berbasis pengetahuan. Perepresentasian dimaksudkan untuk menangkap sifat-sifat penting masalah dan membuat informasi itu dapat diakses oleh prosedur pemecahan masalah [6].

2.2.8

Mekanisme Inferensi (Inference Engine)

Mekanisme Inferensi adalah bagian dari sistem pakar yang melakukan penalaran dengan menggunakan isi daftar aturan berdasarkan urutan dan pola terentu. Selama proses konsultasi antar sistem dengan pemakai, mekanisme inferensi menguji aturan satu sampai kondisi aturan itu benar. Secara umum ada dua teknik utama yang digunakan dalam mekanisme inferensi untuk pengujian aturan, yaitu Metode Forward Chaining dan Backward Chaining.

2.2.8.1 Metode Forward Chaining

Metode Forward Chaining adalah suatu metode pengambilan keputusan yang umum digunakan dalam sistem pakar. Proses pencarian dengan metode Forward Chaining berangkat dari kiri ke kanan, yaitu dari premis menuju kepada kesimpulan akhir, metode ini sering disebut data driven yaitu pencarian dikendalikan oleh data yang diberikan.

Aktivitas sistem dilakukan berdasarkan siklus mengenal-beraksi. Mula-mula, sistem mencari semua aturan yang kondisinya terdapat di memori kerja, kemudian memilih salah satunya dan menjalankan aksi yang bersesuaian dengan aturan tersebut. Pemilihan aturan yang akan dijalankan berdasarkan strategi tetap yang disebut strategi

penyelesain konflik. Aksi tersebut menghasilkan memori kerja baru dan siklus diulangi lagi sampai tidak ada aturan yang dapat dipicu, atau tujuan yang dikehendaki sudah terpenuhi.

Gambar 2.2 Proses Forward Chaining

2.2.8.2 Metode Backward Chaining

Metode Backward Chaining adalah suatu metode pengambilan keputusan yang juga umum digunakan dalam sistem pakar. Metode backward chaining adalah kebalikan dari Forward Chaining. Percobaan fakta atau pernyataan dimulai dari bagian sebelah kanan (THEN dulu). Dengan kata lain, penalaran dimulai dari hipotesis terlebih dan untuk menguji kebenaran hipotesis tersebut harus dicari fakta-fakta yang ada dalam basis pengetahuan. Proses pencarian dengan metode backward chaining berangkat dari kanan ke kiri, yaitu dari kesimpulan sementara menuju kepada premis, metode ini sering disebut gol driven pencarian dikendalikan oleh tujuan yang diberikan. Metode Backward Chaining merupakan strategi pencarian yang arahnya kebalikan dari Forward Chaining. Proses pencarian dimulai dari tujuan, yaitu kesimpulan yang menjadi solusi permasalahan yang dihadapi. Mesin inferensi mencari kaidah-kaidah dalam basis pengetahuan yang kesimpulannya merupakan solusi yang ingin dicapai, kemudian dari kaidah-kaidah yang diperoleh, masing-masing kesimpulan Backward Chaining jalur yang mengarah ke kesimpulan tersebut. Jika informasi-informasi atau nilai dari atribut-atribut yang mengarah ke kesimpulan tersebut sesuai dengan data yang diberikan maka kesimpulan tersebut merupakan solusi yang dicari, jika tidak sesuai maka kesimpulan tersebut bukan merupakan solusi

yang dicari. Backward Chaining memulai proses pencarian dengan suatu tujuan sehingga strategi ini disebut juga goal-driven.

Gambar 2.3 Proses Backward Chaining

2.3 Tanaman Kopi

Kopi adalah spesies tanaman berbentuk pohon dan termasuk dalam famili Rubiaceae. Tanaman ini tumbuh tegak, bercabang dan dapat mencapai tinggi 12 m. Tanaman kopi merupakan komoditas ekspor yang mempunya nilai ekonomis yang relative tinggi di pasaran duni, di samping merupakan salah satu komoditas unggulan yang dikembangkan. Sudah hamper tiga abad kopi diusahakan penanamannya di Indonesia untuk memenuhi kebutuhan konsumsi di dalam negeri maupun luar negeri. Lebih dari 90% tanaman kopi diusahakan rakyat. Di Dunia perdagangan dikenal beberapa golongan kopi, akan tetapi yang paling sering dibudidayakan adalah kopi arabika dan robusta.

Gambar 2.4 Tanaman Kopi

2.4

Penyakit Tanaman

Penyakit tanaman terbagi menjadi dua yaitu penyakit nonbiotis dan penyakit biotis. penyakit nonbiotis yaitu suatu penyakit pada tanaman yang disebabkan oleh organisme tak hidup misalnya difisiensi unsur hara, keracunan mineral, kelembaban, suhu, sinar yang tidak sesuai, kekurangan oksigen, polusi, dan reaksi tanah. Penyakit biotis. Penyakit biotis yaitu penyakit yang disebabkan organisme hidup yang kesemuanya adalah jasad renik atau mikroorganisme yaitu jamur, bakteri, virus, dan nematoda. Adapun penyakit-penyakit yang menyerang tanaman kopi adalah sebagai berikut : 1. Karat Daun Karat daun kopi (coffe leaf rust) sering juga disebut penyakit daun kopi (koffiebladziekte, Bld.) adalah penyakit kopi yang paling penting diseluruh dunia. Untuk indoensia penyakit ini merupakan penyakit yang terpenting pada kopi arabika(Coffea Arabica L). Penyakit ini disebabkan oleh patogen Hemileia vastarix B. et. Br. Yang merupakan penyakit utama pada tanaman kopi arabika, sedangkan pada tanaman kopi robusta penyakit ini tidak menjadi masalah.

2. Jamur Upas Penyakit jamur upas disebabkan oleh jamur Corticium salmonicolor B.et Br. Penyakit jamur upas adalah jamur yang polifag (dapat memarasit banyak tumbuhan) dan tercatat lebih dari 140 tumbuhan inang. Selain kopi, antara lain jamur upas dapat menyerang karet, teh, kakao, kina, jeruk, mangga, nangka, jati, apel, kelengkeng, dan melinjo. Penyakit ini banyak terdapat di kebun-kebun yang lembab, antara lain yang pemangkasannya kurang dan pohon pelindungnya terlalu berat. Penyakit lebih banyak terdapat di daerah yang curah hujannya agak tinggi.

3. Mati Ujung Penyakit mati ujung disebabkan oleh jamur Rhizoctonia sp. Jamur mengadakan infeksi melalui daun, dari sini meluas dan berkembang di dalam pembuluh kayu cabang dan batang. Di kebun pada bagian-bagian yang telah dipangkas jamur dapat membentuk sklerotium, yang terdiri dari gumpalan rantai pseudokonium.

Penyakit ini dibantu oleh suhu yang agak rendah dan hanya merugikan kebunkebun yang letaknya lebih tinggi dari 300-400 m. Jenis-jenis kopi mempunyai ketahanan yang berbeda-beda terhadap penyakit ini. Kopi arabika sedikit lebih tahan dari pada kopi robusta.

4. Bercak Daun Penyakit ini disebabkan oleh jamur Cercospora coffeicola yang dapat muncul di pembibitan sampai tanaman dewasa. Daun yang sakit timbul bercak berwarna kuning yang teping dikelilingi halo (lingkaran) berwarna kuning. Penyakit ini umumnya dijumpai di kebun dataran rendah yang kelembapan udaranya tinggi, di pesemaian yang terlalu gelap, dan pemberian peteduh yang terlalu rimbun.

5. Akar Coklat Penyakit ini disebabkan oleh jamur Fomes noxius Corner. Jamur akar coklat menular ke tanaman sehat karena adanya kontak antar akar yang sehat dengan yang sakit. Jamur menular dengan sangat lambat, penularan yang lambat ini disebabkan karena umumnya jamur hanya terdapat pada akar tunggang dan sebagian dari akar-akar cabang yang besar. Selain menyerang kopi antara lain jamur dapat menyerang karet, teh, kakao, kelapa sawit, kelapa, kina, kapok, kapas, dan nangka.

6. Kanker Belah Penyakit ini disebabkan oleh jamur Armillaria sp. Jamur menular dengan kontak akar dan dengan rizomorf. Ada kemungkinan bahwa jamur dapat dipencarkan dengan basidiospora, tetapi jamur ini belum pernah diketahui membentuk badan buah. Selain menyerang kopi arabika, jamur ini juga menyerang dadap, lamtoro, dan akasia.

7. Akar Hitam Penyakit ini disebabkan oleh jamur Rosellina bunodes. Jamur dapat menular dengan beberapa cara, yang terpenting adalah melalui kontak antara akar yang sehat dengan yang sakit. Tetapi selain itu jamur dapat juga menular dengan rizomorf di bawah tanah. Penyakit ini dapat menimbulkan kerugian yang berarti.

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Permasalahan

Sistem pakar merupakan sistem yang terstruktur dengan basis pengetahuan yang dinamis. Pengetahuan yang ada pada sistem pakar dapat bertambah sehingga harus bisa ditambah maupun dihapus tanpa harus mengubah isi dari program secara keseluruhan. Jadi perubahan hanya dilakukan pada bagian basis pengetahuan saja.

Tahapan analisis terhadap suatu sistem dilakukan sebelum tahapan perancangan dilakukan. Tujuan diterapkannya analisis terhadap suatu sistem adalah untuk mngetahui alasan mengapa sistem tersebut diperlukan, merumuskan kebutuhankebutuhan dari sistem tersebut untuk mereduksi sumberdaya yang berlebih serta membantu merencanakan penjadwalan pembentukan sistem, sehingga fungsi yang terdapat didalam sistem tersebut bekerja secara optimal. Salah satu unsur pokok yang harus dipertimbangkan dalam tahap analisis sistem ini yaitu masalah perangkat lunak, karena perangkat lunak yang digunakan haruslah sesuai dengan masalah yang disesuaikan.

3.2 Diagnosis Penyakit Tanaman Kopi

Untuk perancangan basis pengetahuan, data didapat berdasarkan konsultasi dengan dengan pakar dan buku-buku mengenai penyakit tanaman kopi. Data yang dirancangn sedemikian rupa berdasarkan hubungan-hubungan permasalahan yang berkaitan satu sama lain

Gejala penyakit tanaman kopi dapat disebabkan oleh faktor biotis dan abiotis. Aplikasi ini dibuat hanya berdasarkan faktor biotis saja yaitu penyakit tanaman kopi yang disebabkan oleh organisme hidup yang kesemuanya adalah mikroorganisme yaitu jamur, bakteri, dan virus. Untuk itu diperlukan pengetahuan mengenai gejala fisik yang timbul pada tanaman kopi seperti pada daun, batang atau ranting,akar dan buah.

3.3 Penyakit Tanaman Kopi Pengumpulan data yang digunakan pada sistem pakar ini didapatkan dari berbagai sumber diantaranya seorang pakar, buku, internet dan sumber lainnya yang sesuai. Dari sumber informasi tersebut maka dapat diketahui beberapa penyakit yang meliputi jenis penyakit, gejala dan solusi untuk mengatasi penyakit yang menyerang tanaman kopi. Berikut ini adalah macam-macam penyakit yang menyerang tanaman kopi [10]: 1. Penyakit Karat Daun (Hemileia vastatrix) Gejala: a. Daun-daun gugur b. Terdapat bercak-bercak kuning pada daun c. Terbentuknya tepung bewarna jingga (orange) pada bercak kuning daun Solusi : Pengendalian dilakukan dengan dua cara, yaitu menanam jenis-jenis kopi arabika ysng tahan seperti S333, S288, S795 dan lakukan penyemprotan fungisida Dithane M 45 dengan dosis 2 gr/liter air.
Daun-daun gugur Pengendalian dilakukan dengan dua cara, yaitu menanam jenis-jenis kopi arabika ysng tahan seperti S333, S288, S795 dan lakukan penyemprotan fungisida Dithane M 45 dengan dosis 2 gr/liter air.

Terdapat bercak-bercak kuning pada daun

Penyakit Karat Daun

Terbentuknya tepung bewarna jingga (orange) pada bercak kuning daun

Gambar 3.1 Diagram Backtracking Penyakit Karat Daun

2. Peyakit Jamur Upas (Upasia Salmonicolor) Gejala : a. Cabang atau ranting terdapat benang-benang tipis seperti sarang labalaba b. Buah menjadi busuk, kering dan berwarna hitam Solusi : Pengendalian dilakukan melalui pemotongan batang atau cabang yang sakit sampai 10 cm di bawah pangkal dari bagian sakit. Potongan dikumpulkan

kemudian dibakar. Buah-buah yang sakit dikumpulkan kemudian dibakar atau dipendam. Pohon pelindung dipangkas sehingga kelembapan kebun berkurang dan sinar matahari dapat masuk ke areal tanaman kopi. Cara lain Batang atau cabang yang sakit disemprot dengan fungisida Calixin RM (tridemorf).
Pengendalian dilakukan melalui pemotongan batang atau cabang yang sakit sampai 10 cm di bawah pangkal dari bagian sakit. Potongan dikumpulkan kemudian dibakar. Buahbuah yang sakit dikumpulkan kemudian dibakar atau dipendam. Pohon pelindung dipangkas sehingga kelembapan kebun berkurang dan sinar matahari dapat masuk ke areal tanaman kopi. Cara lain Batang atau cabang yang sakit disemprot dengan fungisida Calixin RM (tridemorf).

Cabang atau ranting terdapat benangbenang tipis seperti sarang laba-laba Buah menjadi busuk, kering dan berwarna hitam Peyakit Jamur Upas

Gambar 3.2 Diagram Backtracking Penyakit Jamur Upas

3. Penyakit Mati Ujung (Rhizoctonia sp.) Gejala : a. Daun-daun gugur b. Menguningnya daun-daun c. Ujung batang, cabang, atau ranting menjadi kering dan mati Solusi : Memotong cabang-cabang atau batang yang mulai menunjukkan gejala penyakit. Pemotongan dilakukan sampai pada kayu yang sehat. Bagian-bagian yang

dipotong ini dibakar atau dipendam cukup dalam. Di daerah dimana banyak terdapat penyakit mati ujung untuk membuat pohon-pohon kopi yang berbatang 3 atau 4.
Daun-daun gugur Memotong cabang-cabang atau batang yang mulai menunjukkan gejala penyakit. Pemotongan dilakukan sampai pada kayu yang sehat. Bagianbagian yang dipotong ini dibakar atau dipendam cukup dalam. Di daerah dimana banyak terdapat penyakit mati ujung untuk membuat pohon-pohon kopi yang berbatang 3 atau 4.

Menguningnya daun

daun-

Penyakit Ujung

Mati

Ujung batang, cabang, atau ranting menjadi kering dan mati

Gambar 3.3 Diagram Backtracking Penyakit Mati Ujung

4. Penyakit Bercak Daun Cercospora (Cercospora Coffeicola) Gejala : a. Daun-daun gugur b. Terdapat bercak-bercak kuning pada daun c. Terdapat pusat yang berwarna putih kelabu pada bercak yang terdapat di daun Solusi : Dilakukan penyemprotan fungisida tembaga,mengurangi kelembapan dengan memotong daun-daun secara berkala, dan menurangi naungan atau peteduh. Jika penyakit belum meluas, bagian-bagian daun sakit digunting, daun-daun sakit yang telah gugur dikumpulkan, lalau semuanya dibakar atau dipendam.

Daun-daun gugur

Terdapat bercak-bercak kuning pada daun

Penyakit Bercak Daun Cercospora

Terdapat pusat yang berwarna putih kelabu pada bercak yang terdapat di daun

Dilakukan penyemprotan fungisida tembaga,mengurangi kelembapan dengan memotong daun-daun secara berkala, dan menurangi naungan atau peteduh. Jika penyakit belum meluas, bagianbagian daun sakit digunting, daun-daun sakit yang telah gugur dikumpulkan, lalau semuanya dibakar atau dipendam.

Gambar 3.4 Diagram Backtracking Penyakit Bercak Daun Cercospora

5. Penyakit Akar Coklat (Fomes Noxius Corner) Gejala : a. Akar tanaman menjadi busuk dan lunak b. Pada akar tanaman terdapat kerak seperti butir-butir tanah yang melekat kuat

Solusi : Pengendalian dilakukan dengan membongkar pohon terserang sampai ke akarny, lalu dibakar. Lubang bekas bongkaran dibiarkan terbuka selama 1 tahun. Pohon sehat di sekitar pohon sakit dan pohon-pohon sisipan ditaburi Trichoderma 200 gram/pohon dan pupuk kandang/pupuk organik. setiap 6 bulan sampai areal tersebut bebas dari jamur akar.
Akar tanaman menjadi busuk dan lunak Pengendalian dilakukan dengan membongkar pohon terserang sampai ke akarny, lalu dibakar. Lubang bekas bongkaran dibiarkan terbuka selama 1 tahun. Pohon sehat di sekitar pohon sakit dan pohon-pohon sisipan ditaburi Trichoderma 200 gram/pohon dan pupuk kandang/pupuk organik. Diulang setiap 6 bulan sampai areal tersebut bebas dari jamur akar.

Diulang

Pada akar tanaman terdapat kerak seperti butir-butir tanah yang melekat kuat

Penyakit Bercak Daun Cercospora

Gambar 3.5 Diagram Backtracking Penyakit Akar Coklat

6. Penyakit Kanker Belah (Armillaria sp) Gejala : a. Daun tanaman menguning b. Gugurnya daun tanaman c. Terdapat celah-celah memanjang pada pangkal batang dan akar tunggang Solusi : Tanaman yang sakit di bongkar dengan teliti, batang dan semua akar yang sakit dibakar agar tidak dapat menjadi sumber infeksi. Lubang bekas bongkaran dibiarkan terbuka selama 1 tahun, tempat yang kosong boleh juga ditanami dengan rumput Guatemaala (Tripsacum Laxum Nash), dengan demikian diharapkan agar jamur yang berada dalam tanah mati.
Tanaman yang sakit di bongkar dengan teliti, batang dan semua akar yang sakit dibakar agar tidak dapat menjadi sumber infeksi. Lubang bekas bongkaran dibiarkan terbuka selama 1 tahun, tempat yang kosong boleh juga ditanami dengan rumput Guatemaala (Tripsacum Laxum Nash), dengan demikian diharapkan agar jamur yang berada dalam tanah mati.

Daun tanaman menguning

Gugurnya daun tanaman

Penyakit Kanker Belah

Terdapat celah-celah memanjang pada pangkal batang dan akar tunggang

Gambar 3.6 Diagram Backtracking Penyakit Kanker Belah

7. Penyakit Akar Hitam (Rosellian Bunodes) Gejala : a. Terdapat titik-titik hitam pada permukaan batang tanaman b. Pada batang dan akar tanaman terdapat benang-benang berwarna hitam c. Pohon mati secara mendadak Solusi : Pohon yang sakit dibongkar dengan teliti, semua akarnya diambil. Untuk membunuh jamur yang akan berkembang. Semua akar yang telah dibongkar dibakar dengan segera. Mengurangi peteduhnya dan diadakan drainasi.

Terdapat titik-titik hitam pada permukaan batang t Pada batang dan akar tanaman terdapat benang-benang berwarna hitam Pohon mati secara mendadak Penyakit Akar Hitam

Pohon yang sakit dibongkar dengan teliti, semua akarnya diambil. Untuk membunuh jamur yang akan berkembang. Semua akar yang telah dibongkar dibakar dengan segera. Mengurangi peteduhnya dan diadakan drainasi

Gambar 3.7 Diagram Backtracking Penyakit Akar Hitam

3.4 Analisis Komponen

Sebelum merancang suatu sistem, hal yang paling penting dilakukan adalah menganalisis sistem yang akan dibuat. Analisis komponen sistem pada sistem pakar diagnosis penyakit tanaman kopi yaitu :

3.4.1 Model Analisis

Data Flow Diagram (DFD) digunakan untuk menggambarkan aliran informasi dan proses data yang bergerak dari pemasukan data hingga keluaran. Data Flow Diagram memudahkan pemakai yang kurang menguasai bidang komputer untuk mengerti sistem yang akan dikerjakan atau dikembangkan. Data Flow Diagram dari sistem pakar diagnosis penyakit tanaman kopi dapat dilihat pada gambar 3.8, sedangkan untuk diagram level 1 dapat dilihat pada gambar 3.9 dan diagram level 2 dapat dilihat pada gambar 3.10, 3.11, 3.12, 3.13 dan 3.14.

Update Pengetahuan Pakar Pengetahuan 0 Sistem Pakar Diagnosis Penyakit Tanaman Kopi

Data Login

Pengetahuan Update Pengetahuan Administrastor

Pengguna

Gejala Penyakit Solusi

Hak Akses

Gambar 3.8 DFD Level 0

Solusi Pakar Jenis Penyakit Jenis Penyakit Administrator

Solusi Rekam Jenis Penyakit 4.0 Jenis Penyakit 5.0 Solusi Rekam Solusi

Penyakit

Rekaman Jenis Penyakit

Rekaman Solusi

Solusi

Pengetahuan 3.0 Pengetahuan Rekam Pengetahuan Knowledge

Pengetahuan

Akses Sistem Administrator Nama Pengguna Kata Kunci 1.0 Sistem Login Akses Sistem Nama Pengguna Kata Kunci List_user

Rekaman Pengetahuan

Pakar

Nama Pengguna Kata Kunci

Pengguna

Akses sistem

Akses Sistem

Gejala

2.0 Diagnosis

Fakta Fakta

Temp

Solusi

Gambar 3.9 DFD Level 1

Akses Sistem Nama Pengguna Password

Pengguna Nama Pengguna Password

Pakar

Administrator

Hak Akses

Akses Sistem

Nama Pengguna Baru Password

Nama Pengguna Password Hak Akses Hak Akses

Nama Pengguna Password

Hak Akses 1.1 * Login 1.2 * Buat Pakar Baru 1.3 * Ubah Password Pakar 1.4 * Hapus Pakar

Nama Pengguna Password Hak Akses

Nama Pengguna Password

Nama Pengguna Password

list_user

Nama Pengguna Password

Gambar 3.10 DFD Level 2 Proses Login

knowledge

Rekaman pengetahuan

Gejala

Pengguna

2.1 * Pertanyaan

Fakta ya/tidak

2.2 * Proses diagnosis

fakta

temp Solusi fakta

Gambar 3.11 DFD Level 2 Proses Diagnosis

ID Pengetahuan

Pakar Pengetahuan

Administrator

Pengetahuan

Pengetahuan ID Pengetahuan ID Pengetahuan

ID Pengetahuan

Pengetahuan

3.1 * Tambah Pengetahuan

3.2 * Ubah Pengetahuan

3.3 * Hapus Pengaturan

3.4 * Cari Pengetahuan

Rekam Rekaman Pengetahuan Pengetahuan

Rekam Pengetahuan Rekaman Pengetahuan Rekam Pengetahuan Rekaman Pengetahuan

Rekam Pengetahuan

Knowledge

Gambar 3.12 DFD Level 2 Proses Pengetahuan

ID Jenis Penyakit Pakar Administrator

Jenis Penyakit Jenis Penyakit

Jenis Penyakit ID Jenis Penyakit 4.2 * Ubah Jenis Penyakit ID Jenis Penyakit

ID Jenis Penyakit

Jenis Penyakit 4.1 * Tambah Jenis Penyakit

4.3 * Hapus Jenis penyakit

4.4 * Cari Jenis Penyakit

Rekaman Jenis Penyakit

Rekam Jenis Penyakit

Rekam Jenis Penyakit

Rekaman Jenis Penyakit Rekam Jenis Penyakit Rekaman Jenis Penyakit

Rekam Jenis Penyakit

Penyakit

Gambar 3.13 DFD Level 2 Proses Jenis Penyakit

ID Solusi

Pakar Solusi

Administrator

Solusi

Solusi ID Solusi

ID Solusi ID Solusi

Solusi

5.1 * Tambah Solusi

5.2 * Ubah Solusi

5.3 * Hapus Solusi

5.4 * Cari Solusi

Rekaman Solusi

Rekam Solusi

Rekam Solusi

Rekaman Solusi Rekam Solusi Rekaman Solusi

Rekam Solusi

Solusi

Gambar 3.14 DFD Level 2 Proses Solusi

3.4.2 Spesifikasi Proses Spesifikasi dari DFD di atas adalah sebagai berikut : a. Proses Login Proses 1.1. Login 1) Masukan : User_ID, Pass, Level 2) Keluaran : Hak Akses Program 3) Proses : Pengguna memasukkan User_ID, Pass dan Level dari form

Login. Kemudian mendapatkan hak akses masuk ke program.

Proses 1.2. Buat Pakar Baru 1) Masukan : User_ID, Pass, Level, Pass (Administrator) 2) Keluaran : Pakar baru masuk daftar pengguna 3) Proses : Administrator memasukkan User_ID, Pass, Level dan Pass

(Administrator), user Pakar baru masuk ke database daftar pengguna.

Proses 1.3. Ubah Password Pakar 1) Masukan : User_ID, Pass, Pass (Administrator) 2) Keluaran : Password Pakar diganti 3) Proses : Administrator memasukkan User_ID, Pass Pakar yang akan

diganti dan memasukkan Pass (Administrator), kemudian password pakar berganti.

Proses 1.4. Hapus Pakar 1) Masukan : User_ID, Pass (Administrator) 2) Keluaran : Pakar terhapus dari database 3) Proses : Administrator memasukkan User_ID dan Pass(Administrator),

kemudian user pakar akan terhapus dari database.

b. Proses Diagnosis Proses 2.1. Pertanyaan 1) Masukan : Ya, Tidak 2) Keluaran : Fakta Ya, Fakta Tidak 3) Proses : Pengguna menjawab pertanyaan, dan solusi akan muncul

setelah semua pertanyaan dijawab.

Proses 2.1. Proses Diagnosis 1) Masukan : Fakta Ya, Fakta Tidak 2) Keluaran : Saran dan Solusi 3) Proses : Setiap pertanyaan yang dijawab masuk ke database Temp,

sebagai database sementara.

c. Proses Pengetahuan Proses 3.1. Tambah Pengetahuan 1) Masukan : ID, Pertanyaan, FaktaYA, FaktaTIDAK, Ya, Tidak, ID_Penyakit 2) Keluaran : Pengetahuan baru bertambah

3) Proses

: Administrator / Pakar memasukkan ID, Pertanyaan, FaktaYA,

FaktaTIDAK, Ya, Tidak, ID_Penyakitn, dan menekan tombol simpan untuk menyimpannya dalam database Pengetahuan.

Proses 3.2. Ubah Pengetahuan 1) Masukan : ID atau Pertanyaan atau ID_Penyakit 2) Keluaran : Pengetahuan diganti / diubah. 3) Proses : Administrator / Pakar mencari dulu pengetahuan yang akan

diubah ID / Pertanyaan / ID_Penyakit dan merubah field ID, Pertanyaan, FaktaYA, FaktaTIDAK, Ya, Tidak, ID_Penyakit jika diperlukan, kemudian menekan tombol Simpan untuk menyimpan perubahannya dalam database pengetahuan.

Proses 3.3. Hapus Pengetahuan 1) Masukan : ID 2) Keluaran : Pengetahuan terhapus dari database 3) Proses : Administrator / Pakar mencari dulu pengetahuan yang akan

dihapus, kemudian menekan tombol hapus untuk menghapusnya dari database pengetahuan.

Proses 3.4. Cari Pengetahuan 1) Masukan : ID / Pertanyaan / ID_Penyakit 2) Keluaran : Pengetahuan ditampilkan 3) Proses : Administrator / Pakar mencari pengetahuan dengan

memasukkan ID / Pertanyaan / ID_Penyakit dan menekan tombol Cari untuk menampilkannya di layar.

d. Proses Jenis Penyakit Proses 4.1. Tambah Jenis Penyakit 1) Masukan : ID_Penyakit, Jenis_Penyakit 2) Keluaran : Jenis Penyakit baru bertambah

3) Proses

Administrator

Pakar

memasukkan

ID_Penyakit,

Jenis_Penyakit dan menekan tombol simpan untuk menyimpannya dalam database Jenis Penyakit.

Proses 4.2. Ubah Jenis Penyakit 1) Masukan : ID_Penyakit 2) Keluaran : Jenis Penyakit diganti / diubah. 3) Proses : Administrator / Pakar mencari dulu Jenis Penyakit yang akan

diubah dan merubah field ID_Penyakit, Jenis_Penyakit jika diperlukan, kemudian menekan tombol Simpan untuk menyimpan perubahannya dalam database Jenis Penyakit.

Proses 4.3. Hapus Jenis Penyakit 1) Masukan : ID_Penyakit 2) Keluaran : Jenis Penyakit terhapus dari database 3) Proses : Administrator / Pakar mencari dulu Jenis Penyakit yang akan

dihapus, kemudian menekan tombol hapus untuk menghapusnya dari database Jenis Penyakit.

Proses 4.4. Cari Jenis Penyakit 1) Masukan : ID_Penyakit 2) Keluaran : Jenis Penyakit ditampilkan 3) Proses : Administrator / Pakar mencari Jenis Penyakit dengan ID_Penyakit dan menekan tombol Cari untuk

memasukkan

menampilkannya di layar.

e. Proses Solusi Proses 5.1. Tambah Solusi 1) Masukan : ID_Solusi, Solusi 2) Keluaran : Solusi baru bertambah 3) Proses : Administrator / Pakar memasukkan ID_Solusi, Solusi dan

menekan tombol simpan untuk menyimpannya dalam database Solusi.

Proses 5.2. Ubah Solusi 1) Masukan : ID_Solusi 2) Keluaran : Solusi diganti / diubah. 3) Proses : Administrator / Pakar mencari dulu Solusi yang akan diubah

dan merubah field ID_Solusi, Solusi jika diperlukan, kemudian menekan tombol Simpan untuk menyimpan perubahannya dalam database Solusi.

Proses 5.3. Hapus Solusi 1) Masukan : ID_Solusi 2) Keluaran : Solusi terhapus dari database 3) Proses : Administrator / Pakar mencari dulu Solusi yang akan dihapus,

kemudian menekan tombol hapus untuk menghapusnya dari database Solusi.

Proses 5.4. Cari Solusi 1) Masukan : ID_Solusi 2) Keluaran : Solusi ditampilkan 3) Proses : Administrator / Pakar mencari Solusi dengan memasukkan

ID_Solusi dan menekan tombol Cari untuk menampilkannya di layar.

3.4.3 Kamus Data

Kamus data berfungsi untuk membuat detail data yang dipersiapkan untuk fase implementasi. Kamus data yang digunakan dalam sistem terdiri dari kamus data tabel list_user, kamus data table penyakit, kamus data tabel knowledge dan kamus data tabel solusi. Berikut ini adalah keterang dari kamus data yang digunakan.

1. Kamus Data Tabel list_user

Field User_ID* Pass

Tipe Text Text

Keterangan Merupakan Nama pengguna untuk login kedalam program Password pengguna untuk masuk kedalam

Level

Text

program Merupakan level yang menentukan hak akses dari setiap pengguna

Keterangan * = primary key Tabel 3.1 Kamus data Tabel list_user

2. Kamus Data Tabel penyakit

Field Tipe ID_penyakit Text * Jenis_penya Text kit Keterangan * = primary key

Keterangan Merupakan id dari setiap jenis penyakit Jenis-jenis penyakit yang ada

Tabel 3.2 Kamus Data Tabel penyakit

3. Kamus Data Tabel knowledge

Field ID* pertanyaan FaktaYA FaktaTIDA K Ya Tidak

Tipe Text Text Text Text Text Text

Keterangan Merupakan id dari setiap jenis penyakit Jenis-jenis penyakit yang ada Fakta jawaban dari pertanyaan jika Ya Fakta jawaban dari pertanyaan jika Tidak Aturan baru yang harus dilakukan jika pertanyaan dijawab Ya Aturan baru yang harus dilakukan jika pertanyaan dijawab Tidak Merupakan id dari setiap jenis penyakit

ID_penyakit Text ** Keterangan * = primary key Keterangan * * = foreign key

Tabel 3.3 Kamus data Tabel knowledge

4. Kamus Data Tabel solusi Field ID_solusi* solusi Tipe Text Text Keterangan Merupakan id dari setiap solusi Jenis-jenis solusi yang ada

Keterangan * = primary key Tabel 3.4 Kamus Data Tabel solusi

3.4.4 Entity Relationship Diagram


FaktaTIDAK FaktaYA ya

Pertanyaan ID_penyakit Jenis_penyakit ID

Tidak

ID_penyakit

Penyakit

Memiliki

Knowledge

n
User_id Pass level Memiliki

List User

ID_solusi

Temp

Solusi solusi

ID_temp

fakta

Gambar 3.15 Entity Relationship Diagram

3.5 Perancangan Struktur Program

Untuk mempermudah pembuatan sistem, diperlukan perancangan struktur menu program yang akan dibangun. Perancangan struktur menu program ini membantu dalam merancang bagian-bagian dari sistem yang sebenarnya dan untuk mengetahui bagian mana yang terlebih dahulu nantinya akan diakses setelah program tersebut selesai.

Login

Pakar

Pengguna

Edit Pengetahuan

Menu utama

Input Solusi

Input Jenis Penyakit

Pilih Jenis Penyakit

Diagnosis Penyakit

Solusi

Alasan dan Solusi

Gambar 3.16 Struktur Program

3.6 Perancangan Antarmuka

Antarmuka pemakai (user interface) adalah aspek sistem komputer atau program yang dapat dilihat, didengar, atau dipersepsikan oleh pengguna manusia, dan perintahperintah atau mekanisme yang digunakan pemakai ntuk mengendalikan operasi dan memasukkan data. Berikut ini merupakan perancangan antarmuka aplikasi sistem pakar diagnosis penyakit tanaman kopi yang terdiri atas beberapa bagian uatama , yaitu :

1) Form Sistem Login Perancangan form sistem login digunakan oleh pengguna untuk masuk ke dalam form menu utama untuk melakukan diagnosis, dan digunakan juga oleh seorang pakar atau administrator untuk melakukan perubahan data baik menambah maupun menghapus data pada basis pengetahuan dengan memasukkan username dan password yang sudah dibuat sebelumnya.

Sistem Login 1

Sistem Pakar Diagnosis Penyakit Tanaman Kopi


Sistem Login 4 Level : 5 Username : 6 Password : 10 7 8 9 Masuk 11 Keluar 3

Buat Pakar Baru 12 13 Ganti Password Pakar Hapus Pakar 14

Gambar 3.17 Rancangan Form Sistem Login Keterangan


Judul form Label SkinLabel Frame ComboBox TextBox CommandButton :1 : 12,13,14 : 2,4,5,6 :3 :7 : 8,9 : 10,11

2) Form Menu Utama Perancangan form menu utama merupakan form utama pada saat pengguna atau pakar/admin mengakses sistem ini. Disini seorang pengguna akan dapat melanjutkan ke form pilih penyakit dengan mengklik tombol diagnosis, sedangkan seorang pakar/admin dapat mengubah basis pengetahuan dengan mengklik tombol edit pengetahuan dimana sebelumnya pakar/admin sudah memasukan username dan password pada form sistem login sebelumnya.

Menu Utama 1 Sistem 2 Diagnosis 3 Tentang 4

Sistem Pakar Diagnosis Penyakit Tanaman Kopi

Edit Pengetahuan

Diagnosis

Gambar 3.18 Rancangan Form Menu Utama Keterangan


Judul form Menu Picture CommandButton :1 : 2,3,4 :5 : 6,7

3) Form Pilih Penyakit Perancangan form pilih penyakit merupakan form yang akan digunakan oleh seorang pengguna untuk memilih jenis penyakit tanaman yang diperkirakan telah terinfeksi, sehingga dapat memudahkan seorang pengguna dalam melanjutkan ke form pertanyaan (gejala).
Form Pilih Penyakit 5 Pilihlah Jenis Penyakit yang Diperkirakan 3 2 1

Proses

Gambar 3.19 Rancangan Form Plih Penyakit

Keterangan
Judul form SkinLabel Frame ComboBox CommandButton :1 :2 :5 :3 :4

4) Form Pertanyaan Perancangan form pertanyaan merupakan form yang digunakan oleh pengguna umtuk memilih gejala yang terjadi pada tanaman, sehingga sistem akan mengeluarkan kesimpulan berupa jenis penyakit yang terinfeksi dan solusinya.

Form Pertanyaan Pertanyaan 6 2

Ya 3

Tidak 4 5 Selesai

Gambar 3.20 Rancangan Form Pertanyaan Keterangan


Judul form Label Frame CommandButton :1 :6 :2 : 3,4,5

5) Form Data Penyakit Perancangan form data penyakit merupakan form yang digunakan oleh seorang pakar/admin untuk menambah, mengubah, atau menghapus data jenis penyakit.

Form Penyakit 2 3 Tambah 4 Simpan 5 Batal 6 Ubah

1 7 Hapus 8 Keluar

9 ID Penyakit 10 Nama Penyakit

14 15

11

Pencarian Cari Berdasarkan 16 17

12

DataGrid 13

Gambar 3.21 Rancangan Form Data Penyakit Keterangan


Judul form SkinLabel Frame ComboBox TextBox CommandButton DataGrid :1 : 9,10, 12 : 2,11 : 16 : 14,15,17 : 3,4,5,6,7,8 : 13

6) Form Data Solusi Perancangan form data solusi merupakan form yang digunakan oleh seorang pakar/admin untuk menambah, mengubah, atau menghapus data solusi.

Form Solusi 2 3 Tambah 4 Simpan 5 Batal 6 Ubah

7 Hapus

8 Keluar

9 ID Solusi 10 Solusi

11 12

13 Pencarian Cari Berdasarkan 14 15 16

DataGrid

17

Gambar 3.22 Rancangan Form Data Solusi Keterangan


Judul form SkinLabel Frame ComboBox TextBox CommandButton DataGrid :1 : 9,10,14 : 2,13 : 15 : 11,12,16 : 3,4,5,6,7,8 : 17

7) Form Hasil Diagnosis Perancangan form hasil diagnosis merupakan form yang menampilkan jenis penyakit beserta gambarnya dan solusi untuk mengatasi penyakit tersebut.

Form Hasil DIagnosis 2 Hasil Diagnosis dan Pengendaliannya Solusi Nama Penyakit 4 6 3

Gambar

Alasan

Selesai

Gambar 3.23 Rancangan Form Hasil Diagnosis Keterangan


Judul form SkinLabel Image CommandButton :1 : 2,3,4,6 :5 : 7,8

8) Form Basis Pengetahuan Perancangan form basis pengetahuan merupakan form yang digunakan oleh seorang pakar/admin untuk mengatur basis aturan dan menambah, mengubah, atau menghapus pertanyaan berupa gejala peyakit tanaman yang akan ditampilkan sistem kepada seorang pengguna untuk melakukan diagnosis penyakit.

Form Basis Pengetahuan 2


Tambah

1 30
Input Jenis Penyakit

3
Simpan

4
Batal

5
Ubah

6
Hapus

7
Keluar

29
DataGrid

8 9

ID Gejala Penyakit

18 19 20 21

31

10 ID Penyakit
Gejala/Pertanyaan

11

12 Fakta YA 13 Fakta TIDAK 14 Jika YA 15 Jika TIDAK


Pencarian

22
Input Solusi

32

23
DataGrid

24 33 25

16 Cari Berdasarkan 17

26

27

DataGrid

28

Gambar 3.24 Rancangan Form Basis Pengetahuan Keterangan


Judul form SkinLabel Frame ComboBox TextBox CommandButton DataGrid :1 : 8,9,10,11,12,13,14,15,17 : 29,16 : 19,24,25,26 : 18,20,21,22,23,27 : 2,3,4,5,6,7,30,32 : 28,31,33

BAB 4 IMPLEMENTASI SISTEM

4.1 Spesifikasi Perangkat Keras dan Perangkat Lunak

Dalam proses pembuatan aplikasi, konfigurasi perangkat keras yang digunakan adalah processor intel Pentium(R) D CPU 3,2 GHz, RAM 1 GB, dengan sistem operasi Microsoft Windows XP Professional Service Pack 2. Tapi program ini dapat dijalankan dengan konfigurasi minimal komputer sebagai berikut : 1. Processor Intel Pentium III 660 MHz 2. RAM 256 MB 3. Operating System Windows XP 4. Hard disk 4 GB 5. VGA Card 256 color, 640 x 480 pixel 6. Mouse

7. Keyboard

4.2 Implementasi Sistem

Implementasi dari sistem merupakan tahap akhir dari proses pengembangan sistem aplikasi setelah melalui tahapan perancangan. Agar proses implementasi dari perangkat lunak dapat bekerja secara sempurna, maka terlebih dahulu perangkat lunak tersebut harus diuji untuk mengetahui kelemahan dan kesalahan yang ada untuk kemudian dievaluasi.

4.2.1 Halaman Sistem Login

Pada saat apikasi sistem pakar diagnosis penyakit tanaman kopi dijalankan, maka akan tampil halaman sistem login. Disini akan ditentukan level pengguna yang akan menggunakan aplikasi ini. Jika memilih level pakar dengan memasukkan username dan password yang sebelumnya telah dibuat maka akan diberikan fasilitas untuk melakukan perubahan data baik menambah maupun menghapus data pada basis pengetahuan. Halaman ini juga menyediakan fasilitas untuk membuat pakar baru, mengganti password yang sebelumnya sudah dibuat dan bahkan dapat menghapus pakar dengan memasukkan password dari administrator.

Gambar 4.1 Halaman Sistem Login

4.2.2 Halaman Menu Utama

Pada menu utama terdapat dua tombol yaitu tombol edit pengetahuan dan diagnosis, untuk level pengguna hanya bisa menggunakan fasilitas tombol diagnosis dan dilanjutkan dengan menjawab pertanyaan yang telah disediakan oleh sistem, sedangkan level pakar dapat menggunakan fasilitas mengubah basis pengetahuan baik menambah maupun menghapus data.

Gambar 4.2 Halaman Menu Utama

4.2.3 Halaman Pilih Penyakit

Pada halaman ini level pengguna dapat memilih salah satu jenis penyakit tanaman kopi yang diperkirakan telah terinfeksi, jika telah dipilih kemudian akan dilanjutkan dengan mengklik tombol proses yang akan dilanjutkan pada halaman pertanyaan.

Gambar 4.3 Halaman Pilih Penyakit

4.2.4 Halaman Pertanyaan

Halaman pertanyaan digunakan oleh pengguna untuk memilih pertanyaan ya atau tidak yang terjadi pada tanaman, sehingga sistem akan mengeluarkan kesimpulan berupa jenis penyakit yang terinfeksi dan solusinya.

Gambar 4.4 Halaman Pertanyaan

4.2.5 Halaman Data Penyakit

Halaman penyakit digunakan oleh level pakar untuk menambah, mengubah, atau menghapus data jenis penyakit. Untuk lebih jelasnya pakar dapat memasukan ID penyakit dan jenis penyakit ke dalam basis pengetahuan.

Gambar 4.5 Halaman Data Penyakit

4.2.6 Halaman Data Solusi

Halaman penyakit digunakan oleh level pakar untuk menambah, mengubah, atau menghapus data solusi. Untuk lebih jelasnya pakar dapat memasukan ID solusi dan solusi ke dalam basis pengetahuan.

Gambar 4.6 Halaman Data Solusi

4.2.7 Halaman Hasil Diagnosis

Halaman solusi merupakan halaman yang digunakan oleh level pengguna yang sebelumnya telah menjawab pertanyaan yang ada pada halaman pertanyaan sehingga sistem akan menampilkan hasil berupa jenis, gambar dan solusi dari penyakit yang ada. Kemudian pengguna dapat mengklik tombol alasan untuk mengetahui jawaban dari pertanyaan apa yang dijawab sebelumnya.

Gambar 4.7 Halaman Hasil Diagnosis

4.2.8 Halaman Basis Pengetahuan

Halaman basis pengetahuan digunakan oleh level pakar untuk memasukkan pertanyaan berupa gejala-gejala penyakit tanaman kopi dan mengatur aturan yang akan berjalan di dalam sistem dan akan ditampilkan kepada level pengguna untuk melakukan diagnosis penyakit

Gambar 4.8 Halaman Basis Pengetahuan

4.3 Pengujian Sistem

Setelah proses implementasi sistem selesai dihasilkan sebuah program sistem pakar yang siap digunakan. Sebelum itu diperlukan pengujian untuk kemampuan dari program ini. Pengujian ini juga berguna untuk mengetahui kesalahan-kesalahan yang terjadi dikaernakan proses coding dari program. Pengujian sistem dilakukan dari proses tanya jawab dengan sistem dan hasil outputnya akan dibandingkan dengan basis pengetahuan yang ada berdasarkan aturan masing-masing dan jika hasil output sama maka dapat disimpulkan pada pengujian ini sistem pakar sudah bekerja sebagaimana rancangan sistem yang dibuat. Berikut beberapa contoh hasil pengujian sistem : 1. Proses tanya jawab pada sistem untuk menentukan penyakit bercak daun : Sistem : Apakah daun rontok?

Pengguan : Ya Sistem : Apakah terdapat bercak-bercak kuning pada daun?

Pengguna : Ya

Sistem

: Apakah terbentuk tepung berwarna jingga(orange) pada bercak kuning daun?

Pengguna : Tidak Sistem : Apakah terdapat pusat yang berwarna puntih kelabu pada bercak yang terdapat di daun? Pengguna : Ya

Hasli Diagnosis Penyakit : Bercak daun

Solusi : Dilakukan penyemprotan fungisida tembaga,mengurangi kelembapan dengan memotong daun-daun secara berkala, dan menurangi naungan atau peteduh. Jika penyakit belum meluas, bagian-bagian daun sakit digunting, daun-daun sakit yang telah gugur dikumpulkan, lalau semuanya dibakar atau dipendam.

Dari hasil proses tanya jawab pada sistem, diperoleh penyakit karat daun mempunyai ciri-ciri: 1. Daun rontok 2. Terdapat bercak-bercak kuning pada daun 3. Terdapat pusat yang berwarna puntih kelabu pada bercak yang terdapat di daun

2. Proses tanya jawab pada sistem untuk menentukan penyakit karat daun : Sistem : Apakah daun rontok?

Pengguan : Ya Sistem : Apakah terdapat bercak-bercak kuning pada daun?

Pengguna : Ya Sistem : Apakah terbentuk tepung berwarna jingga(orange) pada bercak kuning daun? Pengguna : ya

Hasli Diagnosis Penyakit : Karat daun

Solusi : menggunakan fungisida Dithane M 45 dengan konsentrasi 0,2 % atau 2 cc per liter air dengan interval penyemprotan 2 minggu sekali; penyemprotan dilakukan pada awal mulainya hujan lebat dengan memperhatikan cara-cara penyemprotan

Dari hasil proses tanya jawab pada sistem, diperoleh penyakit karat daun mempunyai ciri-ciri: 1. Daun rontok 2. Terdapat bercak-bercak kuning pada daun 3. terbentuk tepung berwarna jingga(orange) pada bercak kuning daun

BAB 5 KESIMPULAN DAN SARAN

5.1 Kesimpulan

Setelah melakukan pembahasan dari skripsi ini, maka dapat ditarik beberapa kesimpulan sebagai berikut:

1. Admin dapat melakukan proses penambahan, pengeditan, penghapusan data untuk jenis penyakit, pertanyaan, dan solusi di dalam basis pengetahuan sehingga informasi dapat berkembang sesuai dengan perkembangan penyakit tanaman kopi sehingga nantinya sistem akan dapat memberikan informasi yang tepat. 2. Sistem pakar untuk mendiagnosis penyakit tanaman kopi ini telah mampu memberikan informasi kepada pengguna mengenai jenis penyakit yang terinfeksi berdasarkan gejala-gejala yang diberikan. 3. Sistem pakar ini dapat menampilkan hasil diagnosa yang disertai dengan solusi dari penyakit serta penelusuran dari gejala-gejala penyakit yang diderita.

5.2 Saran

Berikut adalah saran-saran untuk pengembangan lebih lanjut terhadap aplikasi sistem pakar yang telah dibangun. 1. Adanya pengembangan dalam sistem untuk mendiagnosis penyakit yang disebabkan oleh hama.

2. Perlunya penambahan data untuk jenis penyakit nonbiotis beserta gejala dan solusinya sehingga informasi yang dimiliki akan semakin luas 3. Sistem ini diharapkan dapat diaplikasikan ke dalam sistem online agar dikenal luas oleh pengguna melalui jaringan internet. 4. Menambahkan pengetahuan yang lebih lengkap dari pakar yang berbeda. 5. Sistem ini diharapkan dapat memberikan informasi yang akurat dengan melakukan percobaan-percobaan menggunakan banyak kombinasi data penyakit sehingga dapat menjadi perbandingan dalam penentuan jenis penyakit.

DAFTAR PUSTAKA

[1] Arhami, Muhammad. 2005. Konsep Dasar Sistem Pakar. Yogyakarta: Andi Offset. [2] Andi. 2003. Pengembangan Sistem Pakar Menggunakan Visual Basic. Yogyakarta: Andi Offset. [3] Dhany, Shafia. 2009. Perancangan Sistem Pakar Untuk Diagnosa Penyakit Anak Skripsi. Medan: Universitas Sumatera Utara. [4] Kristanto, Harianto. 2004. Konsep dan Perancangan Database. Yogyakarta : Andi [5] Kurniadi, Adi. 2000. Pemrograman Microsoft Visual Basic 6. Jakarta.PT Elex Media Komputindo. [6] Kusrini. 2008. Aplikasi Sistem Pakar. Yogyakarta: Andi [7] Kusumadewi, Sri. 2003. Artificial Intelligence (Teknik dan Aplikasinya). Yogyakarta: Graha Ilmu. [8] Prasetyo, Dwi. D. 2004. Aplikasi Bisnis dan Perkantoran Menggunakan Visual Basic. Jakarta. PT Elex Media Komputindo. [9] Sanjaya, R. Dan Helmy. 2004. Mempercantik Desain Form pada Visual Basic 6.0. Jakarta : PT Elex Media Komputindo. [10] Semangun, Haryanto. 1989. Penyakit-Penyakit Tanaman Indonesia. Yogyakarta: Gadjah Mada University Press. Perkebunan

[11] Setiawan, A, H. 2009. Sistem Pakar Diagnosa Penyakit Tanaman Padi Berbasis Web dengan Metode Forward Chaining dan Backward Chaining. Jurnal Akademik. Yogyakarta: Sekolah Tinggi Teknologi Adisutjipto. [12] Tim Karya Tani Mandiri. 2010. Pedoman Budi Daya Tanaman Kopi. Bandung: Nuansa Aulia. [13] Turban, E. 2005. Decision Support Systems and Intelligent Systems. Yogyakarta: Andi. [14] Yanti, Dewi. 2008. Perancangan Sistem Pakar Diagnosis Penyakit Utama Tanaman Kelapa Sawit. Skripsi. Medan: Universitas Sumatera Utara. [15] Yuswanto. 2004. Pemrograman Client-Server Microsoft Visual Basic 6.0. Jilid 1. Jakarta. Prestasi Pustakaraya.

LAMPIRAN : LISTING PROGRAM

Kode Program Form Login


Private Sub cboLevel_Click() If cboLevel.Text = "Pengguna" Then txtLogin.Enabled = False txtPass.Enabled = False txtLogin.Visible = False txtPass.Visible = False SkinLabel2.Visible = False SkinLabel3.Visible = False ElseIf cboLevel.Text = "Pakar" Then txtLogin.Enabled = True txtPass.Enabled = True txtLogin.Text = "" txtPass.Text = "" txtLogin.SetFocus ElseIf cboLevel.Text = "Administrator" Then txtLogin.Enabled = True txtPass.Enabled = True txtLogin.Text = "" txtPass.Text = "" txtLogin.SetFocus End If cmdMasuk.Enabled = True End Sub Private Sub cmdKeluar_Click() Unload Me End Sub Private Sub cmdMasuk_Click() On Error GoTo login_err If cboLevel.Text = "Pengguna" Then userid = "Pengguna" levelid = "Pengguna" frmUtama.Show Unload Me Exit Sub Else If txtLogin.Text = "" Then MsgBox "Masukkan User ID !", vbCritical txtLogin.SetFocus Exit Sub End If If Not validity(txtLogin, "User ID") Then txtLogin.SetFocus Exit Sub End If If txtPass.Text = "" Then MsgBox "Masukkan Password !", vbCritical txtPass.SetFocus Exit Sub

End If If Not validity(txtPass, "Password") Then txtPass.SetFocus Exit Sub End If konek_db Dim sql As String Set adoRS = New ADODB.Recordset sql = "select * from list_user where user_id = '" & txtLogin.Text_ & "' and pass = '" & Crypt(txtPass.Text) & "'" adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic If (adoRS.EOF) Then MsgBox "User ID dan Password salah! Coba Lagi !", vbCritical, "Peringatan" txtLogin.Text = "" txtPass.Text = "" txtLogin.SetFocus Call closeconn Exit Sub End If levelid = adoRS!Level Call closeconn userid = txtLogin.Text Unload Me frmUtama.Show End If Exit Sub login_err: MsgBox Err.Description End Sub Private Sub Label6_Click() frmUserBaru.Show vbModal End Sub Private Sub Label7_Click() frmGantiPass.Show vbModal End Sub Private Sub Label9_Click() frmHapusUser.Show vbModal End Sub Private Sub Form_Load() Skin1.LoadSkin App.Path & "\SKIN\green.skn" Skin1.ApplySkin hWnd cboLevel.AddItem "Pengguna" cboLevel.AddItem "Pakar" cboLevel.AddItem "Administrator" cmdMasuk.Enabled = False End Sub Private Sub Timer1_Timer() Label6.ForeColor = RGB(Rnd * 255, Rnd * 255, Rnd * 255) End Sub

Kode Program Form Utama


Private Sub cmdDiagnosis_Click() frmPilihPenyakit.Show vbModal End Sub Private Sub cmdPengetahuan_Click() frmPengetahuan.Show vbModal End Sub Private Sub Form_Activate() Call Form_Load End Sub Private Sub Form_Load() Skin1.LoadSkin App.Path & "\SKIN\green.skn" Skin1.ApplySkin hWnd konek_db StatusBar1.Panels(1) = userid StatusBar1.Panels(2) = levelid If levelid = "Pengguna" Then cmdPengetahuan.Visible = False mnBasis.Visible = False Else cmdPengetahuan.Visible = True mnBasis.Visible = True End If End Sub Private Sub Form_Unload(Cancel As Integer) diskonek_db Unload Me End End Sub Private Sub mnDiagnosisPenyakit_Click() frmPilihPenyakit.Show vbModal End Sub Private Sub mnEdit_Click() frmPengetahuan.Show vbModal End Sub Private Sub mnKeluar_Click() Dim pesan pesan = MsgBox("Anda yakin mau keluar dari program ?", vbQuestion + vbYesNo + vbDefaultButton2, "Konfirmasi") If pesan = vbYes Then Unload Me End If End Sub Private Sub mnLogOff_Click() Dim pesan pesan = MsgBox("Anda yakin mau Log-Off dari sistem?", vbQuestion + vbYesNo + vbDefaultButton2, "Konfirmasi") If pesan = vbYes Then frmLogin.Show Me.Hide End If End Sub

Private Sub mnPembuat_Click() frmPembuat.Show vbModal End Sub Private Sub mnProgram_Click() frmProgram.Show vbModal End Sub

Kode Program Form Diagnosis


Private Sub cmdSelesai_Click() Me.Hide End Sub Private Sub cmdYa_Click() On Error Resume Next rsTemp.AddNew rsTemp!ID_temp = rsKnowledge!ID rsTemp!fakta = rsKnowledge!faktaYA rsTemp.Update jwb = rsKnowledge!Ya If Left(jwb, 1) = "T" Then rsKnowledge.MoveFirst rsKnowledge.Find " ID= '" & jwb & "' " Label1.Caption = rsKnowledge!pertanyaan Else rsSolusi.MoveFirst rsSolusi.Find " ID_solusi= '" & jwb & "' " frmHasilDiagnosis.Label1.Caption = rsSolusi!solusi frmHasilDiagnosis.Image1.Picture = LoadPicture(App.Path & "\xfoto\" & rsSolusi!foto) frmHasilDiagnosis.Label2.Caption = rsSolusi!diagnosis frmHasilDiagnosis.Show vbModal End If End Sub Private Sub cmdTIDAK_Click() On Error Resume Next rsTemp.AddNew rsTemp!ID_temp = rsKnowledge!ID rsTemp!fakta = rsKnowledge!faktaTIDAK rsTemp.Update jwb = rsKnowledge!Tidak If Left(jwb, 1) = "T" Then rsKnowledge.MoveFirst rsKnowledge.Find " ID= '" & jwb & "' " Label1.Caption = rsKnowledge!pertanyaan Else rsSolusi.MoveFirst rsSolusi.Find " ID_solusi= '" & jwb & "' " frmHasilDiagnosis.Label1.Caption = rsSolusi!solusi frmHasilDiagnosis.Image1.Picture = LoadPicture(App.Path & "\xfoto\" & rsSolusi!foto) frmHasilDiagnosis.Label2.Caption = rsSolusi!diagnosis frmHasilDiagnosis.Show vbModal End If End Sub

Private Sub Form_Activate() Call Form_Load End Sub Private Sub Form_Load() Skin1.LoadSkin App.Path & "\SKIN\green.skn" Skin1.ApplySkin hWnd rsTemp.Requery While Not rsTemp.EOF rsTemp.Delete rsTemp.MoveNext Wend rsKnowledge.MoveFirst Select Case frmPilihPenyakit.cboPenyakit.ListIndex Case 0 rsKnowledge.Find " ID='T1' " Label1.Caption = rsKnowledge!pertanyaan Case 1 rsKnowledge.Find " ID='T15' " Label1.Caption = rsKnowledge!pertanyaan Case 2 rsKnowledge.Find " ID='T8' " Label1.Caption = rsKnowledge!pertanyaan Case 3 rsKnowledge.Find " ID='T1' " Label1.Caption = rsKnowledge!pertanyaan Case 4 rsKnowledge.Find " ID='T22' " Label1.Caption = rsKnowledge!pertanyaan Case 5 rsKnowledge.Find " ID='T20' " Label1.Caption = rsKnowledge!pertanyaan Case 6 rsKnowledge.Find " ID='T22' " Label1.Caption = rsKnowledge!pertanyaan End Select End Sub Private Sub Form_Unload(Cancel As Integer) Call cmdSelesai_Click End Sub

Kode Program Form Pengetahuan


Public baru As Boolean Dim rsRusak As New ADODB.Recordset Private Sub cboCari_Click() txtCari.Text = "" txtCari.SetFocus End Sub Private Sub cmdBatal_Click() KunciTeks True tombolAwal True Adodc1.Recordset.Cancel

KosongkanForm End Sub Private Sub cmdHapus_Click() On Error GoTo hapusErr Dim pil pil = MsgBox("Apakah anda yakin data ini akan dihapus ?", vbQuestion + vbYesNo + vbDefaultButton2, "Konfirmasi") If pil = vbYes Then Adodc1.Recordset.Delete Adodc1.Recordset.MoveLast MsgBox "Data Berhasil Dihapus !", vbInformation, "Informasi" End If Exit Sub hapusErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub cmdInputPenyakit_Click() frmPenyakit.Show vbModal End Sub Private Sub cmdInputSolusi_Click() frmSolusi.Show vbModal End Sub Private Sub cmdKeluar_Click() Me.Hide End Sub Private Sub cmdSimpan_Click() On Error GoTo simpanErr If txtIDKnowledge.Text = Empty Or _ cboPenyakit.Text = "" Or _ txtPertanyaan.Text = Empty Or _ txtFaktaYA.Text = Empty Or _ txtFaktaTIDAK.Text = Empty Or _ cboYA.Text = Empty Or _ cboTIDAK.Text = Empty Then MsgBox "Informasi belum lengkap ! Lengkapi terlebih dahulu !", vbExclamation, "Peringatan" txtIDKnowledge.SetFocus Else Dim rsCek As ADODB.Recordset Set rsCek = New ADODB.Recordset rsCek.Open "select * from knowledge where ID='" & txtIDKnowledge.Text & "'", Conn If Not rsCek.EOF And baru Then MsgBox "Aturan dengan kode " & txtIDKnowledge.Text & " sudah ada, silahkan ganti dengan kode yang lain !", vbExclamation, "Peringatan" txtIDKnowledge.SetFocus: SendKeys "{HOME}+{END}" Else With Adodc1.Recordset If baru Then .AddNew !ID = txtIDKnowledge.Text

!ID_penyakit = txtIDPenyakit.Text !pertanyaan = txtPertanyaan.Text !faktaYA = txtFaktaYA.Text !faktaTIDAK = txtFaktaTIDAK.Text !Ya = cboYA.Text !Tidak = cboTIDAK.Text .Update MsgBox "Data berhasil disimpan !", vbInformation, "Informasi" KunciTeks True tombolAwal True KosongkanForm End With End If End If Exit Sub simpanErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub cmdTambah_Click() baru = True KunciTeks False tombolAwal False txtIDKnowledge.SetFocus End Sub Sub tombolAwal(kunci As Boolean) cmdTambah.Enabled = kunci cmdSimpan.Enabled = Not kunci cmdBatal.Enabled = Not kunci cmdUbah.Enabled = kunci cmdHapus.Enabled = kunci cmdKeluar.Enabled = kunci End Sub Private Sub cmdUbah_Click() On Error GoTo ubahErr KunciTeks False tombolAwal False With Adodc1.Recordset txtIDKnowledge.Text = !ID txtIDPenyakit.Text = !ID_penyakit txtPertanyaan.Text = !pertanyaan txtFaktaYA.Text = !faktaYA txtFaktaTIDAK.Text = !faktaTIDAK cboYA.Text = !Ya cboTIDAK.Text = !Tidak Set rsRusak = New ADODB.Recordset rsRusak.Open "select * from penyakit where ID_Penyakit='" & txtIDPenyakit.Text & "'", Conn cboPenyakit.Text = rsRusak!jenis_penyakit End With

txtIDKnowledge.SetFocus baru = False Exit Sub ubahErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub Form_Activate() Dim i As Integer For i = 0 To 6 gridKnowledge.Columns(i).Locked = True Next i For i = 0 To 1 gridPenyakit.Columns(i).Locked = True gridSolusi.Columns(i).Locked = True Next i cboCari.AddItem "ID Pengetahuan" cboCari.AddItem "Pertanyaan" cboCari.AddItem "ID Penyakit" 'If Not rsPenyakit.EOF Then cboPenyakit.Clear rsPenyakit.MoveFirst While Not rsPenyakit.EOF cboPenyakit.AddItem rsPenyakit!jenis_penyakit rsPenyakit.MoveNext Wend 'End If 'If Not rsKnowledge.EOF Then cboYA.Clear cboTIDAK.Clear rsKnowledge.MoveFirst While Not rsKnowledge.EOF cboYA.AddItem rsKnowledge!ID cboTIDAK.AddItem rsKnowledge!ID rsKnowledge.MoveNext Wend 'End If 'If Not rsSolusi.EOF Then rsSolusi.MoveFirst While Not rsSolusi.EOF cboYA.AddItem rsSolusi!ID_solusi cboTIDAK.AddItem rsSolusi!ID_solusi rsSolusi.MoveNext Wend 'End If End Sub Private Sub Form_Load() KunciTeks True tombolAwal True Adodc1.ConnectionString = Conn.ConnectionString Adodc1.RecordSource = "select * from knowledge"

Adodc1.Refresh Set gridKnowledge.DataSource = Adodc1 Adodc3.ConnectionString = Conn.ConnectionString Adodc3.RecordSource = "select * from penyakit" Adodc3.Refresh Set gridPenyakit.DataSource = Adodc3 Adodc2.ConnectionString = Conn.ConnectionString Adodc2.RecordSource = "select * from solusi" Adodc2.Refresh Set gridSolusi.DataSource = Adodc2 gridPenyakit.Columns(0).Width = 400 gridPenyakit.Columns(1).Width = 5000 gridSolusi.Columns(0).Width = 400 gridSolusi.Columns(1).Width = 5000 gridKnowledge.Columns(0).Width gridKnowledge.Columns(4).Width gridKnowledge.Columns(5).Width gridKnowledge.Columns(6).Width = = = = 400 400 400 400

Skin1.LoadSkin App.Path & "\SKIN\green.skn" Skin1.ApplySkin hWnd End Sub Sub KosongkanForm() txtIDKnowledge.Text = Empty txtIDPenyakit.Text = Empty cboPenyakit.Text = Empty txtPertanyaan.Text = Empty txtFaktaYA.Text = Empty txtFaktaTIDAK.Text = Empty cboYA.Text = Empty cboTIDAK.Text = Empty End Sub Sub KunciTeks(kunci As Boolean) txtIDKnowledge.Locked = kunci cboPenyakit.Locked = kunci txtPertanyaan.Locked = kunci txtFaktaYA.Locked = kunci txtFaktaTIDAK.Locked = kunci cboYA.Locked = kunci cboTIDAK.Locked = kunci End Sub Private Sub cboPenyakit_Click() On Error GoTo rusakErr Set rsRusak = New ADODB.Recordset rsRusak.Open "select * from penyakit where jenis_penyakit='" & cboPenyakit.Text & "'", Conn txtIDPenyakit.Text = rsRusak!ID_penyakit Exit Sub

rusakErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Sub DaftarCari() On Error GoTo pesan Dim adofilter As New ADODB.Recordset Set adofilter = New ADODB.Recordset Dim sqlc As String adofilter.CursorLocation = adUseClient Select Case cboCari.Text Case "ID Pengetahuan" sqlc = "SELECT * FROM knowledge where ID like " & "'%" & txtCari.Text & "%'" & _ "ORDER BY ID" Case "Pertanyaan" sqlc = "SELECT * FROM knowledge where pertanyaan like " & "'%" & txtCari.Text & "%'" & _ "ORDER BY ID" Case "ID Penyakit" sqlc = "SELECT * FROM knowledge where ID_Penyakit like " & "'%" & txtCari.Text & "%'" & _ "ORDER BY ID" Case Else MsgBox "Pilih dulu mau mencari berdasarkan apa !", vbExclamation, "Peringatan" 'txtCari.Text = "" cboCari.SetFocus Exit Sub End Select adofilter.Open sqlc, Conn, adOpenDynamic, adLockOptimistic If Not adofilter.EOF Then Set gridKnowledge.DataSource = adofilter Set Adodc1.Recordset = adofilter Else MsgBox "Maaf, data yang anda cari tidak terdapat pada database !", vbInformation, "Informasi" txtCari.Text = "" End If Exit Sub pesan: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub txtCari_Change() DaftarCari End Sub

Kode Program Form Penyakit


Public baru As Boolean Private Sub cmdBatal_Click() KunciTeks True tombolAwal True Adodc1.Recordset.Cancel KosongkanForm End Sub Private Sub cmdHapus_Click() On Error GoTo hapusErr Dim pil pil = MsgBox("Apakah anda yakin data ini akan dihapus ?", vbQuestion + vbYesNo + vbDefaultButton2, "Konfirmasi") If pil = vbYes Then Adodc1.Recordset.Delete Adodc1.Recordset.MoveLast MsgBox "Data Berhasil Dihapus !", vbInformation, "Informasi" End If Exit Sub hapusErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub cmdKeluar_Click() Me.Hide End Sub Private Sub cmdSimpan_Click() On Error GoTo simpanErr If txtIDPenyakit.Text = Empty Or _ txtJenisPenyakit.Text = Empty Then MsgBox "Informasi belum lengkap ! Lengkapi terlebih dahulu !", vbExclamation, "Peringatan" txtIDPenyakit.SetFocus Else Dim rsCek As ADODB.Recordset Set rsCek = New ADODB.Recordset rsCek.Open "select * from penyakit where ID_penyakit='" & txtIDPenyakit.Text & "'", Conn If Not rsCek.EOF And baru Then MsgBox "Penyakit dengan kode " & txtIDPenyakit.Text & " sudah ada, silahkan ganti dengan kode yang lain !", vbExclamation, "Peringatan" txtIDPenyakit.SetFocus: SendKeys "{HOME}+{END}" Else With Adodc1.Recordset If baru Then .AddNew !ID_penyakit = txtIDPenyakit.Text !jenis_penyakit = txtJenisPenyakit.Text .Update

Adodc1.Refresh MsgBox "Data berhasil disimpan !", vbInformation, "Informasi" KunciTeks True tombolAwal True KosongkanForm End With End If End If Exit Sub simpanErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub cmdTambah_Click() baru = True KunciTeks False tombolAwal False txtIDPenyakit.SetFocus End Sub Sub tombolAwal(kunci As Boolean) cmdTambah.Enabled = kunci cmdSimpan.Enabled = Not kunci cmdBatal.Enabled = Not kunci cmdUbah.Enabled = kunci cmdHapus.Enabled = kunci cmdKeluar.Enabled = kunci End Sub Private Sub cmdUbah_Click() On Error GoTo ubahErr KunciTeks False tombolAwal False With Adodc1.Recordset txtIDPenyakit.Text = !ID_penyakit txtJenisPenyakit.Text = !jenis_penyakit End With txtIDPenyakit.SetFocus baru = False Exit Sub ubahErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub Form_Activate() Dim i As Integer For i = 0 To 1 gridPenyakit.Columns(i).Locked = True Next i txtCari.Text = "" End Sub

Private Sub Form_Load() KunciTeks True tombolAwal True Adodc1.ConnectionString = Conn.ConnectionString Adodc1.RecordSource = "select * from penyakit" Adodc1.Refresh Set gridPenyakit.DataSource = Adodc1 gridPenyakit.Columns(0).Width = 400 gridPenyakit.Columns(1).Width = 5000 Skin1.LoadSkin App.Path & "\SKIN\green.skn" Skin1.ApplySkin hWnd End Sub Sub KosongkanForm() txtIDPenyakit.Text = Empty txtJenisPenyakit.Text = Empty End Sub Sub KunciTeks(kunci As Boolean) txtIDPenyakit.Locked = kunci txtJenisPenyakit.Locked = kunci End Sub Sub DaftarCari() On Error GoTo pesan Dim adofilter As New ADODB.Recordset Set adofilter = New ADODB.Recordset Dim sqlc As String adofilter.CursorLocation = adUseClient Select Case cboCari.Text Case "ID Penyakit" sqlc = "SELECT * FROM penyakit where ID_penyakit like " & "'%" & txtCari.Text & "%'" & _ "ORDER BY ID_penyakit" Case "Jenis penyakit" sqlc = "SELECT * FROM penyakit where jenis_penyakit like " & "'%" & txtCari.Text & "%'" & _ "ORDER BY ID_penyakit" Case Else MsgBox "Pilih dulu mau mencari berdasarkan apa !", vbExclamation, "Peringatan" cboCari.SetFocus Exit Sub End Select adofilter.Open sqlc, Conn, adOpenDynamic, adLockOptimistic If Not adofilter.EOF Then Set gridPenyakit.DataSource = adofilter Set Adodc1.Recordset = adofilter Else MsgBox "Maaf, data yang anda cari tidak terdapat pada database !", vbInformation, "Informasi" txtCari.Text = "" End If Exit Sub

pesan: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub cboCari_Click() txtCari.Text = "" txtCari.SetFocus End Sub Private Sub txtCari_Change() DaftarCari End Sub

Kode Program Form Solusi


Public baru As Boolean Private Sub cmdBatal_Click() KunciTeks True tombolAwal True Adodc1.Recordset.Cancel KosongkanForm End Sub Private Sub cmdHapus_Click() On Error GoTo hapusErr Dim pil pil = MsgBox("Apakah anda yakin data ini akan dihapus ?", vbQuestion + vbYesNo + vbDefaultButton2, "Konfirmasi") If pil = vbYes Then Adodc1.Recordset.Delete Adodc1.Recordset.MoveLast MsgBox "Data Berhasil Dihapus !", vbInformation, "Informasi" End If Exit Sub hapusErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub cmdKeluar_Click() Me.Hide End Sub Private Sub cmdSimpan_Click() On Error GoTo simpanErr If txtIDSolusi.Text = Empty Or _ txtSolusi.Text = Empty Then MsgBox "Informasi belum lengkap ! Lengkapi terlebih dahulu !", vbExclamation, "Peringatan" txtIDSolusi.SetFocus Else Dim rsCek As ADODB.Recordset Set rsCek = New ADODB.Recordset

rsCek.Open "select * from solusi where ID_solusi='" & txtIDSolusi.Text & "'", Conn If Not rsCek.EOF And baru Then MsgBox "Solusi dengan kode " & txtIDSolusi.Text & " sudah ada, silahkan ganti dengan kode yang lain !", vbExclamation, "Peringatan" txtIDSolusi.SetFocus: SendKeys "{HOME}+{END}" Else With Adodc1.Recordset If baru Then .AddNew !ID_solusi = txtIDSolusi.Text !solusi = txtSolusi.Text .Update MsgBox "Data berhasil disimpan !", vbInformation, "Informasi" KunciTeks True tombolAwal True KosongkanForm End With End If End If Exit Sub simpanErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub cmdTambah_Click() baru = True KunciTeks False tombolAwal False txtIDSolusi.SetFocus End Sub Sub tombolAwal(kunci As Boolean) cmdTambah.Enabled = kunci cmdSimpan.Enabled = Not kunci cmdBatal.Enabled = Not kunci cmdUbah.Enabled = kunci cmdHapus.Enabled = kunci cmdKeluar.Enabled = kunci End Sub Private Sub cmdUbah_Click() On Error GoTo ubahErr KunciTeks False tombolAwal False With Adodc1.Recordset txtIDSolusi.Text = !ID_solusi txtSolusi.Text = !solusi End With txtIDSolusi.SetFocus baru = False Exit Sub

ubahErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub Form_Activate() Dim i As Integer For i = 0 To 1 gridSolusi.Columns(i).Locked = True Next i txtCari.Text = "" End Sub Private Sub Form_Load() KunciTeks True tombolAwal True Adodc1.ConnectionString = Conn.ConnectionString Adodc1.RecordSource = "select * from solusi" Adodc1.Refresh Set gridSolusi.DataSource = Adodc1 gridSolusi.Columns(0).Width = 400 gridSolusi.Columns(1).Width = 5000 Skin1.LoadSkin App.Path & "\SKIN\green.skn" Skin1.ApplySkin hWnd End Sub Sub KosongkanForm() txtIDSolusi.Text = Empty txtSolusi.Text = Empty End Sub Sub KunciTeks(kunci As Boolean) txtIDSolusi.Locked = kunci txtSolusi.Locked = kunci End Sub Sub DaftarCari() On Error GoTo pesan Dim adofilter As New ADODB.Recordset Set adofilter = New ADODB.Recordset Dim sqlc As String adofilter.CursorLocation = adUseClient Select Case cboCari.Text Case "ID Solusi" sqlc = "SELECT * FROM solusi where ID_Solusi like " & "'%" & txtCari.Text & "%'" & _ "ORDER BY ID_Solusi" Case "Solusi" sqlc = "SELECT * FROM solusi where solusi like " & "'%" & txtCari.Text & "%'" & _ "ORDER BY ID_Solusi" Case Else MsgBox "Pilih dulu mau mencari berdasarkan apa !", vbExclamation, "Peringatan" cboCari.SetFocus Exit Sub End Select

adofilter.Open sqlc, Conn, adOpenDynamic, adLockOptimistic If Not adofilter.EOF Then Set gridSolusi.DataSource = adofilter Set Adodc1.Recordset = adofilter Else MsgBox "Maaf, data yang anda cari tidak terdapat pada database !", vbInformation, "Informasi" txtCari.Text = "" End If Exit Sub pesan: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Private Sub cboCari_Click() txtCari.Text = "" txtCari.SetFocus End Sub Private Sub txtCari_Change() DaftarCari End Sub

Kode Program Form Hasil Diagnosis


Private Sub cmdAlasan_Click() frmPenanganan.Label2.Text = "" rsTemp.MoveFirst While Not rsTemp.EOF frmPenanganan.Label2.Text = frmPenanganan.Label2.Text + _ rsTemp!fakta + vbCrLf rsTemp.MoveNext Wend frmPenanganan.Label2.Text = frmPenanganan.Label2.Text + vbCrLf + vbCrLf + _ "Maka Solusinya : " + vbCrLf + rsSolusi!solusi frmPenanganan.Show vbModal End Sub Private Sub cmdSelesai_Click() Me.Hide frmDiagnosis.Hide End Sub Private Sub Form_Unload(Cancel As Integer) Call cmdSelesai_Click End Sub Private Sub Form_Load() Skin1.LoadSkin App.Path & "\SKIN\green.skn" Skin1.ApplySkin hWnd End Sub

You might also like