1
IMPLEMENTASI DAN PENGUJIAN
4.1 Implementasi
Pada bagian implementasi ini akan diuraikan tentang lingkungan implementasi, hasil implementasi basis pengetahuan, dan hasil implementasi aplikasi web.
4.1.1 Lingkungan Implementasi
Sistem pakar ini dibangun pada lingkungan Notebook (Laptop) dengan spesifikasi : a. Prosessor : Intel®Pentium®M 1.7GHz
b. Memori : 1 GB DDR2 c. Harddisk : 80 GB
Lingkungan pengembangan tersebut memiliki spesifikasi perangkat lunak sebagai berikut :
a. Sistem operasi : Windows XP SP2 b. XAMPP 1.6
c. MySQL 5.0.33 d. WebCLIPS e. Notepad++ f. Mozilla Firefox
4.1.2 Hasil Implementasi Basis Pengetahuan
Berdasarkan subbab 2.3, basis pengetahuan diimplementasikan ke dalam file book.clp. Simpul pada PET didefinisikan sebagai sebuah template yaitu :
(deftemplate simpul
(slot nama) ;nama simpul (slot tipe) ; tipe simpul
(slot paham-simpul) ; simpul jika jawabannya paham
(slot belum-paham-simpul) ; simpul jika jawabannya belum paham
(slot tidak-simpul) ; simpul jika jawabannya tidak (multislot jawaban) ; jawaban berupa tingkat pemahaman )
Contoh fakta simpul :
Gambar IV-1 Bagian dari PET shalat
(simpul (nama shalat) (tipe keputusan) (paham-simpul s01) (belum-paham-simpul s02) (tidak-simpul s03)) (simpul (nama s01) (tipe keputusan) (paham-simpul s04)
(belum-paham-simpul s06) (tidak-simpul s05)) (simpul (nama s02) (tipe keputusan) (paham-simpul s06)
(tidak-simpul s07)) (simpul (nama s03) (tipe daun)
(jawaban awam 99% pemula 1% lanjutan 0%))
Terdapat 2 template tambahan yaitu : a. Buku
(deftemplate buku
(slot kode) ; kode buku
(slot prioritas) ; subtopik prioritas (multislot kelas) ; kelas buku
) b. Kelas
(deftemplate kelas
(multislot nama) ; nama kelas buku
(slot prioritas) ; prioritas untuk pengurutan hasil buku )
Selain itu terdapat sejumlah definisi rule yang merupakan implementasi dari PET dan yang menghasilkan buku yang akan disarankan ke pengguna. Conflict resolution yang digunakan adalah depth strategy, yang merupakan conflict resolution default CLIPS. Secara umum, definisi rule sebagai berikut :
a. Inisialisasi
Definisi rule ini berguna ketika pertama kali menjalankan file book.clp dengan melakukan aksi-aksi sebagai berikut :
1. Meload file buku.dat yang berisikan fakta-fakta buku (lihat lampiran C) 2. Menghapus fakta topik yang dipilih pengguna
3. Menghasilkan fakta simpul-kini berupa akar dari PET 4. Mencetak kode akar dari PET
b. Proses jawaban
Definisi rule ini terdiri dari 3 jenis yaitu :
1. Proses-jawaban-paham : memproses jawaban paham dari pengguna
2. Proses-jawaban-belum-paham : memproses jawaban belum paham dari pengguna
3. Proses-jawaban-tidak : memproses jawaban tidak dari pengguna
Dalam definisi rule ini akan dilakukan aksi-aksi sebagai berikut :
1. Menghapus fakta jawaban dari pengguna dan fakta simpul sebelumnya
2. Menghasilkan fakta simpul-kini berupa simpul selanjutnya dari PET yang sesuai dengan jawaban pengguna
3. Mencetak kode simpul-kini c. Tingkat pemahaman
Pada definisi rule ini digunakan untuk menghasilkan tingkat pemahaman pengguna ketika proses jawaban pengguna telah mencapai simpul daun. Aksi-aksi pada definisi rule ini yaitu :
1. Menghapus fakta simpul daun
2. Menghasilkan fakta tingkat pemahaman 3. Mencetak tingkat pemahaman
d. Kelas buku
Definisi rule ini berguna ketika telah terdapat fakta tingkat pemahaman, fakta tingkat kebutuhan, dan fakta prioritas. Aksi-aksi yang dilakukan adalah :
1. Menghapus fakta tingkat pemahaman, fakta tingkat kebutuhan, dan fakta prioritas
2. Menghasilkan fakta kelas buku beserta prioritas subtopik buku yang akan disarankan kepada pengguna
e. Pilih buku
Definisi rule ini terdiri dari 2 jenis yaitu :
2. Pilih-buku : untuk menghasilkan buku selain prioritas dan merupakan anggota dari kelas buku yang dihasilkan
Aksi-aksi yang dilakukan adalah :
1. Menghapus fakta buku yang disarankan 2. Mencetak kode buku yang disarankan
Untuk implementasi definisi rule dalam CLIPS dapat dilihat pada lampiran C. 4.1.3 Hasil Implementasi Aplikasi Web
Aplikasi web dibangun dengan menggunakan bahasa PHP. Hasil implementasi tersebut dapat dilihat pada tabel IV-1.
Tabel IV-1 Hasil implementasi aplikasi web
No Nama file Keterangan
Folder : ../udrux
1 index.php Halaman utama aplikasi web
2 functions.php Kumpulan fungsi untuk halaman utama
3 login.php Pemrosesan login
4 logout.php Pemrosesan logout
5 blank.htm Halaman inisialisasi screen WebCLIPS Folder : ../udrux/admin
6 index.php Halaman utama admin
7 admFunctions.php Kumpulan fungsi untuk halaman utama admin Folder : ../udrux/configuration
8 config.php Konfigurasi basis data
Folder : ../udrux/engines
9 dbConnector.php Koneksi dan akses ke basis data Folder : ../udrux/javascripts
10 jsUdrux.js Kumpulan fungsi javascript Folder : ../udrux/style
11 style.css Kumpulan fungsi CSS
Folder : ../udrux/admin/configuration
12 config.php Konfigurasi basis data untuk admin Folder : ../udrux/admin/engines
Skema navigasi pada aplikasi web sebagai berikut : a. Home login pilih topik b. Pilih topik home
pertanyaan tingkat pemahaman c. Pertanyaan tingkat pemahaman
pilihan subtopik d. Pilihan subtopik
solusi buku prioritas e. Solusi buku prioritas
pilih topik
solusi buku alternatif f. Login home daftar buku g. Daftar buku logout cari tambah buku edit buku hapus buku h. Cari logout daftar buku edit buku hapus buku i. Tambah buku konfirmasi berhasil daftar buku j. Edit buku konfirmasi berhasil
daftar buku / cari k. Konfirmasi berhasil daftar buku / cari
Proses pengiriman fakta dari halaman web ke WebCLIPS (CLIPS) menggunakan teknologi AJAX (Asynchronous JavaScript and XML). Fakta berupa jawaban pengguna dikirim ke webclips.exe, kemudian AJAX menangkap teks yang dicetak oleh CLIPS. Teks tersebut akan diproses oleh halaman PHP untuk menampilkan pertanyaan selanjutnya atau solusi (buku yang disarankan).
Proses memasukkan fakta buku dilakukan dengan cara membangkitkan kode buku secara automatis, kelas buku dan prioritas dimasukkan oleh admin. Kemudian, sistem akan memasukkan fakta buku ke dalam file fakta buku (buku.dat). Fakta-fakta buku dapat dilihat pada lampiran C.
Hasil implementasi antarmuka dapat dilihat pada lampiran D. Gambar IV-1 dan gambar IV-2 memperlihatkan halaman utama untuk pengguna dan admin yang dibuka pada web browser Mozilla Firefox.
Gambar IV-3 Hasil implementasi antarmuka admin
4.2 Pengujian
4.2.1 Tujuan dan Skenario Pengujian
Tujuan pengujian adalah untuk mengetahui sejauh mana sistem pakar berbasis web telah benar dan lengkap dengan membandingkannya pada kebutuhan dan spesifikasi. Terdapat 2 jenis skenario pengujian yang secara umum sebagai berikut :
a. Pengguna
Langkah-langkah yang dilakukan dalam skenario pengujian ini adalah : 1. Sistem menampilkan pilihan topik
2. Pengguna memilih topik yang diinginkan 3. Sistem menampilkan sejumlah pertanyaan 4. Pengguna menjawab pertanyaan yang disediakan 5. Sistem menampilkan data buku yang disarankan 6. Pengguna dapat memilih buku alternatif lain b. Admin
Langkah-langkah yang dilakukan dalam skenario pengujian ini adalah :
1. Sistem menampilkan pilihan topik untuk menampilkan data buku untuk topik yang dipilih
2. Admin memilih topik yang diinginkan datanya untuk ditampilkan 3. Sistem menampilkan data buku dari topik yang diinginkan
4. Admin dapat memilih untuk melakukan tambah, edit, hapus, dan cari data buku tertentu
Selain itu, dilakukan juga pengujian terhadap skema navigasi aplikasi web.
Untuk mengategorikan hasil pengujian, digunakan definisi hasil pengujian sebagai berikut :
Tabel IV-2 Kategori hasil pengujian
Hasil Pengujian Keterangan
0 Sukses dengan sempurna
1 Sukses tapi masih perlu perbaikan
2 Gagal
3 Belum dibuat/Belum diuji
4 Baru sukses sebagian
Pada pengerjaan tugas akhir ini hanya dilakukan pengujian terhadap topik Shalat. Langkah-langkah detil skenario pengujian dapat dilihat pada lampiran E.
4.2.2 Hasil Pengujian
Berdasarkan hasil pengujian pada lampiran E, dapat diringkas sebagai berikut : a. Semua skenario yang didefinisikan telah dilaksanakan dengan baik
b. Proses penentuan tingkat pemahaman sesuai dengan PET yang didefinisikan c. Buku yang disarankan berhasil diurutkan sesuai dengan pilihan prioritas d. Semua fitur pada admin berhasil diuji