BAB III ANALISIS DAN PERANCANGAN

advertisement
BAB III
ANALISIS DAN PERANCANGAN
3.1 Tahapan Pembangunan Sistem Pakar Berbasis Web
Pembangunan sistem pakar untuk memilih buku ilmu syar’i berbahasa Indonesia,
mengikuti proses pengembangan sistem pakar berbasis web seperti pada gambar II-4,
dengan tahapan-tahapan sebagai berikut :
a. Lingkup dan Konseptualisasi
Melakukan studi kelayakan terhadap domain, menentukan tim pengembang dan
pakar, serta memilih kakas yang digunakan.
b. Kebutuhan dan Spesifikasi
Menganalisis kebutuhan fungsional dan non-fungsional, serta menetapkan
spesifikasi sistem
c. Subproyek pengembangan sistem pakar
Pada tahapan ini, dilakukan akuisisi pengetahuan dan membangun prototipe
pengembangan sistem pakar.
d. Subproyek pengembangan aplikasi web
Pada tahapan ini, dilakukan perancangan disain data, disain hypertext, dan disain
arsitektur
e. Implementasi
Melakukan implementasi pada masing-masing subproyek.
f. Pengujian
Melakukan pengujian dari hasil implementasi pada masing-masing subproyek dan
sistem pakar berbasis web keseluruhan.
Tahapan pengembangan aplikasi lain tidak dilakukan karena tidak ada aplikasi lain
dalam pelaksanaan tugas akhir ini. Sedangkan tahapan analisis resiko dan rilis versi
dan evolusi tidak diperlukan dalam pelaksanaan tugas akhir ini.
1
III-2
3.2 Lingkup dan Konseptualisasi
3.2.1 Studi Kelayakan
Memilih buku ilmu syar’i berbahasa Indonesia sesuai dengan tingkat kebutuhan dan
tingkat pemahaman pembaca merupakan ill-structured problems, sehingga sistem
pakar cocok menjadi solusi dari permasalahan. Hal ini ditinjau dari sebab-sebab
sebagai berikut :
a. Ruang solusi dari permasalahan memilih buku ilmu syar’i berbahasa Indonesia
tidak terbatas, karena jumlah buku ilmu syar’i berbahasa Indonesia semakin hari
semakin bertambah banyak
b. Solusi dalam permasalahan ini tidak pasti, karena sebuah buku ilmu syar’i bisa
dibaca oleh tingkat pemahaman yang berbeda, walaupun pembaca dengan salah
satu tingkat pemahaman lebih cocok untuk membaca buku tersebut
c. Keadaan masalah dari memilih buku ilmu syar’i berbahasa Indonesia sesuai
dengan tingkat kebutuhan dan tingkat pemahaman pembaca tidak diskrit, karena
sulit untuk menentukan tingkat pemahaman pembaca secara pasti dan jelas
berdasarkan data yang diberikan oleh pembaca itu sendiri
Kriteria-kriteria dari permasalahan memilih buku ilmu syar’i yang menjadikan sistem
pakar layak menjadi solusinya adalah :
a. Memilih buku ilmu syar’i merupakan permasalahan yang menggunakan human
solving, karena dibutuhkan pengetahuan dan pengalaman ulama dalam
menemukan solusi
b. Perkembangan suatu bahasa dapat mempengaruhi pemahaman pembaca dan gaya
bahasa yang digunakan oleh penulis. Oleh karena itu, pengetahuan untuk memilih
buku ilmu syar’i juga turut berubah.
c. Kepakaran untuk memilih buku ilmu syar’i ini berdasarkan pengetahuan yang
ilmiah dan ditambah dengan pengalaman para pakar. Sehingga alur pemikiran
pakar dalam menyelesaikan permasalahan memilih buku ilmu syar’i dapat
dimengerti.
d. Pembaca
menyampaikan
data
berupa
tingkat
kebutuhan
dan
tingkat
pemahamannya agar didapatkan buku ilmu syar’i yang sesuai, hanya berupa
perkiraan pembaca itu sendiri
III-3
Untuk mengukur kelayakan sistem pakar menjadi solusi dari suatu permasalahan,
dilakukan metode evaluasi proyek sistem pakar yang terdiri dari 3 kelompok kriteria
yaitu : [PUP93]
a. Pengguna dan Manajemen (8 item)
Pengguna akan mendapatkan keuntungan dari sistem pakar ini, yaitu pembaca
akan menemukan buku ilmu syar’i yang sesuai dengan tingkat kebutuhan dan
tingkat pemahamannya. Hal ini dapat diketahui dari pengakuan pembaca itu
sendiri atau dengan melihat perbuatan pembaca setelah membaca buku ilmu syar’i
yang disarankan sistem pakar. Selain itu, pembaca dapat berinteraksi dengan
sistem pakar dan sistem pakar tidak akan terlalu banyak mengeluarkan
pertanyaan, apalagi pertanyaan yang tidak penting.
b. Task (17 item)
Task dalam sistem pakar ini heuristic dan tidak memerlukan NLP (Natural
Language Processing). Persoalan memilih buku ilmu syar’i tidak membutuhkan
solusi yang optimum dan alasan pengambilan solusi dapat dijelaskan. Sistem
pakar ini bisa digunakan di beberapa lokasi, karena berbasiskan web.
c. Pakar (15 item)
Pakar yang dibutuhkan dalam sistem pakar ini tersedia dan betul-betul pakar
dalam permasalahan memilih buku ilmu syar’i ini. Pakar yang akan diakuisisi
pengetahuannya adalah orang yang dapat mengeluarkan pikirannya, bersedia
bekerja sama, dapat dipercaya, dan tidak merasa terancam dengan sistem pakar
ini.
Setiap item diberi nilai 0 hingga 10. Kemudian nilai setiap item dikalikan dengan
bobot item tersebut. Lalu hasilnya dijumlahkan dan dibagi dengan jumlah dari semua
bobot item. Nilai evaluasi berkisar antara 0 (sangat tidak layak) sampai 10 (layak
sekali). Evaluasi kelayakan yang dilakukan dapat dilihat pada lampiran A.
Berdasarkan penjelasan di atas, sistem pakar cocok menjadi solusi permasalahan
memilih buku ilmu syar’i. Hal ini disebabkan sebagian besar kriteria terpenuhi dan
sistem pakar juga layak menjadi solusi permasalahan memilih buku ilmu syar’i karena
mempunyai nilai evaluasi 8,96.
III-4
3.2.2 Tim Pengembang dan Pakar
Dalam pembangunan sistem pakar berbasis web ini, tim pengembang hanya terdiri
dari seorang perekayasa pengetahuan. Adapun pakar yang diakuisisi pengetahuannya
adalah Al-Ustadz Abu Isa Abdullah bin Salam, pakar di bidang ilmu syar’i.
Pertemuan antara perekayasa pengetahuan dengan pakar dapat dilakukan setiap 2
minggu sekali, selama 6 bulan.
3.2.3 Kakas
Kakas yang digunakan dalam pembangunan sistem pakar berbasis web ini adalah
WebCLIPS, dengan alasan :
a. Merupakan implementasi dari CLIPS untuk sistem pakar berbasis web
b. Merupakan kakas gratis
c. Mudah digunakan bersama kakas XAMPP
3.3 Kebutuhan dan Spesifikasi
3.3.1 Kebutuhan Fungsional
Kebutuhan fungsional dari sistem pakar berbasis web ini adalah :
a. Pengguna memilih topik yang diinginkan
b. Pengguna menjawab sejumlah pertanyaan dengan cara memilih pilihan jawaban
yang telah disediakan
c. Admin dapat menambah, mengedit, dan menghapus data buku ilmu syar’i
d. Admin dapat mengelola fakta buku
3.3.2 Kebutuhan Non-Fungsional
Kebutuhan non-fungsional dari sistem pakar berbasis web ini adalah :
a. Proses dari pengguna mengirim data (dengan cara menjawab pertanyaan) sampai
sistem mengeluarkan pertanyaan selanjutnya atau solusi tidak lebih dari 10 detik
b. Sistem mudah digunakan
c. Antarmuka sistem menarik
3.3.3 Spesifikasi Sistem
Permasalahan yang ingin dipecahkan dalam sistem pakar berbasis web ini adalah
bagaimana memilih buku ilmu syar’i berbahasa Indonesia sesuai dengan tingkat
III-5
kebutuhan dan tingkat pemahaman pengguna secara efisien dan efektif. Pengguna
sistem pakar ini adalah kaum Muslimin yang bisa berbahasa Indonesia. Tujuan dari
proyek ini adalah untuk membangun sistem pakar yang dapat memberi saran berupa
buku ilmu syar’i berbahasa Indonesia yang sesuai dengan tingkat kebutuhan dan
tingkat pemahaman pengguna.
Keluaran dari sistem pakar berupa sebuah buku ilmu syar’i berbahasa Indonesia
dengang menampilkan judul, penulis, dan penerbit buku tersebut. Adapun masukan
untuk sistem pakar adalah data yang menggambarkan tingkat kebutuhan dan tingkat
pemahaman pengguna.
3.4 Subproyek Pengembangan Sistem Pakar
3.4.1 Akuisisi Pengetahuan
Metode akuisisi pengetahuan yang dilakukan adalah Tasking Action Mapping. Metode
ini dipilih karena :
a. Representasi pengetahuan yang dipilih adalah PET
b. Perekayasa pengetahuan mampu untuk membuat pemetaan aksi atau diagram
aliran keputusan yang berbentuk PET
c. Pakar hanya melakukan evaluasi terhadap data dan diagram aliran keputusan yang
telah dibuat oleh perekayasa pengetahuan
Sebelum melakukan proses akuisisi pengetahuan terhadap pakar, perekayasa
pengetahuan melakukan hal-hal sebagai berikut :
a. Menentukan topik
Topik ditentukan berdasarkan topik-topik pada buku ilmu syar’i.
b. Menyiapkan subtopik yang akan ditanyakan kepada pengguna untuk mengetahui
tingkat pemahamannya tentang suatu topik
c. Menentukan kelas tingkat kebutuhan
Berdasarkan subbab 2.4.2 tingkat kebutuhan dibagi menjadi 2 kelas yaitu :
1. Umum : jika pembahasannya bersifat umum dan cakupannya luas
2. Khusus : jika pembahasannya bersifat khusus dan cakupannya sempit
d. Menentukan kelas tingkat pemahaman
III-6
Berdasarkan subbab 2.4.2 tingkat pemahaman pembaca terdiri dari 3 kelas, yaitu :
1. Awam : kelas pembaca yang baru ingin belajar ilmu syar’i
2. Penuntut ilmu pemula : kelas pembaca yang telah belajar ilmu syar’i, tetapi
masih pemula
3. Penuntut ilmu lanjutan : kelas pembaca yang telah lama belajar ilmu syar’i
Ulama tidak dimasukkan disebabkan seorang ulama wajib menguasai bahasa
Arab, sehingga tidak memerlukan buku ilmu syar’i berbahasa Indonesia.
e. Membuat PET
PET dibuat untuk setiap topik dan proses pembuatan PET untuk setiap topik
adalah sama.
Proses-proses akuisisi pengetahuan yang dilakukan dapat dilihat pada tabel III-1.
Tabel III-1 Proses-proses akuisisi pengetahuan
Proses ke1
2
3
4
Kegiatan
a. Perekayasa pengetahuan melakukan
konfirmasi kepada pakar tentang subtopik
yang akan ditanyakan kepada pengguna
untuk mengetahui tingkat pemahamannya
tentang suatu topik
b. Pakar mengevaluasi subtopik tersebut,
dengan cara menyetujui, menambah, atau
menguranginya, serta menentukan urutan
subtopik dari yang menggambarkan kelas
awam hingga kelas penuntut ilmu lanjutan
Melanjutkan kegiatan pada proses ke-1
Hasil
Subtopik-subtopik pada topik
Aqidah selesai dievaluasi
Mengkonfirmasikan PET yang dibuat oleh
perekayasa pengetahuan ke pakar untuk
dievaluasi, sekaligus mengevaluasi bobot
untuk setiap keputusan
Mengkonfirmasikan tentang pertanyaan utama
untuk setiap simpul yang bukan daun pada
PET ke pakar
PET selesai dievaluasi
Subtopik-subtopik pada topik
Shalat selesai dievaluasi
Pertanyaan utama selesai
dievaluasi
3.4.2 Prototipe Pengembangan Sistem Pakar
3.4.2.1 Representasi pengetahuan
Pada gambar III-1 dan gambar III-2 diperlihatkan representasi pengetahuan dalam
bentuk PET.
III-7
Gambar III-1 PET Aqidah
III-8
Gambar III-2 PET Shalat
III-9
Simpul akar pada PET dimulai dari subtopik yang paling mendasar untuk setiap topik.
Setiap percabangan dari simpul, akan menghasilkan simpul lainnya, baik simpul
bukan daun maupun simpul daun. Simpul anak yang dihasilkan oleh simpul induk
berupa simpul bukan daun, maka pertanyaan yang terdapat pada simpul anak
menggambarkan subtopik yang lebih tinggi dari simpul induk. Sedangkan simpul
anak yang berupa simpul daun, berisikan kelas tingkat pemahaman beserta nilai
probabilitasnya.
Setelah mendapatkan tingkat pemahaman pembaca beserta nilai probabilitasnya,
maka akan didaftar sejumlah subtopik sesuai dengan simpul yang dilalui untuk
mendapatkan tingkat kebutuhan. Daftar subtopik dapat dilihat pada lampiran B.
Contoh kasus :
Pertanyaan dari sistem beserta jawaban dari pengguna (berdasarkan PET Shalat).
a. Simpul : Apakah anda tahu pengertian shalat ?
Pertanyaan : Apa makna (pengertian) shalat ?
Jawaban : Ucapan dan gerakan khusus yang dimulai takbir dan diakhiri salam
Nilai : Ya, paham
b. Simpul : Apakah anda tahu syarat sah, syarat wajib, pembatal, dan rukun shalat ?
Pertanyaan : Apa yang kita baca ketika sujud ?
Jawaban : Tidak membaca apa pun
Nilai : Tidak
Maka akan didapat tingkat pemahaman adalah awam dengan nilai probabilitasnya 70
%. Setelah itu didaftar sejumlah subtopik (lihat tabel 2 pada lampiran B) sebagai
berikut :
a. Praktek shalat (umum)
b. Shalat jama’ah (khusus)
c. Keutamaan shalat (umum)
d. Kesalahan dalam shalat (khusus)
Jika dipilih subtopik praktek shalat, maka akan didapat abstraksi data berupa tingkat
pemahaman adalah awam dengan nilai probabilitasnya 70% dan tingkat kebutuhan
III-10
adalah umum. Nilai probabilitas pada tingkat pemahaman hanya berguna untuk
menentukan subtopik-subtopik yang diajukan ke pengguna. Berdasarkan tingkat
kebutuhan dan tingkat pemahaman, maka diperoleh kelas buku yaitu kelas umum
awam. Kemudian dilakukan pemilihan buku berdasarkan prioritas yaitu subtopik yang
dipilih oleh pengguna. Jika terdapat buku yang memiliki kelas dan prioritas yang
sama, maka buku yang berasal dari fakta baru akan mendapatkan prioritas (depth
strategy). Oleh karena itu hasil dari proses ini secara berurutan adalah buku dengan
kode 16, 8, dan 7 (lihat fakta buku pada buku.dat di lampiran C).
3.4.2.2 Mesin inferensi
Metode pemecahan masalah pada sistem pakar ini menggunakan heuristic
classification dengan alasan sebagai berikut :
a. Dibutuhkannya abstraksi data dari data mentah yang diberikan pembaca menjadi
tingkat kebutuhan dan tingkat pemahaman pembaca, sebelum melakukan
pencocokan dengan abstraksi solusi yang ada
b. Adanya nilai probabilitas pada data abstraksi yang dihasilkan, sehingga diperlukan
pencocokan secara heuristic dengan abstraksi solusi
Adapun struktur inferensi sistem pakar berdasarkan heuristic classification adalah
seperti gambar III-3.
Gambar III-3 Struktur inferensi pada heuristic classification
Penjelasan struktur inferensi di atas sebagai berikut :
a. Data pemahaman pembaca : data mentah dari pembaca, untuk mendapatkan
tingkat pemahamannya
b. Data kebutuhan pembaca : data mentah dari pembaca, untuk mendapatkan tingkat
kebutuhannya
III-11
c. Tingkat pemahaman pembaca : abstraksi data berupa tingkat pemahaman
pembaca
d. Tingkat kebutuhan pembaca : abstraksi data berupa tingkat kebutuhan pembaca
e. Kelas buku : abstraksi solusi yang sesuai dengan abstraksi data secara heuristic
f. Judul buku : solusi yang didapat setelah melakukan perbaikan (refinement)
terhadap abstraksi solusi
3.5 Subproyek Pengembangan Aplikasi Web
3.5.1 Disain Data
Gambar III-4 Disain basis data
Penjelasan disain basis data dapat dilihat pada tabel III-2.
Tabel III-2 Penjelasan disain basis data
Nama Tabel
t_buku
t_topik
t_pp
t_simpul
Nama Kolom
id_buku
judul
penulis
penerbit
kelas
prioritas
id_topik
topik
username
Tipe Data
integer
string
string
string
integer
integer
integer
string
string
password
string
id_simpul
nama
integer
string
Keterangan
primary key tabel t_buku
judul buku
penulis buku
penerbit buku
foreign key dari tabel t_kelas
foreign key dari tabel t_kebutuhan
primary key tabel topik
nama topik
username admin / perekayasa
pengetahuan (primary key)
password admin / perekayasa
pengetahuan
primary key tabel t_simpul
nama simpul
III-12
pertanyaan
t_jawaban
id_jwb
simpul
teks_jwb
nilai_jwb
t_pemahaman
id_pemahaman
pemahaman
t_subtopik
id_subtopik
nama
kebutuhan
nilai
topik
t_kelas
id_kelas
kelas
r_daftar_kebutuhan pemahaman
kebutuhan
string
integer
integer
string
string
integer
string
integer
string
string
string
integer
integer
string
integer
integer
pertanyaan untuk sebuah simpul
primary key tabel t_jawaban
foreign key dari tabel t_simpul
teks jawaban
nilai jawaban
primary key tabel t_pemahaman
kelas tingkat pemahaman
primary key tabel t_subtopik
nama subtopik
tingkat kebutuhan
nilai subtopik
topik dari subtopik
primary key tabel t_kelas
nama kelas buku
foreign key dari tabel t_pemahaman
foreign key dari tabel t_subtopik
3.5.2 Disain Hypertext
3.5.2.1 Antarmuka untuk Pengguna
Gambar III-5 Antarmuka home
III-13
Gambar III-6 Antarmuka pilih topik
Gambar III-7 Antarmuka pertanyaan untuk tingkat pemahaman
Gambar III-8 Antarmuka untuk memilih subtopik
III-14
Gambar III-9 Antarmuka hasil sistem pakar
Gambar III-10 Antarmuka login
Gambar III-11 Antarmuka utama admin
III-15
Gambar III-12 Antarmuka tambah/edit data buku
Gambar III-13 Antarmuka cari
III-16
3.5.3 Disain Arsitektur
Gambar III-14 Arsitektur sistem pakar berbasis web
Penjelasan arsitektur sistem pakar berbasis web dapat dilihat pada tabel III-3.
Tabel III-3 Penjelasan arsitektur sistem
No
1
2
3
4
5
6
7
8
9
10
11
12
13
Modul
Pengguna/Pembaca
Admin
Aplikasi web
Aplikasi web admin
Basis data
CLIPS
Basis pengetahuan
Fakta sementara/hasil
Pengetahuan dasar pakar
Fakta buku
WebCLIPS
Pengelolaan fakta buku
Perekayasa pengetahuan
14
Pakar
Keterangan
Orang yang menggunakan sistem
Orang yang mengelola data dan fakta buku
Antarmuka bagi pengguna untuk mengakses sistem
Antarmuka bagi pengguna untuk mengakses sistem
Tempat penyimpanan data buku
Mesin inferensi
Tempat menyimpan pengetahuan
Pengetahuan dari hasil inferensi
Pengetahuan dasar dari pakar
Pengetahuan berupa fakta buku
Antarmuka aplikasi web dengan sistem pakar
Modul untuk mengelola fakta buku
Orang yang mengakuisisi pengetahuan dari pakar dan
memasukkannya ke basis pengetahuan
Sumber pengetahuan
III-17
Hubungan antara arsitektur umum sistem pakar dengan arsitektur sistem pakar
berbasis web adalah :
1. User Pengguna/Pembaca dan Admin
2. Expert Pakar
3. Interviewer component Aplikasi web dan Aplikasi web admin
4. Problem solving component CLIPS (mesin inferensi)
5. Case-specific knowledge Fakta buku
6. Intermediate result and problem solving Fakta sementara/hasil
7. Domain-specific knowledge Pengetahuan dasar pakar
Sedangkan explanation component tidak ada karena sistem pakar tidak menampilkan
penjelasan tentang solusi yang diberikan (lihat batasan masalah pengerjaan tugas
akhir pada subbab 1.4) dan knowledge acquisition component tidak ada karena
pengetahuan dari pakar dimasukkan oleh perekayasa pengetahuan.
Download