Diajukan Untuk Memenuhi Salah Satu Syaratan Kelulusan Mata Kuliah Tugas Akhir
LEMBAR PENGESAHAN
PERANCANGAN APLIKASI SISTEM PAKAR TELEVISI BERWARNA DI BENGKEL ELEKTRONIKA SMK NEGERI 2 GARUT JURUSAN TEKNIK AUDIO VIDEO
Menyetujui:
Pembimbing Akademik I
Pembimbing Akademik II
WANDANI, 0706088 PERANCANGAN APLIKASI SISTEM PAKAR TELEVISI BERWARNA DI BENGKEL ELEKTRONIKA SMK NEGERI 2 GARUT JURUSAN TEKNIK AUDIO VIDEO Dibawah bimbingan Dini Destiani SF., Dra. M.T dan Ate Susanto, M.T 131 halaman+lii/71 gambar/30 tabel ABSTRAK Sistem pakar televisi berwarna dibuat dengan tujuan dapat memudahkan guru mata pelajaran reparasi televisi berwarna dalam membimbing siswa di bengkel elektronika dan memberikan kemudahan bagi siswa SMK Negeri 2 Garut Jurusan Audio Video untuk mendeteksi kerusakan televisi berwarna, berdasarakan jenis kerusakan dan menghasilkan solusi dan saran dengan waktu singkat. Jenis kerusakan pada televisi berwarna yang bisa dideteksi oleh sistem pakar ini meliputi kerusakan pada masalah suara, masalah pada gambar, masalah pada kontras warna, masalah pada tuner, masalah pada IC, masalah pada vertical/horizontal, masalah pada power supply. Perancangan aplikasi sistem pakar televisi berwarna ini mengacu pada metode pengembangan sistem pakar yang dimulai dari proses analisis, desain dan pengujian. Proses analisis sistem terdiri dari penilaian yang merupakan bagian dari current system, kelayakan dan justifikasi masalah, analisis kebutuhan, dan tujuan pengembangan sistem pakar. Tahap berikutnya adalah akuisisi pengetahuan yang berkaitan dengan pengetahuan tentang penelusuran masalah pada kerusakan televisi berwarna yang berdasarkan dari sumber pengetahuan dan proses cara kerja televisi berwarna, penyebab timbulnya masalah serta solusi yang direkomendasikan oleh sistem dari repersentasi pengetahuan. Tahap desain aplikasi terdiri dari tahapan proses pengembangan mesin inferensi, deskripsi alur program, perancangan basis data. Dalam mengimplementasikan aplikasi sistem pakar ini memakai microsoft office access yang digunakan untuk perancangan basis data dan visual basic 6.0 untuk merancang antarmuka. Tahap pengujian sistem dilakukan untuk menguji apakah sistem sudah sesuai dan memberikan solusi dari permasalahan yang timbul pada proses kerusakan televisi berwarna sebagaimana yang diharapkan serta menguji kinerja aplikasi. Pengujian tersebut dilakukan menggunakan pengujian black box baik untuk lingkungan administrator maupun lingkungan pengguna. Kata Kunci: sistem pakar, televisi berwarna, bengkel elektronika.
KATA PENGANTAR Assalamualaikum Wr, Wb. Puji dan syukur penulis panjatkan kehadirat Allah SWT atas limpahan Rahmat dan Karunia-Nya sehingga penulis dapat menyelesaikan laporan tugas akhir ini. Shalawat serta salam tidak lupa penulis curahkan kepada Nabi Muhammad SAW. Laporan ini disusun sebagai salah satu syarat kelulusan Mata Kuliah Tugas Akhir pada program strata-1 Jurusan Teknik Informatika Sekolah Tinggi Teknologi Garut (STTG). Adapun judul dari tugas akhir ini adalah: Perancangan Aplikasi Sistem Pakar Televisi Berwarna di Bengkel Elektronika SMK Negeri 2 Garut Jurusan Teknik Audio Video). Dalam penyusunan laporan tugas akhir ini penulis banyak sekali mendapatkan bantuan, dorongan, bimbingan dan petunjuk dari berbagai pihak, oleh karena itu rasa terima kasih dan penghargaan yang setinggi-tingginya penulis sampaikan kepada yang terhormat: 1. Ayahanda dan Ibunda tercinta serta sekeluarga, istriku tersayang yang telah memberikan doa dan dorongan baik secara moril, material maupun spiritual selama penyusunan laporan tugas akhir ini. 2. Bapak Prof. Dr. HM Ali Ramdhani, STP, M.T selaku Ketua Sekolah Tinggi Teknologgi Garut (STTG). 3. Ibu Dini Destiani SF, Dra., M.T selaku Dosen Pembimbing I dalam penyusunan laporan tugas akhir ini. 4. Bapak Ate Susanto, M.T selaku Dosen Pembimbing II dalam penyusunan laporan tugas akhir ini. 5. Bapak Eri Satria, M.Si. Selaku Ketua Jurusan Teknik Informatika Sekolah Tinggi Teknologi Garut (STTG). 6. Bapak Rinda Cahyana, M.T. Selaku Ketua Jurusan Teknik Informatika Sekolah Tinggi Teknologi Garut (STTG). 7. Bapak Kustiawan,S.Pd selaku pembimbing lapangan di SMK Negeri 2 Garut. 8. Seluruh Guru dan Staf yang bekerja di SMK Negeri 2 Garut. 9. Sahabat rekan-rekan teknik informatika angkatan 2007.
ii
10. Kakak angkatan teknik informatika angkatan 2005 dan 2006 yang telah memberikan dukungan. 11. Seluruh staf dosen civitas akademik di Sekolah Tinggi Teknologi Garut. Penulis menyadari bahwa dalam penyusunan laporan tugas akhir ini masih jauh dari kesempurnaan, oleh karena itu kritik dan saran yang membangun demi perbaikan dimasa yang akan datang selalu penulis menantikan. Akhirnya penulis berharap semoga laporan tugas akhir ini dapat bermanfaat bagi penulis khususnya dan bagi para pembaca umumnya. Amiin Wassalamualaikum Wr, Wb.
Penulis
iii
DAFTAR ISI
Halaman ABSTRAK .................................................................................................... i KATA PENGANTAR ................................................................................... ii DAFTAR ISI ................................................................................................. iv DAFTAR GAMBAR ..................................................................................... x DAFTAR TABEL .......................................................................................... xiii
BAB I PENDAHULUAN ............................................................................ 1 1.1 Latar Belakang ................................................................................. 1 1.2 Identifikasi Masalah ......................................................................... 4 1.3 Batasan Masalah .............................................................................. 4 1.4 Tujuan .............................................................................................. 5 1.5 Kerangka Pemikiran ......................................................................... 5 1.6 Metodologi Perancangan .................................................................. 6 1.6.1 Metode Pengumpulan Data ...................................................... 6 1.6.2 Metode Pengembangan Sistem Pakar ...................................... 6 1.7 Sistematika Penulisan ....................................................................... 9
BAB II LANDASAN TEORI ....................................................................... 10 2.1 Kecerdasan Buatan ........................................................................... 10 2.2 Sistem Pakar .................................................................................... 14 2.2.1 Pengertian Sistem Pakar .......................................................... 14 2.2.2 Tujuan Sistem Pakar ............................................................... 14 2.2.3 Ciri-ciri Sistem Pakar .............................................................. 15 2.2.4 Aplikasi Sistem Pakar ............................................................. 15 2.2.5 Bentuk Sistem Pakar ............................................................... 16 2.2.6 Perbandingan Sistem Pakar dengan Sistem Konvensional ...... 17 2.2.7 Perbandingan Sistem Pakar dengan Pakar .............................. 18 2.2.8 Manfaat Sistem Pakar ............................................................. 20 2.2.9 Keuntungan Sistem Pakar ....................................................... 21
iv
Halaman 2.2.10 Keterbatasan Sistem Pakar .................................................... 21 2.2.11 Modul Penyimpanan Sistem Pakar ........................................ 22 2.2.12 Stuktur Sistem Pakar ............................................................. 23 2.2.12.1 Basis Pengetahuan ................................................... 23 2.2.12.2 Mesin Inferensi ........................................................ 24 2.2.12.3 Papan Tulis .............................................................. 31 2.2.12.4 Antarmuka Pemakai ................................................ 31 2.2.12.5 Pasilitas Penjelasan .................................................. 32 2.2.12.6 Pasilitas Penjelas ..................................................... 32 2.2.13 Pembanggunan Sistem Pakar ................................................. 32 2.2.13.1 Pemilihan Masalah .................................................. 33 2.2.13.2 Rekayasa Pengetahuan (Knowledge Engineering) .... 34 2.2.13.3 Partisipan dalam Proses Pengembangan ................... 35 2.2.13.4 Akuisisi Pengetahuan .............................................. 35 2.2.14 Pengembangan Sistem Pakar ................................................. 37 2.2.15 Alasan Pengembangan Sistem Pakar ...................................... 39 2.2.16 Sistem Pakar Berbasis Aturan ................................................ 40 2.2.17 Arsitektur Sistem Pakar Berbasis Aturan ............................... 41 2.2.18 Contoh Sistem Pakar Berbasis Aturan .................................... 43 2.3 Basis Data ........................................................................................ 45 2.3.1 Definisi Basis Data ................................................................. 45 2.3.2 Pemodelan Data/ Entity Relationship Diagram (ERD) ............ 46 2.3.3 Kardinalitas Relasi .................................................................. 47 2.3.4 Normalisasi ............................................................................. 49 2.3.5 Diagram Alur Program ........................................................... 50 2.3.5.1 Flowmap ...................................................................... 50 2.3.5.2 Data Flow Diagram ..................................................... 52 2.4 Bahasa Pemograman ........................................................................ 55 2.4.1 Bahasa Pemrograman Microsoft Visual Basic 6.0..................... 55 2.4.1.1 Membuka Aplikasi Visual Basic 6.0 ............................ 55 2.4.1.2 Struktur Aplikasi Visual Basic 6.0 ............................... 56
Halaman 2.4.1.3 Lingkungan Visual Basic 6.0 ....................................... 57 2.4.2 Microsoft Office Access .......................................................... 58 2.5 Televisi Berwarna ............................................................................ 59 2.5.1 Pengertian Televisi Berwarna .................................................. 59 2.5.2 Bagian Penerima Televisi Berwarna ........................................ 60 2.5.2.1 Antena ......................................................................... 60 2.5.2.2 Tuner (penala) ............................................................. 61 2.5.2.3 AFT (Automatic Fine Tuning) ...................................... 61 2.5.2.4 Pengeras Suara ............................................................ 61 2.5.2.5 Bagian Suara (audio) ................................................... 62 2.5.2.6 Bagian Pengolah Gambar (video) ................................ 62 2.5.2.6.1 Penguat IF Video ........................................... 62 2.5.2.6.2 Detektor Video .............................................. 62 2.5.2.6.3 Penguat Video ............................................... 63 2.5.2.6.4 Processor Main Unit Utama IC STV 2286 .... 63
BAB III ANALISIS SISTEM ....................................................................... 64 3.1 Penilaian (Assessment) ..................................................................... 64 3.1.1 Current System di SMK Negeri 2 Garut ................................... 64 3.1.2 Kelayakan dan Justiffikasi Masalah .......................................... 65 3.1.3 Analisis Kebutuhan .................................................................. 65 3.1.3.1 Kebutuhan Hardware .................................................. 65 3.1.3.2 Kebutuhan Software ..................................................... 66 3.1.3.3 Kebutuhan Brainware .................................................. 67 3.1.4 Tujuan Perancangan Sistem Pakar ........................................... 68 3.2 Akuisisi Pengetahuan ....................................................................... 68 3.2.1 Sumber Pengetahuan ................................................................ 69 3.2.2 Proses Akuisisi Pengetahuan Cara Kerja Televisi Berwarna...... 70 3.2.3 Representasi Pengetahuan ......................................................... 72 3.2.3.1 Tabel Dasar ................................................................. 73 3.2.3.2 Tabel Keputusan .......................................................... 82
vi
Halaman 3.2.4 Pohon Keputusan ..................................................................... 87 3.2.5 Kaidah Produksi (Rule) ........................................................... 91
BAB IV DESAIN SISTEM PAKAR ............................................................. 100 4.1 Batasan Sistem Pakar ...................................................................... 100 4.2 Perancangan Mesin Inferensi ........................................................... 101 4.2.1 Pemilihan Teknik Inferensi ..................................................... 101 4.2.2 Pemilihan Teknik Penelusuran Data ........................................ 101 4.3 Deskripsi Alur Program ................................................................... 103 4.3.1 Flowmap ................................................................................. 103 4.3.2 Data Flow Diagram ................................................................. 104 4.3.2.1 Diagram Konteks ......................................................... 104 4.3.2.2 DFD Level 0 Sistem Pakar Kerusakan Pada Televisi Berwarna ................................................................................. 104 4.3.2.3 DFD Level 1 Proses Login ........................................... 105 4.3.2.4 DFD Level 1 Proses Diagnosis .................................... 105 4.3.2.5 DFD Level 1 Proses Pengetahuan ................................ 106 4.3.2.6 DFD Level 1 Proses Jenis Kerusakan............................ 106 4.3.2.7 D FD Level 1 Proses Solusi ......................................... 107 4.4 Perancangan Basis Data ................................................................... 107 4.4.1 ERD (Entity Relationship Diagram) ........................................ 108 4.4.2 Transformasi ERD kedalam Basisdata Fisik ............................ 108 4.4.2.1 Tabel-tabel Utama ....................................................... 108 4.4.2.2 Tabel-tabel Tambahan ................................................. 109 4.4.3 Perancangan Struktur File ........................................................ 110 4.5 Implementasi ................................................................................... 111 4.5.1 Struktur Menu ......................................................................... 111 4.5.2 Perancangan Antar Muka ........................................................ 112 4.5.2.1 Perancangan Antarmuka Form Login ........................... 112 4.5.2.2 Perancangan Antarmuka Form Buat Pakar Baru .......... 113 4.5.2.3 Perancangan Antarmuka Ganti Password Pakar ............ 113
vii
Halaman 4.5.2.4 Perancangan Antarmuka Form Hapus Pakar ................ 114 4.5.2.5 Perancangan Antarmuka Form Menu Utama ................ 115 4.5.2.6 Perancangan Antarmuka Form Basis Pengetahuan ....... 116 4.5.2.7 Perancangan Antarmuka Form Input Kerusakan .......... 117 4.5.2.8 Perancangan Antarmuka Form Iput Solusi ................... 118 4.5.2.9 Perancangan Antarmuka Form Pilih Kerusakan ........... 119 4.5.2.10 Perancangan Antarmuka Form Diagnosis Kerusakan . 120 4.5.2.11 Perancangan Antarmuka Form Hasil Diagnosis .......... 121 4.5.2.12 Perancangan Antarmuka Form Penanganan ................ 121 4.6 Pengujian Black Box Aplikasi Sistem Pakar .................................... 122 4.6.1 Pengujian pada Login ............................................................ 122 4.6.1.1 Antar Muka Tambah Admin Baru ............................. 123 4.6.1.2 Antar Muka Hapus Admin ......................................... 123 4.6.1.3 Antar Muka Ganti Password ...................................... 124 4.6.2 Pengujian pada Lingkungan Administrator ........................... 124 4.6.2.1 Antar Basis Pengetahuan ........................................... 125 4.6.2.2 Antar Muka Input Kerusakan ..................................... 126 4.6.2.1 Antar Muka Input Solusi ........................................... 126 4.6.3 Pengujian pada Lingkungan Pengguna .................................. 127 4.6.3.1 Antar Muka Pilih Kerusakan ..................................... 127 4.6.3.2 Antar Muka Diagnosis Kerusakan ............................. 128 4.6.3.3 Antar Muka Hasil Diagnosis ...................................... 128 4.6.3.4 Antar Muka Input Penanganan .................................. 129
BAB V KESIMPULAN DAN SARAN ......................................................... 130 5.1 Kesimpulan ..................................................................................... 130 5.2 Saran ............................................................................................... 130
viii
DAFTAR GAMBAR
Halaman Gambar 1.1 Kerangka pemikiran .................................................................... 5 Gambar 1.2 Tahap-tahap perancangan sistem pakar (Durkin, 1994) ............... 8 Gambar 2.1 Pohon kecerdasan buatan (Achmad B, 2006) .............................. 11 Gambar 2.2 Struktur sistem pakar (Turban, 1995) .......................................... 23 Gambar 2.3 Forward chaining ....................................................................... 27 Gambar 2.4 Backward chaining ..................................................................... 29 Gambar 2.5 Penyelesaian dengan forward chaining ....................................... 30 Gambar 2.6 Penyelesaian dengan backward chaining ..................................... 30 Gambar 2.7 Proses dalam rekayasa pengetahuan ............................................ 34 Gambar 2.8 Metode akuisisi pengetahuan ...................................................... 36 Gambar 2.9 Tahap-tahap perancangan sistem pakar (Durkin, 1994) ............... 37 Gambar 2.10 Model sistem produksi (Durkin, 1994) ...................................... 40 Gambar 2.11 Arsitektur sistem pakar berbasis aturan (Durkin, 1994) ............. 41 Gambar 2.12 Contoh relasi satu ke satu........................................................... 47 Gambar 2.13 Contoh relasi satu ke banyak ..................................................... 48 Gambar 2.14 Contoh relasi banyak ke banyak ................................................ 48 Gambar 2.15 Kemungkinan pada proses DFD, (Andri K, 2007) ..................... 53 Gambar 2.16 Kemungkinan penyimpanan data, (Andri K, 2007) .................... 54 Gambar 2.17 Tampilan saat memulai microsoft visual basic .......................... 56 Gambar 2.18 Lingkungan visual basic 6.0 ...................................................... 57 Gambar 2.19 Teleisi berwarna ........................................................................ 59 Gambar 2.20 Diagram blok penerima televisi berwarna ................................. 60 Gambar 2.21 Bagian blok tuner ...................................................................... 61 Gambar 2.22 IC STV2286 ............................................................................. 63 Gambar 3.1 Current system di SMK negeri 2 garut ......................................... 64 Gambar 3.2 Sumber pengetahuan televisi berwarna ....................................... 69 Gambar 3.3 Proses cara kerja televisi berwarna .............................................. 70 Gambar 3.4 Jenis kerusakan pada suara .......................................................... 87 Gambar 3.5 Jenis kerusakan pada gambar ...................................................... 87
Halaman Gambar 3.6 Jenis kerusakan pada kontras warna ............................................ 88 Gambar 3.7 Jenis kerusakan pada tuner .......................................................... 88 Gambar 3.8 Jenis kerusakan pada IC .............................................................. 89 Gambar 3.9 Jenis kerusakan pada vertikal/horizontal ...................................... 90 Gambar 3.10 Jenis kerusakan pada power supply ............................................ 90 Gambar 4.1 Penerapan inferensi perantaian maju (forward chaining) ............. 101 Gambar 4.2 Penelusuran kerusakan pada televisi bewarna .............................. 102 Gambar 4.3 Flowmap sistem pakar kerusakan pada televisi berwarna ............ 103 Gambar 4.4 Diagram konteks sistem pakar kerusakan televisi berwarna ......... 104 Gambar 4.5 DFD level 0 sistem pakar kerusakan pada televisi berwarna ........ 104 Gambar 4.6 DFD level 1 proses login ............................................................ 105 Gambar 4.7 DFD level 1 proses diagnosis ...................................................... 105 Gambar 4.8 DFD level 1 proses pengetahuan ................................................. 106 Gambar 4.9 DFD level 1 proses jenis kerusakan ............................................. 106 Gambar 4.10 DFD level 1 proses solusi ......................................................... 107 Gambar 4.11 ERD (Entity Relationship Diagram) .......................................... 108 Gambar 4.12 Relasi antar table ....................................................................... 109 Gambar 4.13 Struktur menu ........................................................................... 111 Gambar 4.14 Antarmuka form login ............................................................... 112 Gambar 4.15 Perancangan antarmuka form buat admin baru .......................... 113 Gambar 4.16 Perancangan antarmuka form ganti password admin .................. 113 Gambar 4.17 Perancangan antarmuka form hapus admin ............................... 114 Gambar 4.18 Perancangan antarmuka form menu utama ................................ 115 Gambar 4.19 Perancangan antarmuka form basis pengetahuan ....................... 116 Gambar 4.20 Perancangan antarmuka form input kerusakan ........................... 117 Gambar 4.21 Perancangan antarmuka form input solusi ................................. 118 Gambar 4.22 Perancangan antarmuka form pilih kerusakan ........................... 119 Gambar 4.23 Perancangan antarmuka form diagnosis kerusakan .................... 120 Gambar 4.24 Perancangan antarmuka form hasil diagnosis ............................. 121 Gambar 4.25 Perancangan antarmuka form penanganan ................................. 121 Gambar 4.26 Tampilan antarmuka login ........................................................ 122
xi
Halaman Gambar 4.27 Tampilan antarmuka tambah admin baru .................................. 123 Gambar 4.28 Tampilan database tambah admin baru ..................................... 123 Gambar 4.29 Tampilan antarmuka hapus admin ............................................ 123 Gambar 4.30 Tampilan antarmuka ganti password ......................................... 124 Gambar 4.31 Tampilan antarmuka menu utama ............................................. 124 Gambar 4.32 Antar muka basis pengetahuan .................................................. 125 Gambar 4.33 Antar muka input kerusakan ...................................................... 126 Gambar 4.34 Antar muka input solusi ............................................................ 126 Gambar 4.35 Antar muka pilih kerusakan ...................................................... 127 Gambar 4.36 Antar muka diagnosis kerusakan ............................................... 128 Gambar 4.37 Antar muka hasil diagnosis ....................................................... 128 Gambar 4.38 Antar muka penanganan ............................................................ 129
xii
DAFTAR TABEL
Halaman Tabel 2.1 Sistem pakar yang berdiri sendiri .................................................... 16 Tabel 2.2 Perbandingan sistem konvensional dengan sistem pakar ................. 17 Tabel 2.3 Perbandingan sistem pakar dengan pakar ........................................ 18 Tabel 2.4 Contoh aturan-aturan ...................................................................... 25 Tabel 2.5 Fakta baru ...................................................................................... 27 Tabel 2.6 Panduan untuk memilih metode inferensi ....................................... 31 Tabel 2.7 Notasi yang digunakan pada ERD .................................................. 47 Tabel 2.8 Simbol-simbol Flowchart dan Flowmap ......................................... 50 Tabel 2.9 Simbol-simbol pada DFD (Data Flow Diagram) ............................ 52 Tabel 3.1 Spesifikasi minimum pada komputer ............................................... 66 Tabel 3.2 Tabel Masalah ................................................................................ 73 Tabel 3.3 Tabel Penyebab .............................................................................. 73 Tabel 3.4 Tabel Solusi ................................................................................... 75 Tabel 3.5 Kaidah produksi ............................................................................. 91 Tabel 4.1 Kamus data tabel kerusakan ............................................................ 110 Tabel 4.2 Kamus data tabel penyebab ............................................................ 110 Tabel 4.3 Kamus data tabel solusi .................................................................. 110 Tabel 4.4 Kamus data tabel relasi ................................................................... 110 Tabel 4.5 Keterangan kontrol pada antarmuka login ....................................... 112 Tabel 4.6 Keterangan kontrol pada antarmuka form buat admin baru ............. 113 Tabel 4.7 Keterangan kontrol pada antarmuka form ganti password admin .... 113 Tabel 4.8 Keterangan kontrol pada antarmuka form hapus admin ................... 114 Tabel 4.9 Keterangan kontrol pada antarmuka form menu utama ................... 115 Tabel 4.10 Keterangan kontrol pada antarmuka form basis pengetahuan ........ 116 Tabel 4.11 Keterangan kontrol pada antarmuka form kerusakan ..................... 118 Tabel 4.12 Keterangan kontrol pada antarmuka form solusi ............................ 119 Tabel 4.13 Keterangan control pada antarmuka form pilih kerusakan ............. 120 Tabel 4.14 Keterangan control pada antarmuka form diagnosis kerusakan ..... 120
xiii
Halaman Tabel 4.15 Keterangan control pada antarmuka form hasil diagnosis .............. 121 Tabel 4.16 Keterangan control pada antarmuka form penanganan .................. 121
xiv
BAB I PENDAHULUAN 1.1 Latar Belakang Sistem pakar atau expert system adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti layaknya para pakar (expert). Sistem pakar yang baik dirancang agar dapat menyelesaikan suatu permasalahan tertentu dengan meniru kerja dari para pakar/ahli. Dengan perancangan sistem pakar, diharapkan bahwa orang yang tidak menggeluti dibidangnya (orang awam) dapat menyelesaikan masalah yang cukup rumit yang sebenarnya hanya dapat diselesaikan dengan bantuan para ahli. Bagi para ahli, sistem pakar ini juga akan membantu aktifitasnya sebagai asisten yang sangat berpengalaman. 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 aktifitas seperti penambahan pengetahuan, representasi pengetahuan, inferensi pengetahuan dan pengalihan pengetahuan ke pengguna. Pengetahuan yang disimpan ke komputer disebut sebagai basis pengetahuan. Sampai saat ini sudah ada beberapa hasil perkembangan sistem pakar dalam berbagai bidang sesuai dengan kepakaran seseorang misalnya bidang pendidikan, kedokteran maupun bidang yang menyangkut perbaikan peralatan elektronik khususnya televisi berwarna. Sekolah Menengah Kejuruan (SMK) Negeri 2 Garut merupakan sekolah yang menerapkan sistem manajeman mutu ISO 9001:2008 berusaha untuk menjadi pusat pendidikan dan pelatihan serta perancangan bidang keahlian teknologi menengah yang mampu bersaing di tingkat nasional dan global secara bertahap dan berkesinambungan untuk memenuhi kepuasan pelanggan dalam segala kegiatan senantiasa menerapkan budaya mutu. SMK Negeri 2 Garut beralamatkan di Jalan Suherman No.90, PO.Box 103, Kelurahan Jati, Kecamatan Tarogong Kaler Garut-Jawa Barat (44151) Telephone/Fax. 0262-233141/0262233141.
SMK Negeri 2 Garut memiliki 7 jurusan yaitu: (1) Teknik Gambar Bangunan, (2) Teknik Pemanfaatan Energi Listrik, (3) Teknik Audio Video, (4) Teknik Mekanik Otomotif, (5) Geologi Pertambangan, (6) Multimedia dan (7) Teknik Produksi dan Penyiaran Pertelevisian. Saat ini SMK Negeri 2 Garut memiliki sekitar 1932 siswa dari keseluruhan, diantanya (1) kelas X jumlah 711 siswa, (2) kelas XI jumlah 640 siswa, (3) kelas XII jumlah 581 siswa. Jurusan Teknik Audio Video terdiri dari kelas X AV-1 s/d AV-3, XI AV-1 s/d AV-3, dan XII AV-1 s/d AV-3. Sedangkan jumlah siswa dari Jurusan Teknik Audio Video terdiri dari 288 siswa dari rata-rata 3 kelas per-angkatan. Mata pelajaran memperbaiki penerima sistem televisi (reparasi televisi) diterapkan di kelas XI semester 4 dengan 1 orang guru mata pelajaran reparasi televisi berwarna dan 1 orang asisten bengkel, oleh karena itu siswa mengalami hambatan waktu untuk melakukan diagnosis kerusakan televisi berwana disaat siswa sedang praktek di bengkel elektronika. Dengan waktu praktek di bengkel yang tidak lama karena itu menjadi kesulitan untuk siswa SMK Negeri 2 Garut untuk melakukan diagnosis kerusakan televisi berwarna dengan cara manual. Oleh karena itu dengan jumlah siswa yang begitu banyak diperlukan sistem pakar yang mampu membantu tugas guru untuk melakukan diagnosis kerusakan televisi berwarna. SMK Negeri 2 Garut memiliki bengkel untuk praktek para siswa dimana bengkel tersebut berkapasitas 35 siswa dan ruang peralatan servis reparasi lengkap. Proses belajar di SMK Negeri 2 Garut tidak hanya dilakukan di kelas melainkan di bengkel, proses belajar mengajar yang diterapkan di Sekolah SMK Negeri 2 Garut adalah 60 % di kelas sedangkan 40% di bengkel. Di bengkel elektronika siswa jurusan audio video belajar mengenal komponen-komponen elektronik seperti IC, transistor, resistor, osilator, dioda dan memperbaiki barangbarang elektonik seperti televisi berwarna, radio tape, vcd, dll.
Televisi berwarna merupakan salah satu peralatan elektronik yang sering mengalami gangguan atau kerusakan sehingga dengan mengandalkan kemajuan di bidang teknologi dan informasi tersebut, kiranya perlu adanya pembuatan sebuah sistem pakar televisi berwarna dan memberikan bekal pengetahuan dan pembelajaran yang menyangkut kerusakan pada televisi berwarna dengan memanfaatkan komputer sebagai media pembelajaran. Pemilihan masalah menyangkut kerusakan-kerusakan pada televisi berwarna dijadikan sebagai sistem pakar adalah kenyataan bahwa kerusakankerusakan pada sebuah televisi berwarna sering kali menggangu pengguna televisi, sehingga perlu adanya solusi untuk menangani hal-hal kerusakan pada televisi berwarna tersebut melalui teknologi komputer yang didalamnya terdapat aplikasi yang dapat membantu memecahkan masalah kerusakan-kerusakan yang terjadi. Memperbaiki televisi hendaklah dilakukan dengan hati-hati dan teliti karena dapat berakibat fatal. Televisi adalah pesawat elektronik yang memilki tegangan listrik tinggi. Disamping itu, dari semua kerusakan belum tentu disebabkan oleh komponen yang rusak. Adakalanya rusak karena solderan timah yang kurang baik sehingga kaki-kaki komponen tidak tersambung sempurna ke PCB. Gejala dan penyebab kerusakan televisi bermacam-macam, gejala yang timbul dapat berupa mati total, tidak ada suara atau gambar yang dihasilkan jelek. Sementara itu, kerusakan televisi dapat pula disebabkan oleh komponen yang sudah dimakan atau hubungan antar komponen yang kurang sempurna. Berdasarkan latar belakang diatas, untuk penulisan tugas akhir ini penulis mengambil judul PERANCANGAN APLIKASI SISTEM PAKAR
TELEVISI BERWARNA DI BENGKEL ELEKTRONIKA SMK NEGERI 2 GARUT JURUSAN AUDIO VIDEO. Yang di dalam perancangan basis pengetahuannya didasarkan dari referensi buku, pengalaman pribadi dan pengetahuan para ahli. Diharapkan sistem pakar tersebut nantinya akan dapat membantu memudahkan para siswa maupun guru mata pelajaran reparasi televisi dalam memecahkan masalah kerusakan televisi berwarna.
1.2
Identifikasi Masalah Berdasarkan latar belakang diatas, maka dapat diidentifikasi masalah
tersebut sebagai berikut: 1. Keterbatasanya jumlah guru mata pelajaran reparasi televisi untuk membimbing memutuskan masalah pada kerusakan televisi berwarna, sedangkan jumlah siswa tidak sedikit. 2. Adanya keterbatasan ketersediaan maupun kesempatan seorang ahli atau pakar dalam bidang kerusakan televisi berwarna. 3. Untuk mendiagnosis kerusakan televisi berwarna dibutuhkan waktu lama. 4. Kebutuhan akan adanya aplikasi khususnya sistem pakar di bengkel elektronika SMK Negeri 2 Garut dalam bidang kerusakan televisi berwarna. 1.3 Batasan Masalah Berdasarkan identifikasi masalah tersebut, maka penulis membatasi materi pembahasan masalah tersebut sebagai berikut: 1. Sistem pakar ini dibuat untuk memenuhi kebutuhan di bengkel elektronika SMK Negeri 2 Garut. 2. Pengetahuan dalam sistem pakar ini digunakan khususnya tentang televisi berwarna berteknologi Cathode Ray Tube (CRT). 3. Sistem pakar ini mendeteksi kerusakan televisi berwarna hanya menyangkut kerusakan yang umum terjadi, diantaranya kerusakan pada bagian suara, gambar, warna, tuner, IC, Vertikal/Horizontal, power suplay. 4. Perancangan sistem pakar ini hanya dilakukan sampai pada tahap pengujian aplikasi sistem pakar. 5. Pengujian aplikasi dilakukan pada komputer stand alone. 6. Metodologi perancangan mengunakan Expert System Developmen Live Cycle (ESDLC), (Durkin, 1994). 7. Teknik inferensi yang digunakan dalam pembuatan aplikasi sistem pakar ini menggunakan metode inferensi perantaian maju (forward chaining). 8. Bahasa pemrograman yang digunakan adalah Visual Basic 6.0 dan untuk database-nya menggunakan Microsoft Access.
1.4
Tujuan Adapun tujuan dari pembuatan aplikasi sistem pakar ini adalah: 1. Untuk membantu para siswa dalam memutuskan masalah pada kerusakan televisi berwarna yang nantinya akan diperbaiki. 2. Memindahkan kepakaran bidang elektronika khususnya televisi berwarna kedalam sebuah program. 3. Untuk mendiagnosis kerusakan televisi berwarna dengan waktu singkat.
1.5
Kerangka Pemikiran Dalam melakukan suatu perancangan sistem pakar dengan metodologi
tahapan perancangan sistem pakar, maka haruslah ada suatu kerangka berpikir agar proses perancangan sistem pakar ini lebih terstruktur. Berikut adalah gambar kerangka pemikiran tersebut:
Persetujuan proyek sistem pakar televisi berwarna Mengumpulkan pengetahuan tentang televisi berwarna
1.6
Metodologi Penelitian Metodologi penelitian yang digunakan terdiri dari dua sub bahasan yaitu
metode pengumpulan data dan metode perancangan sistem pakar. 1.6.1 Metode Pengumpulan Data Dalam melakukan tugas ini, penulis menggunakan metodologi
pengumpulan data sebagai berikut: 1. Pengumpulan data primer, yaitu pengumpulan data yang dilakukan dengan mewawancarai ahli atau pakar yang mengetahui serta berpengalaman mengenai kerusakan pada televisi berwarna. 2. Pengumpulan data sekunder, yaitu pengumpulan data yang dilakukan dengan kajian pustaka melalui buku, literature, journal, maupun informasi dari internet yang dianggap sesuai terhadap materi pembuatan laporan tugas maupun programnya. 1.6.2 Metode Perancangan Sistem Pakar Adapun metode perancangan sistem pakar yang akan digunakan adalah metode perancangan dan pemodelan dengan menggunakan Expert System Development Life Cycle (ESDLC). Metode ini merupakan salah satu model yang menggambarkan siklus hidup perancangan perangkat lunak system pakar. Berikut adalah tahapan perancangan sistem pakar (Durkin, 1994): 1. Penilaian (Assessment) Merupakan proses untuk menentukan kelayakan dan justifikasi atas permasalahan yang akan diambil. Setelah proyek perancangan dianggap layak dan sesuai dengan tujuan, maka selanjutnya ditentukan fitur-fitur penting dan ruang lingkup proyek serta sumber daya yang dibutuhkan. Sumber pengetahuan yang diperlukan harus diidentifikasi, selanjutnya dilakukan penentuan persyaratan-persyaratan proyek harus ditetapkan.
2. Akuisisi Pengetahuan Merupakan proses untuk mendapatkan pengetahuan tentang permasalahan yang akan dibahas dan digunakan sebagai panduan dalam upaya perancangan. Pengetahuan ini digunakan untuk memberikan informasi tentang permasalahan yang menjadi bahan acuan dalam mendesain sistem pakar. 3. Desain Berdasarkan pengetahuan yang telah didapatkan dalam proses akuisisi pengetahuan, maka desain antarmuka maupun teknik penyelesaian masalah dapat diimplementasikan kedalam sistem pakar. Dalam tahap desain ini, seluruh struktur dan organisasi dari pengetahuan harus ditetapkan dan dapat direpresentasikan kedalam sistem. 4. Pengujian Tahap ini dimaksudkan untuk menguji apakah sistem pakar yang dibangun telah sesuai dengan tujuan perancangan maupun kesesuaian kinerja sistem dengan metode penyelesaian masalah yang bersumber dari pengetahuan yang sudah didapatkan. Apabila dalam tahap ini terdapat bagian yang harus dievaluasi maupun dimodifikasi maka hal tersebut harus segera dilakukan agar sistem pakar dapat berfungsi sebagaimana tujuan perancangannya. 5. Dokumentasi Tahap dokumentasi diperlukan untuk mengkompilasi semua informasi proyek sistem pakar ke dalam bentuk dokumen yang dapat memenuhi persyaratan yang dibutuhkan pengguna dan pengembang sistem. Dokumentasi tersebut menjelaskan tentang bagaimana mengoperasikan sistem, instalasi, kebutuhan minimum sistem maupun bantuan yang mungkin diperlukan oleh pengguna maupun pengembang sistem pakar. Selain hal tersebut, maka secara khusus harus juga mendokumentasikan kamus data pengetahuan maupun prosedur pemecahan masalah dalam mesin inferensinya.
6. Pemeliharaan Setelah sistem pakar yang dibangun digunakan dalam lingkungan kerja, maka selanjutnya diperlukan adanya pemeliharaan atau maintenance baik yang bersifat rutin maupun insidental. Salah satu hal yang perlu diperhatikan dalam pemeliharaan adalah basis pengetahuan yang mungkin telah memiliki perkembangan dan kesesuaian kebutuhan terkini, oleh sebab itu pengetahuan dalam basis pengetahuan perlu adanya
pembaharuan atau penyempurnaan agar sesuai kebutuhan saat ini. Dari uraian tahapan perancangan system pakar yang sudah diuraikan diatas, maka dapat digambarkan dalam bagan berikut ini.
1.7
Sistematika Penulisan Sistematika penulisan yang digunakan dalam penyusunan laporan tugas
akhir sistem pakar diagnosis kerusakan televisi berwarna ini dibedakan dengan pembagian bab-bab sebagai berikut: BAB I : PENDAHULUAN Pada bab ini berisi mengenai tentang latar belakang, identifikasi masalah, batasan masalah, tujuan, metodologi perancangan sistem, kerangka pemikiran, dan sistematika dari penulisan laporan tugas akhir sistem pakar. BAB II : TINJAUAN PUSTAKA Pada bab ini membahas mengenai beberapa definisi dari teori-teori dasar yang digunakan dalam kegiatan perancangan sistem pakar. BAB III : ANALISIS SISTEM Pada bab ini membahas tentang analisis sistem yang akan diuraikan tentang current system, penilaian, dan akuisisi pengetahuan terhadap permasalah berkaitan dengan keruksakan televisi berwarna. BAB IV : DESAIN SISTEM PAKAR Pada bab ini akan diuraikan tentang batasan sistem, pengembangaan mesin inferensi, deskripsi alur program, perancangan basis data, implementasi, dan pengujian aplikasi sistem pakar untuk keruksakan televisi berwarna. BAB V : KESIMPULAN DAN SARAN Pada bab ini berisikan tentang kesimpulan dari hasil perancangan dan saransaran yang dapat menunjang perkembangan sistem pakar untuk keruksakan televisi berwarna. DAFTAR PUSTAKA Daftar referensi yang digunakan sebagai acuan untuk menyusun laporan tugas akhir sistem pakar. LAMPIRAN - LAMPIRAN
10
2.1
Kecerdasan Buatan Kecerdasan buatan atau artificial intelligence adalah ide-ide untuk
membuat suatu perangkat lunak komputer dapat memiliki kecerdasan sehingga dapat melakukan suatu pekerjaan manusia. Hal ini pada dasarnya berhubungan dengan dua ide dasar. Pertama, menyangkut studi proses berfikir manusia, dan kedua, berhubungan dengan bagaimana merepresentasikan proses tersebut melalui suatu mesin. Kecerdasan buatan telah menjadi wacana umum yang sangat penting dan jamak dijumpai. Namun masih banyak menyisakan pertanyaan skeptis tentang mesin berfikir: Betulkah sebuah mesin dapat benar-benar berfikir dengan dirinya sendiri?, atau Jika benar-benar dapat berfikir sendiri, apakah proses berfikirnya sama dengan kita?, dan Seberapa handal?. Di awal abad 20, seorang penemu Spanyol, Torres y Quevedo, membuat sebuah mesin yang dapat menskak-mat raja lawannya dengan sebuah ratu dan raja. Perkembangan secara sistematis kemudian dimulai segera setelah diketemukannya komputer digital. Artikel ilmiah pertama tentang Kecerdasan Buatan ditulis oleh Alan Turing pada tahun 1950, dan kelompok riset pertama dibentuk tahun 1954 di Carnegie Mellon University oleh Allen Newell and Herbert Simon. Namun bidang Kecerdasan Buatan baru dianggap sebagai bidang tersendiri di konferensi Dartmouth tahun 1956, di mana 10 peneliti muda memimpikan mempergunakan komputer untuk memodelkan bagaimana cara berfikir manusia. Hipotesis mereka adalah: Mekanisme berfikir manusia dapat secara tepat dimodelkan dan disimulasikan pada komputer digital, dan ini yang menjadi lsan dasar Kecerdasan Buatan. (Arhami M, 2005)
10
11
Mengenai definisi kecerdasan buatan, tidak ada kesepakatan mengenai definisi kecerdasan buatan tersebut. Dan diantara para ahli, memberikan definisidefinisi kecerdasan buatan diantaranya adalah sebagai berikut: 1. Sebuah studi tentang bagaimana membuat komputer mengerjakan sesuatu yang dapat dikerjakan manusia. 2. Cabang ilmu komputer yang mempelajari otomatisasi tingkah laku cerdas (Setiawan. 3. Suatu perilaku sebuah mesin yang jika dikerjakan oleh manusia akan disebut cerdas. Namun demikian, kebanyakan ahli setuju bahwa Kecerdasan Buatan berhubungan dengan dua ide dasar yang sudah dijelaskan diatas. Tujuan dari Kecerdasan buatan adalah sebagai berikut: 1. Membuat mesin menjadi lebih pintar. 2. Memahami apakah kecerdasan (intelligence) itu. 3. Membuat mesin menjadi lebih berguna. Penerapan kecerdasan buatan meliputi berbagai bidang seperti ditunjukkan pada bagian akar pohon AI dalam Gambar 2.1 berikut ini.
Gambar 2.1 Pohon kecerdasan buatan dan aplikasi utamanya (Achmad B, 2006)
12
Dari gambar diatas, menjelaskan bahwa kecerdasan buatan bersumber dari berbagai disiplin ilmu seperti Bahasa/linguistik, Psikologi, Filsafat, Teknik Elektro, Ilmu Komputer dan Ilmu Manajemen. Sedangkan sistem cerdas yang banyak dikembangkan saat ini diantaranya adalah: 1. Sistem Pakar (Expert System), yaitu program konsultasi (advisory) yang mencoba menirukan proses penalaran seorang pakar/ahli dalam
memecahkan masalah yang rumit. Sistem Pakar merupakan aplikasi AI yang paling banyak. Lebih detil tentang Sistem Pakar akan diberikan dalam bab berikutnya. 2. Pemrosesan Bahasa Alami (Natural Language Processing), yang memberi kemampuan pengguna komputer untuk berkomunikasi dengan komputer dalam bahasa mereka sendiri (bahasa manusia). Sehingga komunikasi dapat dilakukan dengan cara percakapan menggunakan perintah yang bisa digunakan dalam bahasa komputer biasa. 3. Pemahaman Ucapan/Suara (Speech/Voice Understanding), adalah teknik agar komputer dapat mengenali dan memahami bahasa ucapan. Proses ini mengijinkan seseorang berkomunikasi dengan komputer dengan cara berbicara kepadanya. Istilah pengenalan suara mengandung arti bahwa tujuan utamanya adalah mengenai kata yang diucapkan tanpa harus tahu artinya, di mana bagian itu merupakan tugas pemahaman suara. Secara umum prosesnya adalah usaha untuk menerjemahkan apa yang diucapkan seorang manusia menjadi kata-kata atau kalimat yang dapat dimengerti oleh komputer.
13
4. Sistem Sensor dan Robotika. Sistem sensor, seperti sistem visi dan pencitraan, serta sistem pengolahan sinyal, merupakan bagian dari robotika. Sebuah robot, yaitu perangkat elektromekanik yang diprogram untuk melakukan tugas manual, namum tidak semuanya merupakan bagian dari AI. Robot yang hanya melakukan aksi yang telah diprogramkan dikatakan sebagai robot bodoh yang tidak lebih pintar dari lift. Robot yang cerdas bbisaanya mempunyai perangkat sensor, seperti kamera, yang mengumpulkan informasi mengenai operasi dan lingkungannya.
Kemudian bagian AI robot tersebut menerjemahkan informasi tadi dan merespon serta beradaptasi jika terjadi perubahan lingkungan. 5. Komputer Visi, merupakan kombinasi dari pencitraan, pengolahan citra, pengenalan pola serta proses pengambilan keputusan. Tujuan utama dari komputer visi adalah untuk menerjemahkan suatu pemngan. Komputer visi banyak dipakai dalam kendali kualitas produk industri. 6. Intelligent Tutoring/Intelligent Computer-Aided Instruction, adalah
komputer yang mengajari manusia. Belajar melalui komputer sudah lama digunakab, namun dengan menambahkan aspek kecerdasan di dalamnya, dapat tercipta komputer guru yang dapat mengatur teknik pengajarannya untuk menyesuaikan dengan kebutuhan murid secara individiual. Sistem ini juga mendukung pembelajaran bagi orang yang mempunyai kekurangan fisik atau kelemahan belajar. 7. Mesin Belajar (Machine Learning), yang berhubungan dengan sekumpulan metode untuk mencoba mengajari/melatih komputer untuk memecahkan masalah atau mendukung usaha pemecahan masalah dengan menganalisa kasus-kasus yang telah terjadi. Dua metode mesin belajar yang paling populer adalah Komputasi Neural dan Logika Samar. Aplikasi lain dari AI misalnya untuk merangkum berita, pemrograman komputer secara otomatis, atau menerjemahkan dari suatu bahasa ke bahasa yang lain, serta aplikasi dalam permainan seperti pertandingan catur antara Grand Master Anatoly Karpov dengan komputer Deep Thought dari IBM.
14
2.2
Sistem Pakar Sistem Pakar (Expert System) adalah usaha untuk menirukan seorang
pakar. Biasanya Sistem Pakar berupa perangkat lunak pengambil keputusan yang mampu mencapai tingkat performa yang sebanding dengan seorang pakar dalam bidang problem yang khusus dan sempit. 2.2.1 Pengertian Sistem Pakar Ide dasar sistem pakar adalah kepakaran di-transfer dari seorang pakar atau sumber kepakaran yang lain ke komputer, pengetahuan yang ada disimpan dalam komputer, dan pengguna dapat berkonsultasi pada komputer itu untuk suatu nasehat, lalu komputer dapat mengambil inferensi atau menyimpulkan maupun mendeduksi, seperti layaknya seorang pakar, kemudian menjelaskannya ke pengguna tersebut, bila perlu dengan alasan-alasannya. Adapun definisi sistem pakar menurut para ahli diantaranya
mendefinisikan sebagai berikut: 1. Menurut Durkin (1994), sistem pakar adalah suatu program komputer yang didesain untuk memodelkan kemampuan penyelesaian masalah yang dilakukan seorang pakar. 2. Kusrini (2006) mendefinisikan Sistem pakar sebagai suatu model dan prosedur yang berkaitan, dalam suatu domain tertentu, yang mana tingkat keahliannya dapat dibandingkan dengan keahlian seorang pakar. 3. Kusumadewi (2003) menyebut sistem pakar sebagai suatu sistem komputer yang bisa menyamai atau meniru kemampuan seorang pakar. 4. Menurut E.Turban, J.E.Aronson dan Ting Peng Liang (2005), sitem pakar adalah Sistem informasi berbasis komputer yang menggunakan pengetahuan pakar untuk mencapai performa keputusan tingkat tinggi dalam domain persoalan yang sempit. 2.2.2 Tujuan Sistem Pakar Tujuan Sistem Pakar adalah untuk mentransfer kepakaran dari seorang pakar ke komputer, kemudian ke orang lain yang bukan pakar. Proses ini tercakup dalam rekayasa pengetahuan (knowledge engineering).
15
2.2.3 Ciri-ciri Sistem Pakar Sistem pakar yang baik memiliki ciri-ciri diantaranya adalah sebagai berikut: 1. Terbatas pada bidang yang spesifik. 2. Dapat memberikan penalaran terhadap data yang tidak lengkap/tidak pasti. 3. Dapat mengemukakan rangkaian alasan diberi tahukan dengan cara yang dapat dipahami. 4. Berdasarkan pada rules dan kaidah tertentu. 5. Dirancang untuk dapat dikembangkan secara bertahap. 6. Output bersifat nasihat atau anjuran. 7. Output tergantung dengan user. 8. Knowledge based dan inference engine terpisah. 2.2.4 Aplikasi Sistem Pakar Beberapa masalah yang menjadi area luas aplikasi sistem pakar, seperti: 1. Interpretasi. Pengambilan keputusan dari hasil observasi, termasuk diantaranya: pengawasan, pengenalan ucapan, analisis citra, interpretasi sinyal, dan beberapa analisis kecerdasan. 2. Prediksi. Termasuk diantaranya: peramalan, prediksi demografis,
peramalan ekonomi, prediksi lalulintas, estimasi hasil, militer, pemasaran, atau peramalan keuangan. 3. Diagnosis. Termasuk diantaranya: medis, elektronis, mekanis, dan diagnosis perangkat lunak. 4. Perancangan. Termasuk diantaranya: layout sirkuit dan perancangan bangunan, perencanaan keuangan, komunikasi, militer, perancangan produk, routing, dan manajemen proyek. 5. Monitoring. Misalnya: Computer-Aided Monitoring Systems. 6. Debugging, memberikan resep obat terhadap suatu kegagalan. 7. Instruksi. Melakukan instruksi untuk diagnosis, debugging dan perbaikan kinerja. 8. Kontrol. Melakukan kontrol terhadap interpretasi interpretasi, prediksi, perbaikan, dan monitoring kelakuan sistem.
16
2.2.5 Bentuk Sistem Pakar Ada 4 bentuk sistem pakar, yaitu: 1. Berdiri sendiri. Sistem pakar jenis ini merupakan software yang berdirisendiri tidak tergabung dengan software yang lainnnya. Sebagai contoh pada tabel berikut merupakan sistem pakar jenis ini. Tabel 2.1 Sistem pakar yang berdiri sendiri Sistem Pakar MYCIN DENDRAL Kegunaan Diagnosa penyakit Mengidentifikasi struktur molekular campuran yang tak dikenal XCON & XSEL SOPHIE Prospector Membantu konfigurasi sistem komputer besar Analisis sirkit elektronik Digunakan di dalam geologi untuk membantu mencari dan menemukan deposit. FOLIO Membantu memberikan keputusan bagi seorang manajer dalam hal stok broker dan investasi. DELTA Pemeliharaan lokomotif listrik diesel
2. Tergabung. Sistem pakar jenis ini merupakan bagian program yang terkandung di dalam suatu algoritma (konvensional), atau merupakan program dimana di dalamnya memanggil algoritma subrutin lain (konvensional). 3. Menghubungkan ke software Lain. Bentuk ini bbisaanya merupakan sistem pakar yang menghubungkan ke suatu paket program tertentu, misalnya dengan DBMS. 4. Sistem Mengabdi. Sistem pakar merupakan bagian dari komputer khusus yang dihubungkan dengan suatu fungsi tertentu. Misalnya sistem pakar yang digunakan untuk membantu menganalisis data radar.
17
2.2.6 Perbandingan Sistem Pakar dengan Sistem Konvensional Sistem pakar memiliki beberapa perbedaan dengan sistem informasi konvensional. Berikut ini adalah tabel perbandingan atau perbedaan antara sistem konvensional dengan sistem pakar tersebut. Tabel 2.2 Perbandingan sistem konvensional dengan sistem pakar Sistem Konvensional Informasi & pemrosesan umumnya digabung dalam satu program secara sequential Program tidak pernah salah (kecuali programer-nya yang salah) Tidak menjelaskan mengapa input dibutuhkan atau bagaimana hasil diperoleh Membutuhkan semua input data Perubahan pada program cukup merepotkan Eksekusi secara algoritmik (step-bystep) Sistem bekerja jika data sudah lengkap Manipulasi efektif pada database yang besar Efisiensi adalah tujuan utama Data kuantitatif Sistem Pakar Knowledge base terpisah dari mekanisme pemrosesan (inference) Program bisa saja melakukan kesalahan Penjelasan (explanation) merupakan bagian dari ES Tidak harus mambutuhkan semua input data / fakta Perubahan pada rules dapat dilakukan dengan mudah Eksekusi dilakukan secara heuristic & logic Sistem dapat bekerja hanya dengan rules yang sedikit Manipulasi efektif pada knowledgebase yang besar Efektifitas adalah tujuan utama Data kualitatif
Representasi data dalam bentuk numeric Reperesentasi pengetahuan dalam simbol Menangkap, menambah & Menangkap, menambah & mendistribusi data numerik atau mendistribusi pertimbangan informasi (judgment) & pengetahuan
18
2.2.7 Perbandingan Sistem Pakar dengan Pakar Seorang pakar atau ahli (human expert) adalah seorang individu yang memiliki kemampuan pemahaman yang superior dari suatu masalah, misalnya: seorang dokter, penasehat keuangan, pakar mesin mobil, pakar jaringan, dan lain sebagainya. Seorang pakar memiliki kemampuan kepakaran seperti: 1. Dapat mengenali (recognizing) dan merumuskan masalah. 2. Menyelesaikan masalah dengan cepat dan tepat. 3. Menjelaskan solusi. 4. Belajar dari pengalaman. 5. Restrukturisasi pengetahuan. 6. Memahami batas kemampuan. Adapun perbedaan antara sistem pakar dengan seorang pakar, dijelaskan pada tabel perbandingan berikut. Tabel 2.3 Perbandingan sistem pakar dengan pakar FAKTOR Time Availability Geografis Keamanan Dapat Habis Performansi Kecepatan Biaya SEORANG PAKAR Berdasar Hari/Jam Kerja Lokal / Tertentu Tidak tergantikan Ya Variabel Variabel Mahal/Tinggi SISTEM PAKAR Dapat setiap saat Dimana saja Dapat diganti Tidak Konsisten Konsisten & lebih cepat Terjangkau
Dari tabel diatas, maka dapat disimpulkan bahwa perancangan Sistem pakar dilakukan karena adanya keterbatasan manusia (pakar) dalam membuat keputusan. Keterbatasan manusia atau pakar antara lain seperti: 1. Kepakaran manusia (human expertise) sangat jarang. 2. Manusia akan mengalami kelelahan secara fisik dan mental bila melakukan pekerjaan berat. 3. Manusia memiliki keterbatas dalam mengingat. 4. Manusia kadangkala tidak konsisten dalam pengambilan keputusan. 5. Manusia memiliki keterbatas dalam berfikir (working memory). 6. Manusia tidak dapat melakukan mengolah data yang besar dengan cepat.
19
7. Pemikiran manusia kadang bisa berubah atau lupa. 8. Manusia bisa berbohong, bersembunyi atau meninggal Dengan adanya kelemahan-kelemahan dari manusia atau pakar diatas, maka sistem pakar lebih memiliki unsur kelebihan yaitu : 1. Economical. Dengan perancangan sistem pakar, maka biaya yang harus dikeluarkan bisa lebih ekonomis dibandingkan dengan biaya seorang pakar. 2. Availability. Dengan sistem pakar, maka permasalah dapat diselesaikan kapan saja, tanpa tergantung kepada keberadaan seorang pakar. 3. Respon time. Sistem pakar sering kali memiliki waktu respon yang lebih cepat dibanding dengan manusia. 4. Reliability. Kepakaran sistem pakar dapat dikembang lebih luas lagi. Selain itu juga sistem pakar tidak memiliki perasasaan/emosi sehingga bisa lebih objektif dalam memecahkan masalah 5. Explanation. Sistem pakar memiliki fasilitas untuk menjelaskan
bagaimana pengambilan keputusan (reasoning) dilakukan. 6. Intellectual property. Sistem pakar dilengkapi kemampuan intelektual. Sistem pakar, walaupun memiliki berbagai kelebihan dibanding seorang pakar, juga memiliki sisi kelemahan diantaranya adalah: 1. Limited knowledge. Sistem pakar memiliki keterbatasan pengetahuan. Pengetahuan sistem pakar hanya dibatasi oleh pengetahuan yang dimasukkan kedalam sistem. Sistem pakar tidak memahami keterkaitan antara konsep dan keterhubungannya. Sistem pakar tidak memiliki common-sense knowledge. 2. Mechanical Reasoning. Sistem pakar dibangun dengan ketentuan yang sudah ditetapkan, sehingga pada sistem pakar tidak dapat menentukan metode yang paling tepat untuk menyelesaikan masalah. Sistem pakar mungkin saja menyelesaikan masalah yang mudah dengan waktu komputasi yang sangat tinggi. 3. Lack of trust. Kesimpulan yang diberikan oleh sistem pakar tidak dapat dikritik.
20
2.2.8 Manfaat Sistem Pakar Sebuah sistem yang dibangun haruslah memberikan sesuatu yang lebih bermanfaat seperti meningkatkan efektifitas maupun efisiensi. Begitu pula dengan dikembangkannya sistem pakar tentu harus memiliki manfaat lebih dari sistem lain sebelumnya. Berikut adalah kemampuan dan manfaat yang diberikan oleh Sistem Pakar menurut Achmad, B (2006), di antaranya adalah: 1. Meningkatkan output dan produktivitas, karena Sistem Pakar dapat bekerja lebih cepat dari manusia. 2. Meningkatkan kualitas, dengan memberi nasehat yang konsisten dan mengurangi kesalahan. 3. Mampu menangkap kepakaran yang sangat terbatas. 4. Dapat beroperasi di lingkungan yang berbahaya. 5. Memudahkan akses ke pengetahuan. 6. Sistem Pakar tidak pernah menjadi bosan dan kelelahan atau sakit. Sistem Pakar juga secara konsisten melihat semua detil dan tidak akan melewatkan informasi yang relevan dan solusi yang potensial. 7. Meningkatkan kapabilitas sistem terkomputerisasi yang lain. Integrasi Sistem Pakar dengan sistem komputer lain membuat lebih efektif, dan mencakup lebih banyak aplikasi . 8. Mampu bekerja dengan informasi yang tidak lengkap atau tidak pasti. Berbeda dengan sistem komputer konvensional, Sistem Pakar dapat bekerja dengan inofrmasi yang tidak lengkap. Pengguna dapat merespon dengan: tidak tahu atau tidak yakin pada satu atau lebih pertanyaan selama konsultasi, dan Sistem Pakar tetap akan memberikan jawabannya. 9. Mampu menyediakan pelatihan. Pengguna pemula yang bekerja dengan Sistem Pakar akan menjadi lebih berpengalaman. Fasilitas penjelas dapat berfungsi sebagai guru. 10. Meningkatkan kemampuan problem solving, karena mengambil sumber pengetahuan dari banyak pakar. 11. Meniadakan kebutuhan perangkat yang mahal. 12. Fleksibel.
21
2.2.9 Keuntungan Sistem Pakar Sistem pakar, selain mempunyai berbagai manfaat juga memiliki keuntungan-keuntungan dalam penggunaannya, diantaranya adalah : 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 pelatihan. 13. Meningkatkan kapabilitas dalam penyelesaian masalah. 14. Menghemat waktu dalam pengambilan keputusan. 2.2.10 Keterbatasan Sistem Pakar Selain memiliki manfaat yang banyak, sistem pakar jiga memiliki berbagai keterbatasan. Berikut adalah keterbatasan sistem pakar menurut Achmad, B. (2006) yang menghambat perkembangan Sistem Pakar: 1. Pengetahuan yang hendak diambil tidak selalu tersedia. 2. Kepakaran sangat sulit diekstrak dari manusia. 3. Pendekatan oleh setiap pakar untuk suatu situasi atau problem bisa berbeda-beda, meskipun sama-sama benar. 4. Adalah sangat sulit bagi seorang pakar untuk mengabstraksi atau menjelaskan langkah mereka dalam menangani masalah.
22
5. Pengguna Sistem Pakar mempunyai batas kognitif alami, sehingga mungkin tidak bisa memanfaatkan sistem secara maksimal. 6. Sistem Pakar bekerja baik untuk suatu bidang yang sempit. 7. Banyak pakar yang tidak mempunyai jalan untuk mencek apakah kesimpulan mereka benar dan masuk akal. 8. Istilah dan jargon yang dipakai oleh pakar dalam mengekspresikan fakta seringkali terbatas dan tidak mudah dimengerti oleh orang lain. 9. Perancangan Sistem Pakar seringkali membutuhkan perekayasa
pengetahuan (knowledge engineer) yang langka dan mahal. 10. Kurangnya rasa percaya pengguna menghalangi pemakaian Sistem Pakar. 11. Transfer pengetahuan dapat bersifat subyektif dan bbisa. 2.2.11 Modul Penyusun Sistem Pakar Menurut Staugaard (1987), suatu sistem pakar tersusun atas tiga modul utama yaitu: 1. Modul Penerimaan Pengetahuan (Knowledge Acquisition Mode), yaitu saat sistem menerima pengetahuan dari pakar yang akan digunakan sebagai basis pengetahuan. Proses pengumpulan pengetahuan ini melibatkan peran knowledge engineer yang menghubungkan antara pakar dengan sistem pakar yang dibangun. 2. Modul Konsultasi (Consultation Mode), yaitu terjadi pada saat sistem memberikan jawaban atas pertanyaan yang disampaikan oleh user. Pada modul ini terjadi interaksi antara user dengan sistem seperti jawaban user atas pertanyaan yang diajukan oleh sistem. 3. Modul Penjelasan (Explanation Mode), mode ini menjelaskan proses pengambilan keputusan oleh sistem atau bagaimana keputusan dapat diperoleh.
23
2.2.12 Struktur Sistem Pakar Secara umum, struktur Sistem Pakar terdiri atas beberapa komponen yang masing-masing berhubungan. Namun secara garis besar, sitem pakar tersusun atas dua bagian utama yaitu lingkungan konsultasi (consultation environment) dan lingkungan perancangan (development environment). Untuk lebih jelasnya tampak seperti pada Gambar 2.2 berikut.
Gambar 2.2 Struktur sistem pakar (Turban, 1995) 2.2.12.1 Basis Pengetahuan Basis Pengetahuan atau knowledge base, berisi pengetahuan yang bersumber dari seorang pakar serta dibutuhkan untuk memahami, memformulasi, dan memecahkan masalah. Basis pengetahuan tersusun atas 2 elemen dasar yaitu: 1. Fakta, misalnya: situasi, kondisi, dan kenyataan dari permasalahan yang ada, serta teori dalam bidang tersebut. 2. Aturan, yang mengarahkan penggunaan pengetahuan untuk memecahkan masalah yang spesifik dalam bidang yang khusus. Dalam bidang kecerdasan buatan, basis pengetahuan merupakan elemen kunci dari setiap sistem cerdas.
24
Terdapat 2 bentuk pendekatan basis pengetahuan yang sangat umum digunakan, yaitu: 1. Penalaran berbasis aturan (Rule-Based Reasoning). Penalaran berbasis aturan, pengetahuan direpresentasikan dengan
menggunakan aturan berbentuk IF-THEN. Bentuk ini digunakan apabila kita memiliki sejumlah pengetahuan pakar dalam permasalahan tertentu dan pola penyelesaian masalah tersebut dilakukan berurutan. Juga digunakan apabila diperlukan penjelasan tentang jejak pencapaian solusi. 2. Penalaran berbasis kasus (Case-Based Reasoning). Dalam penalaran bentuk ini, basis pengetahuan akan berisi solusi-solusi yang telah dicapai sebelumnya, lalu akan diturunkan suatu solusi untuk kejadian saat ini atau fakta yang ada. Bentuk ini digunakan jika user menginginkan untuk tahu lebih banyak lagi kasus-kasus yang mirip. Juga digunakan apabila kita telah memiliki sejumlah situasi atau kasus tertentu dalam basis pengetahuan. 2.2.12.2 Mesin Inferensi Mesin Inferensi (Inference Engine), merupakan otak dari Sistem Pakar. Juga dikenal sebagai penerjemah aturan (rule interpreter). Komponen ini berupa program komputer yang menyediakan suatu metodologi untuk memikirkan (reasoning) dan memformulasikan kesimpulan. Kerja mesin inferensi meliputi: 1. Menentukan aturan mana yang akan dipakai. 2. Menyajikan pertanyaan kepada pemakai, ketika diperlukan. 3. Menambahkan jawaban ke dalam memori Sistem Pakar. 4. Menyimpulkan fakta baru dari sebuah aturan. 5. Menambahkan fakta tadi ke dalam memori. Ada 3 elemen utama dalam motor inferensi, yaitu: 1. Interpreter: mengeksekusi item-item agenda yang terpilih dengan menggunakan aturan-aturan dalam basis pengetahuan yang sesuai. 2. Scheduler: akan mengontrol agenda. 3. Consistency enforcer: akan berusaha memelihara konsistensi dalam merepresentasikan solusi yang bersifat darurat.
25
Ada 2 cara yang dapat dikerjakan dalam melakukan inferensi, yaitu: 1. Forward Chaining. Pencocokan fakta atau pernyataan dimulai dari
bagian sebelah kiri (IF dulu). Dengan kata lain, penalaran dimulai dari fakta terlebih dahulu untuk menguji kebenaran hipotesis. Sebagai contoh, pada tabel berikut ada 10 aturan yang tersimpan dalam basis pengetahuan. Fakta awal yang diberikan hanya: A & F (artinya: A dan F bernilai benar). Ingin dibuktikan apakah K bernilai benar (hipotesis: K)? Tabel 2.4 Contoh aturan-aturan No. R-1 R-2 R-3 R-4 R-5 R-6 R-7 R-8 R-9 R-10 Aturan IF A & B THEN C IF C THEN D IF A & E THEN F IF A THEN G IF F & G THEN D IF G & E THEN H IF C & H THEN I IF I & A THEN J IF G THEN J IF J THEN K
Langkah-langkah inferensinya adalah sebagai berikut: a. Dimulai dari R-1. A merupakan fakta sehingga bernilai benar, sedangkan B belum bisa diketahui kebenarannya, sehingga C-pun juga belum bisa diketahui kebenarannya. Oleh karena itu kita tidak mendapatkan informasi apapun pada R-1 ini. Sehingga menuju R-2. b. Pada R-2, kita tidak mengetahui informasi apapun tentang C, sehingga kita juga tidak bisa memastikan kebenaran D. Oleh karena itu kita tidak mendapatkan informasi apapun pada R-1 ini. Sehingga menuju ke R-3. c. Pada R-3, baik A maupun E adalah fakta sehingga jelas benar. Dengan demikian F sebagai konsekuen juga ikut benar. Sehingga sekarang kita mempunyai fakta baru yaitu F. Karena F bukan hipotesis yang hendak kita buktikan (=K), maka penelusuran kita lanjutkan ke R-4.
26
d. Pada R-4, A adalah fakta sehingga jelas benar. Dengan demikian G sebagai konsekuen juga ikut benar. Sehingga sekarang kita mempunyai fakta baru yaitu G. Karena G bukan hipotesis yang hendak kita buktikan (=K), maka penelusuran kita lanjutkan ke R-5. e. Pada R-5, baik F maupun G bernilai benar berdasarkan aturan R-3, dan R-4. Dengan demikian D sebagai konsekuen juga ikut benar. Sehingga sekarang kita mempunyai fakta baru yaitu D. Karena D bukan hipotesis yang hendak kita buktikan (=K), maka penelusuran di lanjutkan ke R-6. f. Pada R-6, baik A maupun G adalah benar berdasarkan fakta dan R-4. Dengan demikian H sebagai konsekuen juga ikut benar. Sehingga sekarang kita mempunyai fakta baru yaitu H. Karena H bukan hipotesis yang hendak kita buktikan (=K), maka penelusuran dilanjutkan ke R-7. g. Pada R-7, meskipun H benar berdasarkan R-6, namun kita tidak tahu kebenaran C, sehingga I-pun juga belum bisa diketahui kebenarannya. Oleh karena itu kita tidak mendapatkan informasi apapun pada R-7 ini. Sehingga kita menuju ke R-8. h. Pada R-8, meskipun A benar karena fakta, namun kita tidak tahu kebenaran I, sehingga J-pun juga belum bisa diketahui kebenarannya. Oleh karena itu kita tidak mendapatkan informasi apapun pada R-8 ini. Sehingga kita menuju ke R-9. i. Pada R-9, J bernilai benar karena G benar berdasarkan R-4. Karena J bukan hipotesis yang hendak kita buktikan (=K), maka penelusuran kita lanjutkan ke R-10. j. Pada R-10, K bernilai benar karena J benar berdasarkan R-9. Karena H sudah merupakan hipotesis yang hendak kita buktikan (=K), maka terbukti bahwa K adalah benar.
27
Tabel munculnya fakta baru pada saat inferensi terlihat pada tabel berikut. Tabel 2.5 Fakta baru Aturan R-3 R-4 R-5 R-6 R-9 R-10 Fakta Baru F G D H J K
R-10
G
R-5
A
R-3
R-6
E
Fakta
Gambar 2.3 Forward chaining 2. Backward Chaining. Pencocokan fakta atau pernyataan dimulai dari bagian sebelah kanan (THEN dulu). Dengan kata lain, penalaran dimulai dari hipotesis terlebih dahulu. Untuk menguji kebenaran hipotesis tersebut dicari harus dicari fakta-fakta yang ada dalam basis pengetahuan. Sebagai contoh: seperti pada contoh Forward Chaining, pada Tabel 2.4 terlihat ada 10 aturan yang tersimpan dalam basis pengetahuan. Fakta awal yang diberikan hanya: A & F (artinya: A dan F bernilai benar). Ingin dibuktikan apakah K bernilai benar (hipotesis: K)? Langkah-langkah inferensi adalah sebagai berikut: a. Pertama-tama kita cari terlebih dahulu mulai dari R-1, aturan mana yang memiliki konsekuen K. Ternyata setelah ditelusur, aturan dengan konsekuen K baru ditemukan pada R-10. Untuk membuktikan bahwa K benar, maka perlu dibuktikan bahwa J benar.
28
b. Kita cari aturan yang memiliki konsekuen J. Kita mulai dari R-1, dan ternyata kita baru akan menemukan aturan dengan konsekuen J pada R-8. Untuk membuktikan bahwa J benar, maka perlu dibuktikan
bahwa I dan A benar. Untuk membuktikan kebenaran I, kita perlu cari aturan dengan konsekuen I, ternyata ada di R-7. c. Untuk membuktikan I benar di R-7, kita perlu buktikan bahwa C dan H benar. Untuk itu kitapun perlu mencari aturan dengan konsekuen C, dan ada di R-1. d. Untuk membuktikan C benar di R-1, kita perlu buktikan bahwa A dan B benar. A jelas benar karena A merupakan fakta. Sedangkan B kita tidak bisa membuktikan kebenarannya, karena selain bukan fakta, di dalam basis pengetahuan juga tidak ada aturan dengan konsekuen B. Dengan demikian maka dari penalaran ini kita tidak bisa buktikan kebenaran dari hipotesis K. Namun demikian, kita masih punya alternatif lain untuk melakukan penalaran. e. Kita lakukan backtracking. Kita ulangi lagi dengan pembuktian kebenaran C dengan mencari aturan lain dengan konsekuen C. Ternyata tidak ditemukan. f. Kita lakukan backtraking lagi dengan mencari aturan dengan konsekuen I, ternyata juga tidak ada. g. Kita lakukan backtraking lagi dengan mencari aturan dengan konsekuen J, ternyata kita temukan pada R-9. Sehingga kita perlu buktikan kebenaran G. h. Kita mendapatkan R-4 dengan konsekuen G. Kita perlu buktikan kebenaran A. Karena A adalah fakta, maka terbukti bahwa G benar. Dengan demikian berdasarkan penalaran ini bisa dibuktikan bahwa K bernilai benar.
29
Alur inferensi untuk backward chaining, terlihat pada gambar berikut ini.
Fakta
R-10
J
R-8
I
R-7
C
R-1
B
Tidak diketahui
Fakta
R-10
R-9
R-4
Gambar 2.4 Backward chaining CONTOH : Diketahui sistem pakar dengan aturan-aturan sebagai berikut: R1 : IF suku bunga turun THEN harga obligasi naik R2 : IF suku bunga naik THEN harga obligasi turun R3 : IF suku bunga tidak berubah THEN harga obligasi tidak berubah R4 : IF dolar naik THEN suku bunga turun R5 : IF dolar turun THEN suku bunga naik R6 : IF harga obligasi turun THEN beli obligasi
30
Apabila diketahui bahwa dolar turun, maka untuk memutuskan apakah akan membeli obligasi atau tidak, ditunjukkan sebagai Forward chaining dan Backward Chaining. 1. Penyelesaian menggunakan Forward chaining: Solusi dengan menggunakan forward chaining dapat dilihat pada Gambar 2.5. Dari fakta dolar turun, berdasarkan aturan-5, diperoleh konklusi suku bunga naik. Dari aturan-2, suku bunga naik menyebabkan harga obligasi turun. Dengan menggunakan aturan-6, jika harga obilasi turun, maka kesimpulan yang diambil adalah membeli obligasi.
dolar turun R5 suku bunga naik R2 harga obligasi turun R6 beli obligasi
Gambar 2.5 Penyelesaian dengan forward chaining 2. Penyelesaian menggunakan Backward chaining: Solusi dengan menggunakan backward chaining dapat dilihat pada Gambar 2.6. Berangkat dari solusi yaitu membeli obligasi, dengan menggunakan aturan-6 diperoleh anteseden harga obligasi turun. Dari aturan-2 bisa akan dibuktikan harga obligasi turun bernilai benar jikan suku bunga naik bernilai benar. Dari aturan-5, suku bunga naik memang bernilai benar karena diketahui fakta dolar turun.
dolar turun R5 suku bunga naik R2 harga obligasi turun R6 beli obligasi
31
Setelah mengetahui 2 proses perantaian diatas, dapat disimpulkan bahwa kedua metode tersebut memiliki beberapa perbedaan. Untuk memilih metode perantaian yang akan digunakan, dapat dilihat pada tabel panduan berikut. Tabel 2.6 Panduan untuk memilih metode inferensi Forward Chaining Ada banyak hal yang ingin dibuktikan Hanya sedikit fakta awal yang dimiliki Ada banyak aturan berbeda yang dapat memberikan kesimpulan yang sama 2.2.12.3 Papan Tulis Papan Tulis (Blackboard / Workplace), adalah area atau memori untuk bekerja dan menyimpan hasil sementara maupun kesimpulan. Bbisaanya berupa sebuah basis data. Ada 3 tipe keputusan yang direkam pada area ini yaitu: 1. Rencana, yaitu bagaimana menghadapi masalah. 2. Agenda, yaitu langkah-langkah aksi potensial. 3. Solusi, yaitu aksi yang akan dibangkitkan. 2.2.12.4 Antarmuka Pemakai Antarmuka Pemakai (User Interface) digunakan pada Sistem Pakar untuk mengatur komunikasi antara pengguna dan komputer. Antarmuka yang lebih canggih dilengkapi dengan percakapan (voice communication). Pada bagian ini terjadi dialog antara program dengan pemakai, yang memungkinkan sistem pakar menerima intruksi dan informasi (input) dari pemakai, serta memberikan informasi (output) kepada pemakai. Jika terdapat banyak aturan yang memenuhi syarat untuk dipicu (fire) pada suatu siklus Terdapat banyak fakta awal Backward Chaining Hanya akan membuktikan fakta tunggal
32
2.2.12.5 Fasilitas Penjelasan Subsistem Fasilitas Penjelasan (Explanation Facility). Kemampuan untuk menjejak (tracing) bagaimana suatu kesimpulan dapat diambil merupakan hal yang sangat penting untuk transfer pengetahuan dan pemecahan masalah. Komponen subsistem penjelasan harus dapat menyediakannya yang secara interaktif menjawab pertanyaan pengguna, misalnya: 1. Mengapa pertanyaan tersebut tanyakan? 2. Seberapa yakin kesimpulan tersebut diambil? 3. Mengapa alternatif tersebut ditolak? 4. Apa yang akan dilakukan untuk mengambil suatu kesimpulan? 5. Fakta apalagi yang diperlukan untuk mengambil kesimpulan akhir? 2.2.12.6 Fasilitas Penjelas Fasilitas ini disebut juga Penghalusan Pengetahuan (Knowledge Refining System). Seorang pakar mempunyai sistem penghalusan pengetahuan, artinya, mereka bisa menganalisa sendiri performa mereka, belajar dari pengalaman, serta meningkatkan pengetahuannya untuk konsultasi berikutnya. 2.2.13 Pembangunan Sistem Pakar Untuk membangun sistem pakar, secara umum dapat dilakukan dengan melalui 2 cara seperti berikut: 1. Membangun sendiri semua komponen di atas. 2. Memakai semua komponen yang sudah ada kecuali isi basis pengetahuan. Cara yang kedua dapat disebut sebagai membangun Sistem Pakar dengan shell, yakni semua komponen Sistem Pakar, kecuali basis pengetahuan, hal ini bersifat generik, sehingga dapat dipakai untuk bidang yang berlainan. Membangun Sistem Pakar dengan shell dapat dilakukan dengan lebih cepat dan lebih sedikit keterampilan memprogram, namun berkurang fleksibilitasnya karena harus mengikuti kemampuan dari shell tersebut. Salah satu shell Sistem Pakar yang populer dipakai adalah CLIPS (C Language Integrated Production System). Tahapan pembangunan sistem pakar adalah sebagai berikut:
33
2.2.13.1 Pemilihan Masalah Pembuatan Sistem Pakar membutuhkan waktu dan biaya yang banyak. Untuk menghindari kegagalan yang memalukan dan kerugian yang besar, maka dibuat beberapa pedoman untuk menentukan apakah Sistem Pakar cocok untuk memecahkan suatu problem: 1. Biaya yang diperlukan untuk pembangunan Sistem Pakar ditentukan oleh kebutuhan untuk memperoleh solusi. Sehingga harus ada perhitungan yang realistis untuk cost and benefit. 2. Pakar manusia tidak mudah ditemui untuk semua situasi di mana dia dibutuhkan. Jika pakar pengetahuan tersebut terdapat di mana saja dan kapan saja, maka pembangunan Sistem Pakar menjadi kurang berharga. 3. Problem yang ada dapat diselesaikan dengan teknik penalaran simbolik, dan tidak membutuhkan kemampuan fisik. 4. Problem tersebut harus terstruktur dengan baik dan tidak membutuhkan terlalu banyak pengetahuan awam (common sense), yang terkenal sulit untuk diakuisisi dan dideskripsikan, dan lebih banyak berhubungan dengan bidang yang teknis. 5. Problem tersebut tidak mudah diselesaikan dengan metode komputasi yang lebih tradisionil. Jika ada penyelesaian algoritmis yang bagus untuk problem tersebut, maka kita tidak perlu memakai Sistem Pakar. 6. Ada pakar yang mampu memberikan penjelasan tentang kepakarannya serta mau bekerjasama. Adalah sangat penting bahwa pakar yang dihubungi benar-benar mempunyai kemauan kuat untuk ikut berpartisipasi serta tidak merasa pekerjaannya akan menjadi terancam. 7. Problem tersebut mempunyai sekup yang tepat. Bbisaanya merupakan problem yang membutuhkan kepakaran yang sangat khusus namun hanya membutuhkan seorang pakar untuk dapat menyelesaikannya dalam waktu yang relatif singkat (misalnya paling lama 1 jam).
34
2.2.13.2 Rekayasa Pengetahuan (Knowledge Engineering) Proses dalam rekayasa pengetahuan meliputi hal-hal seperti pada gambar berikut ini:
1. Akuisisi pengetahuan, yaitu bagaimana memperoleh pengetahuan dari pakar atau sumber lain (sumber terdokumentasi, buku, sensor, file komputer, dan lain-lain). 2. Validasi pengetahuan, untuk menjaga kualitasnya misalnya dengan uji kasus. 3. Representasi pengetahuan, yaitu bagaimana mengorganisasi
pengetahuan yang diperoleh, mengkodekan dan menyimpannya dalam suatu basis pengetahuan. 4. Penyimpulan pengetahuan, menggunakan mesin inferensi yang
mengakses basis pengetahuan dan kemudian melakukan penyimpulan. 5. Transfer pengetahuan (penjelasan). Hasil inferensi berupa nasehat, rekomendasi, atau jawaban, kemudian dijelaskan ke pengguna oleh subsistem penjelas.
35
2.2.13.3 Partisipan dalam Proses Perancangan Partisipan dalam proses perancangan sistem pakar, minimal adalah tiga kategori partisipan yaitu: 1. Pakar (expert), yaitu seseorang yang mempunyai pengetahuan,
pengalaman, dan metode khusus, serta mampu menerapkannya untuk memecahkan masalah atau memberi nasehat. Pakar menyediakan pengetahuan tentang bagaimana nantinya Sistem Pakar bekerja. 2. Perekayasa pengetahuan (knowledge engineer), yang membantu pakar untuk menyusun area permasalahan dengan menerjemahkan dan mengintegrasikan jawaban pakar terhadap pertanyaan-pertanyaan dari klien, menarik analogi, serta memberikan contoh-contoh yang berlawanan, kemudian menyusun basis pengetahuan. 3. Pengguna (user), yang mungkin meliputi: seorang klien non-pakar yang sedang membutuhkan nasehat (Sistem Pakar sebagai konsultan atau advisor), seorang siswa yang sedang belajar (Sistem Pakar sebagai instruktur), seorang pembuat Sistem Pakar yang hendak meningkatkan basis pengetahuan (Sistem Pakar sebagai partner), seorang pakar (Sistem Pakar sebagai kolega atau asisten, yang dapat memberikan opini kedua). Partisipan lain mungkin juga dapat dilibatkan seperti, pembangun sistem (system builder), tool builder, staf administrasi dan lain sebagainya. 2.2.13.4 Akuisisi Pengetahuan Dalam proses akuisisi pengetahuan, seorang perekayasa pengetahuan menjembatani antara pakar dengan basis pengetahuan. Perekayasa pengetahuan mendapatkan pengetahuan dari pakar, mengolahnya dan menaruhnya dalam basis pengetahuan. Pengambilan pengetahuan dari pakar dapat dilakukan dengan cara : 1. Manual, di mana perekayasa pengetahuan mendapatkan pengetahuan dari pakar (melalui wawancara) dan/atau sumber lain, kemudian
mengkodekannya dalam basis pengetahuan. Proses ini bbisaanya berlangsung lambat, mahal, serta kadangkala tidak akurat.
36
2. Semi-otomatik, di mana terdapat peran komputer untuk: (1) mendukung pakar dengan mengijinkannya membangun basis pengetahuan tanpa (atau dengan sedikit) bantuan dari perekayasa pengetahuan, atau (2) membantu perekayasa pengetahuan sehingga kerjanya menjadi lebih efisien dan efektif. 3. Otomatik, di mana peran pakar, perekayasa pengetahuan, dan pembangun basis pengetahuan (system builder) digabung. Misalnya dapat dilakukan oleh seorang system analyst seperti pada metode induksi.
Gambar 2.8 Metode akuisisi pengetahuan, (a) manual (b) akuisisi terkendali-pakar (c) induksi
37
2.2.14 Perancangan Sistem Pakar Seperti layaknya perancangan perangkat lunak, pada perancangan sistem pakar inipun diperlukan beberapa tahapan seperti terlihat pada gambar dibawah ini.
Gambar 2.9 Tahap-tahap perancangan sistem pakar (Durkin, 1994) Secara garis besar perancangan sistem pakar pada Gambar adalah sebagai berikut: 1. Mengidentifikasi masalah dan kebutuhan. Mengkaji situasi dan
memutuskan dengan pasti tentang masalah yang akan dikomputerisasi dan apakah dengan sistem pakar bisa lebih membantu atau tidak. Misalnya:
38
a. Penjual komputer mendapat kesulitan dalam mencocokkan hardware dengan software untuk aplikasi tertentu dan merakit sistem yang lengkap karena mereka tidak punya pengalaman yang luas atau pengetahuan yang cukup tentang produk dan inventory. b. Perusahaan bagian pemeliharaan penerbangan komersial memerlukan bantuan yang terus-menerus dari beberapa spesialis yang ada. Hal ini memperlambat operasi perbaikan dan pelayanan. c. Operator proyek tenaga nuklir harus mengawasi balasan komputer dan mencatat status proyek, kondisi, dan keamanan, dan harus segera menerapkan pengetahuannya dengan cepat untuk mencegah terjadinya kerusakan atau segera memperbaikinya. Dalam contoh tersebut ada 2 kondisi, yaitu: (1) user tidak tahu informasi atau tidak pernah berhubungan dengan seseorang yang ahli mengerjakannya; (2) user perlu pengetahuan untuk melakukan pekerjaan itu dengan cepat. 2. Menentukan masalah yang cocok. Ada beberapa syarat yang harus dipenuhi agar sistem pakar dapat bekerja dengan baik, yaitu: a. Domain masalah tidak terlalu luas; b. Kompleksitasnya menengah, artinya jika masalah terlalu mudah (dapat diselesaikan dalam beberapa detik saja) atau masalah yang sangat kompleks seperti peramalan inflasi tidak perlu menggunakan sistem pakar; c. Tersedianya ahli; d. Menghasilkan solusi mental bukan fisik, artinya sistem pakar hanya memberikan anjuran tidak bisa melakukan aktivitas fisik seperti membau atau merasakan. e. Tidak melibatkan hal-hal yang bersifat common sense, yaitu penalaran yang diperoleh dari pengalaman, seperti: adanya gravitasi membuat benda jatuh, atau jika lampu lalulintas merah maka kendaraan harus berhenti.
39
3. Mempertimbangkan alternatif. Dalam hal ini ada 2 alternatif yaitu menggunakan sistem pakar atau komputer tradisional. 4. Menghitung pengembalian investasi. Termasuk diantaranya: biaya pembuatan sistem pakar, biaya pemeliharaan, dan biaya training. 5. Memilih alat perancangan. Bisa digunakan software pembuat sistem pakar (seperti: SHELL) atau dirancang dengan bahasa pemrograman sendiri (misalnya: dengan menggunakan PROLOG). 6. Rekayasa Pengetahuan. Perlu dilakukan penyempurnaan terhadap aturanaturan yang sesuai. 7. Merancang sistem. Bagian ini termasuk pembuatan prototype, serta menterjemahkan pengetahuan menjadi aturan-aturan. 8. Melengkapi perancangan. Termasuk perancangan prototype apabila sistem yang telah ada sudah sesuai dengan keinginan. 9. Menguji dan mencari kesalahan sistem. 10. Memelihara sistem. Dalam hal ini harus dilakukan: memperbaharui pengetahuan, mengganti pengetahuan yang sudah ketinggalan, dan meluweskan sistem agar bisa lebih baik lagi dalam menyelesaikan masalah. 2.2.15 Alasan Perancangan Sistem Pakar Sistem pakar dikembangkan lebih lanjut disebabkan oleh beberapa alasan sebagai berikut: 1. Dapat menyediakan kepakaran yang dapat dimanfaatkan setiap waktu dan berbagai lokasi. 2. Dapat secara otomatis mengerjakan tugas-tugas rutin yang membutuhkan seorang pakar. 3. Keberadaan seorang pakar akan pensiun, pergi atau meninggal. 4. Seorang pakar memerlukan anggaran yang mahal dalam pemeliharaan maupun pengadaannya. 5. Terkadang kepakaran diperlukan untuk lingkungan berbahaya.
40
2.2.16 Sistem Pakar Berbasis Aturan Pengertian dari sistem pakar berbasis aturan adalah suatu program komputer yang dapat menganalisa informasi tertentu pada memori dengan menggunakan kumpulan aturan pada basis pengetahuan dan menggunakan mesin inferensi sebagai pencarian informasi dengan tujuan memperoleh informasi baru (Durkin, 1994). Sistem pakar berbasis aturan merupakan pilihan utama dalam membangun sebuah sistem pakar. Konsep dari sistem pakar berbasis aturan adalah mengakomodasi suatu situasi permasalahan baru pada short-term memory dengan produksi dari longterm memory, sehingga menghasilkan suatu informasi baru yang disimpan di short-term memory (Durkin, 1994).
Sebuah sistem pakar berbasis aturan meniru cara penalaran manusia ini dengan cara sebagai berikut (Durkin, 1994): 1. Meniru long-term memory manusia dengan basis pengetahuan yang berisi seperangkat aturan. 2. Meniru short-term memory manusia dengan memori kerja yang berisi fakta-fakta baik yang di-input-kan maupun hasil inferensi dari aturan. 3. Meniru cara penalaran manusia dengan mesin inferensi yang akan memproses fakta-fakta dari memori kerja dengan menggunakan aturanaturan yang ada di basis pengetahuan.
41
2.2.17 Arsitektur Sistem Pakar Berbasis Aturan Sebuah system pakar berbasis aturan terdiri dari tiga modul utama, yaitu basis pengetahuan, memori kerja dan mesin inferensi yang merupakan jantung dari sebuah sistem pakar dan bagian lainnya diluar ketiga komponen utama yang juga sangat penting diantaranya antarmuka pemakai,antarmuka pengembang, fasilitas penjelasan dan program eksternal (Durkin,1994). Arsitektur sistem pakar berbasis aturan dapat dilihat pada gambar berikut.
Gambar 2.11 Arsitektur sistem pakar berbasis aturan (Durkin, 1994) Keterangan Gambar: 1. Basis Pegetahuan adalah stuktur data yang menyimpan informasi data, aturan, relasi antara data dengan aturan dalam pengambilan keputusan. Basis pengetahuan dapat dikatakan sebagai kumpulan informasi dan pengalaman serang ahli pada suatu bidang tertentu. Basis pengetahuan ini terdiri dari dua elemen dasar, yaitu fakta dan aturan. Setiap kasus yang diketemui, diproses berdasarkan pengalaman yang pernah tercatat, baru dapat diambil kesimpulan. Apabilaterjadi suatu kasus yang belum pernah dialami, maka sistim pakar tidak mampu mengambil kesimpulan dari kasus tersebut. Untuk itu diperlukan penambahan data baru yang dapat dikatakan baik apabila memiliki sejumlah aturan yang bisa digunakan dalam setiap kemungkinan kasus dalam ruang lingkup tertentu. Dalam perancangannya, perancang harus mampu menggali sebanyak mungkin informasi dari narasumber dan memindahkannya ke dalam basis pengetahuan.
42
2.
Mesin inferensi merupakan otak sistem pakar yang mengandung mekanisme fugsi berfikir dan pola-pola penalaran sistem yang digunakan oleh seorang pakar. Mesin inferensi bertindak sebagai pengambil kesimpulan dan pengontro mekanisme dari sistem pakar. Karena itu mesin inferensi merupakan bagian terpenting dari sistem pakar. Karena sangat berperan penting salam menentukan evektivitas dan evesiensi sistem pakar. Mesin inferensi melakukan peroses pengambilan kesimpulan atau solusi yang terbaik (baik keputusan intermediate maupun keputusan final) berdasarkan suatu kumpulan aturan tertentu, untuk sekumpulan fakta-fakta yang spesifik, pada suatu situasi tertentu. Seperti halnya basis pengetahuan, mesin inferensi juga dari aturan-aturan dan fakta-fakta, bedanya apabila dalam basis pengetahuan, aturan-aturan dan fakta-fakta yang ada aberisi sebuah domain yang spesifik dari sifatsifat seorang pakar. Sedangkan aturan-aturan dan fakta-fakta pada mesin inferensi, berisi tentang kontril secara umum dan strategis kesimpulan yang dilakukan oleh sistem pakar. pencaria
3.
Memori kerja merupakan tempat penyimpanan fakta-fakta yang diketahui dari hasil menjawab pertanyaan.
4.
Pemakai (user) atau antar muka pemakai (user interface) merupakan apa yang ditampilkan dihadapan user, jadi melalui user interface-lah, user dapat melakukan interaksi dengan sistem, yaitu dengan memasukkan input dan menerima output. Karena itu, perancangan user interface haruslah memenuhi prinsip user friendly, yaitu mudah digunakan oleh user dan sejelas mungkin agar tidak terjadi adanya salah interpretasi. Pengembangn akan berhadapan dengan editor dan source code waktu mengembangkan program.
5.
Fasilitas penjelasan memberikan penjelasan kepada user mengenai alasan yang diberikan dari solusi
6.
Program eksternal. Berbagai progran seperti database, spreadsheets, algoritma dan lainnya yang berfungsi untuk mendukung sistem.
43
2.2.18 Contoh Sistem Pakar Berbasis Aturan Aplikasi Sederhana: Sistem Pakar Bengkel Mobil Ini adalah contoh Sistem Pakar sederhana, yang bertujuan untuk mencari apa yang salah sehingga mesin mobil pelanggan yang tidak mau hidup, dengan memberikan gejala-gejala yang teramati. Anggap Sistem Pakar kita memiliki aturan-aturan berikut: 1. JIKA mesin_mendapatkan_bensin DAN starter_dapat_dihidupkan MAKA ada_masalah_dengan_pengapian. 2. JIKA TIDAK BENAR starter_dapat_dihidupkan DAN TIDAK BENAR lampu_menyala MAKA ada_masalah_dengan_aki 3. JIKA TIDAK BENAR starter_dapat_dihidupkan DAN lampu_menyala MAKA ada_masalah_dengan_starter 4. JIKA ada_bensin_dalam_tangki_bahan_bakar MAKA mesin_mendapatkan_bensin Terdapat 3 masalah yang mungkin, yaitu:ada_masalah_dengan_pengapian, ada_masalah_dengan_aki dan ada_masalah_dengan_starter. Dengan sistem terarah-tujuan (goal-driven), kita hendak membuktikan keberadaan setiap masalah tadi. Pertama, Sistem Pakar berusaha untuk membuktikan kebenaran
ada_masalah_dengan_pengapian. Di sini, aturan 1 dapat digunakan, sehingga Sistem Pakar akan menset goal baru untuk membuktikan apakah
mesin_mendapatkan_bensin serta starter_dapat_dihidupkan. Untuk membuktikannya, aturan 4 dapat digunakan, dengan goal baru untuk membuktikan mesin_mendapatkan_bensin. Karena tidak ada aturan lain yang dapat digunakan menyimpulkannya, sedangkan sistem belum memperoleh solusinya, maka Sistem Pakar kemudian bertanya kepada pelanggan: Apakah ada bensin dalam tangki bahan bakar?. Sekarang, katakanlah jawaban klien adalah Ya, jawaban ini kemudian dicatat, sehingga klien tidak akan ditanyai lagi dengan pertanyaan yang sama.
44
Karena sistem sekarang sudah dapat membuktikan bahwa mesin mendapatkan bensin, maka sistem sekarang berusaha mengetahui apakah starter_dapat_dihidupkan. Karena sistem belum tahu mengenai hal ini, sementara tidak ada aturan lagi yang dapat menyimpulkannya, maka Sistem Pakar bertanya lagi ke klien: Apakah starter dapat dihidupkan?. Misalkan jawabannya adalah Tidak, maka tidak ada lagi aturan yang dapat membuktikan
ada_masalah_dengan_pengapian, sehingga Sistem Pakar berkesimpulan bahwa hal ini bukanlah solusi dari problem yang ada, dan kemudian melihat hipotesis berikutnya: ada_masalah_dengan_aki. Sudah diketahui (dibuktikan) bahwa mesin tidak dapat distarter, sehingga yang harus dibuktikan adalah bahwa lampu tidak menyala. Sistem Pakar kemudian bertanya: Apakah lampu menyala?. Misalkan jawabannya adalah Tidak, maka sudah terbukti bahwa ada masalah dengan aki. Sistem ini mungkin berhenti sampai di sini, tetapi bbisaanya ada kemungkinan terdapat lebih dari satu solusi (misalnya terdapat lebih dari satu kerusakan), atau ada kemungkinan terdapat solusi lain yng lebih tepat, sehingga bbisaanya semua hipotesis diperiksa kebenarannya. Sistem Pakar ini kemudian mencoba membuktikan bahwa ada_masalah_dengan_starter, namun dari fakta yang sudah diperoleh, yaitu lampu tidak menyala, maka pembuktiannya menjadi gagal. Dengan demikian solusi yang diberikan oleh Sistem Pakar adalah ada masalah dengan aki. Secara lengkap, interaksi antara Sistem Pakar dengan klien mungkin seperti ini: System Pakar Klien System Pakar Klien System Pakar Klien System Pakar : Apakah ada bensin dalam tangki bahan bakar? : Ya : Apakah starter dapat dihidupkan? : Tidak : Apakah lampu menyala? : Tidak : Saya berkesimpulan bahwa ada masalah dengan aki
45
2.3
Basis Data Definisi basis data diantaranya adalah : Basis data adalah simpanan
data-data elektronik yang ditetapkan secara formal dan dikontrol secara terpusat untuk digunakan dalam berbagai aplikasi yang berbeda. (Kendall & Kendal, 2006).
2.3.1 Definisi Basis data Pendapat lain tentang definisi basis data adalah adalah himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah. (Kroenke, 2005) Terdapat beberapa komponen yang membentuk suatu database yang biasa disebut dengan jenjang data, yaitu: 1. Karakter Karakter merupakan bagian data yang terkecil, dapat berupa karakter numerik, huruf ataupun karakter-karakter khusus yang membentuk suatu item data. 2. Field Suatu field menggambarkan suatu atribut dari record yang menunjukkan suatu item dari data yang mewakili suatu entity. Ada tiga hal yang penting dalam suatu field, yaitu field name, Representation field, dan Field value,. 3. Record Record adalah kumpulan elemen-elemen yang saling berkaitan,
menginformasikan suatu entity secara lengkap. 4. File File adalah kumpulan record-record sejenis yang mempunyai panjang elemen yang sama, atribut yang sama namun mempunyai data value yang berbeda. 5. Database Database adalah kumpulan dari file-file yang saling berkaitan satu sama lain.
46
2.3.2 Pemodelan Data/ Entity Relationship Diagram (ERD) Model Entity Relationship merupakan suatu bentuk model yang didasarkan pada persepsi dunia nyata dengan menggambarkan sekumpulan objek. Adapun objek yang dimaksud adalah, (Andri K, 2007): 1. Entitas (entity) adalah individu yang mewakili sesuatu yang nyata yang dapat dibedakan satu dengan lainnya dengan sifat- sifatnya. Himpunan entitas adalah kumpulan entitas yang mempunyai sifat atau karakteristik yang sama. 2. Relasi (relationship) adalah asosiasi atau keterhubungan yang
menunjukkan adanya suatu hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Himpunan relasi merupakan kumpulan semua relasi yang terbentuk. 3. Atribut adalah properti atau ciri atau karakteristik dari tipe entitas yang dipentingkan di satu sistem/ organisasi. Setiap atribut entitas
menspesifikasikan properti tertentu dari entitas. 4. Konstrain- konstrain integritas. Entity Relationship Diagram (ERD) merupakan suatu bentuk diagram yang menggambarkan model Entity-Relationship yang berisi komponenkomponen himpunan entitas atau himpunan relasi yang masing-masing dilengkapi dengan atribut-atribut yang mempresentasikan seluruh fakta dari dunia nyata yang dicermati.
47
Notasi atau simbol yang digunakan dalam ERD adalah sebagai berikut: Tabel 2.7 Notasi yang digunakan pada ERD SIMBOL NAMA SIMBOL Entitas DESKRIPSI Menunjukkan Entitas berhubungan dengan sistem Menunjukkan dimiliki Entitas Atribut yang
Atribut
yang
Relasi
Link
2.3.3 Kardinalitas Relasi Dalam ERD hubungan (relasi) dapat terdiri dari sejumlah entitas yang disebut dengan derajad relasi. Derajat relasi maksimum disebut dengan kardinalitas sedangkan derajat minimum disebut dengan modalitas. Jadi kardinalitas relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas lain. Ada tiga derajat relasi, yaitu, (Andri K, 2007): 1. One to One (Satu ke Satu). Dalam relasi satu ke satu, setiap record dalam tabel A berhubungan paling banyak dengan satu record pada tabel B, dan begitujuga sebaliknya. Jenis relasi ini tidak umum, karena sebenarnya tabel A dan tabel B dapat digabungkan menjadi satu tabel. Contoh: Setiap pengiriman mempunyai satu kode barcode.
48
2.
One to Many (Satu ke Banyak). Relasi One to Many atau relasi satu ke banyak adalah bentuk relasi yang paling umum. Dalam relasi satu ke banyak , sebuah record dari tabel A berhubungan dengan banyak record pada tabel B,. Namun sebuah record dalam tabel B berhubungan dengan paling banyak dengan satu record pada tabelA. Contoh: Setiap pengirim dapat mengirim satu atau lebih barang.
Gambar 2.13 Contoh relasi satu ke banyak 3. Many to Many (Banyak ke Banyak). Dalam relasi banyak ke banyak, sebuah record dalam tabel Adapat berhubungan dengan banyak record pada tabel B dan sebaliknya. Jenis relasi ini hanya dimungkinkan jika kita mendefinisikan tabel baru sebagai perantara. Contoh: setiap mahasiswa dapat mengambil mata kuliah lebih dari satu dan setiap mata kuliah dapat diambil oleh lebih dari satu mahasiswa.
49
2.3.4 Normalisasi Istilah normalisasi berasal dari E. F. Codd, salah seorang perintis teknologi basis data. Selain dipakai sebagai metodologi tersendiri untuk menciptakan struktur tabel (relasi) dalam basis data (dengan tujuan mengurangi redudansi/ kemubaziran data), normalisasi terkadang hanya dipakai sebagai perangkat verifikasi terhadap tabel- tabel yang dihasilkan oleh metodologi lain. Normalisasi memberikan panduan yang sangat membantu bagi
pengembang untuk mencegah penciptaan struktur tabel yang kurang fleksibel atau mengurangi ketidakefisienan. Normalisasi didefinisikan sebagai Proses untuk mengorganisasi file untuk menghilangkan grup elemen yang berulang-ulang. (Kendall & Kendal, 2005). Dalam normalisasi, sebuah basis data dikatakan baik apabila setiap tabel yang menjadi unsur pembentuk basis data juga telah berada dalam keadan baik atau normal. Suatu tabel dikatakan berada dalam bentuk normal tertentu jika memenuhi kondisi- kondisi tertentu. Adapun bentuk-bentuk normal pada database adalah sebagai berikut, (Fatansyah, 2002) : 1. Bentuk Normal Tahap Pertama (1NF), bentuk 1NF terpenuhi jika sebuah tabel tidak memiliki atribut bernilai banyak atau lebih dari satu atribut dengan domain nilai yang sama. 2. Bentuk Normal Tahap Kedua (2NF), bentuk 2NF terpenuhi jika pada sebuah tabel, semua atribut yang tidak termasuk key primer memiliki ketergantungan fungsional (KF) pada key primer secara utuh. 3. Bentuk Normal Tahap Ketiga (3NF), bentuk 3NF terpenuhi jika, untuk setiap KF dengan notasi X A, dimana A mewakili semua atribut tunggal didalam tabel yang tidak ada dalam dalam X. Maka X haruslah superkey pada tabel tersebut atau A merupakan bagian dari key primer dari tabel tersebut. 4. Boyce-Code Normal Form (BCNF), sebuah tabel dikatakan berada dalam BCNF jika untuk semua KF dengan notasi X Y, maka X harus merupakan superkey pada tabel tersebut. Jika tidak demikian, maka tabel tersebut harus didekomposisi berdasarkan KF yang ada, hingga X menjadi superkey dari tabel-tabel hasil dekomposisi.
50
2.3.5 Diagram Alur Program 2.3.5.1 Flowmap Flowmap berfungsi untuk memodelkan masukan, keluaran, proses maupun transaksi dengan menggunakan simbol-simbol tertentu. Flowmap harus memudahkan bagi pemakai Pembuatan
digunakan dalam pembuatan Flowmap, adalah seperti pada tabel berikut: Tabel 2.8 Simbol-simbol Flowchart dan Flowmap
SIMBOL
KETERANGAN Digunakan untuk menunjukkan dokumen input maupun output baik untuk proses menual, mekanik maupun komputer Digunakan untuk mewakili data input / output
Data
Manual Input
menunjukkan
Processs
Digunakan untuk menunjukkan proses dari operasi program Digunakan untuk menunjukkan suatu pemilihan kondisi dalam program Digunakan untuk menunjukkan output yang ditampilkan di monitor Digunakan untuk menunjukkan awal dan akhir dari suatu proses Digunakan untuk menunjukkan
Decision
Display
51
input/output magnetik
menggunakan
disk
Sequential Data
Preparation
Card
Digunakan untuk menunjukkan input/output menggunakan kartu Digunakan untuk menunjukkan input/output menggunakan Pita kertas
Paper Tape
Manual Operation
menunjukkan
Predefined Process
Digunakan untuk menghubungkan Dynamic Connector setiap langkah proses serta menunjukkan arah aliran data Digunakan untuk menghubungkan suatu langkah dengan langkah lainnya dalam halaman yang sama Digunakan untuk menghubungkan Off-Page Reference suatu langkah dengan langkah lainnya dalam halaman yang berbeda On-Page Reference
52
2.3.5.2 Data Flow Diagram Diagram Aliran Data (DAD) atau Data flow Diagram dapat didefinisikan sebagai berikut : Data Flow Diagram (DFD) atau diagram alir data adalah suatu model logika data atau proses yang dibuat untuk menggambarkan darimana asal data dan kemana tujuan data yang keluar daru sistem, dimana data disimpan, proses apa yang menghasilkan data tersebut dan interaksi antara data yang tersimpan dan proses yang dikenakan pada data tersebut. (Andri K, 2007). Simbol- simbol yang sering digunakan dalam Data Flow Diagram (DFD) dapat dilihat pada tabel berikut ini: Tabel 2.9 Simbol-simbol pada DFD (Data Flow Diagram) SIMBOL KETERANGAN Menggambarkan proses yang dilakukan oleh sistem
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.
53
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. DFD merupakan alat yang digunakan pada metodologi perancangan sistem yang terstruktur. Kelebihan utama pendekatan aliran data adalah sebagai berikut, (Andri K, 2007): Dalam pembuatan DFD (Data Flow Diagram), beberapa hal penting lainnya adalah sebagai berikut, (Andri K, 2007): 1. Komponen Proses. Komponen proses memperlihatkan atau
menggambarkan transformasi input menjadi output. Ada 4 (empat) kemungkinan yang dapat terjadi dalam proses sehubungan dengan input dan output seperti terlihat pada gambar di bawah ini:
2. Komponen Penyimpanan Data (Data Store). Komponen ini digunakan untuk membuat model sekumpulan paket data dan diberi nama dengan kata benda bersifat jamak. Yang perlu diperhatikan tentang data store adalah: a. Alur data dari proses menuju data store, hal ini berarti data store berfungsi sebagai tujuan/ tempat penyimpanan dari suatu proses (proses write).
54
b. Alur data dari data store ke proses, hal ini berarti data store berfungsi sebagai sumber atau proses yang memerlukan data (proses read). c. Alur data dari proses menuju data store dan sebaliknya berarti berfungsi sebagai sumber dan tujuan (proses update).
3. Komponen Alur Data (Data Flow). Alur data digunakan untuk menerangkan perpindahan data atau paket data dari satu bagian ke bagian lainnya. Alur data dapat berupa kata, pesan, formulir ataupun informasi. Ada 4 (empat) konsep tentang alur data yang diantaranya: a. Packets of Data; apabila ada 2 data/ lebih yang mengalir dari 1 sumber yang sama menuju pada tujuan yang sama dan mempunyai hubungan digambarkan dgn 1 alur data. b. Diverging Data Flow; apabila ada sejumlah paket data yang berasal dari sumber yang sama menuju pada tujuan yang berbeda atau paket data yang kompleks dibagi menjadi beberapa elemen data yang dikirim ke tujuan yang berbeda. c. Converging Data Flow; apabila ada beberapa alur data yang berbeda sumber menuju ke tujuan yang sama. d. Sumber dan Tujuan; arus data harus dihubungkan pada proses, baik dari maupun yang menuju proses.
55
2.4
menyelesaikan suatu masalah dengan menggunakan suatu bahasa pemograman. 2.4.1 Bahasa Pemrograman Microsoft Visual Basic 6.0 Microsoft Visual Basic 6.0 adalah bahasa pemrograman yang digunakan untuk membuat aplikasi Windows yang berbasis grafis (GUI - Graphical User Interface). Visual Basic merupakan event-driven programming (pemrograman terkendali kejadian) artinya program menunggu sampai adanya respon dari pemakai berupa event/kejadian tertentu. Ketika event terdeteksi, kode yang berhubungan dengan event (procedure event) secara otomatis akan disajikan. Visual Basic menawarkan kepada penggunanya untuk membuat User Interface (antar muka pengguna) dalam waktu singkat. Bagi yang pernah berkerja dengan C, Turbo Pascal, Turbo Basic, tentu akan merasakan berapa banyak waktu yang dihabiskan untuk mendesain User Interface sebelum konsentrasi ke flow program (business logic). Dengan melalui Visual Basic, konsep perancangan aplikasi akan dimulai dengan pembentukkan user interface, kemudian mengatur properti dari objek-objek yang digunakan dalam user interface (warna tombol, warna layar, judul layar, dan lain-lain) , dan baru dilakukan penulisan kode program untuk menangani kejadian-kejadian (event). 2.4.1.1 Membuka Aplikasi Visual Basic 6.0 Langkah pertama dalam membuat program menggunakan Visual Basic 6.0 adalah dengan membuka aplikasi dari Menu Start, pilih Microsoft Visual Basic 6.0 dan akhirnya pilih shortcut Microsoft Visual Basic 6.0. maka akan tampil jendela IDE VB dan yang pertama kali akan ditampilkan adalah jendela kotak dialog "New Project", seperti yang bisa anda lihat dibawah ini:
56
Gambar 2.17 Tampilan saat memulai microsoft visual basic 2.4.1.2 Struktur Aplikasi Visual Basic 6.0 Struktur dari Microsoft visual basic adalah sebagai berikut: 1. Form adalah suatu objek yang dipakai sebagai tempat bekerja program aplikasi. Form berbentuk jendela dan dapat dibayangkan sebagai kertas kerja yang dapat ditulis atau dapat diletakkan kedalam objek-objek lain. 2. Control adalah tampilan berbasis grafis yang dimasukkan pada form untuk membuat interaksi dengan pemakai (text box, label, scroll bar, tombol command). 3. Properties adalah Nilai/karakteristik yang dimiliki oleh sebuah objek Visual Basic. Digunakan untuk menentukan setting suatu objek. Contoh: Name, Captions, Size, Color, Position dan Text. 4. Methode adalah Serangkaian perintah yang sudah tersedia pada suatu objek yang dapat diminta untuk mengerjakan tugas khusus. 5. Event Procedure adalah kode yang berhubungan dengan suatu objek. Kode ini akan dieksekusi ketika ada respon dari pemakai berupa event tertentu. 6. General Procedure Kode yang tak berhubungan dengan suatu objek. Kode ini harus diminta oleh aplikasi. 7. Module adalah dapat disejajarkan dengan form., tetapi tidak
57
2.4.1.3 Lingkungan Visual Basic 6.0 Layar Visual Basic adalah suatu lingkungan besar yang terdiri dari beberapa bagian kecil yang semuanya memiliki sifat : 1. Floating 2. Sizeable 3. Dockable : dapat digeser ke posisi mana saja. : ukurannya dapat di ubah-ubah. : dapat menempel dengan bagian lain yang berdekatan.
Gambar 2.18 Lingkungan visual basic 6.0 Fungsi dari masing-masing komponen adalah: 1. Menu Bar, digunakan untuk memilih tugas-tugas tertentu seperti menyimpan project, membuka project, dan lain-lain. 2. Main Toolbar, digunakan untuk melakukan tugas-tugas tertentu dengan cepat. 3. Jendela Project, jendela ini berisi gambaran dari semua modul yang terdapat dalam aplikasi . dapat menggunakan icon Toggle Folders untuk menampilkan modul-modul dalam jendela tersebut secara di group atau berurut berdasarkan nama. dapat menggunakan Ctrl+R untuk
58
4. Jendela Form Designer, jendela ini merupakan tempat untuk merancang user interface dari aplikasi. Jadi jendela ini menyerupai kanvas bagi seorang pelukis. 5. Jendela Toolbox, jendela ini berisi komponen-komponen yang dapat gunakan untuk mengembangkan user interface. 6. Jendela Code, merupakan tempat bagi untuk menulis koding. dapat
menampilkan jendela ini dengan menggunakan kombinasi Shift-F7. 7. Jendela Properties, merupakan daftar properti-properti object yang sedang terpilih. Sebagai contohnya dapat mengubah warna tulisan (foreground) dan warna latarbelakang (background). menampilkan jendela properti. 8. Jendela Color Palette, fasilitas cepat untuk mengubah warna suatu object. 9. Jendela Form Layout, akan menunjukan bagaimana form bersangkutan ditampilkan ketika runtime. Main window visual basic terdiri dari title bar (baris judul), yang berisi proyek, mode operasi Visual Basic sekarang dan form aktif. Menu bar merupakan menu drop-down dimana kita dapat mengontrol operasi dari lingkungan Visual Basic. Toolbar berisi kumpulan gambar yang dapat menggunakan F4 untuk
mewakili perintah menu. Jendela utama juga menampilkan lokasi form aktif terhadap sudut kiri atas layar, juga lebar dan panjang dari form yang aktif (Tim Penerbit Andi, 2009). 2.4.2 Microsoft Office Access Microsoft Access adalah suatu aplikasi yang dapat membantu kita membuat sebuah aplikasi database dalam waktu yang relatif singkat. Biasanya digunakan untuk pembuatan aplikasi-aplikasi yang kecil hingga menengah. Aplikasi ini merupakan anggota dari beberapa aplikasi Microsoft Office, selain tentunya Microsoft Word, Microsoft Excel, dan Microsoft PowerPoint. Aplikasi ini menggunakan mesin basis data Microsoft Jet Database Engine, dan juga menggunakan tampilan grafis yang intuitif sehingga memudahkan pengguna. Versi terakhir adalah Microsoft Office Access 2007 yang termasuk ke dalam Microsoft Office System 2007 (Haryanto, 2003).
59
2.5
Televisi Berwarna Televisi berwarna adalah sebuah alat yang berfungsi untuk menangkap
siaran berupa suara dan gambar yang berwarna (bukan monokrom), maupun datadata grafis lainnya. 2.5.1 Pengertian Televisi Berwarna Pada tahun 1873 seorang operator telegram menemukan cara agar manusia dapat melihat arus listrik dengan menggunakan selenium camera. Karena pada awal kemunculan televisi gambarnya hanya hitam-putih, maka teknologi televisi berwarna ini dianggap sebagai penemuan yang sangat besar bagi dunia penyiaran dalam media elektronik. Seorang Jerman membuat hak paten atas penemuannya pada tahun 1904 yang berisi tentang proposal untuk sistem televisi berwarna. Dan akhirnya antara tahun 1946 dan 1950 para staf peneliti dari laboratorium RCA menemukan televisi elektronik berwarna pertama di dunia yang masih kompatibel dengan sistem monokrom. Teori warna menyatakan bahwa semua warna dapat direproduksi dengan mencampur warna-warna dasar (primary colors): merah, biru, dan hijau. Televisi berwarna diwujudkan dengan cara memisahkan gambar yang akan ditampilkan ke dalam tiga warna dasar merah, biru, dan hijau dengan media kaca pemisah tiga warna. Setelah tahap pemisahan warna, selanjutnya warna yang telah terpisah tadi diubah menjadi sinyal-sinyal listrik dan kemudian sinyal listrik tersebut dikombinasikan oleh alat khusus. Sinyal yang telah terkombinasikan tadi lalu di terima oleh pesawat penerima (reciever) untuk kemudian dimasukkan ke dalam Cathode Ray Tube (CRT) atau biasa disebut dengan tabung sinar katoda dan akhirnya gambar dapat ditampilkan di layar televise
(http://www.explainthatstuff.com).
60
2.5.2 Bagian Penerima Televisi Berwarna Bentuk dasar diagram blok dari bagian penerima televisi warna terdiri dari bagian luar (antena), tuner, bagian suara (audio), bagian pengolah gambar/warna (video), sinkronisasi dan defleksi.
Gambar 2.20 Diagram blok penerima televisi berwarna (Sani A, 2005). 2.5.2.1 Antena Pesawat penerima televisi dari jenis apapun selalu dilengkapi dengan antenna. Antenna mempunyai bentuk yang sederhana, yang terdiri dari elemenelemen alumunium yang dirakit sedemikian rupa, tetapi antenna mempunyai pengaruh yang besar terhadap penangkapan (penerima) sinyal-sinyal televisi, terutama pada tempat (lokasi) yang jauh dari stasiun pemancar. Adapun fungsi dari antenna televisi adalah untuk menangkap dan menerima sinyal atau gelombang yang dipancarkan oleh antenna pemancar. Adapun gelombang yang diterima oleh penerima pesawat televisi adalah gelombang VHF (Very High Frequency) dan UHF (Ultra High Frequency), karena kedua gelombang pembawa suara dan gelombang pembawa gambar mempunyai komponen frekuensi yang dipancarkan pada sebuah jalur frekuensi gelombang VHF atau UHF sebagai pembawa pada pancaran televisi berwarna (Sani A, 2005).
61
2.5.2.2 Tuner (penela) Bagian tuner sering disebut juga sebagai bagian penala. Bagian ini sebagai penerima televisi, tuner televisi berwarna dengan penerima televisi monochrom mempunyai kedudukan yang sama. Tuner terdiri dari penguat frekuensi tinggi (penguat HF), mixer dan osilator lokal (lihat Gbr, 2.40). Dengan mixer dan osilator lokal gelombang televisi dirubah menjadi sinyal frekuensi IF, untuk dapat diterima oleh penerima televisi. Bagian tuner dilengkapi converter (pengubah frekuensi), penguat HF (frekuensi tinggi), pada tuner memperkuat gelombang televisi maka S/N (sinyal/noise) dapat diperbaiki
(http://www.explainthatstuff.com).
Gambar 2.21 Bagian blok tuner 2.5.2.3 AFT (Automatic Fine Tuning) Rangkaian AFT berfungsi untuk mengatur frekwensi pembawa gambar dari penguat IF agar frekwensinya 38,9 MHz. Tegangan pengatur AFT diambil dari detektor 5,5 MHz yang mendeteksi penyimpangan dari harga 38,9 MHz, kemudian diumpan balikkan ke oscilator lokal pada tuner (Sani A, 2005). 2.5.2.4 Pengeras Suara Pada Speaker signal Audio yang masih berupa arus listrik dirubah menjadi medan magnet, medan magnet tersebut akan menggetarkan membran speaker. Pada membran speaker getaran-getaran tersebut disesuaikan dengan frekuensi pendengaran manusia sehingga getaran suara tersebut dapat menghasilkan keluaran suara yang dapat dinikmati dengan indra pendengaran (telinga).
62
2.5.2.5 Bagiaan Suara (audio) Bagian penerima suara terdiri pendeteksi sinyal suara, penguat IF suara, detector FM dan penguat akhir. Proses pertama yang dilakukan adalah mendeteksi sinyal pembawa suara yang telah dipisahkan dengan gelombang pembawanya pada Demodulator Amplitudo, diterima penguat IF suara atau sound IF amplifier digunakan untuk melakukan penguatan terhadap sinyal IF suara selanjutnya masuk ke detektor FM untuk mendeteksi signal FM untuk diteruskan ke penguat dan membumikan signal AM yang lolos, kemudian signal FM dikuatkan lebih lanjut oleh penguat akhir (Sani A, 2005). 2.5.2.6 Bagian Pengolah Gambar (video) Proses pengolahan video gambar televisi warna terdiri dari penguat IF video, detektor video dan penguat video adalah sebagai berikut: 2.5.2.6.1 Penguat IF Video Penguat IF video atau bagian penguat menengah video merupakan bagian yang menerima sinyal masukan dari bagian mixer. Sinyal IF gambar yang diterima dari bagian mixer, perlu diperkuat agar sinyal yang memiliki penguatan dan respon frekuensi yang cukup untuk penerima televisi. Penguat IF diberi tegangan AGC (Automatic Gain Control / pengatur penguatan otomatis) dan diberikan pada penguat HF di rangkaian tuner, sehingga output tegangan pada penguat IF selalu konstan walaupun tegangan input berubah-ubah (Sani A, 2005). 2.5.2.6.2 Detektor Video Detektor video ini bertugas untuk memisahkan sinyal pembawa gambar dan suara. Sinyal gambar diperkuat dan dibersihkan dari sinyal-sinyal lain yang mengganggu. Output dari rangkaian detektor video yang bercampur disalurkan ke penguat gambar dan penguat sinkronisasi. Gelombang pembawa suara telah diperlemah didalam pesawat penerima agar didapatkan suatu pencampuran yang sempurna tanpa adanya gangguan antara suara dan gambar (Sani A, 2005).
63
2.5.2.6.3 Penguat Video Bagian penguat video digunakan untuk menguatkan sinyal luminan hasil keluaran dari detector video, agar sinyal memiliki kekuatan yang cukup untuk menggerakan tabung gambar. Pada bagian penguat video dilengkapi
beberaparangkaian pengatur, seperti pengatur kontras, pengatur brightness yang disebut Automatic Brightness Limiter atau pengatur kuat cahaya secara otomatis, dan berfungsi untuk melindungi rangkaian tegangan tinggi terhadap kemungkinan terjadinya muatan yang berlebihan yang disebabkan oleh kuat cahaya pada tabung gambar. Disamping itu juga dilengkapi dengan rangkaian pembangkit searah (DC) sinyal televisi agar dapat menghasilkan gambar yang baik pada layar gambar (Sani A, 2005). 2.5.2.7 Processor Main Unit Utama IC STV 2286 IC STV2286 adalah sebuah rangkaian terpadu yang memproses signal PIF, SIF, Video dan Chroma untuk PAL, SECAM dan NTSC
(http://www.explainthatstuff.com).
64
BAB III ANALISIS SISTEM 3.1 Penilaian (Assessment) Pada proses analisis sistem, tahap penilaian merupakan tahapan pertama yang meliputi current system di SMK Negeri 2 Garut, kelayakan dan justifikasi masalah, analisis kebutuhan, dan tujuan perancangan sistem pakar. 3.1.1 Current System di SMK Negeri 2 Garut Dari hasil penelitian di lapangan, proses diagnosis kerusakan televisi berwarna dibengkel SMK Negeri 2 Garut jurusan teknik audio video masih dilakukan secara manual dan tidak adanya panduan resmi yang menjadi acuan. Dengan keterbatasanya jumlah guru mata pelajaran reparasi televisi untuk membimbing para siswa yang banyak dalam memutuskan masalah pada kerusakan televisi berwarna menjadi sebuah kendala bagi SMK Negeri 2 Garut. Oleh karena itu siswa di SMK Negeri 2 Garut untuk melakukan diagnosis kerusakan televisi berwarna dibutuhkan waktu lama. Gambaran Current system di SMK Negeri 2 Garut:
Monitorin g Laporan
Silabus Laporan
Bertanya
Diskusi
64
65
3.1.2 Kelayakan dan Justiffikasi Masalah Berdasarkan uraian current system diatas, maka dapat diidentifikasi permasalahan tersebut sebagai berikut: 1. Keterbatasanya 1 orang guru mata pelajaran reparasi televisi dan 1 orang asisten bengkel di jurusan teknik audio video sehingga, dengan jumlah 288 siswa yang banyak untuk memutuskan masalah kerusakan televisi berwarna dibutuhkan waktu yang lama. 2. Modul praktikum belum mampu menjawab permasalahan untuk
memutuskan masalah kerusakan televisi berwarna dengan waktu singkat. 3. Kedua hal tersebut kemungkinan akan memperlambat proses keputusan hasil diagnosis kerusakan televisi berwarna. Dari ketiga hal tersebut, maka dari itu aplikasi sistem pakar diharapkan dapat mempermudah dan membantu para siswa dalam proses belajar di bengkel dalam memutuskan kerusakan pada televisi berwarna. Jadi user akan melakukan penelusuran berdasarkan data yang dipilih, sampai pada akhirnya sistem akan menampilkan hasil diagnosis atas kerusakan televisi berwarna. 3.1.3 Analisis Kebutuhan Analisis kebutuhan merupakan proses untuk mendapatkan kebutuhan tentang permasalahan yang akan dibahas dan digunakan sebagai panduan dalam upaya perancangan. Pada tahapan analisis kebutuhan perancangan aplikasi sistem pakar televisi berwarna, terdiri dari kebutuhan hardware atau perangkat keras, kebutuhan software atau perangkat lunak dan kebutuhan brainware atau manusia. 3.1.3.1 Kebutuhan Hardware Hardware atau perangkat keras yang dibutuhkan dalam proses
perancangan sistem pakar televisi berwarna, adalah seperangkat komputer dengan spesifikasi sebagai berikut:
66
Tabel 3.1 Spesifikasi minimum pada komputer No. 1 2 3 4 5 6 7 8 Nama Hardware Processor RAM (Memory) Harddisk Optical Drive VGA Card Keyboard Mouse Monitor Spesifikasi Minimal Intel Pentium II Minimal 128 Mb Minimal 2048 Mb Free Minimal CD-Rom 16x Onboard Standard Standard Resolusi 800 x 600 pixel Rekomendasi Pentium IV (setingkat) 256 Mb 80 Gb CD-Rom 52x Onboard Standard Standard Resolusi 800 x 600 pixel
Keterangan Tabel: 1. Ruang kosong sebesar 2048 Mb pada harddisk dimaksudkan untuk menampung file installasi software pendukung seperti Microsoft Visual Basic 6.0, Microsoft Office Access 2007, Microsoft Office Visio 2003 serta untuk menyimpan file perancangan sistem pakar. 2. Optical Drive CD Rom 16X, digunakan proses instalasi software pendukung seperti disebut diatas.
3.1.3.2 Kebutuhan Software Khusus dalam proses perancangan sistem pakar televisi berwarna, tentu memerlukan perangkat lunak pendukung yang digunakan. Adapun perangkat lunak (software) yang diperlukan antara lain: 1. Microsoft Windows XP (atau yang lebih tinggi), sebagai software sistem operasi. 2. Microsoft Office Access 2003 (atau yang lebih tinggi), sebagai software pendukung untuk membangun basis data. 3. Microsoft Office Visio 2003 (atau yang lebih tinggi), sebagai software pendukung untuk membuat laporan seperti desain flowmap, DFD, dan lainnya.
67
4. Microsoft Visual Basic 6.0 (atau yang lebih tinggi), sebagai software utama untuk merancang desain antarmuka pengguna (user interface) sistem pakar. 5. Software pendukung lainnya yang diperlukan baik untuk proses perancangan sistem pakar maupun proses pembuatan laporan perancangan. 3.1.3.3 Kebutuhan Brainware Brainware atau manusia yang terlibat dalam perancangan sistem pakar televisi berwarna, secara umum membutuhkan beberapa elemen sumber daya manusia sebagai berikut: 1. Pakar (expert), yaitu guru mata pelajaran reparasi televisi yang
mempunyai pengetahuan, pengalaman, dan metode khusus, serta mampu menerapkannya untuk memecahkan masalah atau memberi nasehat. Pakar menyediakan pengetahuan tentang bagaimana nantinya sistem pakar bekerja. 2. Perekayasa pengetahuan (knowledge engineer), yang membantu pakar untuk menyusun area permasalahan dengan menerjemahkan dan mengintegrasikan jawaban pakar terhadap pertanyaan-pertanyaan dari klien, menarik analogi, serta memberikan contoh-contoh yang berlawanan, kemudian menyusun basis pengetahuan. 3. Programmer, seorang programmer dibutuhkan untuk melaksanakan tugas menyusun dan menterjemahkan algoritma kedalam sintaks bahasa pemrograman tertentu termasuk mendesain antarmuka sistem pakar. 4. Pengguna (user), meliputi: seorang siswa yang sedang membutuhkan nasehat (sistem pakar sebagai konsultan atau advisor), seorang pakar (sistem pakar sebagai kolega atau asisten, yang dapat memberikan opini kedua) serta memberikan rekomendasi tentang desain antarmuka pada proses evaluasi sistem pakar. 5. Partisipan lain yang mungkin juga perlu dilibatkan seperti, graphic desainer, tool builder, staf administrasi, staf keuangan, marketing, manajer operasional dan lain sebagainya.
68
3.1.4 Tujuan Perancangan Sistem Pakar Tujuan yang ingin dicapai yaitu perancangan sistem pakar yang dapat dijadikan sebagai pilihan alternative dalam membantu memudahkan guru mata pelajaran reparasi televisi untuk membingbing para siswa dibengkel untuk
melakukan diagnosis kerusakan televisi dan membantu memudahkan para siswa dalam memutuskan masalah pada kerusakan televisi dengan waktu singkat, yang nantinya akan diperbaiki. 3.2 Akuisisi Pengetahuan Akuisisi pengetahuan merupakan proses untuk mendapatkan pengetahuan tentang permasalahan yang akan dibahas dan digunakan sebagai panduan dalam upaya perancangan. Pengetahuan ini digunakan untuk memberikan informasi tentang permasalahan yang menjadi bahan acuan dalam merancang aplikasi sistem pakar. Kelompok frekuensi yang ditetapkan untuk transmisi sinyal disebut saluran (channel). Masing-masing mempunyai sebuah saluran 6 MHz dalam salah satu bidang frekuensi (band) yang dialokasikan untuk penyiaran televisi komersial yaitu: 1. VHF bidang frekuensi rendah saluran 2 sampai 6 (54 88 MHz). 2. VHF bidang frekuensi tinggi saluran 7 sampai 13 (174 216 MHz). 3. UHF saluran 14 sampai 83 (470 890 MHz) Ada 3 sistem pemancar televisi yaitu sebagai berikut: 1. National Television System Committee (NTSC) digunakan USA 2. Phases Alternating Line (PAL) digunakan Inggris 3. Sequential Couleur aMemorie (SECAM) digunakan Prancis Sedangkan di indonesia sendiri menggunakan system PAL B. Hal yang membedakan system tersebut adalah format gambar, jarak frekuensi pembawa gambar dan pembawa suara (Sani A, 2005).
43
3.2.1 Sumber Pengetahuan Sumber pengetahuan televisi berwarna digambarkan dengan diagram pohon keseluruhan memiliki struktur sebagai berikut:
70
Gambar 3.3 Diagram blok penerima televisi berwarna Model dan jenisnya blok rangkaian televisi bermacam-macam, tergantung pada merek televisi yang digunakan. Secara garis besar blok tersebut memiliki fungsi-fungsi sebagai berikut: 1. Antena Televisi adalah penangkap sinyal-sinyal RF dari pemancar televisi. Antena diklasifikasikan berdasarkan konstruksinya ada 3 yaitu: a. Antena Yagi b. Antena Perioda Logaritmis c. Antena Lup Klasifikasi lain berdasarkan jalur frekuensi gelombang yang diterima adalah: a. Kanal VHF Rendah b. Kanal VHF Tinggi c. Kanal UHF 2. Rangkaian Penala (Tuner) terdiri dari penguat frekuensi tinggi (penguat HF), pencampur (Mixer) dan osilator local. Rangkaian penala berfungsi untuk menerima sinyal televisi yang masuk dan mengubahnya menjadi sinyal frekuensi IF.
71
3. Rangkaian Penguat IF (Intermediate Frequency) berfungsi sebagai penguat sinyal hingga 1000 kali. Sinyal ouput yang dihasilkan penala (Tuner) merupakan sinyal yang lemah dan sangat tergantung pada jarak pemancar, posisi penerima dan bentangan alam. Lingkaran merah menunjukkan rangkaian IF yang sebagian berada didalam tuner. 4. Rangkaian Detektor Video berfungsi sebagai pendeteksi sinyal video komposit yang keluar dari penguat IF gambar. Selain itu juga berfungsi untuk meredam sinyal suara yang akan mengakibatkan buruknya kualitas gambar 5. Rangkaian Penguat Video Rangkaian ini berfungsi sebagai penguat sinyal luminan yangberasal dari detector video sehingga dapat menjalankan tabung gambar atau CRT (Catode Ray Tube). 6. Rangkaian AGC (Automatic Gain Control) berfungsi menstabilkan sendiri
input sinyal televisi yang berubah-ubah sehingga output yang dihasilkan menjadi
konstan. Lingkaran merah menunjukkan komponen AGC yang berada didalam sebagian IC dan sebagian tuner.
7. Rangkaian Penstabil Penerima Gelombang Televisi diantaranya adalah
AGC dan AFT. Automatic Fine Tuning berfungsi mengatur frekuensi pembawa gambar dari penguat IF secara otomatis. 8. Rangkaian Defleksi Sinkronisasi terdiri dari empat blok yaitu: rangkaian sinkronisasi, rangkaian defleksi vertical, rangkaian defleksi horizontal dan rangkaian pembangkit tegangan tinggi. 9. Rangkaian Suara yang kita dengar adalah hasil kerja dari rangkaian ini, sinyal pembawa IF suara akan dideteksi oleh modulator frekuensi (FM). Sebelumnya, sinyal ini dipisahkan dari sinyal pembawa gambar. 10. Rangkaian Catu Daya (Power Supply) berfungsi untuk mengubah arus AC menjadi DC yang selanjutnya didistribusikan ke seluruh rangkaian. Rangkaian catu daya dibatasi oleh garis putih dan kotak merah. Daerah di dalam garis putih adalah rangkaian input yang merupakan daerah tegangan tinggi (Live Area). Sementara itu, daerah dalam kotak merah adalah output catu daya yang selanjutnya mendistribusikan tegangan DC ke seluruh rangkaian televisi.
72
11. Penguat Krominan ini menguatkan frekuensi 4,43 MHz untuk sinyal krominan yang termodulasi dalam sinyal V (sinyal R-Y) dan sinyal U (sinyal BY). Lebar jalur penguat 2 MHz. 12. Sinkronisasi Warna didalam rangkaian sincronisasi warna, sinyal burst sinkronisasi warna dikeluarkan dari sinyal video warna komposit. 13. Automatic Color Control (ACC), jika amplitudo sinyal ledakan naik, maka ACC mengeluarkan suatu tegangan kemudi yang memperkecil penguatan didalam bagian warna. 14. Color Killer (Pemati Warna) rangkaian ini berguna untuk menindas penguat warna, apabila sedang tak ada sinyal krominan masuk. Ini terjadi pada waktu penerimaan sinyal hitam-putih. 15. Rangkaian Switching Fasa 180 (Pembelah Warna), dari penguat
krominan, sinyal diumpankan ke colour. Splitter (pembelah warna). Pembelah warna ini memisahkan sinyal yang termodulasi dengan sinyal V dari sinyal yang termodulasi dengan sinyal U. Pembelah warna terdiri dari saklar PAL dan beberapa resistor. Pada akhir setiap garis, selama ditariknya garis PAL maka sinyal V diputar 180. (Sani A, 2005).
3.2.3 Representasi Pengetahuan Dalam perancangan sistem pakar kerusakan pada televisi berwarna ini, penulis memilih menggunakan model kaidah produksi untuk merepresentasikan pengetahuan yang di dapat. Alasan pemilihan kaidah produksi karena dapat menghubungkan secara langsung antara sebab dan akibat serta sesuai dengan teknik pemecahan masalah yang terhubung langsung antara kondisi objek dengan tindakan yang harus dilakukan terhadap objek tersebut. Kondisinya berupa jenis kerusakan televisi berwarna, bentuk gangguan dan kemungkinan penyebab gangguan, sedangkan untuk konsekwensinya adalah rekomendasi pemecahan masalah berdasarkan bentuk-bentuk gangguan yang muncul. Untuk sampai pada bentuk kaidah produksi, terdapat langkah-langkah yang harus dikerjakan antara lain menyusun basis pengetahuan ke dalam tabel keputusan (decision table), dari tabel keputusan selanjutnya dibentuk pohon keputusan (decision tree).
73
3.2.3.1 Tabel Dasar Tabel dasar dimaksud adalah tabel hasil akuisisi pengetahuan yang sudah diurutkan pada bab sebelumnya, namun untuk menghindari redudansi data maka dilakukan dekomposisi atau pemisah dari satu tabel menjadi tabel masalah, tabel penyebab dan tabel solusi seperti berikut:
Masalah Kerusakan
Masalah pada Suara Masalah pada Gambar Masalah pada Kontras Warna Masalah pada Tuner Masalah pada IC Masalah pada Vertikal/Horizontal Masalah pada Power Supply
Sumber: Sani A, Drs 2005, Memperbaiki/Reparasi Televisi, Departemen pendidikan nasional dan S. Reka Rio, Ir 2002, Teknik Reparasi Televisi Berwarna, PT. Pradnya Paramita Jakarta.
74
75
Sumber: Sani A, Drs 2005, Memperbaiki/Reparasi Televisi, Departemen pendidikan nasional dan S. Reka Rio, Ir 2002, Teknik Reparasi Televisi Berwarna, PT. Pradnya Paramita Jakarta.
S2
S3
S4 S5
S6
S7
S8
76
S11
S12
S13
S14
S15
S16
S17
S18
77
S20
S21
S22
S23
S24 S25
S26 S27
78
S29
S30
S34 S35
79
S37
S38
S39
S40
S41
80
S43
S44
S45
S50 S51
S52
S53
S54
S55 S56
81
S59
S60
S61
S62
S63 S64
S65
S66
Sumber: Sani A, Drs 2005, Memperbaiki/Reparasi Televisi, Departemen pendidikan nasional dan S. Reka Rio, Ir 2002, Teknik Reparasi Televisi Berwarna, PT. Pradnya Paramita Jakarta.
82
3.2.3.2 Tabel Keputusan Berdasarkan tabel diatas, maka selanjutnya dibentuk tabel keputusan yang disusun berdasarkan relasi dari setiap atributnya. Tabel keputusan yang akan dibentuk terdiri dari dua jenis berdasarkan relasinya yaitu relasi antara tabel masalah dengan tabel penyebab, serta relasi antara tabel penyebab dengan tabel solusi.
T11 Apakah gambar terlipat? T12 Apakah warna terlihat normal? T13 Apakah warna lemah?
82
83
T14 Apakah intensitas warna tidak merata? T15 Apakah ada gangguan pada RGB? T16 Apakah ada gangguan pada warna merah? T17 Apakah ada gangguan pada warna hijau? T18 Apakah ada gangguan pada warna biru? T19 T20 T21 T22 T23 Apakah brightness kurang? Apakah warna kabur? Apakah warna tidak sempurna? Apakah tidak ada sinkronisasi warna? Apakah sinyal UHF tidak dapat diterima dengan baik? T24 Apakah sinyal VHF tidak dapat diterima dengan baik? T25 Apakah antena sudah terpasang dengan benar?
brightness kurang warna kabur warna tidak sempurna tidak ada sinkronisasi warna sinyal UHF tidak dapat diterima sinyal VHF tidak dapat sinyal VHF dapat diterima diterima antena terpasang dengan benar antena tidak terpasang dengan benar T26 Apakah sinyal VHF tidak dapat diterima dengan sinyal VHF tidak dapat sinyal VHF dapat diterima baik? diterima T27 Apakah gambar ada? gambar ada gambar tidak ada T28 Apakah gambar terlihat bersih? gambar terlihat bersih gambar tidak bersih
83
84
T29 Apakah gambar cacat? kadang baik, kadang hilang? T30 Apakah suara ada? T31 Apakah suara bersih? T32 Apakah suara ada? T33 Apakah suara bersih? T34 Apakah suara ada? T35 Apakah televisi tidak bisa dihidupkan? T36 Apakah steker sudah terpasang dengan benar? T37 T38 T39 T40 T41 T42 T43 T44
suara tidak ada suara tidak bersih tidak ada suara suara tidak bersih suara tidak ada televisi bisa dihidupkan steker tidak terpasang dengan benar Apakah tombol power sudah ditekan? tombol power on tombol power off Apakah tombol (key) kontrol berfungsi dengan tombol kontrol berfungsi tombol kontrol tidak baik? berfungsi Apakah kontrol berfungsi dengan baik?, seperti kontrol berfungsi dengan baik kontrol tidak berfungsi on/off, volume, brightness, kontras, color dengan baik Apakah OSD (On screen display) tampil dengan OSD tampil dengan baik OSD tidak tampil dengan baik? baik Apakah gambar tampil dengan baik? gambar tampil gambar tidak tampil Apakah suara terdengar? suara terdengar suara tidak terdengar Apakah suara terdengar jelas? suara terdengar jelas suara terdengar jelas Apakah warna terlihat? warna terlihat warna tidak terlihat
84
85
T45 Apakah warna terlihat? T46 Apakah televisi anda mati? (power supply masih baik / tidak rusak) T47 Apakah tidak ada cahaya (raster) pada televisi? T48 Apakah layar berbentuk oval/trapezium diikuti oleh bayang pelangi? T49 Apakah layar hanya garis melintang horizontal? T50 Apakah layar menyempit pada bagian atas? T51 Apakah layar menyempit pada bagian bawah? T52 Apakah layar menyempit pada bagian bawah dan atas? T53 Apakah gambar bergerak terus ke atas/ke bawah? (rolling vertikal) T54 Bagaimana tampak layar? (pilih ya jika melintang horizontal, dan tidak jika melintang vertical). T55 Apakah layar hanya segaris vertikal? T56 Apakah layar tampak penuh? T57 Apakah gambar berlari-lari ke arah horizontal? (rolling horizontal) T58 Apakah layar bergaris-garis buku (blanking)?
tidak ada raster raster tampil layar berbentuk oval/trapezium layar tidak berbentuk oval/trapezium layar menggaris melintang layar tidak menggaris horizontal melintang horizontal layar menyempit ke atas tidak menyempit ke atas layar menyempit ke bawah layar tidak menyempit ke bawah layar menyempit ke bawah dan layar tidak menyempit ke atas bawah dan atas gambar rolling vertikal gambar tidak rolling vertikal layar melintang horizontal layar melintang vertical
layar hanya segaris vertikal layar tampak penuh gambar rolling horizontal layar blanking
layar tidak bergaris vertikal layar tampak tidak penuh gambar tidak rolling horizontal layar tidak blanking
M6 M6 M6 M6
85
86
T59 Apakah transistor penguat horizontal putus terus? T60 Apakah televisi tidak mati total? T61 Apakah tegangan power supply normal? T62 Apakah gambar normal? T63 Apakah gambar bergoyang/bergerigi di pinggir? T64 Apakah goyangan makin kuat jika suara dibesarkan? T65 Apakah gambar bergoyang di sebelah tepi kiri kanan? T66 Apakah tegangan PS naik melebihi 130 dc? T67 Apakah sekringnya putus? T68 Apakah tegangan output ada?
Sumber: Sani A, Drs 2005, Memperbaiki/Reparasi Televisi, Departemen pendidikan nasional dan S. Reka Rio, Ir 2002, Teknik Reparasi Televisi Berwarna, PT. Pradnya Paramita Jakarta.
86
87
3.2.4 Pohon Keputusan Pohon keputusan ini dirujukan dari table penyebab dan table solusi, dirancang dengan maksud untuk mengetahui artibut (kondisi) yang dapat direduksi sehingga menghasilkan kaidah yang efisien dan optimal sebagaimana terlihat pada gambar dibawah ini. 1. Jenis kerusakan masalah pada suara
Gambar 3.4 Jenis kerusakan pada suara 2. Jenis kerusakan masalah pada gambar
88
YA
T12
TIDAK
YA
T13
TIDAK
YA
T21
TIDAK
S12
YA
T14
TIDAK
S20
YA
T22
TIDAK
YA
T15
TIDAK
YA
T19
TIDAK
S21
S22
YA
T16
TIDAK
S17
S18
YA
T20
TIDAK
S13
YA
T17
TIDAK
S19
S16
S14
YA
T18
TIDAK
S15
S16
Gambar 3.6 Jenis kerusakan pada kontras warna 4. Jenis kerusakan masalah pada tuner
89
5.
YA
T35
TIDAK
YA
T36 TIDAK YA
T39 TIDAK
YA
T37 TIDAK
S31 YA
T40 TIDAK
S35
YA
T38
TIDAK
S32
S36
YA S34 S33
T41
TIDAK
T42 YA
TIDAK YA
T43 TIDAK
YA
T44
TIDAK
YA
T45
TIDAK
S38
S37
S31
S41
S40
S39
90
YA
T46
TIDAK
S42
YA
T47
TIDAK
S43
YA
T48 TIDAK
S44
YA
T54
TIDAK
YA
T49
TIDAK
YA
T55
TIDAK
S45
YA
T50
TIDAK
S51
T56
TIDAK
S46
YA
T51
TIDAK
YA
T57
TIDAK
S56
S47
YA
T52
TIDAK
S52
YA
T58
TIDAK
S48
YA
T53
TIDAK
S53
YA
T59 TIDAK
S49
S50
S54
S55
Gambar 3.9 Jenis kerusakan pada vertikal/horizontal 7. Jenis kerusakan masalah pada power supply
91
3.2.5 Kaidah Produksi (Rule) Pohon keputusan yang dihasilkan pada pembahasan sebelumnya digunakan sebagai acuan dalam menyusun kaidah/aturan, sedangkan atribut di dalam table keputusan menjadi premis di dalam kaidah/aturan yang
direpreseentasikan. Berikut ini daftar kaidah/aturan televisi berwarna berdasarkan macam-macam jenis kerusakan. Tabel 3.6 Kaidah produksi
Rule 1 If gejala: tidak ada suara And suara tidak terdengar sama sekali Then kerusakan pada penguat suara (S1) If gejala: tidak ada suara And suara terdengar sama sekali And suara lemah Then kerusakan pada rangkaian SIF (S2) If gejala: tidak ada suara And suara terdengar sama sekali And suara tidak lemah And suara cacat Then kerusakan pada rangkaian penguat AF (S3) If gejala: tidak ada suara And suara terdengar sama sekali And suara tidak lemah And suara tidak cacat Then kerusakan bukan pada suara (S4) If gejala: suara ada And suara mendesis Then kerusakan pada rangkaian penguat AF (S5) If gejala: suara ada And suara tidak mendesis And suara berderau Then kerusakan pada rangkaian output audio (S6) If gejala: gambar jelas And gambar tidak sinkron Then kerusakan pada pengatur AGG (S7) If gejala: gambar jelas And gambar tidak sinkron And gambar tidak focus Then kerusakan pada terminal fokus (S8)
Rule 2
Rule 3
Rule 4
Rule 5
Rule 6
Rule 7
Rule 8
92
Rule 10
Rule 11
Rule 12
Rule 13
Rule 14
Rule 15
Rule 16
93
Rule 18
Rule 19
Rule 20
Rule 21
Rule 22
Rule 23
Rule 24
Rule 25
94
Rule 27
Rule 28
Rule 29
Rule 30
Rule 31
Rule 32
95
Rule 34
Rule 35
Rule 36
Rule 37
Rule 38
Rule 39
Rule 40
96
Rule 42 Rule 43
Rule 44
Rule 45
Rule 46
Rule 47
97
Rule 49
Rule 50
Rule 51
Rule 52
98
Rule 54
Rule 55
Rule 56
Rule 57
99
Rule 59
Rule 60
Rule 61
Rule 62
Rule 63
Rule 64
Rule 65
Rule 66
100
BAB IV DESAIN SISTEM PAKAR 4.1 Batasan Sistem Pakar Batas sistem merupakan daerah yang membatasi antara sistem yang satu dengan sistem lainnya atau dengan lingkungan luarnya. Dengan adanya batas sistem ini maka sistem dapat membentuk suatu kesatuan, karena dengan batas sistem ini fungsi dan tugas dari sub sistem yang satu dengan lainnya berbeda tetapi tetap saling berinteraksi. Dengan kata lain batasan sistem ini merupakan ruang lingkup atau scope dari sistem / sub sistem itu sendiri. Beberapa batasan sistem pada aplikasi sistem pakar televisi berwarna di bengkel elektronika SMK Negeri 2 Garut hanya menyangkut kerusakan yang umum terjadi pada televisi berwarna diantaranya adalah sebagai berikut: 1. Menyangkut kerusakan televisi berwarna pada bagian masalah suara. 2. Menyangkut kerusakan televisi berwarna pada bagian masalah gambar. 3. Menyangkut kerusakan televisi berwarna pada bagian masalah kontras warna. 4. Menyangkut kerusakan televisi berwarna pada bagian masalah
tuner/antenna/sinyal. 5. Menyangkut kerusakan televisi berwarna pada bagian masalah IC. 6. Menyangkut kerusakan televisi berwarna pada bagian masalah bagian vertikal/horizontal. 7. Menyangkut kerusakan televisi berwarna pada bagian masalah power supply. Perancangan sistem pakar ini hanya dilakukan pada tahap tanya jawab yang menghasilkan diagnosis kerusakan pada televisi berwarna, solusi untuk mengatasi kerusakan televisi berwarna, dan alasan hasil diagnosis kerusakan televisi berwarna.
100
101
4.2
Perancangan Mesin Inferensi Mesin inferensi disebut sebagai otak dari sistem pakar yang berfungsi
untuk melakukan penalaran untuk mengarahkan pengetahuan dari basis pengetahuan, sehingga tercapai suatu kesimpulan atau rekomendasi yang harus dilaksanakan. Berikut ini adalah tahap perancangan mesin inferensi sistem pakar kerusakan pada televisi berwarna yang dimulai dengan pemilihan teknik inferensi dan teknik penelusuran data. 4.2.1 Pemilihan Teknik Inferensi Teknik inferensi yang digunakan dalam sistem pakar ini menggunakan metode inferensi perantaian maju (forward chaining), hal ini dapat dilihat pada saat user melakukan proses pemecahan masalah yang akan dimulai dari jenis kerusakan pada televisi berwarna, dilanjutkan memilih jenis indikasi gangguan yang muncul sehingga didapatkan suatu rekomendasi dalam pemecahan masalah.
Gambar 4.1 Penerapan inferensi perantaian maju (forward chaining) 4.2.2 Pemilihan Teknik Penelusuran Data Teknik penelusuran data digunakan untuk pencarian data-data
berdasarkan input-an dari user yang disesuaikan dengan basis pengetahuan untuk mendapatkan rekomendasi langkah pemecahan yang sesuai. Teknik ini digambarkan melalui node-node dimulai dari level tertinggi hingga level terbawah.
116
Berikut adalah gambaran implementasi teknik penelusuran data depth-first search pada sistem pakar kerusakan pada televisi berwarna:
Gambar 4.2 Penelusuran kerusakan pada televisi bewarna Dari gambar diatas, penelusuran data dalam proses pemecahan masalah kerusakan pada televisi berwarna diawali dari jenis kerusakan yang digunakan user, dilanjutkan pada pemilihan masalah gejala gangguan yang timbul, dan pada akhirnya didapatkan solusi pemecahan masalah dan alasan.
102
103
4.3
Deskripsi Alur Program Dalam mendeskripsikan alur program, penulis menggunakan dua
pendekatan yaitu flowmap dan data flow diagram (DFD). Flowmap digunakan untuk mendeskripsikan mekanisme kerja aplikasi sistem pakar yang dibangun, sedangkan diagram aliran data (data flow diagram) digunakan untuk mendeskripsikan proses aliran data yang ada dalam aplikasi sistem pakar. 4.3.1 Flowmap Berikut ini deskripsi aplikasi sistem pakar kerusakan pada televisi berwarna dalam bentuk flowmap:
104
4.3.2 Data Flow Diagram Data flow diagram atau diagram aliran data diuraikan untuk memberikan gambaran bagaimana suatu data aliran. DFD akan membuat diagram konteks, DFD level 0, DFD level 1, DFD level 2 dan seterusnya. 4.3.2.1 Diagram Konteks
Gambar 4.4 Diagram konteks sistem pakar kerusakan televisi berwarna 4.3.2.2 DFD Level 0 Sistem Pakar Kerusakan Pada Televisi Berwarna
Akuisisi Pengetahuan Pakar Input Kerusakan Administrator Input Solusi
Jenis Kerusakan
4 Jenis Kerusakan
5 Solusi
Rekam Solusi
Solusi
Rekaman Solusi
Input Pengetahuan
3 Pengetahuan
Rekam Pengetahuan
Pengetahuan
Administrator
Akses Sistem Password 1 Login Nama Penguna Akses Sistem Akses Sistem Fakta Jenis Kerusakan 2 Diagnosis Fakta Temp Nama Penguna Password Daftar Pengguna
Pengguna
Solusi Saran
Gambar 4.5 DFD level 0 sistem pakar kerusakan pada televisi berwarna
105
Gambar 4.6 DFD level 1 proses login 4.3.2.4 DFD Level 1 Proses Diagnosis
106
Pengetahuan
Gambar 4.8 DFD level 1 proses pengetahuan 4.3.2.6 DFD Level 1 Proses Jenis Kerusakan
Jenis Kerusakan
107
5.2 Ubah Solusi Rekam Solusi Rekaman Solusi Rekam Solusin Solusi
Rekaman Solusi
4.4
Perancangan Basis Data Basis data merupakan bagian penting dalam setiap sistem berbasis
komputer, begitu juga pada perancangan sistem pakar. Basis data pada sistem pakar merupakan inti dari sistem pakar, karena pada basis data tersebut seorang knowledge engineer melakukan perekayasaan pengetahuan dari pakar kedalam basis pengetahuan. Di dalam basis data sistem pakar kerusakan pada televisi berwarna disimpan data-data pengetahuan berupa daftar jenis kerusakan, daftar masalah pada televisi berwarna serta daftar rekomendasi atau saran untuk pemecahan masalah yang berkaitan dengan gangguan televisi berwarna.
108
4.4.1 ERD (Entity Relationship Diagram) Entity-Relationship Diagram pada sistem pakar televisi berwarna dapat dilihat pada gambar 4.11 berikut.
KdKerusakan Kerusakan
Kerusakan
Direlasikan M KdRelasi
KdKnowledge
Knowledge KdKerusakan
Knowledge
Direlasikan
Relasi KdKnowledge
KdSolusi
Gambar 4.11 ERD (Entity Relationship Diagram) 4.4.2 Transformasi ERD kedalam Basisdata Fisik 4.4.2.1 Tabel-tabel Utama Tabel-tabel utama dimaksud merupakan tabel-tabel dasar yang selanjutnya harus dapat diimplementasikan keterkaitan antara tabel satu dengan tabel lainnya dan membentuk suatu basis pengetahuan sistem pakar. Tabel-tabel tersebut diantaranya adalah sebagai berikut:
109
Dari keempat table utama tersebut, maka implementasi relationship-nya dapat digambarkan seperti pada gambar 4.12 berikut ini.
Gambar 4.12 Relasi antar tabel 4.4.2.2 Tabel Tambahan Tabel tambahan merupakan tabel yang tidak terkait langsung dengan basis data sistem pakar yang merupakan tempat penyimpanan basis pengetahuan. Jadi tabel ini hanya bersifat sebagai tabel pendukung atau tambahan.
110
4.4.3 Perancangan Struktur File Struktur file atau struktur penyimpanan data adalah suatu tempat penyimpanan objek data yang akan digunakan atau dihasilkan oleh sistem pakar. Dibawah ini akan diuraikan struktur file yang meyusun sistem pakar televisi berwarna.
1. Tabel Masalah Tabel 4.1 Kamus data tabel kerusakan No Nama Field 1 KdKerusakan 2 Kerusakan 2. Tabel Penyebab Tabel 4.2 Kamus data tabel penyebab No Nama Field 1 KdKnowledge 2 Knowledge 3. Tabel Solusi Tabel 4.3 Kamus data tabel solusi No Nama Field 1 KdSolusi 2 Solusi 4. Tabel Relasi Tabel 4.4 Kamus data tabel relasi No 1 2 3 4 Nama Field KdRelasi KdKerusakan KdKnowledge KdSolusi Tipe Data Text Text Text Text Ukuran 3 3 3 3 Keterangan Primary Key untuk Relasi Foreign Key Foreign Key Foreign Key Tipe Data Text Text Ukuran 3 175 Keterangan Primary Key untuk Solusi Uraian Solusi Tipe Data Text Text Ukuran Keterangan 3 Primary Key untuk Knowledge 175 Uraian Knowledge Tipe Data Text Text Ukuran 3 175 Keterangan Primary Key untuk Kerusakan Uraian Kerusakan
111
4.5
Implementasi
Implementasi disini terdiri dari struktur menu berisikan menu dan submenu yang
berfungsi memudahkan user didalam menggunakan sistem. Menu-menu tersebut dibagi berdasarkan hak akses masing-masing user. Berikut ini gambaran mengenai struktur menu aplikasi sistem pakar televisi berwarna.
112
4.5.2 Perancangan Antarmuka Perancangan antar muka bertujuan untuk memberikan gambaran tentang aplikasi yang akan dibangun. Sehingga akan mempermudah dalam
Gambar 4.14 Antarmuka form login Dari gambar 4.14 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut: Tabel 4.5 Keterangan kontrol pada antarmuka login No 1 2 3 4 5 6 7 8 Kontrol ComboBox Text Box Text Box CommandButton CommandButton Label Label Label Nama cboLevel txtUserID txtPass cmdMasuk cmdKeluar lblBuat lblGanti lblHapus Keterangan Untuk menentukan pilihan pengguna dengan administrator Untuk mengetik nama jika akan masuk pada lingkungan admin Untuk mengetik sandi jika akan masuk pada lingkungan admin Untuk masuk atau melanjutkan ke antarmuka berikutnya Digunakan untuk membatalkan atau keluar program Tombol untuk membuat data admin baru Tombol untuk menggantit data admin baru Tombol untuk menghapus data admin baru
113
Gambar 4.15 Perancangan antarmuka form buat administrator baru Dari gambar 4.15 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut: Tabel 4.6 Keterangan kontrol pada antarmuka form buat administrator baru No 1 2 3 4 5 Kontrol Text Box Text Box Text Box CommandButton CommandButton Nama txtUserID txtPass txtUlangPass cmdBuat cmdBatal Keterangan Untuk mengetik nama jika akan masuk pada lingkungan admin Untuk mengetik sandi jika akan masuk pada lingkungan admin Untuk mengulang sandi jika akan masuk pada lingkungan admin Digunakan untuk membuat admin baru Digunakan untuk membatalkan atau keluar program
Gambar 4.16 Perancangan antarmuka form ganti password administrator Dari gambar 4.16 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut:
114
Tabel 4.7 Keterangan kontrol pada antarmuka form ganti password administrator No 1 2 3 4 5 6 Kontrol Text Box Text Box Text Box Text Box CommandButton CommandButton Nama txtUserID txtPassSekarang txtPass txtUlangPass cmdUbah cmdBatal Keterangan Untuk mengetik nama jika akan mengganti password Untuk memeastikan jika akan mengganti password Untuk mengetik sandi jika akan mengganti password Untuk mengulang sandi jika akan mengganti password Digunakan untuk merubah password admin Digunakan untuk membatalkan atau keluar program
Hapus
Batal
Gambar 4.17 Perancangan antarmuka form hapus administrator Dari gambar 4.17 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut: Tabel 4.8 Keterangan kontrol pada antarmuka form hapus administrator No 1 2 4 5 Kontrol Text Box Text Box CommandButton CommandButton Nama txtUserID txtPass cmdHapus cmdBatal Keterangan Untuk mengetik nama jika akan menghapus admin Untuk memeastikan jika akan menghapus admin Digunakan untuk menghapus admin Digunakan untuk membatalkan atau keluar program
115
Gambar 4.18 Perancangan antarmuka form menu utama administrator Dari gambar 4.18 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut: Tabel 4.9 Keterangan kontrol pada antarmuka form menu utama administrator No 1 2 3 4 5 mn mn mn mn mn Kontrol Nama mnLogoff mnKeluar mnEdit mnDiagnosisKerus akan mnProgram Keterangan Menu untuk log-off Menu untuk keluar program Menu untuk masuk ke edit pengetahuan Menu untuk melakukan diagnosis kerusakan Menu untuk menampilkan gambar rangkaian televisi berwarna Menu untuk menampilkan data pembuat program Sebagai penghias tampilan menu utama
6 7
mn image
mnPembuat Image1
116
Gambar 4.19 Perancangan antarmuka form basis pengetahuan Dari gambar 4.19 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut: Tabel 4.10 Keterangan kontrol pada antarmuka form basis pengetahuan No 1 2 3 4 5 6 7 8 Kontrol CommandButton CommandButton CommandButton CommandButton CommandButton CommandButton TexBox ComboBox Nama cmdTambah cmdSimpan cmdBatal cmdUbah cmdHapus cmdKeluar txtIDKnowleadge cboKerusakan Keterangan Tombol untuk menambah data masukan baru Tombol untuk menyimpan data masukan baru Tombol cancel Tombol untuk merubah data yang terdapat pada database Tombol untuk menghapus data dari database Tombol keluar dan kembali ke antarmuka menu utama pakar Untuk menampilkan txt IDKnowleadge Untuk menampilkan petunjuk pengisian dari daftar basis pengetahuan
117
9 10 11 12 13
14 15 16 17 18 19 20 21
Untuk menampilkan txt IDKerusakan Untuk menampilkan txt Pertanyaan Untuk menampilkan txt Fakta Ya Untuk menampilkan txt Fakta Tidak Untuk menampilkan petunjuk pengisian dari daftar basis pengetahuan Menampilkan pengisian dari daftar basis pengetahuan Menampilkan pengisian daftar basis pengetahuan Form data dari database Untuk menampilkan daftar basis pengetahuan Form data dari database Tombol untuk masuk ke form kerusakan Form data dari database Tombol untuk masuk ke form solusi
Gambar 4.20 Perancangan antarmuka form kerusakan Dari gambar 4.20 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut:
118
Tabel 4.11 Keterangan kontrol pada antarmuka form kerusakan No 1 2 3 4 5 6 Kontrol CommandButton CommandButton CommandButton CommandButton CommandButton CommandButton Nama cmdTambah cmdSimpan cmdBatal cmdUbah cmdHapus cmdKeluar Keterangan Tombol untuk menambah data masukan baru Tombol untuk menyimpan data masukan baru Tombol cancel Tombol untuk merubah data yang terdapat pada database Tombol untuk menghapus data dari database Tombol untuk keluar dan kembali ke antarmuka menu utama pakar Untuk menampilkan txt IDkerusakan Untuk menampilkan txt kerusakan Untuk menampilkan petunjuk pengisian dari daftar kerusakan Untuk menampilkan daftar kerusakan Form data dari database
7 8 9 10 11
Gambar 4.21 Perancangan antarmuka form solusi Dari gambar 4.21 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut:
119
Tabel 4.12 Keterangan kontrol pada antarmuka form solusi No 1 2 3 4 5 6 Kontrol CommandButton CommandButton CommandButton CommandButton CommandButton CommandButton Nama cmdTambah cmdSimpan cmdBatal cmdUbah cmdHapus cmdKeluar Keterangan Tombol untuk menambah data masukan baru Tombol untuk menyimpan data masukan baru Tombol cancel Tombol untuk merubah data yang terdapat pada database Tombol untuk menghapus data dari database Tombol untuk keluar dan kembali ke antarmuka menu utama pakar Untuk menampilkan txt IDkerusakan Untuk menampilkan txt kerusakan Untuk menampilkan petunjuk pengisian dari daftar solusi Untuk menampilkan daftar solusi From data dari database
7 8 9 10 11
Gambar 4.22 Perancangan antarmuka form pilih kerusakan Dari gambar 4.22 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut:
120
Tabel 4.13 Keterangan control pada antarmuka form pilih kerusakan No 1 2 3 Kontrol ComboBox CommandButton CommandButton Nama cboKerusakan cmdProses cmdKeluar Keterangan Untuk menampilkan pilihan bagian kerusakan Tombol untuk memproses data dan masuk ketahap selanjutnya Tombol untuk keluar dan kembali ke antarmuka menu utama pakar
Gambar 4.23 Perancangan antarmuka form diagnosis kerusakan Dari gambar 4.23 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut: Tabel 4.14 Keterangan control pada antarmuka form diagnosis kerusakan No 1 Kontrol Label Nama lblDiagnosis Keterangan Untuk menampilkan txt penanganan diagnosis kerusakan Tombol untuk menentukan proses selanjutnya Tombol untuk menentukan proses selanjutnya Tombol untuk keluar dan kembali form kerusakan
2 3 4
121
Gambar 4.24 Perancangan antarmuka form hasil diagnosis Dari gambar 4.24 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut: Tabel 4.15 Keterangan control pada antarmuka form hasil diagnosis No 1 2 3 Kontrol Label CommandButton CommandButton Nama lblHasilDiagnosis cmdAlasan cmdSelesai Keterangan Untuk menampilkan txt penanganan diagnosis Tombol untuk menuju ke form penanganan Tombol untuk keluar dan kembali form kerusakan
Gambar 4.25 Perancangan antarmuka form penanganan Dari gambar 4.25 dapat diuraikan spesifikasi kontrol yang digunakan dalam pembuatan antarmuka tersebut dijelaskan pada tabel berikut: Tabel 4.16 Keterangan control pada antarmuka form penanganan No 1 2 Kontrol TexBox CommandButton Nama txtPenanganan cmcKeluar Keterangan Untuk menampilkan txt penanganan diagnosis Tombol untuk keluar dari form penanganan
122
4.6
Pengujian Black Box Aplikasi Sistem Pakar Pengujian black box berfokus pada persyaratan fungsional perangkat
lunak. Pengujian ini memungkinkan analis sistem memperoleh kumpulan kondisi input yang akan mengerjakan seluruh keperluan fungsional program. Tujuan metode ini mencari kesalahan pada fungsi yang salah atau hilang, kesalahan pada interface, kesalahan pada struktur data atau akses database, kesalahan pada performansi, kesalahann pada inisialisasi dan tujuan akhir. Dalam melakukan pengujian black box aplikasi sistem pakar televisi berwarna ini, penulis melakukan uji coba pada tiga bagian yaitu pda login, lingkungan admin dan lingkungan pengguna.
Gambar 4.26 Tampilan antarmuka login Untuk dapat masuk ke lingkungan admin, user harus terlebih dahulu memasukkan nama dan sandi dengan benar dan sesuai data admin dalam database. Sedangkan untuk masuk pada lingkungan pengguna, user dapat langsung menekan tombol masuk. Selain itu ada buat admin baru, hapus admin dang anti password admin yang akan diuraikan dibawah.
123
Gambar 4.27 Tampilan antarmuka tambah admin baru Jika admin akan menambah admin baru, maka harus mengisi User ID dan password baru terus masukan password admin lalu menekan tombol Buat. Tekan tombol Batal jika ingin kembali menutup antarmuka ini.
Gambar 4.28 Tampilan database tambah admin baru 4.6.1.2 Antar Muka Hapus Admin
Gambar 4.29 Tampilan antarmuka hapus admin Jika user akan menghapus admin, maka yang harus dilakukan adalah mengisi User ID dan password admin lalu menekan tombol Hapus. Tekan tombol Batal jika ingin kembali menutup antarmuka ini.
124
Gambar 4.30 Tampilan antarmuka ganti password Jika admin akan mengganti password, yang harus dilakukan adalah mengisi User ID dan password lama terus masukan password baru terus menekan tombol Ubah. Tekan tombol Batal jika ingin kembali menutup antarmuka ini. 4.6.2 Pengujian pada Lingkungan Administrator
Gambar 4.31 Tampilan antarmuka menu utama Jika admin akan menambah data kerusakan, maka harus masuk ke menu basis pengetahuan dengan menekan menu Edit Pengetahuan dan jika akan melakukan diagnosis maka user harus menekan menu Diagnosis Kerusakan.
125
Selain itu di dalam menu utama ini terdapat menu sistem yang berisikan Log-Off dan keluar, menu basis pengetahuan, diagnosis dan tentang yang berisikan data pembuat. 4.6.2.1 Antar Muka Basis Pengetahuan
2 Antar muka basis pengetahuan Jika admin akan menambah data kerusakan, maka harus mengisi kode kerusakan dan solusi pada textbox serta menekan tombol Simpan. Untuk melakukan perubahan data kerusakan, maka admin merubah kode kerusakan dan soluai pada textbox serta menekan tombol Edit. Sedangkan untuk menghapus data dari daftar maka admin harus memilih kode kerusakan yang akan dihapus serta menekan tombol Hapus. Tekan tombol Selesai jika ingin menutup antarmuka ini dan tekan tombol Petunjuk Pengisian jika ingin mengetahui langkah-langkah pengisian data.
126
Gambar 4.33 Antar muka input kerusakan Jika admin akan menambah data kerusakan, maka harus mengisi kode kerusakan dan kerusakan pada textbox serta menekan tombol Simpan. Untuk melakukan perubahan data kerusakan, maka admin merubah kode kerusakan dan kerusakan pada textbox serta menekan tombol Edit. Sedangkan untuk menghapus data dari daftar maka admin harus memilih kode kerusakan yang akan dihapus serta menekan tombol Hapus. 4.6.2.3 Antar Muka Input Solusi
127
Jika admin akan menambah data solusi, maka harus mengisi kode solusi dan solusi pada textbox serta menekan tombol Simpan. Untuk melakukan perubahan data solusi, maka admin merubah kode solusi dan solusi pada textbox serta menekan tombol Edit. Sedangkan untuk menghapus data dari daftar maka admin harus memilih kode solusi yang akan dihapus serta menekan tombol Hapus. 4.6.3 Pengujian pada Lingkungan Pengguna 4.6.3.1 Antar Muka Pilih Kerusakan
Gambar 4.35 Antar muka pilih kerusakan Pilih salah satu jenis masalah yang terdapat pada daftar dengan cara mengklik-nya serta menekan tombol Proses untuk melanjutkan kepada proses diagnosis tahap berikutnya. Tombol Batal digunakan untuk membatalkan proses diagnosis. Tombol Keluar digunakan untuk menonaktifkan program aplikasi ini.
128
Gambar 4.36 Antar muka diagnosis kerusakan Pengguna selanjutnya melakukan diagnosis kerusakan dengan cara tanya jawab dengan mengunakan pilihan Ya atau Tidak, setelah sudah menentukan tanya jawab selesai tahap berikutnya akan menampilkan hasil diagnosis. Tombol Selesai digunakan untuk menonaktifkan program aplikasi ini. 4.6.3.3 Antar Muka Hasil Diagnosis
129
Setelah sudah menentukan tanya jawab selesai tahap berikutnya adalah hasil diagnosis, yang dihasilkan dari hasil diagnosis dengan cara tanya jawab diatas. Untuk mengetahui alasan dari hasil diagnosis tahap berikutnya yaitu dengan menekan tombol Alasan. Tombol Selesai digunakan untuk menonaktifkan program aplikasi ini. 4.6.3.4 Antar Muka Penanganan
Gambar 4.38 Antar muka penanganan Dari hasil diagnosis tanya jawab akan ditampilkan diperanan antarmuka penanganan dan alas an cara penanganannya. Tombol Keluar digunakan untuk menonaktifkan program aplikasi ini.
131
BAB V KESIMPULAN DAN SARAN 5.1 Kesimpulan Berdasarkan uraian pada bab-bab sebelumnya yang meliputi landasan teori. analisis, desain serta, pengujuan aplikasi sistem pakar televisi berwarna ini: maka dapat diambil kesimpulan sebagai berikut:
1. Hasil pengujian dilakukan mengunakan pengujian black box dan tidak ada
kesalahan pada fungsi yang salah atau hilang, kesalahan pada interface, kesalahan pada struktur data atau akses database, kesalahan pada performansi, kesalahann pada inisialisasi dan tujuan akhir.
2. Adanya
ketersediaan pengetahuan ahli yang dapat membantu guru mata pelajaran reparasi televisi berwarna di bengkel elektronika SMK Negeri 2 Garut, dalam membimbing para siswa yang banyak dalam memutuskan masalah pada kerusakan televisi yang nantinya akan diperbaiki.
3. Pengetahuan yang tersedia dalam sistem pakar televisi berwarna ini mudah
Maka dari itu sistem pakar yang saya buat ini diharapkan dapat membantu dan mempercepat dalam proses diagnosis kerusakan televisi berwarna. 5.2 Saran Setiap sistem termasuk sistem pakar selalu memiliki kelemahan dan kekurangan, maka dari itu penulis memberikan beberapa saran kepada para pengguna sistem pakar ini sebagai berikut: 1. Sistem pakar televisi berwarna ini hanya mengambil contoh kasus pada beberapa tipe televisi berwarna, sehingga kemungkinan akan terdapat beberapa ketidak-sesuaian untuk televisi berwarna tipe lain. Untuk itu apabila para pengguna memiliki data yang valid dan sesuai untuk sistem
130
131
pakar ini diharapkan menyampaikan kepada penulis maupun secara langsung ditambahkan pada basis pengetahuan untuk melengkapi dan memperbaiki sistem pakar ini. 2. Sistem pakar ini memerlukan adanya maintenance. seperti update basis pengetahuan dan basis aturan yang disesuaikan dengan perkembangan teknologi televisi berwarna. 3. Dalam pengujian aplikasi sistem pakar ini, oleh beberapa pihak dilakukan pada komputer dengan sistem operasi bti-plaiform Microsoft Windows. Sehingga diharapkan ada pihak yang melakukan pengujian aplikasi pada sistem operasi dengan platform Aplle, Linux dan lainnya, agar diketahui apakah sistem pakar ini akan compatible dengan sistem operasi tersebut.
130
DAFTAR PUSTAKA Arhami, M. Konsep Dasar Sistem Pakar, Andi Yogyakarta, Yogyakarta, 2005 Achmad, B. Diktat Mata Kuliah Kecerdasan Buatan, Universitas Gadjah Mada, Yogyakarta, 2006 Andri, K., Perancangan SI dan Aplikasinya, Gramedia Pustaka Utama.,Jakarta., 2007 Durkin, J, Expert System Design And Development, Prentice Hall International Inc., New Jersey, 1994 Fatansyah., Basis Data, Informatika.,Bandung, 2002 Haryanto, A. Membuat Aplikasi Sederhana dengan Microsoft Access, Ilmu Komputer.com, 2003 Kristanto,H. Konsep Dan Perancangan Data Base, Andi Offsett Yogyakarta, 2003. Kusumadewi, Sri, Artificial Intelligence (Teknik dan Aplikasinya), : Graha Ilmu, Yogyakarta, 2003 Kendal & Kendal., Analisis Dan Perancangan Sistem., PT.INDEKS., Jakarta.,
2005
Kusrini, Sistem Pakar Teori dan Aplikasi, ANDI Offset, Yogyakarta, 2006 S. Reka Rio. Teknik Reparasi Televisi Berwarna, PT. Pradnya Paramita Jakarta. Jakarta, 2002 Sani, A. Memperbaiki/Reparasi Televisi, Departemen pendidikan nasional, Bogor, 2005 Staugaard, Andrew C.Jr., Robotics and A I : an introduction to applied machine intelligence, Prentice-Hall. Inc., New Jersey USA, 1987 Turban, Efraim, Aronson, Jay E., Liang, Ting-Peng, Decission Support System And Intelligent System, Edisi Indonesia Jilid 2, Edisi 7, Pearson Prentice Hall Education International Inc., New Jersey, 2005 Tim Penerbit Andi, Pengembangan Sistem Pakar menggunakan Visual Basic, Penerbit Andi, Yogyakarta, 2009
xv
http://irmanf.wordpress.com, Tgl akses 27 Januari 2012 http://www.indo-tektips.com, Modul 1: Pengenalan Dasar Tentang Visual Basic 6.0 , Tgl akses 10 maret 2012 http://www.explainthatstuff.com, Pengertian Televisi Berwarna , Tgl akses 10 Maret 2012 http://www.WhiteBoxTestingdanBlackBoxTestingWhaysworldBlog, Tgl akses 10 Maret 2012
xvi
LAMPIRAN-LAMPIRAN
xvi
LAMPIRAN-LAMPIRAN: SCORCE CODE PROGRAM SISTEM PAKAR TELEVISI BERWARNA DI BENGKEL ELEKTRONIKA SMK NEGERI 2 GARUT JURUSAN TEKNIK AUDIO VIDEO MODUL KONEKSI Public Conn As New ADODB.Connection Public rsKnowledge As New ADODB.Recordset Public rsSolusi As New ADODB.Recordset Public rsTemp As New ADODB.Recordset Public rsKerusakan As New ADODB.Recordset Public Sub konek_db() On Error GoTo konekErr If Conn.State = 1 Then Conn.Close Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path + "\tv.mdb;Persist Security Info=False" rsKnowledge.Open "select * from knowledge", Conn, adOpenDynamic, adLockOptimistic rsSolusi.Open "select * from solusi", Conn, adOpenDynamic, adLockOptimistic rsTemp.Open "select * from temp", Conn, adOpenDynamic, adLockOptimistic rsKerusakan.Open adLockOptimistic Exit Sub konekErr: MsgBox "Terdapat kesalahan ! " & Err.Description, vbCritical, "Peringatan" End Sub Public Sub diskonek_db() rsKnowledge.Close rsSolusi.Close xvii "select * from kerusakan", Conn, adOpenDynamic,
rsTemp.Close rsKerusakan.Close Conn.Close End Sub FORM LOGIN Private Sub cboLevel_Click() If cboLevel.Text = "Pengguna" Then txtLogin.Enabled = False txtPass.Enabled = 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 xviii
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 xix
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 Label2_Click(Index As Integer) End Sub Private Sub Label6_Click() frmUserBaru.Show vbModal End Sub Private Sub Label7_Click() frmGantiPass.Show vbModal Private Sub Label9_Click() frmHapusUser.Show vbModal End Sub Private Sub Form_Load() cboLevel.AddItem "Pengguna" xx
cboLevel.AddItem "Administrator" cmdMasuk.Enabled = False End Sub Form Buat Administrator Baru Private Sub cmdlogin_Click() 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 If txtpass2.Text = "" Then MsgBox "Ulangi Memasukkan Password !", vbCritical txtpass2.SetFocus Exit Sub End If If Not validity(txtpass2, "Konfirmasi Password") Then xxi
txtpass2.SetFocus Exit Sub End If If txtpass.Text <> txtpass2.Text Then MsgBox "Password dan ulangi password tidak sesuai !", vbCritical txtpass.Text = "" txtpass2.Text = "" txtpass.SetFocus Exit Sub End If If cboTipe.Text = "" Then MsgBox "Pilih tipe user !", vbCritical cboTipe.SetFocus Exit Sub End If If txtadmin.Text = "" Then MsgBox "Masukkan Password Administrator !", vbCritical txtadmin.SetFocus Exit Sub End If
If Not validity(txtadmin, "Administrator Password") Then txtadmin.SetFocus Exit Sub End If konek_db sql = "select * from list_user where level = '" & "Administrator" & "' and pass = '" & Crypt(txtadmin.Text) & "'" adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic If (adoRS.EOF) Then xxii
MsgBox "Password Administrator Salah! Coba lagi dengan password Administrator yang benar !", vbCritical txtadmin.Text = "" txtadmin.SetFocus Call closeconn Exit Sub End If Call closeconn sql = "select * from list_user where user_id = '" & txtlogin.Text & "'" adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic If Not (adoRS.EOF) Then MsgBox "User ID sudah ada! Masukkan user ID yang lain!", vbCritical, "Peringatan" txtlogin.Text = "" txtlogin.SetFocus Call closeconn Exit Sub End If Call closeconn sql = "insert into list_user values('" & txtlogin.Text & "','" &
Crypt(txtpass.Text) & "','" & cboTipe.Text & "')" adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic Call closeconn MsgBox "User Baru Berhasil dibuat!", vbInformation, "Informasi" Unload Me End Sub Private Sub Command1_Click() Unload Me End Sub
xxiii
Form Ganti Password Administrator Private Sub cmdlogin_Click() If txtlogin.Text = "" Then MsgBox "Masukkan User ID !", vbCritical, "Peringatan" 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 Administrator yang sekarang !", vbCritical, "Peringatan" txtpass.SetFocus Exit Sub End If If Not validity(txtpass, "Password Administrator sekarang") Then txtpass.SetFocus Exit Sub End If If txtpass2.Text = "" Then MsgBox "Masukkan password yang baru !", vbCritical, "Peringatan" txtpass2.SetFocus Exit Sub End If If Not validity(txtpass2, "Password Baru") Then txtpass2.SetFocus Exit Sub End If xxiv
If txtpass3.Text = "" Then MsgBox "Ulangi password baru !", vbCritical, "Peringatan" txtpass3.SetFocus Exit Sub End If If Not validity(txtpass3, "Konfirmasi Password") Then txtpass3.SetFocus Exit Sub End If If txtpass2.Text <> txtpass3.Text Then MsgBox "Password dan Ulangi Password tidak sesuai !", vbCritical, "Peringatan" txtpass2.Text = "" txtpass3.Text = "" txtpass2.SetFocus Exit Sub End If If Check1.Value = 0 Then konek_db sql = "select * from list_user where user_id = '" & txtlogin.Text & "'" adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic If (adoRS.EOF) Then MsgBox "User ID tidak terdaftar! Masukkan User ID yang benar!", vbCritical, "Peringatan" txtlogin.Text = "" txtlogin.SetFocus Call closeconn Exit Sub End If Call closeconn End If xxv
konek_db If Check1.Value = 1 Then sql = "select * from list_user where level = '" & "Administrator" & "' and pass = '" & Crypt(txtpass.Text) & "'" Else sql = "select * from list_user where user_id = '" & txtlogin.Text & "' and pass = '" & Crypt(txtpass.Text) & "'" End If adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic If (adoRS.EOF) Then If Check1.Value = 1 Then MsgBox "Password Administrator Salah! Coba lagi dengan password Administrator yang benar !", vbCritical, "Peringatan" Else MsgBox "Password Administrator yang sekarang salah! Coba lagi dengan password Administrator yang sekarang !", vbCritical End If txtpass.Text = "" txtpass.SetFocus Call closeconn Exit Sub End If Call closeconn sql = "update list_user set pass = '" & Crypt(txtpass2.Text) & "' where user_id = '" & txtlogin.Text & "'" adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic Call closeconn MsgBox "Password berhasil diubah!", vbInformation, "Informasi" Unload Me End Sub
xxvi
Private Sub Command1_Click() Unload Me End Sub Form Hapus Administrator Private Sub cmdlogin_Click() 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 txtadmin.Text = "" Then MsgBox "Masukkan Password Administrator !", vbCritical txtadmin.SetFocus Exit Sub End If If Not validity(txtadmin, "Administrator Password") Then txtadmin.SetFocus Exit Sub End If konek_db sql = "select * from list_user where level = '" & "Administrator" & "' and pass = '" & Crypt(txtadmin.Text) & "'" adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic If (adoRS.EOF) Then
xxvii
MsgBox "Password Administrator Salah! Coba lagi dengan password Administrator yang benar!", vbCritical, "Peringatan" txtadmin.Text = "" txtadmin.SetFocus Call closeconn Exit Sub End If Call closeconn sql = "select * from list_user where user_id = '" & txtlogin.Text & "'" adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic If (adoRS.EOF) Then MsgBox "User ID (" & txtlogin.Text & ") tidak terdaftar! Masukkan User ID yang valid!", vbCritical, "Peringatan" txtlogin.Text = "" txtlogin.SetFocus Call closeconn Exit Sub End If Call closeconn sql = "delete from list_user where user_id = '" & txtlogin.Text & "'" adoRS.Open sql, Conn, adOpenDynamic, adLockOptimistic Call closeconn MsgBox "User berhasiil dihapus!", vbInformation, "Informasi" Unload Me End Sub Private Sub Command1_Click() Unload Me End Sub
xxviii
Private Sub cmdPengetahuan_Click() frmPengetahuan.Show vbModal End Sub Private Sub Form_Activate() Call Form_Load End Sub Private Sub Form_Load() 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 mnDiagnosisKerusakan_Click() frmDiagnosis.Show vbModal End Sub Private Sub mnEdit_Click() frmPengetahuan.Show vbModal End Sub xxix
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
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 cmdInputKerusakan_Click() frmKerusakan.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() xxxi
On Error GoTo simpanErr If txtIDKnowledge.Text = Empty Or _ cboKerusakan.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_kerusakan = txtIDKerusakan.Text !pertanyaan = txtPertanyaan.Text !faktaYA = txtFaktaYA.Text !faktaTIDAK = txtFaktaTIDAK.Text !Ya = cboYA.Text !Tidak = cboTIDAK.Text .Update xxxii
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 xxxiii
txtIDKnowledge.Text = !ID txtIDKerusakan.Text = !ID_kerusakan txtPertanyaan.Text = !pertanyaan txtFaktaYA.Text = !faktaYA txtFaktaTIDAK.Text = !faktaTIDAK cboYA.Text = !Ya cboTIDAK.Text = !Tidak Set rsRusak = New ADODB.Recordset rsRusak.Open "select * from kerusakan where ID_kerusakan='" &
txtIDKerusakan.Text & "'", Conn cboKerusakan.Text = rsRusak!jenis_kerusakan 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 gridKerusakan.Columns(i).Locked = True gridSolusi.Columns(i).Locked = True Next i cboCari.AddItem "ID Pengetahuan" cboCari.AddItem "Pertanyaan" cboCari.AddItem "ID Kerusakan" xxxiv
'If Not rsKerusakan.EOF Then cboKerusakan.Clear rsKerusakan.MoveFirst While Not rsKerusakan.EOF cboKerusakan.AddItem rsKerusakan!jenis_kerusakan rsKerusakan.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 xxxv
Adodc1.RecordSource = "select * from knowledge" Adodc1.Refresh Set gridKnowledge.DataSource = Adodc1 Adodc3.ConnectionString = Conn.ConnectionString Adodc3.RecordSource = "select * from kerusakan" Adodc3.Refresh Set gridKerusakan.DataSource = Adodc3 Adodc2.ConnectionString = Conn.ConnectionString Adodc2.RecordSource = "select * from solusi" Adodc2.Refresh Set gridSolusi.DataSource = Adodc2 gridKerusakan.Columns(0).Width = 400 gridKerusakan.Columns(1).Width = 5000 gridSolusi.Columns(0).Width = 400 gridSolusi.Columns(1).Width = 5000 gridKnowledge.Columns(0).Width = 400 gridKnowledge.Columns(4).Width = 400 gridKnowledge.Columns(5).Width = 400 gridKnowledge.Columns(6).Width = 400 End Sub Sub KosongkanForm() txtIDKnowledge.Text = Empty txtIDKerusakan.Text = Empty cboKerusakan.Text = Empty txtPertanyaan.Text = Empty txtFaktaYA.Text = Empty txtFaktaTIDAK.Text = Empty cboYA.Text = Empty cboTIDAK.Text = Empty End Sub xxxvi
Sub KunciTeks(kunci As Boolean) txtIDKnowledge.Locked = kunci cboKerusakan.Locked = kunci txtPertanyaan.Locked = kunci txtFaktaYA.Locked = kunci txtFaktaTIDAK.Locked = kunci cboYA.Locked = kunci cboTIDAK.Locked = kunci End Sub Private Sub cboKerusakan_Click() On Error GoTo rusakErr Set rsRusak = New ADODB.Recordset rsRusak.Open "select * from kerusakan where jenis_kerusakan='" &
cboKerusakan.Text & "'", Conn txtIDKerusakan.Text = rsRusak!ID_kerusakan 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" xxxvii
Case "Pertanyaan" sqlc = "SELECT * FROM knowledge where pertanyaan like " & "'%" & txtCari.Text & "%'" & _ "ORDER BY ID" Case "ID Kerusakan" sqlc = "SELECT * FROM knowledge where ID_kerusakan 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 xxxviii
Form Kerusakan 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 txtIDKerusakan.Text = Empty Or _ txtJenisKerusakan.Text = Empty Then MsgBox "Informasi belum lengkap ! Lengkapi terlebih dahulu !", vbExclamation, "Peringatan" xxxix
txtIDKerusakan.SetFocus Else Dim rsCek As ADODB.Recordset Set rsCek = New ADODB.Recordset rsCek.Open "select * from kerusakan where ID_kerusakan='" &
txtIDKerusakan.Text & "'", Conn If Not rsCek.EOF And baru Then MsgBox "Kerusakan dengan kode " & txtIDKerusakan.Text & " sudah ada, silahkan ganti dengan kode yang lain !", vbExclamation, "Peringatan" txtIDKerusakan.SetFocus: SendKeys "{HOME}+{END}" Else With Adodc1.Recordset If baru Then .AddNew !ID_kerusakan = txtIDKerusakan.Text !jenis_kerusakan = txtJenisKerusakan.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 xl
tombolAwal False txtIDKerusakan.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 txtIDKerusakan.Text = !ID_kerusakan txtJenisKerusakan.Text = !jenis_kerusakan End With txtIDKerusakan.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 gridKerusakan.Columns(i).Locked = True Next i xli
txtCari.Text = "" End Sub Private Sub Form_Load() KunciTeks True tombolAwal True Adodc1.ConnectionString = Conn.ConnectionString Adodc1.RecordSource = "select * from kerusakan" Adodc1.Refresh Set gridKerusakan.DataSource = Adodc1 gridKerusakan.Columns(0).Width = 400 gridKerusakan.Columns(1).Width = 5000 End Sub Sub KosongkanForm() txtIDKerusakan.Text = Empty txtJenisKerusakan.Text = Empty End Sub Sub KunciTeks(kunci As Boolean) txtIDKerusakan.Locked = kunci txtJenisKerusakan.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 Kerusakan" sqlc = "SELECT * FROM kerusakan where ID_kerusakan like " & "'%" & txtCari.Text & "%'" & _ xlii
"ORDER BY ID_kerusakan" Case "Jenis Kerusakan" sqlc = "SELECT * FROM kerusakan where jenis_kerusakan like " & "'%" & txtCari.Text & "%'" & _ "ORDER BY ID_kerusakan" 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 gridKerusakan.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 xliii
Form Solusi 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" xliv
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 xlv
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 xlvi
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 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 & "%'" & _ xlvii
"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 xlviii
Form Pilih Kerusakan Private Sub cboKerusakan_Click() Command1.Enabled = True End Sub Private Sub Command1_Click() frmDiagnosis.Show vbModal End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Form_Load() Dim i As Integer i=0 cboKerusakan.Clear rsKerusakan.MoveFirst While Not rsKerusakan.EOF cboKerusakan.AddItem rsKerusakan!jenis_kerusakan, i i=i+1 rsKerusakan.MoveNext Wend Command1.Enabled = False End Sub
Private Sub cmdSelesai_Click() Me.Hide End Sub Private Sub cmdYa_Click() On Error Resume Next xlix
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.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 l
frmHasilDiagnosis.Show vbModal End If End Sub Private Sub Form_Activate() Call Form_Load End Sub Private Sub Form_Load() On Error Resume Next rsTemp.Requery While Not rsTemp.EOF rsTemp.Delete rsTemp.MoveNext Wend rsKnowledge.MoveFirst Select Case frmPilihKerusakan.cboKerusakan.ListIndex Case 0 rsKnowledge.Find " ID='T1' " Label1.Caption = rsKnowledge!pertanyaan Case 1 rsKnowledge.Find " ID='T10' " Label1.Caption = rsKnowledge!pertanyaan Case 2 rsKnowledge.Find " ID='T21' " Label1.Caption = rsKnowledge!pertanyaan Case 3 rsKnowledge.Find " ID='T38' " Label1.Caption = rsKnowledge!pertanyaan Case 4 rsKnowledge.Find " ID='T33' " Label1.Caption = rsKnowledge!pertanyaan li
Private Sub Form_Unload(Cancel As Integer) Call cmdSelesai_Click End Sub 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 Hasil Diagnosis : " + 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 Form Penanganan Private Sub Command1_Click() Me.Hide End Sub
lii