Anda di halaman 1dari 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

ii
iii
iv
v
vi
vii
ix
x
1
1
3
3
3
4
4
5

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

7
7
7
8
9
9
10
11
13
14
14
14
15
16
17

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

19
19
19
20
25
25
29
33

3.4.4 Entity Relationship Diagram


3.5 Perancangan Struktur Program
3.6 Perancangan Antarmuka

35
35
36

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

44
44
44
45
45
46
47
47
48
49
50
51

Bab 5 Kesimpulan dan Saran


5.1 Kesimpulan
5.2 Saran

54
54
54

Daftar Pustaka
Lampiran

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

BAB 1 :

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

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

yang

membentuk sistem pakar:


1. AntarMuka Pengguna (User Interface)
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

Terdapat bercak-bercak
kuning pada daun

Terbentuknya tepung
bewarna jingga (orange)
pada bercak kuning daun

Penyakit Karat
Daun

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.

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).

Cabang atau ranting


terdapat
benangbenang tipis seperti
sarang laba-laba
Buah menjadi busuk,
kering dan berwarna
hitam

Peyakit Jamur
Upas

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).

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

Menguningnya
daun

daun-

Penyakit
Ujung

Mati

Ujung batang, cabang,


atau ranting menjadi
kering dan mati

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.

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.

Diulang

setiap 6 bulan sampai areal tersebut bebas dari jamur akar.


Akar
tanaman
menjadi busuk dan
lunak

Pada akar tanaman


terdapat kerak seperti
butir-butir tanah yang
melekat kuat

Penyakit Bercak
Daun
Cercospora

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.

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.

Daun tanaman
menguning

Gugurnya daun
tanaman

Penyakit
Kanker Belah

Terdapat celah-celah
memanjang
pada
pangkal batang dan
akar tunggang

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.

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

Penyakit Akar
Hitam

Pohon mati secara


mendadak

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.

Data Login

Update Pengetahuan
Pakar

Pengetahuan

0
Sistem Pakar
Diagnosis Penyakit
Tanaman Kopi

Pengetahuan

Gejala Penyakit

Pengguna

Administrastor

Update
Pengetahuan

Solusi
Hak Akses

Gambar 3.8 DFD Level 0

Solusi
Pakar

Jenis Penyakit

Administrator

Jenis Penyakit

Solusi
Rekam
Jenis
Penyakit

4.0
Jenis Penyakit

5.0
Solusi

Rekaman
Jenis
Penyakit

Penyakit

Rekam
Solusi

Rekaman
Solusi

Solusi

Pengetahuan
3.0
Pengetahuan

Pengetahuan

Rekam
Pengetahuan

Knowledge

Akses Sistem
Administrator

Nama Pengguna
Kata Kunci

Nama Pengguna
Kata Kunci

Pakar

Pengguna

Akses sistem

Gejala

Rekaman
Pengetahuan
Nama Pengguna
Kata Kunci
List_user

1.0
Sistem Login
Akses Sistem

Akses Sistem

2.0
Diagnosis

Fakta
Fakta

Solusi

Gambar 3.9 DFD Level 1

Temp

Akses Sistem
Nama Pengguna
Password

Pengguna

Hak Akses

Akses
Sistem

Administrator

Pakar
Nama
Pengguna
Password

Nama
Pengguna Baru
Password

Nama
Pengguna
Password

Nama
Pengguna
Password
Hak Akses

Hak Akses

Hak Akses
1.1 *
Login
1.2 *
Buat Pakar
Baru

1.3 *
Ubah Password
Pakar

Nama
Pengguna
Password

Nama
Pengguna
Password

Nama
Pengguna
Password

Nama
Pengguna
Password

list_user

Hak Akses

1.4 *
Hapus Pakar

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

Administrator

Pengetahuan

Pengetahuan

Pengetahuan

ID
Pengetahuan
ID
Pengetahuan

Pengetahuan

3.1 *
Tambah
Pengetahuan

ID
Pengetahuan

3.2 *
Ubah
Pengetahuan

3.3 *
Hapus
Pengaturan

Rekam
Rekaman Pengetahuan
Pengetahuan

Rekam
Pengetahuan

3.4 *
Cari
Pengetahuan

Rekam
Pengetahuan
Rekaman
Pengetahuan
Rekam
Pengetahuan

Knowledge
Rekaman
Pengetahuan

Gambar 3.12 DFD Level 2 Proses Pengetahuan

ID
Jenis
Penyakit
Administrator

Pakar

Jenis
Penyakit

Jenis
Penyakit

Jenis
Penyakit

ID
Jenis
Penyakit

Jenis
Penyakit
4.1 *
Tambah
Jenis
Penyakit

Rekam
Jenis Penyakit

ID
Jenis
Penyakit

4.4 *
Cari
Jenis
Penyakit

4.3 *
Hapus
Jenis
penyakit

4.2 *
Ubah
Jenis
Penyakit

Rekaman
Jenis Penyakit

ID
Jenis
Penyakit

Rekam
Jenis Penyakit

Rekam
Jenis Penyakit

Rekaman
Jenis Penyakit
Rekam
Jenis Penyakit

Penyakit
Rekaman
Jenis Penyakit

Gambar 3.13 DFD Level 2 Proses Jenis Penyakit

ID
Solusi

Pakar

Administrator

Solusi

Solusi

Solusi

ID
Solusi

Solusi

5.1 *
Tambah
Solusi

ID
Solusi

ID
Solusi

5.2 *
Ubah
Solusi

Rekaman
Solusi

5.3 *
Hapus
Solusi

Rekam
Solusi

Rekam
Solusi

Rekam
Solusi

5.4 *
Cari
Solusi

Rekaman
Solusi
Rekam
Solusi

Solusi
Rekaman
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

memasukkan

ID_Penyakit

dan

menekan

tombol

Cari

untuk

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

Tipe

User_ID*

Text

Pass

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

Tipe
Text
Text
Text

Keterangan
Merupakan id dari setiap jenis penyakit
Jenis-jenis penyakit yang ada
Fakta jawaban dari pertanyaan jika Ya

Text

Fakta jawaban dari pertanyaan jika Tidak

Ya

Text

Tidak

Text

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

Aturan baru yang harus dilakukan jika


pertanyaan dijawab Ya
Aturan baru yang harus dilakukan jika
pertanyaan dijawab Tidak
Merupakan id dari setiap jenis penyakit

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

Tidak

Jenis_penyakit
ID_penyakit

ID

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

Pengguna

Pakar

Edit
Pengetahuan

Input Jenis
Penyakit

Input Solusi

Menu utama

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

Buat Pakar Baru 12

4 Level :

Ganti Password Pakar13

5 Username :

Hapus Pakar

6 Password :

9
10

Masuk

11

14

Keluar

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

Diagnosis

Tentang

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

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

Ya

Tidak
4

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

Simpan

9 ID Penyakit

14

10 Nama Penyakit

15

11

Batal

Ubah

Hapus

Keluar

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

9 ID Solusi
10

5
Batal

6
Ubah

8
Keluar

7
Hapus

11

Solusi

12

13
Pencarian
Cari Berdasarkan
14

DataGrid

15

16

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

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

30
Input Jenis Penyakit

Tambah

Simpan

Ubah

Batal

Hapus

Keluar

29
DataGrid

8
9

ID Gejala

18

Penyakit

31

19

10 ID Penyakit

20

Gejala/Pertanyaan

21
11

12 Fakta YA

Input Solusi

13 Fakta TIDAK
14 Jika YA

32

22
23
DataGrid

24
33

15 Jika TIDAK

25

Pencarian

16 Cari Berdasarkan

26

27

17

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

Anda mungkin juga menyukai