4.2. Penjelasan Program
4.2.6. Penyimpanan dan Pengartian Arti Kata
Penyimpanan dan pengartian arti kata merupakan fitur tambahan dari proses utama pembetulan harokat akhir, pada penyimpanan dan pengartian arti kata ini aplikasi menggunakan sebuah
if (kata[1].substring(0,3).compareTo("hjz")==0)
kata[2] = kata[2].substring(0,kata[2].length()‐1)+"\u0652";
if (kata[1].substring(0,3).compareTo("hnb")==0)
kata[2] = kata[2].substring(0,kata[2].length()‐1)+"\u064E";
if (kata[1].substring(0,3).compareTo("hjr")==0)
kata[2] = kata[2].substring(0,kata[2].length()‐1)+"\u0650";
if (kata[1].substring(0,3).compareTo("hid")==0)
kata[3] = kata[3].substring(0,kata[3].length()‐1)+"\u064C";
if (kata[1].substring(0,3).compareTo("hkd")==0)
fasilitas fitu dari J2ME yaitu RMS atau Record Management System. RMS merupakan sejenis system penyimpanan data yang menyerupai database. Untuk mengunakan RMS ini diperlukan library – library tambahan untuk melakukan proses tertentu, berikut beberapa contoh library yang digunakan.
Insialisasi awal pada RMS dilakukan pada fungsi kontruktor class utama, Inisialisai awal ini dapat dikatakan merupakan proses membuka RMS.
Pada fitur tambahan ini terdapat proses penyimpanan arti kata baru, penyimpanan arti kata baru tersebut dilakukan disebuah fungsi yang telah dibuatkan untuk proses penyimpanan, fungi ini menerima 2
import javax.microedition.rms.InvalidRecordIDException; import javax.microedition.rms.RecordEnumeration; import javax.microedition.rms.RecordStore; import javax.microedition.rms.RecordStoreException; public Bismillah() { try { data = RecordStore.openRecordStore("Database_Arbic", true);
} catch (RecordStoreException rse) { rse.printStackTrace();
buah parameter yaitu parameter kata berbahasa Arab dan parameter untuk arti kata dalam bentuk bahasa Indonesia.
public void tambahRecord(String kata, String arti) { byte[] temp = null;
try {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(baos); dos.writeUTF(kata); dos.writeUTF(arti);
temp = baos.toByteArray(); } catch (IOException ioe) { ioe.printStackTrace(); }
try {
data.addRecord(temp, 0, temp.length); switchDisplayable(getAlert(), getFmD()); } catch (RecordStoreNotOpenException rsnoe) { rsnoe.printStackTrace();
switchDisplayable(getAlert1(), getFmD()); } catch (RecordStoreException rse) { rse.printStackTrace();
switchDisplayable(getAlert1(), getFmD()); }
Untuk proses pengartian kata dilakukan pencarian arti kata per elemen yang terdapat di RMS dengan menggunakan parameter Unicode kata bahasa Arab sebagai kode untuk pencarian.
re = data.enumerateRecords(null, null, false); while (re.hasNextElement()) { int i = re.nextRecordId(); temp = data.getRecord(i);
ByteArrayInputStream bais = new ByteArrayInputStream(temp);
DataInputStream dis = new DataInputStream(bais);
try {
String katacari = dis.readUTF().toString(); if (katacari.compareTo(kata)==0){
String articari = dis.readUTF(); hasil = hasil + articari;
hasil = hasil + " "; dapat+=1;
}
} catch (IOException ioe) { ioe.printStackTrace(); }
5.1. Ujicoba
Untuk mengetahui sejauh mana kemampuan aplikasi ini dalam memberi harokat pada kalimat inputan maka perlu dilakukan pengujian. Pengujian dilakukan dengan memberikan beberapa kalimat sederhana bahasa Arab.
Kalimat-kalimat yang dijadikan contoh tersebut telah memiliki harokat kata yang benar oleh karena itu pada waktu pengujian kalimat - kalimat tersebut diberi harokat akhir kata yang salah dan sebagiannya dibiarkan berharokat benar.
Ketika aplikasi berjalan, setiap kalimat uji yang telah disiapkan diketikan di Textfield Input Kalimat, secara otomatis kalimat uji tersebut muncul di TextField input, jika mengalami kesulitan dalam proses input sebaikkanya ke menu help terlebih dahulu.
Gambar 5.1 Input Kalimat ke aplikasi
Setelah kalimat berhasil di inputkan, proses selanjutnya ialah proses eksekusi pembetulan kalimat dengan memilih menu proses.
Gambar 5.2 Proses dan Hasil Pembetulan Kalimat
Proses Pengujian tersebut dilalakukan pula pada 69 kalimat yang mempunyai struktur yang berbeda.
60 = 69 X 100 % = 0.8695 X 100 % = 86.95%
Dari hasil pengujian terhadapa 69 kalimat, dapat diketahui 60 dari 69 kalimat berhasil diberi harokat dengan benar pada akhir katanya sehingga diperoleh persentasi sebesar 86.95 %, dengan perhitungan sebagai berikut :
jumlah kalimat benar
jumlah pengujian X 100 %
Jadi diperoleh persentasi kalimat
5.2. Evaluasi
Bahasa Arab memiliki kompleksitas pola dan kosa kata yang kaya. Hal ini merupakan salah satu ketakutan yang menjadikan bahasa Arab kurang diminati. Keberhasilan sistem ini dalam membetulkan harokat akhir kata dalam kalimat bahasa Arab hanya berkisar disebabkan oleh keunikan model kata yang beragam dan adanya kata yang harokatnya ditentukan oleh konteks kalimat. Permasalahan ini akan mudah diselesaikan bila sistem memiliki data yang memberikan ciri pada setiap kata dan bila rule ini tersedia dengan lengkap, tidak hanya harokat akhir kata yang mampu diselesaikan tapi juga harokat keseluruhan kata. Berikut salah satu contoh kalimat yang mampu diberi harokat dengan benar oleh sistem ini.
ﺐْﺒﻃ
ٌﺪﱠ ﺤ
Kata terakhir pada kalimat di atas seharusnya memiliki harokat dhommah karena merupakan khobar dalam susunan mutabda’ khobar karena pada susunan kalimat mutabda’ khobar semua harokat akhir kata dalam keadaan marfu’. Pada susunan kalimat yang sama, kata terakhir pada kalimat bisa memiliki harokat fatchah, missal
بﺎﺘﻜْا
ٌﺬْز
أﺮْ
ْ
Ini bisa terjadi karena kedudukan kata ini dalam kalimat tersebut merupakan maf’ulun bih (objek).
Selain contoh di atas, masih ada beberapa kalimat lain yang seringkali juga menjebak. Permasalahan ini pun kadang tidak bisa diselesaikan oleh orang yang tengah mempelajari bahasa Arab karena perlu mengetahui maknanya. Permasalahan lain dalam mempelajari bahasa Arab adalah banyaknya pengecualian di luar kaidah tertentu bahkan ada kaidah lain dibalik kaidah tertentu. Masalah seperti ini bisa dilihat dalam pembentukan kata kerja yang sebagian memiliki kaidah tersendiri di luar pola yang telah ditetapkan oleh penyusun ketika pengembangan, tentu ini menjadi permasalahan tersendiri bagi sistem untuk mengidentifikasinya.
Kendala lain yang menjadi hambatan sistem ini untuk menyelesaikan tugasnya dengan baik adalah system masih mempunyai
kekurangan ketika harus menghadapi pola – pola tertentu, misalnya di bahasa Arab bentuk untuk gender male dan female dibedakan. Disanalah system masih kesulitan untuk mengidentifikasi bahwa kata pada kalimat tersebut merupakan gender male atau female. Selain kendala tersebut system kesalahan penulisan atau input kata oleh user. Sebagian besar orang seringkali tidak memperhatikan hal ini dalam tulis menulis dan hal ini kadang tidak menjadi masalah dalam berkomunikasi, tapi ini akan angat menganggu dalam sistem ini untuk merepresentasikan kata tersebut.
Di luar keterbatasan tersebut, sistem ini telah berjalan cukup baik dan tidak hanya kalimat sederhana yang mampu diselesaikan namun juga kalimat yang memiliki pola beragam. Berdasarkan pengujian, sistem ini mampu memberikan solusi pada kalimat yang memiliki susunan seperti berikut :
Dengan nilai persentase keberhasilan 82.85%, aplikasi ini sudah cukup baik untuk menyelesaikan permasalahan pembetulan harokat akhir kata dalam kalimat bahasa
6.1. Kesimpulan
Berdasarkan aplikasi yang telah dibuat beserta uji coba yang telah dilakukan, maka dapat ditarik kesimpulan sebagai berikut:
a. Dari beberapa analisa struktur kalimat sederhana bahasa arab akan di dapat sebuah bentuk tree dengan memanfaatan algoritma pembentukkan decision tree
b. Dari hasil decision tree akan mendapatkan sebuah bentuk pohon rule yang kemudian dapat dibentuk rule percabangan pada aplikasi berbasis mobile.
c. Rule percabangan dapat digunakan untuk melakukan pembetulan akhir kata kalimat sederhana berdasarkan stuktur kalimat yang memenuhi.
6.2. Saran
Berdasarkan kesimpulan di atas, terdapat beberapa saran untuk pengembangan aplikasi ini selanjutnya:
a. Parameter yang disiapkan lebih kompleks sehingga tidak hanya mampu memberi harokat pada kalimat tapi juga pada paragraf atau tulisan bahasa Arab serta beberapa bentuk pola kata dalam
bahasa Arab juga lebih siapkan untuk mendapatkan hasil yang lebih baik.
b. Pada setiap kata yang telah mengalami pembetulan harokat akan lebih baik bila disertai dengan alasan atau argumen kenapa kata tersebut diberi harokat demikian sehingga aplikasi ini bisa menjadi media pembelajaran.
c. Tingkat keberhasilan pembetulan lebih tingkatkan agar aplikasi menjadi aplikasi pembetulan yang akurat.
Anonym. 2011. Bahasa Arab. http://id.wikipedia.org/wiki/Bahasa_Arab, 15 Mei 2011
Anonym. Bahasa Arab Dasar. 2010.
http://badaronline.com/category/nahwu, 23 April 2011
Anonym. Pengenalan Terhadap Pembangunan Aplikasi Mobile. http://muhammadadri.net/wp-content/uploads/2008/05/jeni- slides-j2me-01-pengenalan-thdp-pembangunan-apl-
mobille.pdf, 15 April 2011
Ahmad, Faiz Ahmad, Dr. Lc.M.Ag. 2010. 6 Jam Pandai Bahasa Arab. Jakarta : Pustka Balqis
Fuadi, Mukhlish. 2010. Pembetulan Harokat Akhir Kata Dalam Kalimat Bahasa Arab Menggunakan Decision Tree. http://lib.uin-malang.ac.id/?mod=th_detail&id=06550076. 29 Maret 2010
Hartanto Wirawan, ST. PENGANTAR ANALISIS KEPUTUSAN. http://pksm.mercubuana.ac.id/new/elearning/files_modul/1600 4-1-309343405708.doc, 15 April 2011
Irul. Sioju. 2010. Decision Tree 5207100030. From http://www.scribd.com/doc/9663002/Decision-Tree-
Raharjo, Budi dan Imam Heryanto dan Arif HAryono. 2007. Tuntunan Pemrograman JAVA untuk Handphone. Bandung : Informatika Rr. Artiana Krestianti. 2010. PENGENALAN JAVA 2 .http://artiana_k.staff.gunadarma.ac.id/Downloads/files/19266/ PENGENALAN+JAVA++BAB+4.pdf, 14 April 2011
Rusdianto. 2010. TEBAS BAHASA ARAB. Jogjakarta: DIVA PRESS Yazid, Ahmad K.H dan Umar Hubeis Ust.. 2011. Belajar Mudah Ilmu
Lampiran I
TABEL DECODING UNICODE ARAB