1 RANCANG BANGUN SISTEM PAKAR MENENTUKAN PENYAKIT TANAMAN KAKAO MENGGUNAKAN METODE FORWARD CHAINING BERBASIS WAP SKRIPSI Di ajukan untuk melengkapi tu...
RANCANG BANGUN SISTEM PAKAR MENENTUKAN PENYAKIT TANAMAN KAKAO MENGGUNAKAN METODE FORWARD CHAINING BERBASIS WAP
SKRIPSI
Di ajukan untuk melengkapi tugas dan memenuhi syarat-syarat guna memperoleh gelar Sarjana Komputer STMIK U’Budiyah Indonesia
Oleh
Nama Nim
: Handika Rahman : 08111048
PROGRAM STUDI S1 TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA KOMPUTER STMIK U’BUDIYAH INDONESIA BANDA ACEH 2013
LEMBAR PENGESAHAN SIDANG
RANCANG BANGUN SISTEM PAKAR MENENTUKAN PENYAKIT TANAMAN KAKAO MENGGUNAKAN METODE FORWARD CHAINING BERBASIS WAP
Tugas Akhir oleh Handika Rahman ini telah dipertahankan didepan dewan penguji pada tanggal 25 September 2013
Dewan Penguji :
1. Ketua
: ( Faisal Tifta Zany, M.Sc)
1. Anggota
: ( Muslim, S. Si, M. Infotech)
2. Anggota
: ( Zia Fernanda, S.kom, M.Eng)
ii
LEMBAR PERSETUJUAN RANCANG BANGUN SISTEM PAKAR MENENTUKAN PENYAKIT TANAMAN KAKAO MENGGUNAKAN METODE FORWARD CHAINING BERBASIS WAP
SKRIPSI
Diajukan Untuk Melengkapi Tugas dan Memenuhui syarat-syarat Guna Memperoleh Gelar Sarjana Komputer STMIK U’Budiyah Indonesia
Oleh Nama : Handika Rahman Nim : 08111048 Disetujui, Penguji I
Penguji II
(Muslim, S. Si, M. Infotech)
(Zia Fernanda, S.kom, M.Eng)
Ka. Prodi Teknik Informatika
Pembimbing,
( Fathiah, ST, M. Eng )
(Faisal Tifta Zany, M.Sc)
Mengetahui, Ka. STMIK U’Budiyah Indonesia
( Agus Ariyanto, S.E., M. Si )
iii
LEMBAR PERNYATAAN
Saya menyatakan bahwa skripsi yang saya susun, sebagai syarat memperoleh gelar sarjana merupakan hasil karya tulis saya sendiri. Adapun bagian-bagian tertentu dalam penulisan skripsi ini yang saya kutip dari hasil karya orang lain telah dituliskan sumbernya secara jelas sesuai dengan norma, kaidah, dan etika penulisan ilmiah. Saya bersedia menerima sanksi pencabutan gelar akademik yang saya peroleh dan sanksi-sanksi lainnya sesuain dengan peraturan yang berlaku, apabila dikemudian hari ditemukan adanya plagiat dalam penulisan skripsi ini.
iv
KATA PENGANTAR
Assalamu’alaikum Wr.Wb. Dengan memanjatkan puji dan syukur kehadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya, sehingga penulis dapat menyelesaikan penyusunan laporan skipsi dengan judul “Rancang Bangun Sistem Pakar Menentukan Penyakit Tanaman Kakao Menggunakan Metode Forward Chaining Berbasis WAP” Penulis menyadari sepenuhnya bahwa dalam penyusunan laporan tugas akhir ini sangat jauh dari kesempurnaan. Disamping itu bantuan dari berbagai pihak sangat berperan dalam proses penelitian dan penyusunan tugas akhir ini. Oleh karena itu dengan rasa penuh hormat, tulus dan ikhlas penulis haturkan terima kasih kepada: 1. Ketua STMIK U’Budiyah Indonesia Bapak Agus Harianto, S.E., M. Si 2. Ketua Prodi Teknik Informatika Ibu Fathiah, ST, M. Eng 3. Pembimbing Laporan Tugas Akhir Bapak Faisal Tifta Zany, M.Sc yang telah sudi kiranya meluangkan pikiran dan waktu sehinggal penulis telah dapat menyelesaikan Laporan Tugas Akhir ini 4. Kantor Dinas Kehutanan Dan Perkebunan ACEH 5. Ayahanda, ibunda, kakak, adik dan kerabat yang telah memberikan banyak do’a, serta dorongan dalam penyelesaian penelitian ilmiah ini. 6. Serta teman-teman dan sahabat-sahabat maupun dosen yang telah memberikan motifasi dan semangat dalam menyelesaikan penelitian ilmiah ini.
v
Walaupun ada bantuan dari berbagai pihak, namun penulis masih menyadari ada kekurangan dan keterbatasan ilmu dalam menulis. Akhirnya penulis berharap semoga hasil laporan tugas akhir dapat memberikan manfaat kepada penulis sendiri dan pembaca sekalian.
Banda Aceh, 10 November 2013
Handika Rahman
vi
ABSTRAK Pada awalnya perkembangan komputer banyak digunakan sebagai alat hitung bantu untuk menghitung. Tetapi perkembangan teknologi secara cepat membuat fungsinya tidak lagi hanya sebagi alat bantu hitung, melainkan bertambah sehingga menjadi kompleks. Kemajuan dalam bidang piranti lunak komputer menyebabkan komputer di andalkan sebagai alat bantu untuk memecahkan masalah dan mengambil keputusan seperti layaknya seorang pakar (manusia). Dengan bantuan teknologi komputer, pengetahuan seseorang atau beberapa orang pakar dapat dirangkum menjadi satu untuk kemudian diproses menjadi suatu sistem (program komputer) yang di kenal dengan nama “sistem pakar”. Sistem pakar juga dapat membantu memecahkan masalah yang dihadapi orang awam sehari-hari dengan kemampuan memberi solusi setara dengan pakar. Sistem yang mampu menirukan cara berfikir manusia terdiri atas dua kategori, yaitu sistem yang mampu melakukan emulasi kepakaran seseorang (knowedge based expert system) dan sistem yang mampu melakukan komputasi secara cerdas berdasarkan kecerdasan komputasional (computational intelligence) Pada penulisan skripsi ini hanya membahas tentang seputar penyakit tanaman kakao saja. Untuk itu diharapkan adanya pengembangan lebih lanjut sehingga jangkauannya dapat lebih luas lagi sehingga mencakup seluruh penyakit tanaman kakao dan pencegah beserta pengobatan yang tepat.
Kata kunci : Sistem, Sistem Pakar
vi
ABSTRACT At first the development of computers are widely used as a tool to calculate. But the rapid development of technology makes its function not only as a tool of the count, but added that it becomes more complex. Progress in the field of computer software causes the computer can be relied upon as tool to solve problems and make decisions like an expert (human). With the help of computer technology, knowledge of one or several experts can be summarized into one to later be processed into a system (computer program) which is known by the name of “expert system”. Expert system can also help solve problems faced by ordinary everyday people with the ability to provide solutions equivalent to the experts. Systems that can mimic the human way of thinking of two categories, namely emulation system capable of doing one’s expertise (knowledge based expert system) and system capable of intelligent computing based on computational intelligence (computational intelligence). In this thesis only discusses about the cocoa plant disease alone. For it is expected that the further development so that its scope can be more broadly so as to include the entire cocoa crop disease and its prevention and appropriate treatment.
Keywords : System, Expert System
vii
DAFTAR ISI
HALAMAN JUDUL ................................................................................... i HALAMAN PENGESAHAN ..................................................................... ii LEMBAR PERSETUJUAN ....................................................................... iii LEMBAR PERNYATAAN ........................................................................ iv KATA PENGANTAR ................................................................................. v ABSTRAK................................................................................................... vi DAFTAR ISI ............................................................................................... viii DAFTAR GAMBAR................................................................................... xii DAFTAR TABEL ....................................................................................... xiv LAMPIRAN ................................................................................................
BAB I. PENDAHULUAN ........................................................................... 1.1 Latar Belakang ........................................................................... 1 1.2 Rumusan Masalah ...................................................................... 2 1.3 Batasan Masalah ........................................................................ 2 1.4 Tujuan Penilitian ........................................................................ 3 1.5 Manfaat Penelitian ..................................................................... 3 1.6 Sistematika Penulisan................................................................. 4 BAB II. TINJAUAN PUSTAKA ................................................................ 2.1 Sistem Pakar ................................................................................ 6 2.1.1 Artificial Intelligence ....................................................... 9 2.1.2 Forward Chaining ......................................................... 11 2.1.3 Backward Chainig ......................................................... 12 2.2 WAP .......................................................................................... 13 2.2.1 Versi WAP .................................................................... 14 2.2.2 Cara Kerja WAP ........................................................... 15 2.2.3 Model Pemrograman WAP ........................................... 16
viii
2.2.4 Contoh Penggunaan WAP ............................................ 16 2.2.5 Keuntungan WAP ......................................................... 16 2.2.6 Kelemahan WAP .......................................................... 17 2.3 Ketidakpastian .......................................................................... 18 2.3.1 Faktor Kepastian (Certainty Factor)............................... 18 2.3.1.1 Kelebihan dan Kekurangan Metode Certainty Factors ..... 19 2.4 Penyakit Kakao ......................................................................... 20 2.5 Entity Relationship Diagram ( ERD ) ........................................ 25 2.6 Data Flow Diagram ( DFD ) ..................................................... 26 2.6.1 Flowchart ........................................................................ 28 2.6.1.1 Program Flowchart .............................................. 29 2.6.1.2 Jenis jenis Flowchart ........................................... 29 2.7 MySQL ..................................................................................... 30 2.8 Apache Webserver .................................................................... 32 2.9 Bahasa Pemrograman ................................................................ 33 2.9.1 PHP ................................................................................ 33 2.9.2 HTML ............................................................................ 35 2.10 Representasi Pengetahuan ....................................................... 39 2.11 Relasi Antara Penyakit Dengan Gejala .................................... 44
BAB III.METODE PENELITIAN ...........................................................
3.1 Waktu Dan Tempat Penelitian .................................................. 46 3.2 Flowchart ................................................................................. 47 3.2.1 Flowchart Proses Berjalannya Program Untuk User ......... 47 3.2.2 Flowchart Proses Berjalannya Program Untuk Admin ...... 49 3.3 Alat dan Bahan ......................................................................... 50 3.4 Analisa Sistem .......................................................................... 50 3.5 Perancangan Sistem .................................................................. 51 3.5.1 Perancangan Diagram Alir Data ....................................... 51 3.5.1.1 Diagram Konteks.................................................. 51 3.5.1.2 DFD (Data Flow Diagram) Level 1 ...................... 52 ix
DAFTAR PUSTAKA ..................................................................................
xi
DAFTAR GAMBAR
Gambar 3.1 Diagram Konteks ..................................................................... Gambar 3.2 Diagram Alir Data Level 1 ....................................................... Gambar 3.3 Diagram Alir Data Level 2 ....................................................... Gambar 3.4 ERD Proses Pakar .................................................................... Gambar 3.5 Tampilan Halaman Home ......................................................... Gambar 3.6 Tampilan Halaman Tata Cara Konsultasi.................................. Gambar 3.7 Tampilan Halaman Berita Online ............................................. Gambar 3.8 Tampilan Halaman Daftar Account Baru (Sign up here) ........... Gambar 3.9 Tampilan Halaman Sign in ....................................................... Gambar 3.10 Tampilan Halaman Masukan Data Pasien ................................ Gambar 3.11 Tampilan Halaman Konsultasi ................................................. Gambar 3.12 Tampilan Halaman Tata Diagnosa ........................................... Gambar 3.13 Tampilan Halaman Daftar Penyakit ......................................... Gambar 3.14 Tampilan Halaman Daftar Gejala ............................................ Gambar 3.15 Tampilan Halaman Gejala dan Penyakit .................................. Gambar 3.16 Tampilan Halaman Sistem Info ............................................... Gambar 3.17 Tampilan Halaman Guest Book ............................................... Gambar 3.18 Tampilan Halaman Tambah Berita .......................................... Gambar 3.19 Tampilan Halaman Identitas .................................................... Gambar 4.1 Tampilan Halaman Home ......................................................... Gambar 4.2 Tampilan Halaman Tata Cara Konsultasi ................................. Gambar 4.3 Tampilan Halaman Berita Online ............................................. Gambar 4.4 Tampilan Halaman Daftar Account Baru .................................. Gambar 4.5 Tampilan Halaman Sign in ....................................................... Gambar 4.6 Tampilan Halaman Masukan Data Anda .................................. Gambar 4.7 Tampilan Halaman Konsultasi .................................................. Gambar 4.8 Tampilan Halaman Hasil Diagnosa .......................................... Gambar 4.9 Tampilan Halaman Daftar Penyakit .......................................... Gambar 4.10 Tampilan Halaman Daftar Gejala ............................................ Gambar 4.11 Tampilan Halaman gejala dan penyakit ................................... Gambar 4.12 Tampilan Halaman System Info ............................................... Gambar 4.13 Tampilan Halaman Guest Book ............................................... Gambar 4.14 Tampilan Halaman Tambah Berita .......................................... Gambar 4.15 Tampilan Halaman Identitas Anda ........................................... Gambar 4.16 Halaman Masukan Data........................................................... Gambar 4.17 Halaman Konsultasi penyakit busuk buah ................................
Gambar 4.18 Halaman Hasil Diagnosa ......................................................... Gambar 4.19 Halaman Konsultasi kanker batang .......................................... Gambar 4.20 Halaman Hasil Diagnosa ......................................................... Gambar 4.21 Halaman Konsultasi antraknose colletotrichum ....................... Gambar 4.22 Halaman Hasil Diagnosa .........................................................
Latar Belakang Tanaman kakao (Theobroma Cacao) merupakan salah satu komoditi
ekspor non migas yang memiliki prospek cukup cerah, disamping permintaan dalam negeri juga semakin kuat dengan semakin berkembangnya sektor agroindustri. Selain itu kakao merupakan komoditas perkebunan utama didunia. Komoditas ini dicari karena merupakan bahan baku pembuatan cokelat. Biji kakao yang telah mengalami serangkaian proses pengolahan sehingga bentuk dan aromanya seperti yang ada di pasaran sekarang. Banyak sekali produk dengan bahan baku cokelat yang sangat familiar dengan kehidupan modern saat ini, seperti kue cokelat, ice-cream cokelat, ataupun minuman cokelat. Salah satu kiat sukses bertanam kakao adalah keberhasilan dalam pengendalian penyakit. Ada beragam jenis penyakit yang menyerang kakao, Penyakit merupakan suatu keadaan tanaman yang pertumbuhannya terganggu akibat adanya organisme pengganggu. Dengan demikian untuk mempermudah user menentukan penyakit serta solusi pengendalian dari ahli pakar tanaman kakao diperlukan suatu kemampuan untuk membuat suatu aplikasi sistem pakar dalam mendiagnosis penyakit tanaman kakao sehingga dapat menghasilkan kesimpulan cara solusi pengendalian yang tepat.
1
2
Demikian untuk mempermudah petani menentukan penyakit serta solusi pengendalian dari seorang pakar tanaman kakao diperlukan kemampuan untuk membuat suatu aplikasi “Rancang Bangun Sistem Pakar Menentukan Penyakit Tanaman Kakao Menggunakan Metode Forward Chaining Berbasis WAP” sehingga dapat menghasilkan solusi pengendalian yang tepat.
1.2 Rumusan Masalah Masalah yang akan dibahas di dalam penelitian ini adalah bagaimana merancang suatu aplikasi sistem pakar untuk mendiagnosis penyakit tanaman kakao serta pengendaliannya, penyakit yang akan diteliti adalah : penyakit busuk buah, penyakit kanker batang, penyakit antraknose colletotrichum, penyakit Vascular Streak Dieback, penyakit jamur upas, penyakit akar, dan penyakit kelayuan pentil, yang
gunanya sebagai informasi dan penyuluhan bagi banyak petani dan masyarakat yang masih awam tentang penyakit yang timbul pada tanaman kakao serta cara pengendalian penyakit tersebut secara efektif dan tepat.
1.3 Batasan Masalah Agar tidak keluar dari permasalahan maka penulis memberikan batasan masalah sebagai berikut : 1. Sistem pakar ini hanya untuk menentukan penyakit pada tanaman kakao. 2.
Pembuatan sistem pakar ini menggunakan metode Forward Chaining.
3. Sistem pakar ini akan mendiagnosis gejala-gejala penyakit yang muncul pada tanaman kakao serta cara pengendaliannya.
3
4. Output yang dihasilkan dari aplikasi ini berupa jenis penyakit yang dialami petani kakao dan bagaimana cara pengendaliannya.
1.4 Tujuan Penelitian Tujuan penelitian ini adalah untuk merancang dan membangun aplikasi sistem pakar untuk mendiagnosis penyakit pada tanaman kakao menggunakan metode Forward Chaining yang fungsinya, sebagai informasi dan penyuluhan bagi petani serta masyarakat yang masih awam untuk mengatasi masalah-masalah yang timbul pada tanaman kakao.
1.5 Manfaat Penelitian Manfaat yang menjadi dasar pada penulisan tugas akhir ini adalah : 1. Membantu petani untuk mengetahui penyakit yang terjangkit pada tanaman kakao serta mengetahui cara pengendalian penyakit pada tanaman kakao tersebut. 2. Efisiensi waktu dalam mengetahui penyakit yang terjangkit pada tanaman kakao sehingga dapat memberikan informasi yang cepat dan tepat kepada petani kakao.
4
1.6 Sistematika Penulisan Untuk memudahkan pemahaman terhadap Tugas Akhir ini maka penulis menyusun sistematika penulisan sebagai berikut :
BAB I : PENDAHULUAN Bab ini merupakan pendahuluan yang berisikan tentang latar belakang, rumusan masalah, tujuan penulisan, batasan masalah, metode penulisan, dan sistematika penulisan.
BAB II : DASAR TEORI Bab ini menguraikan tentang teori yang berkaitan dengan Rancang Bangun Sistem Pakar Menentukan Penyakit Tanaman Kakao Menggunakan Metode Forward Chaining.
BAB III : PERANCANGAN DAN ANALISIS SISTEM Bab ini dijelaskan mengenai tahapan-tahapan dalam aplikasi yang dibangun, komponen yang digunakan, pembahasan basis data, metode Forward Chaining. perancangan data flow diagram (DFD), dan perancangan antarmuka (user interface).
5
BAB IV : IMPLEMENTASI DAN PENGUJIAN SISTEM Bab ini membahas tentang cara kerja dari perangkat lunak yang mengulas analisis hasil pengujian terhadap sistem pakar untuk mendiagnosis penyakit tanaman kakao menggunakan metode Forward Chaining.
BAB V : PENUTUP Bab ini berisi tentang kesimpulan dari hasil penulisan dan saran-saran guna perbaikan dan pengembangan sistem pakar untuk menentukan penyakit tanaman kakao selanjutnya.
DAFTAR PUSTAKA Berisi referensi, buku – buku rujukan dan pembelajaran untuk penelitian tugas akhir ini.
BAB II TINJAUAN PUSTAKA
2.1
Sistem Pakar Sistem pakar adalah suatu cabang dari Artifial Intelligence (AI) yang
melakukan penggunaan terhadap knowledge (Pengetahuan) secara luas, yang khusus untuk penyelesaiaan masalah-masalah yang biasanya dilakukan oleh seorang pakar. Sistem pakar bertindak sebagai penasehat atau konsultan pintar dengan mengambil pengetahuan yang di simpan dalam Knowledge Base (Arhami, 2005). Secara umum, sistem pakar adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer yang dirancang untuk memodelkan kemampuan menyelesaikan masalah seperti layaknya seorang pakar. Orang awam pun dapat menyelesaikan masalahnya atau hanya mencari informasi berkualitas yang sebenarnya hanya dapat diperoleh dengan bantuan para ahli di bidangnya. Sistem pakar ini juga 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.
6
7
Sistem pakar memiki ciri-ciri sebagai berikut: 1. Terbatas pada bidang yang spesifik. 2. Dapat memberikan penalaran untuk data-data yang tidak lengkap atau tidak pasti. 3. Dapat mengemukakan rangkaian alasan yang diberikannya dengan cara yang dapat dipahami. 4. Berdasarkan rule atau kaidah tertentu. 5. Dirancang untuk dapat dikembangkan secara bertahap. 6. Outputnya tergantung dari dialog dengan user. 7. Knowledge base dan inference engine terpisah. Secara garis besar, banyak manfaat yang dapat diperoleh dengan mengembangkan sistem pakar, antara lain: 1. Masyarakat awam non pakar dapat memanfaatkan keahlian di dalam bidang tertentu tanpa kehadiran langsung seorang pakar. 2. Meningkatkan produktivitas kerja, yaitu bertambah efisiensi pekerjaan tertentu serta hasil solusi kerja. 3. Penghematan waktu dalam menyelesaikan masalah yang kompleks. 4. Memberikan penyederhanaan solusi untuk kasus yang kompleks dan berulangulang. Di samping memiliki beberapa keuntungan, sistem pakar juga memiliki beberapa kelemahan, antara lain: 1. Daya kerja dan produktivitas manusia menjadi berkurang karena semuanya dilakukan secara otomatis oleh sistem.
8
2. Pengembangan perangkat lunak sistem pakar lebih sulit dibandingkan dengan sistem konvensional. Suatu sistem pakar disusun oleh tiga modul utama yaitu: 1. Modul Penerimaan Pengetahuan (Knowledge Acquisition Mode) Sistem berada pada modul ini, pada saat ia menerima pengetahuan dari pakar. Proses mengumpulkan pengetahuan akan digunakan untuk pengembangan sistem, dilakukan dengan bantuan knowledge engineer. Peran knowledge engineer adalah sebagai penghubung antara suatu sistem pakar dengan pakarnya. 2. Modul Konsultasi (Consultation Mode) Pada saat sistem berada dalam posisi memberikan jawaban atas permasalahan yang diajukan oleh user, sistem pakar berada dalam modul konsultasi. Modul ini, user berinteraksi dengan sistem dengan menjawab pertanyaan-pertanyaan yang diajukan oleh sistem. 3. Modul Penjelasan (Explanation Mode) Modul ini menjelaskan proses pengambilan keputusan oleh sistem. 4. Basis Pengetahuan (Knowledge Base) Basis pengetahuan merupakan inti dari suatu sistem pakar, yaitu berupa representasi pengetahuan dari pakar. Basis pengetahuan tersusun atas fakta dan kaidah. Fakta adalah informasi tentang objek, peristiwa, atau situasi. Kaidah adalah cara untuk membangkitkan suatu fakta baru dari fakta yang sudah diketahui. Ada banyak cara untuk merepresentasikan pengetahuan, diantaranya adalah logika, jaringan semantic, Object Atribute Value (OAV), bingkai, frame, dan kaidah produksi.
9
5. Mesin Inferensi (Inference Engine) Mesin inferensi berperan sebagai otak dari sistem pakar. Mesin inferensi berfungsi untuk memandu proses penalaran terhadap suatu kondisi, berdasarkan pada basis pengetahuan yang tersedia. Di dalam mesin inferensi terjadi proses untuk memanipulasi dan mengarahkan kaidah, model, dan fakta yang disimpan dalam basis pengetahuan dalam rangka mencapai solusi atau kesimpulan. Dalam prosesnya, mesin inferensi menggunakan strategi penalaran dan strategi pengendalian. Strategi penalaran terdiri dari strategi penalaran pasti (Exact Reasoning) dan strategi penalaran tak pasti (Inexact Reasoning). Exact reasoning akan dilakukan jika semua data yang dibutuhkan untuk menarik suatu kesimpulan tersedia, sedangkan inexact reasoning dilakukan pada keadaan sebaliknya. Strategi pengendalian berfungsi sebagai panduan arah dalam melakukan proses penalaran. Terdapat tiga teknik pengendalian yang sering digunakan, yaitu forward chaining, backward chaining, dan gabungan dari kedua teknik pengendalian tersebut.
2.1.1 Artificial Intelligence (AI) Artificial Intelligence (AI) adalah bagian ilmu komputer yang membuat agar mesin komputer dapat melakukan pekerjaan seperti dan sebaik yang dilakukan manusia. Pada awal diciptakannya, komputer hanya difungsikan sebagai alat hitung saja. Namun seiring dengan perkembangan jaman, maka peran komputer semakin mendominasi kehidupan manusia. Komputer tidak lagi hanya digunakan sebagai alat hitung, lebih dari itu, komputer diharapkan untuk dapat diberdayakan untuk mengerjakan segala sesuatu yang bisa dikerjakan oleh
10
manusia. Manusia bisa menjadi pandai dalam menyelesaikan segala permasalahan di dunia ini karena manusia mempunyai pengetahuan dan pengalaman Pengetahuan diperoleh dari belajar. Semakin banyak bekal pengetahuan yang dimiliki oleh seseorang tentu saja diharapkan akan lebih mampu dalam menyelesaikan permasalahan. Namun bekal pengetahuan saja tidak cukup, manusia juga diberi akal untuk melakukan penalaran, mengambil kesimpulan berdasarkan pengetahuan dan pengalaman yang mereka miliki. Tanpa memiliki kemampuan untuk menalar dengan baik, manusia dengan segudang pengalaman dan pengetahuan tidak akan dapat menyelesaikan masalah dengan baik. Demikian pula dengan kemampuan menalar yang sangat baik, namun tanpa bekal pengetahuan dan pengalaman yang memadai, manusia juga tidak akan bisa menyelesaikan masalah dengan baik.
Agar komputer bisa bertindak seperti dan sebaik manusia, maka komputer juga harus diberi bekal pengetahuan dan mempunyai kemampuan untuk menalar. Untuk itu AI akan mencoba untuk memberikan beberapa metoda untuk membekali komputer dengan kedua komponen tersebut agar komputer bisa menjadi mesin pintar. (Rehulina, 2009)
Lingkup utama kecerdasan buatan: 1. Sistem pakar komputer digunakan sebagai saran untuk menyimpan pengetahuan para pakar. Dengan demikian komputer akan memiliki keahlian untuk menyelesaikan masalah dengan meniru keahlian yang dimiliki para pakar
11
2. Pengolahan bahasa alami, dengan pengolahan bahasa alami ini diharapkan user mampu berkomunikasi dengan komputer dengan menggunakan bahasa sehari-hari 3. Pengenalan ucapan, melalui pengenalan ucapan diharapkan manusia mampu berkomunikasi dengan komputer dengan menggunakan suara 4. Computer vision, mencoba untuk dapat mengintrepetasikan gambar atau objek-objek tampak melalui komputer 5. Intelligent Computer aid Instruction. Komputer dapat digunakan sebagai tutor yang dapat melatih dan mengajar.
2.1.2 Forward Chaining Forward chaining merupakan proses perunutan yang dimulai dengan menampilkan kumpulan data atau fakta yang meyakinkan menuju konklusi akhir.Runut maju dimulai dari premis-premis atau informasi masukan (if) dahulu kemudian menuju kesimpulan atau derived information (then) atau dapat dimodelkan sebagai berikut: IF (informasi masukan) THEN (kesimpulan) Informasi masukan dapat berupa data, bukti, temuan, atau gejala. Sedangkan kesimpulan dapat berupa tujuan, hipotesa, penjelasan atau diagnosis. Sehingga arah pencarian runut maju dimulai dari data menuju tujuan, dari bukti menuju hipotesa, atau dari gejala menuju diagnosa. Berbagai struktur kaidah if-then yang menghubungkan obyek atau atribut sebagai berikut : IF premis THEN konklusi
12
IF masukan THEN keluaran IF kondisi THEN tindakan IF antesenden THEN konsekuen IF data THEN hasil IF tindakan THEN tujuan IF aksi THEN reaksi IF sebab THEN akibat IF gejala THEN diagnosa Handayani [7], dalam skripsinya yang berjudul analisis forward chaining dan penalaran inexact pada rule based expert system menulis bahwa Forward chaining atau runut maju memiliki arti mempergunakan himpunan kaidah kondisi aksi. Dalam metode ini kaidah interpreter mencocokkan fakta atau statement dalam pangkalan data dengan situasi yang dinyatakan dalam anticendent atau kaidah if. Bila fakta dalam pangkalan data telah sesuai dengan kaidah if maka kaidah distimulasi Proses ini diulang hingga didapatkan hasil.
2.1.3 Backward Chaining Backward Chaining menggunakan pendekatan goal-driven, dimulai dari kemungkinan apa yang diinginkan terjadi (hipotesis), kemudian mengecek pada sebab-sebab yang mendukung (ataupun kontradiktif) dari kemungkinan tersebut. Proses system yang dapat dicari dengan backward chaining sebagai berikut :
13
1.
Sistem yang dipresentasikan dengan satu atau beberapa kondisi.
2.
Untuk setiap konklusi, sistem mencari rule-rule dalam knowledge base untuk rule-rule yang berkorespondensi dengan konklusi pada bagian THEN.
3.
Setiap konklusi dihasilkan dari kondisi-kondisi yang terdapat pada bagian IF. Selanjutnya kondisi-kondisi tersebut menjadi konklusi baru yang dimasukkan ke stack di atas konklusi yang sudah ada.
4.
Setiap konklusi yang ditambahkan ke sistem akan diproses. Jika ditemui suatu konklusi, sistem akan kembali ke langkah 2 dan mencari rule-rule dalam knowledge base kembali.
Jika tidak ada konklusi baru, sesi ini
berhenti. 2.2
WAP WAP (Wireless Aplication Protocol) adalah suatu protocol aplikasi
yang memungkinkan Internet dapat diakses oleh ponsel dan perangkat wireless lainya. WAP membawa informasi online melewati Internet langsung menuju ponsel atau client WAP lainnya. Tujuan utamanya untuk membangun aplikasi yang dapat mengakses internet dari telepon genggam atau PDA. Dengan adanya WAP, berbagai informasi dapat diakses setiap saat hanya dengan menggunakan ponsel. (Sinergimuda, 2013) Ada tiga bagian utama dalam akses WAP yaitu : 1 Perangkat wireless yang mendukung WAP 2 . WAP Gateway sebagai perantara 3. Server sebagai sumber dokumen.
14
2.2.1 Versi WAP Ada beberapa versi WAP antara lain WAP 1.2.1 dan 2.0. WAP 1.2.1 hanya dapat menampilkan laman sederhana saja dibandingkan dengan WAP 2.0 yang mendukung bahasa xhtml dan gambar. WAP sendiri terdiri dari 4 layer, yaitu 1. Wireless Application Environment (WAE) Wireless Application Environment (WAE) digunakan untuk interaksi aplikasi WAP/Web dan peralatan wireless yang berisikan mikrobrowser WAP 2. Wireless Session Protocol (WSP) Wireless Session Protocol (WSP) memberikan aplikasi layer tingkat atas dari WAP dengan terdapat interface yang konsisten diantara dua sesi layanan, yang pertama adalah layanan mode-koneksi yang beroperasi diatas layer transaksi dan yang kedua adalah layanan tanpa koneksi yang beroperasi pada layanan transport. 3. Wireless Transport Protocol (WTP), Wireless Transport Protocol didefinisikan sebagai protokol yang berorientasi pada transaksi yang ringan oleh karena itu sangat cocok sekali untuk diimplemantasikan dalam perangkat mobile dan beroperasi efisien pada jaringan wireless. 4. Wireless Data Protocol (WDP) Arsitektur Layer WAP memungkinkan service lain dan aplikasi untuk menggunakan WAP melalui sebuah interface.
15
2.2.2 Cara Kerja WAP Cara kerja WAP hampir mirip dengan cara kerja internet saat ini. Dibutuhkan WAP gateway untuk menjembatani ponsel dengan internet dalam mengirim dan menerima data. Sama halnya dengan pengguna PC yang membutuhkan ISP (Internet Service Provider) sebagai gateway dalam menjembatani PC dengan internet. Syarat lainnya yang harus dipenuhi adalah ponsel yang digunakan harus WAP enabled, yaitu sudah dilengkapi dengan teknologi WAP yang digunakan untuk mengakses internet. Terdapat tiga bagian utama dalam akses WAP, yaitu perangkat wireless yang mendukung WAP, WAP gateway sebagai perantara, dan web server sebagai sumber dokumen. Dokumen yang berada dalam web server dapat berupa dokumen HTML maupun WML. Dokumen WML khusus ditampilkan melalui browser dari perangkat WAP. Sedangkan dokumen HTML yang seharusnya ditampilkan melalui browser, sebelum dibaca melalui browser WAP diterjemahkan lebih dahulu oleh gateway agar dapat menyesuaikan dengan perangkat WAP. Jika seorang pengguna ponsel menginginkan melihat suatu halaman web dengan format HTML, gateway akan menerjemahkan halaman tersebut ke dalam format WML. Namun, meskipun dokumen HTML dapat saja diakses oleh ponsel, dokumen WML lebih ditujukan untuk layar ponsel yang kecil.
16
2.2.3 Model Pemrograman WAP Model pemrograman WAP terdiri atas tiga bagian, yaitu WAP Client yang mengirim permintaan informasi, gateway sebagai penerjemah antara WAP dan HTTP, serta server yang memproses permintaan dari gateway untuk kemudian menjawabnya. Jawaban yang merupakan proses dari CGI script ini akan dikirim ke klain melalui gateway sebagai perantara. Hasil konversi yang dilakukan oleh WAP Gateway mampu memperkecil ukuran dari informasi yang akan dikirimkan ke klien. 2.2.4 Contoh Penggunaan WAP Contoh Penggunaan WAP antara lain : 1.
Informasi jadwal keberangkatan penerbangan
2.
Informasi Sistem Pakar
3.
Pendaftaran keberangkatan pesawat
4.
Informasi lalu lintas
5.
Daftar informasi kondisi cuaca
6.
Transaksi pembelian tiket
7.
Mencari informasi nomor telepon atau alamat
2.2.5 Keuntungan WAP Keuntungan WAP antara lain : 1. Tidak adanya kepemilikan metode dalam mengakses Internet dengan standar WAP baik pada isi maupun layanan.
17
2. Network yang independent karena WAP bekerja pada seluruh jaringan seluler yang ada, seperti CDPD, CDMA, GSM, PDC, PHS, TDMA, FLEX, ReFLEX, Iden, TETRA, DECT, Data TAC, Mebitex, dan jaringan selular masa depan yang saat ini sedang dikembangkan seperti GPRS dan 3G. 3. Metode WAP telah diadopsi oleh hamper 95% produsen telepon seluler di dunia dalam memanfaatkan wireless internet access dan sedang diimplementasikan pada semua frekuensi. 4. WAP suatu standar protocol dan aplikasinya, yakni WAP browser yang dapat digunakan pada seluruh sistem operasi terkenal termasuk Palm OS, EPOC, Windows SE, FLEXOS, OS/9, Java OS, dan sebagainya. 5. Dengan menggunakan teknologi GPRS, perhitungan akses dihitung berdasarkan jumlah bit yang terkoneksi yang harganya Rp. 20 per kilo byte.
2.2.6 Kelemahan WAP Kelemahan WAP antara lain : 1. Konfigurasi telepon selular untuk service WAP masih termasuk sulit 2. Jumlah telepon selular yang mendukung WAP masih terhitung sedikit. 3. Protokol lain seperti SIM Application Toolkit dan MexE (Mobile Station Application Execution Envirovment) secara luas didukung dan didesain untuk bersaing dengan WAP.
18
2.3
Ketidakpastian Dalam lingkup kenyataan yang ditemukan, biasanaya banyak masalah di
dunia ini tidak dapat dimodelkan secara lengkap dan konsisten. Suatu penalaran dimana adanya penambahan fakta baru mengakibatkan ketidak konsistenan, dengan ciri-ciri penalaran sebagai berikut (Sri Hartati dan Sari Iswanti, 2008): 1. adanya ketidakpastian. 2. adanya perubahan pada pengetahuan. 3. adanya penambahan fakta baru dapat mengubah konklusi yang sudah terbentuk.
2.3.1 Faktor Kepastian (Certainty Factor) Dalam menghadapi suatu masalah sering ditemukan jawaban yang tidak memiliki kepastian penuh. Ketidakpastian ini bisa berupa probabilitas atau kebolehjadian yang tergantung dari hasil suatu kejadian. Hasil yang tidak pasti disebabkan oleh dua factor yaitu aturan yang tidak pasti dan jawaban pengguna yang tidak pasti atas suatu pertanyaan yang diajukan oleh sistem. Ada
tiga penyebab ketidakpastian aturan yaitu
aturan tunggal,
penyelesaian konflik dan ketidakcocokan (incompatibility) antar konskuen dalam aturan. Aturan tunggal yang dapat menyebabkan ketidakpastian dipengaruhi oleh tiga hal, yaitu kesalahan, probabilitas dan kombinasi gejala (evidence). Kesalahan dapat terjadi karena (Kusrini, 2006) adalah sebagai berikut : 1. ambiguitas, sesuatu didefinisikan dengan lebih dari satu cara. 2. ketidaklengkapan data
19
3. kesalahan informasi 4. ketidakpercayaan terhadap suatu alat 5. adanya bias Probabilitas disebabkan ketidakmampuan seorang pakar merumuskan suatu aturan secara pasti. Misalnya jika seseorang mengalami sakit kepala, demam dan bersin-bersin ada kemungkinan orang tersebut terserang penyakit flu, tetapi bukan berarti apabila seseorang mengalami gejala tersebut pasti terserang penyakit flu. Certainty Factor (CF) menujukkan ukuran kepastian terhadap suatu fakta atau aturan. Notasi Faktor Kepastian (Sri Kusumadewi, 2003)
2.3.1.1 Kelebihan dan Kekurangan Metode Certainty Factors Kelebihan metode Certainty Factors : 1. Metode ini cocok dipakai dalam sistem pakar untuk mengukur sesuatu apakah pasti atau tidak pasti dalam mendiagnosa penyakit sebagai salah satu contohnya. 2. Perhitungan dengan menggunakan metode ini dalam sekali hitung hanya dapat mengolah dua data saja sehingga keakuratan data dapat terjaga. Kekurangan metode Certainty Factors : 1. Ide umum dari pemodelan ketidakpastian manusia dengan menggunakan numerik metode certainty factors biasanya diperdebatkan. Sebagian orang akan membantah pendapat bahwa formula untuk metode certainty factors diatas memiliki sedikit kebenaran.
20
2. Metode ini hanya dapat mengolah ketidakpastian atau kepastian hanya dua data saja. Perlu dilakukan beberapa kali pengolahan data untuk data yang lebih dari dua buah. 3.
Nilai CF yang diberikan bersifat subyektif karena penilaian setiap pakar bisa saja berbeda-beda tergantung pengetahuan dan pengalaman pakar.
2.4
Penyakit Kakao Kakao (Theobroma cacao) adalah tanaman bawah hutan yang berasal dari
hutan hujan tropika Amerika Selatan. Sebagai tanggapan terhadap perubahan musim. Perkebunan kakao di Indonesia mengalami perkembangan pesat dalam kurun waktu 20 tahun terakhir dan pada tahun 2007 areal perkebunan kakao di Indonesia tercatat seluas 992.448 ha. Perkebunan kakao tersebut sebagian besar (89,45%) dikelola oleh rakyat dan selebihnya (5,04%) perkebunan besar negara serta (5,51%) perkebunan besar swasta. Dari segi kualitas, kakao Indonesia tidak kalah dengan kakao dunia di mana bila dilakukan fermentasi dengan baik dapat mencapai cita rasa setara dengan kakao berasal dari Ghana dan keunggulan kakao Indonesia tidak mudah meleleh sehingga cocok bila dipakai untuk blending (Darwis, 2007). Permintaan akan produk-produk organik merupakan peluang dunia usaha baru, baik untuk tujuan ekspor maupun kebutuhan domestik. Beberapa Negara berkembangpun mulai memanfaatkan peluang pasar ekspor produk organik ini terhadap negara maju, diantaranya buah-buahan daerah tropik untuk industri makanan bayi ke Eropa, herbas Zimbabwe ke Afrika Selatan, kapas Afrika ke Uni
21
Eropa dan teh Cina ke Belanda serta kentang ke Jepang. Umumnya, ekspor produk organic biasanya dijual 20% lebih tinggi dari produk pertanian nonorganik. Keuntungan pokok pertanian organik sangat bervariasi, dalam beberapa kajian ekonomi menyatakan bahwa pertanian organik memiliki akses nyata terhadap prospek jangka panjang. Beberapa studi menunjukkan bahwa pertanian organik berpengaruh sangat nyata terhadap jumlah tenaga kerja dibandingkan dengan pertanian non-organik. Terutama pada sistem pertanian organik melalui diversifikasi tanaman, perbedaan pola tanam dan jadwal tanam dapat mendistribusikan
kebutuhan tenaga
kerja berdasarkan waktunya (Tino,
2006). Sebelum tahun 2004 masyarakat Gampong Seureuke masih mengelola perkebunan kakao secara konvensional (anorganik). Setelah terjadinya tsunami di Aceh pada tahun 2004 banyak berdatangan berbagai organisasi baik dalam maupun luar negeri yang peduli terhadap kondisi Aceh. Pada tahun 2006, Lembaga Swadaya Masyarakat dari Jerman (GTZ Economic Recovery and Microfinance (GTZ-EFMR) datang di Aceh Utara. Mereka difasilitasi oleh BRR Aceh untuk melakukan kerjasama dengan Dinas Perkebunan dan Kehutanan Aceh Utara untuk membina masyarakat petani kakao anorganik menuju ke pengelolaan perkebunan kakao secara organik. Hasilnya, Gampong Seureuke (328 Ha) Kecamatan Langkahan Kabupaten Aceh Utara pada tahun 2008 telah mendapatkan sertifikat pertanian organik produksi kakao dari Institute for Marketecology (IMO) Jerman.
22
Luas areal perkebunan kakao di Gampong Seureuke merupakan yang terluas di Aceh Utara yaitu 753 ha dalam satu hamparan (Anonimus, 2009). Berdasarkan uraian tersebut maka penulis melihat perlunya penelitian tentang perkebunan kakao organik di daerah Seureuke Aceh Utara yang mempunyai potensi cukup besar dalam melakukan pertanian secara organik. Adapun penyakit kakao yang di teliti antara lain sebagai berikut : 5. Penyakit Busuk Buah : Penyakit busuk buah adalah karena adanya jamur Phytophthora palmivora. Penyakit ini ditandai dengan adanya bercak coklat kehitaman dengan batas yang tegas, serangan biasanya dimulai dari ujung atau pangkal buah, perkembangan bercak coklat cukup cepat sehingga dalam waktu beberapa hari seluruh permukaan buah menjadi busuk, basah, dan berwarna coklat kehitaman. Pada kondisi lembab di permukaan buah akan muncul serbuk berwarna putih. Serbuk ini adalah spora Phytophthora palmivora yang sering kali bercampur dengan jamur sekunder (jamur lain). (Bangkittani.2012) 6. Penyakit Kanker Batang : Penyakit kanker batang adalah cendawan Phytophthora palmivora dan sering terjadi pada saat peralihan musim kemarau ke musim hujan. Gejala awal berupa bercak kecil pada cabang, kemudian melebar dan basah karena mengeluarkan blendok/lendir. Kemudian cendawan masuk ke batang serta berubah menjadi coklat tua dan pohon akan mati. (Diperta.Jabarprov)
23
7.
Penyakit Antraknose Colletotrichum : Penyakit antraknose colletotrichum adalah penyakit yang menyerang batang, polong dan tangkai daun, akibat serangan adalah perkecambahan biji terganggu, kadang-kadang bagian-bagian yang terserang tidak menunjukkan gejala. Gejala hanya timbul bila kondisi menguntungkan perkembangan jamur, tulang daun pada permukaan bawah tanaman terserang biasanya menebal dengan warna kecoklatan, pada batang akan timbul bintik-bintik hitam berupa duri-duri jamur yang menjadi ciri khasnya adalah jamur penyebab penyakit antraknosa. (Repository.2011)
8. Penyakit Vascular Streak Dieback : Penyakit Vascular Streak Dieback adalah menginfeksi pucuk dan cabang kakao, tetapi gejala hanya terlihat pada daun yang tampak klorotik dan dapat berkembang pada gejala khas berupa belang hijau dengan latar belakang kuning. Pada tanaman yang sudah tua, gejala pada daun sering ditemukan pada bagian tengah cabang, sedangkan pada tanaman muda gejala dapat terjadi pada daun mana saja. Selain gejala tersebut di atas, terjadi pula perubahan warna jaringan vaskuler pada scars daun segar yang jatuh, pembenkakan lentisel pada kulit dalam daerah daun yang jatuh, serta sprouting tunas aksilar. Nekrosis antara tulang daun terminar tampak menyerupai gejala kekurangan kalsium. Selain itu garis-garis coklat terlihat pada cabang yang terinfeksi, bila cabang ini dibelah secara longitudinal. (Peipfi.2005)
24
9. Penyakit Jamur Upas : Penyakit Jamur Upas adalah Jenis jamur ini merupakan penyakit utama yang menyerang tanaman kakao dan dialami hampir oleh semua petani kakao. Penyebab utama penyakit ini adalah kebersihan kebun yang kurang serta minimnya pemangkasan. Inspeksi pertama kali terjadi pada sisi bagian bawah cabang dan ranting, jamur mula-mula membentuk miselium tipis mengkilat seperti sutera atau perak, sangat mirip dengan sarang laba-laba. Pada fase ini jamur belum masuk ke dalam jaringan kulit, jamur kemudian membentuk kerak yang berwarna merah jambu seperti warna ikan salem, kerak tersebut terdiri atas lapisan basidia, kulit cabang dibawah kerak menjadi busuk, jamur akan berkembang terus dan akan membentuk piknidia yang berwarna merah tua dan biasanya terdapat pada sisi yang lebih kering, Pada bagian ujung dari cabang yang sakit, daun-daun layu mendadak dan banyak yang tetap melekat pada cabang, meskipun sudah kering. (Cacaoorganicfairtrade.2011) 6.
Penyakit Akar : Penyakit Akar adalah ada tiga macan jenis penyakit akar diantaranya : penyakit akar merah, penyakit akar coklat dan penyakit akar putih. Gejala diatas tanah dari ketiga jenis penyakit akar ini adalah sama. Mula-mula daun menguning, layu dan akhirnya gugur, kemudian diikuti oleh kematian tanaman, untuk mengetahui patogennya dengan tepat harus melalui pemeriksaan akar. Penyakit akar merah disebabkan oleh jamur Ganoderma Pseudoforeum (Wakef) Ov. et Stein. Penularannya dengan kontak akar sakit
25
dengan tanaman yang sehat, Penyakit akar coklat disebabkan oleh jamur Phellinus Noxius Corner. Penularannya dengan kontak akar sakit dengan tanaman yang sehat akan tetapi sangat lambat. penyakit akat putih disebabkan oleh jamur Fomes Lignosus Kloffzch. Penularannya dengan perantara. (Cacaoorganicfairtrade.2011) 7.
Penyakit Kelayuan Pentil : Penyakit Kelayuan Pentil adalah Penyakit layu (wilt disease) pada tanaman dapat disebabkan oleh faktor biotik yaitu bakteri sehingga disebut layu bakteri (Pseudomonas solanacearum) atau oleh jamur/cendawan yang disebut penyakit layu Fusarium (Fusarium oxysporum). Selain karena penyakit biotik, kelayuan pada tanaman juga dapat disebabkan karena faktor abiotik (kekurangan air). Pengenalan gejala kelayuan pada tanaman dan ciriciri khususnya harus diketahui para petani. (vedca.2012)
2.5
Entity Relationship Diagram ( ERD ) Entity Relationship Diagram (ERD) adalah model konseptual
yang
mendeskripsikan hubungan antara penyimpanan data atau file data. Simbol-simbol yang digunakan dalam ERD yaitu : 1. Entity Suatu obyek yang dapat didefinisikan dalam lingkungan pemakai dalam konteks sistem yang telah dibuat. Entity digambarkan persegi empat.
26
2. Atribut Elemen-elemen
yang
ada
dalam
entity
dan
fungsi.
Atribut
mendeskripsikan karakter entity. Atribut digambarkan dengan symbol elips. 3. Hubungan Entity dapat berhubungan satu sama lain. Hubungan ini dinamakan relationship (relasi). Sebagaimana halnya entity maka dalam hubungannya harus dibedakan antara hubugan atau bentuk hubungan antar entity dengan isi dari hubungan itu sendiri. Hubungan digambarkan dengan symbol ketupat. 4. Garis Digunakan untuk menghubungkan entity dengan entity manapun entity dengan atribut.
2.6
Data Flow Diagram ( DFD ) DFD adalah suatu model logika data atau proses yang dibuat untuk
menggambarkan dari mana asal data dan kemana tujuan data yang keluar dari sistem, dimana data disimpan, proses apa yang menghasilkan data tersebut dan interaksi antara data yang tersimpan dan proses yang dikenakan pada data tersebut. DFD sering digunakan untuk menggambarkan suatu sistem yang telah ada atau
sistem
baru
yang
akan
dikembangkan
secara
logika
tanpa
mempertimbangkan lingkungan fisik dimana data tersebut mengalir atau dimana data tersebut akan disimpan.
27
DFD merupakan alat yang digunakan pada metodologi pengembangan sistem yang terstruktur. Kelebihan utama pendekatan aliran data, yaitu : 1. Kebebasan dari menjalankan implementasi teknis sistem. 2. Pemahaman lebih jauh mengenai keterkaitan satu sama lain dalam sistem dan subsistem. 3. Mengkomunikasikan pengetahuan sistem yang ada dengan pengguna melalui diagram aliran data. 4. Menganalisis sistem yang diajukan untuk menentukan apakah data-data dan proses yang diperlukan sudah ditetapkan. Disamping itu terdapat kelebihan tambahan, yaitu 1. Dapat digunakan sebagai latihan yang bermanfaat bagi penganalisis, sehingga bisa memahami dengan lebih baik keterkaitan satu sama lain dalam sistem dan subsistem. 2. Membedakan sistem dari lingkungannya dengan menempatkan batasbatasnya. 3. Dapat digunakan sebagai suatu perangkat untuk berinteraksi dengan pengguna. 4. Memungkinkan penganalisis
menggambarkan
setiap
komponen
yang
digunakan dalam diagram. DFD terdiri dari context diagram dan diagram rinci (DFD Levelled). Context diagram berfungsi memetakan model lingkungan (menggambarkan hubungan
antara
entitas
luar,
masukan
dan
keluaran
sistem),
yang
direpresentasikan dengan lingkaran tunggal yang mewakili keseluruhan sistem.
28
DFD levelled menggambarkan sistem sebagai jaringan kerja antara fungsi yang berhubungan satu sama lain dengan aliran dan penyimpanan data, model ini hanya memodelkan sistem dari sudut pandang fungsi. Dalam DFD levelled akan terjadi penurunan level dimana dalam penurunan level yang lebih rendah harus mampu merepresentasikan proses tersebut ke dalam spesifikasi proses yang jelas. Jadi dalam DFD levelled bisa dimulai dari DFD level 0 kemudian turun ke DFD level 1 dan seterusnya. Setiap penurunan hanya dilakukan bila perlu. Aliran data yang masuk dan keluar pada suatu proses di level x harus berhubungan dengan aliran data yang masuk dan keluar pada level x+1 yang mendefinisikan proses pada level x tersebut. Proses yang tidak dapat diturunkan/dirinci lagi dikatakan primitif secara fungsional dan disebut sebagai proses primitif. 2.6.1 Flowchart Flowchart adalah representasi grafik dari langkah-langkah yang harus diikuti dalam menyelesaikan suatu permasalahan yang terdiri atas sekumpulan simbol, dimana masing-masing simbol merepresentasikan suatu kegiatan tertentu. Flowchart diawali dengan penerimaan input, pemrosesan input, dan diakhiri dengan penampilan output. System flowchart dapat didefinisikan sebagai bagan yang menunjukkan arus pekerjaan secara keseluruhan dari sistem. Bagan ini menjelaskan urut-urutan dari prosedur-prosedur yang ada di dalam sistem. Bagan alir sistem menunjukkan apa yang dikerjakan di sistem. (zonapanda.2013)
29
2.6.1.1 Program Flowchart Bagan alir program
(program flowchart)
merupakan bagan yang
menjelaskan secara rinci langkah-langkah dari proses program. Bagan alir program dibuat dari derivikasi bagan alir sistem. Bagan alir program dapat terdiri dari dua macam, yaitu bagan alir logika program (program logic flowchart) dan bagan alir program komputer terinci (detailed computer program flowchart). Bagan alir logika program digunakan untuk menggambarkan tiap-tiap langkah di dalam program komputer secara logika. Bagan alat- logika program ini dipersiapkan oleh analis sistem. Gambar berikut menunjukkan bagan alir logika program. Bagan alir program komputer terinci (detailed computer program flowchart) digunakan untuk menggambarkan instruksi-instruksi program komputer secara terinci. Bagan alir ini dipersiapkan oleh pemrogram.
2.6.1.2 Jenis jenis Flowchart Ada beberapa jenis flowchart diantaranya: 1. Bagan alir sistem (systems flowchart). 2. Bagan alir dokumen (document flowchart). 3. Bagan alir skematik (schematic flowchart). 4. Bagan alir program (program flowchart). 5. Bagan alir proses (process flowchart).
30
2.7
MySQL
MySQL (My Structure Query Language) adalah sebuah perangkat lunak sistem manajemen basis data SQL atau DBMS (Database Management System). Dari sekian banyak DBMS, seperti Oracle, MS SQL, Postagre SQL, dan lain-lain, MySQL merupakan DBMS yang multihread, multi-user yang bersifat gratis di bawah lisensi GNU General Public License (GPL). Tidak seperti Apache yang merupakan perangkat lunak yang dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing. MySQL dimiliki dan disponsori oleh sebuah perusahaan Swedia, yaitu MySQL AB. MySQL AB memegang hak cipta kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larson, dan Michael Monty Widenius. Seperti yang telah disebutkan sebelumnya, MySQL bersifat gratis atau open source sehingga kita bisa menggunakannya secara gratis. MySQL merupakan database server yang mampu untuk memanajemen database dengan baik. MySQL dijadikan sebagai sebuah database yang paling banyak digunakan selain database yang bersifat shareware seperti Ms Access, penggunaan MySQL biasanya dipadukan dengan menggunakan program aplikasi PHP, karena dengan menggunakan kedua program tersebut di atas telah terbukti akan kehandalan dalam menangani permintaan data. Kemampuan lain yang dimiliki MySQL adalah mampu mendukung Relasional Database Manajemen Sistem (RDBMS), sehingga dengan kemampuan ini MySQL akan mampu menangani data-data berukuran sangat besar hingga Giga Byte.
31
MySQL merupakan sebuah bentuk database yang berjalan sebagai server, artinya peletakan database tersebut tidak harus dalam satu mesin dengan aplikasi yang digunakan, sehingga dapat meletakan sebuah database pada sebuah mesin khusus dan dapat diletakan pada tempat yang jauh dari komputer pengaksesnya (Nugroho, 2004). Beberapa kelebihan MySQL, antara lain: 1. MySQL dapat berjalan dengan stabil pada berbagai sistem operasi, seperti Windows, Linux, FreeBSD, Mac OS X Server, Solaris, dan masih banyak lagi. 2. Bersifat Open Source, MySQL didistribusikan secara open source (gratis), di bawah lisensi GNU General Public License (GPL). 3. Bersifat Multi-user, MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah. 4. MySQL memiliki kecepatan yang baik dalam menangani query (perintah SQL). Dengan kata lain, dapat memproses lebih banyak SQL per satuan waktu. 5. Dari segi security atau keamanan data, MySQL memiliki beberapa lapisan keamanan, seperti level subnet mask, host name, dan izin akses user dengan sistem perizinan yang mendetail serta password yang terenkripsi. 6. Selain bersifat fleksibel dengan berbagai pemrograman, MySQL juga memiliki interface (antarmuka) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
32
7. Dukungan banyak komunitas, biasanya tergabung dalam sebuah forum untuk saling berdiskusi membagi informasi tentang MySQL. Misalnya, di forum http://forums.mysql.com/. Adapun kekurangannya adalah sebagai berikut: 1. Untuk koneksi ke bahasa pemrograman visual seperti vb, delphi, dan foxpro, mysql kurang support, karena koneksi ini menyebabkan field yang dibaca harus sesuai dengan koneksi dari program visual tersebut, dan ini yang menyebabkan mysql jarang dipakai dalam program visual. 2. Tidak cocok untuk menangani data dengan jumlah yang besar, baik untuk menyimpan data maupun untuk memproses data. 3. Memiliki keterbatasan kemampuan kinerja pada server ketika data yang disimpan telah melebihi batas maksimal kemampuan daya tampung server karena tidak menerapkan konsep Technology Cluster Server. 2.8
Apache Webserver Web Server Apache terdiri dari beberapa bagian, yaitu kode source apache
asli dengan beberapa patch dan beberapa executable tambahan. Sebaliknya kita gunakan web server apache yang tergolong stable version, yang mungkin akan lebih mudah untuk dikompilasi dan akan menghasilkan daemon yang cukup stabil. Ada berbagai macam sistem keamanan yang ditawarkan oleh apache webserver salah satunya adalah dengan menggunakan sistem ACL dimana fungsi ini digunakan untuk membatasi jumlah client yang terkoneksi ke service apache. Cara lain yang digunakan oleh apache adalah dengan menggunakan htpasswd
33
untuk melakukan autentifikasi terhadap user yang akan mengakses service apache. Apache adalah software yang menyimpan serta mendistribusikan data ke komputer lain melalui internet. Fungsi apache adalah sebagai webserver atau tempat menyimpan dokumen WEB yang digunakan oleh pihak lain yang terkoneksi dengannya. (Nugroho, 2004) 2.9
Bahasa Pemrograman Bahasa pemograman yang digunakan dalam pembuatan sistem pakar
antara lain PHP dan HTML berikut adalah penjelasan dari masing –masing bahasa pemograman: 2.9.1 PHP PHP (Hypertext Prepocessor) merupakan bahasa pemrograman berbasis web yang memiliki kemampuan untuk memproses dan mengolah data secara dinamis. PHP dapat dikatakan sebagai sebuah server-side embedded script language, artinya semua sintaks dan perintah program yang ditulis akan sepenuhnya dijalankan oleh server, tetapi dapat disertakan pada halaman HTML biasa. Pada umumnya, semua aplikasi yang dibangun menggunakan PHP akan memberikan hasil pada web browser, tetapi prosesnya secara keseluruhan dijalankan pada server. Pada prinsipnya, server akan bekerja apabila ada permintaan dari client. Dalam hal ini, client menggunakan kode-kode PHP akan mengirim permintaan ke server. Ketika menggunakan PHP sebagai server-side embedded script language, maka server akan melakukan beberapa hal sebagai berikut:
34
1. Membaca permintaan dengan skrip PHP berasal dari browser. 2. Mencari halaman atau page di server (server pages). 3. Melakukan processing melalui instruksi yang diberikan oleh PHP untuk melakukan modifikasi pada halaman atau page. 4. Mengirim kembali halaman tersebut kepada client melalui internet dan intranet yang merupakan proses echo atau print. PHP mempunyai beberapa kemampuan yang merupakan kelebihannya. Kemampuan tersebut antara lain: 1. Cara koneksi dan query database yang sederhana. 2. Dapat bekerja pada sistem operasi berbasis Windows, Linux, Mac OS, dan kebanyakan varian UNIX. 3. Biaya yang dibutuhkan untuk menggunakan PHP tidak mahal, atau bahkan gratis. 4. Mudah digunakan karena memiliki fitur dan fungsi khusus untuk membuat web dinamis. Bahasa pemograman PHP dirancang untuk dapat dimasukkan dalam HTML (embedded script). 5. Security system yang cukup tinggi. 6. Waktu eksekusi yang lebih cepat dibandingkan dengan bahasa pemograman web lainnya berorientasi pada serverside scripting. 7. Akses ke sistem database yang lebih fleksibel dan mudah, seperti MySQL Selain memiliki berbagai keunggulan, PHP juga memiliki beberapa kekurangan, adapun kekurangannya adalah sebagai berikut:
35
1. Dari segi bahasa, PHP bukanlah bahasa yang cocok untuk pengembangan berskala besar. 2. Tidak
adanya
namespace.
Namespace
adalah
sebuah
cara
untuk
mengelompokkan fungsi atau nama variabel dalam susunan hierarki. 3. Tidak dapat membuat fungsi di dalam fungsi atau kelas di dalam kelas, semuanya hanya terbatas satu level. 4. Belum ada penanganan eksepsi (raise, catch, throw). 2.9.2 HTML HyperText Markup Language (HTML) adalah sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web, menampilkan berbagai informasi di dalam sebuah Penjelajah web Internet dan formating hypertext sederhana yang ditulis kedalam berkas format ASCII agar dapat menghasilkan tampilan wujud yang terintegerasi. Dengan kata lain, berkas yang dibuat dalam perangkat lunak pengolah kata dan disimpan kedalam format ASCII normal sehingga menjadi home page dengan perintah-perintah HTML. Bermula dari sebuah bahasa yang sebelumnya banyak digunakan di dunia penerbitan dan percetakan yang disebut dengan SGML (Standard Generalized Markup Language), HTML adalah sebuah standar yang digunakan secara luas untuk menampilkan halaman web. HTML saat ini merupakan standar Internet yang didefinisikan dan dikendalikan penggunaannya oleh World Wide Web Consortium (W3C). HTML dibuat oleh kolaborasi Caillau TIM dengan Berners-lee robert ketika mereka bekerja di CERN pada tahun 1989 (CERN adalah lembaga penelitian fisika energi tinggi di Jenewa).
36
HTML berupa kode-kode tag yang menginstruksikan penjelajah web untuk menghasilkan tampilan sesuai dengan yang diinginkan. Sebuah file yang merupakan file HTML dapat dibuka dengan menggunakan penjelajah web seperti Mozilla Firefox atau Microsoft Internet Explorer. HTML juga dapat dikenali oleh aplikasi pembuka surel ataupun dari PDA dan perangkat lunak lain yang memiliki kemampuan
browser.
Dengan
menggunakan
perintah-perintah
HTML
memungkinkan pengguna untuk melakukan tugas-tugas berikut: 1. Menentukan ukuran dan alur tulisan. 2. Mengintegerasikan gambar dengan tulisan. 3. Membuat Pranala. 4. Mengintegerasikan berkas suara dan rekaman gambar hidup. 5. Membuat form interaktif. HTML dokumen tersebut mirip dengan dokumen tulisan biasa, hanya dalam dokumen ini sebuah tulisan bisa memuat instruksi yang ditandai dengan kode atau lebih dikenal dengan TAG tertentu. Sebagai contoh jika ingin membuat tulisan ditampilkan menjadi tebal seperti: TAMPIL TEBAL, maka penulisannya dilakukan dengan cara: TAMPIL TEBAL. Tanda digunakan untuk mengaktifkan instruksi cetak tebal, diikuti oleh tulisan yang ingin ditebalkan, dan diakhiri dengan tanda untuk menonaktifkan cetak tebal tersebut. HTML lebih menekankan pada penggambaran komponen-komponen struktur dan formating di dalam halaman web daripada menentukan penampilannya. Sedangkan penjelajah web digunakan untuk menginterpretasikan susunan halaman ke gaya built-in penjelajah web dengan menggunakan jenis tulisan, tab,
37
warna, garis, dan perataan text yang dikehendaki ke komputer yang menampilkan halaman web. Salah satu hal Penting tentang eksistensi HTML adalah tersedianya Lingua franca (bahasa Komunikasi) antar komputer dengan kemampuan berbeda. Pengguna Macintosh tidak dapat melihat tampilan yang sama sebagaimana tampilan yang terlihat dalam PC berbasis Windows. Pengguna Microsoft Windows pun tidak akan dapat melihat tampilan yang sama sebagaimana tampilan yang
terlihat
pada
pengguna
yang
menggunakan
Produk-produk
Sun
Microsystems. namun demikian pengguna-pengguna tersebut dapat melihat semua halaman web yang telah diformat dan berisi Grafika. HTML memungkinkan kita untuk menyunting tampilan atau format berkas yang akan kita kirimkan melalui media. Beberapa hal yang dapat dilakukan dalam menentukan format berkas adalah : 1. Menampilkan suatu kelompok kata dalam beberapa ukuran yang dapat digunakan untuk judul, heading dan sebagainya. 2. Menampilkan tulisan dalam bentuk cetakan tebal. 3. Menampilkan sekelompok kata dalam bentuk miring. 4. Menampilkan naskah dalam bentuk huruf yang mirip dengan hasil ketikan mesin ketik. 5. Mengubah-ubah ukuran tulisan untuk suatu karakter tertentu. Secara garis besar, terdapat 4 jenis elemen dari HTML: 1. Structural. tanda yang menentukan level atau tingkatan dari sebuah tulisan (contoh,
Golf
akan memerintahkan browser untuk menampilkan "Golf" sebagai tulisan tebal besar yang menunjukkan sebagai Heading 1.
38
2. Presentational. tanda yang menentukan tampilan dari sebuah tulisan tidak peduli dengan level dari tulisan tersebut (contoh, boldface akan menampilkan bold. Tanda presentational saat ini sudah mulai digantikan oleh CSS dan tidak direkomendasikan untuk mengatur tampilan tulisan. 3. Hypertext. tanda yang menunjukkan pranala ke bagian dari dokumen tersebut atau pranala ke dokumen lain. Contoh
: (Wikipedia
menampilkan Wikipedia sebagai sebuah hyperlink ke URL tertentu). 4. Elemen widget yang membuat objek-objek lain seperti tombol (