Pembetulan Harokat Akhir Kata Dalam Kalimat Bahasa Arab Menggunakan Decision Tree Berbasis Mobile.

(1)

Puji syukur penyusun panjatkan kehadirat Allah SWT yang telah melimpahkan rahmat serta hidayah-Nya, sehingga pelaksanaan penelitian pemanfaatan decision tree dalam menyelesaikan Skripsi “Aplikasi Pembetulan Harokat Akhir Kata dalam Kalimat Bahasa Arab Menggunakan Decision Tree Berbasis Mobile” dapat dilaksanakan dengan lancar, sehingga laporan ini dapat diselesaikan tepat pada waktunya.

Adapun tujuan daripada pembuatan laporan Skripsi ini adalah untuk menambah wawasan, kreatifitas, ilmu pengetahuan mahasiswa dan untuk mempelajari lebih dalam lagi tentang pemanfaatan generate rule dengan menggunakan decisions tree pada sebuah aplikasi pembetulan harokat akhir kalimat bahsa arab yang berbasis mobile.

Penulis menyadari bahwa laporan Skripsi ini jauh untuk dikatakan sempurna baik isi maupun penyajiannya. Oleh karena itu, penulis mengharapkan saran dan kritik yang bersifat membangun bagi perbaikan laporan di masa yang akan datang.

Akhir kata semoga laporan Skripsi ini dapat memberikan manfaat bagi semua pihak yang berkepentingan .

Surabaya, 14 Juni 2011


(2)

Laporan ini dapat terselesaikan tidak lepas dari bimbingan, pengarahan, serta bantuan

dan dukungan baik bersifat material maupun spiritual dari berbagai pihak. Oleh karena itu,

penulis tidak lupa untuk menyampaikan terima kasih yang sebesar-besarnya kepada semua

pihak yang terkait, antara lain :

1. Keluarga saya, Ibu, Kakek, Nenek, Paman dan juga Sepupu-Sepupu saya yang selalu memberikan dukungan serta doa untuk saya.

2. Bapak Ir. Sutiyono, MT selaku Dekan Fakultas Teknologi Industri UPN “Veteran” Jawa Timur.

3. Bapak Basuki Rachmat, S.Si, M.T selaku Ketua Jurusan Teknik Informatika UPN “Veteran” Jawa Timur.

4. Bapak Nur Cahyo Wibowo, S.Kom, M.Kom dan Ibu Fetty Tri Anggraeny, S.Kom selaku Dosen Pembimbing yang telah membimbing penulis dalam menyelesaikan laporan Skripsi ini.

5. Bapak Yusron Rizal, S.T., M.T. selaku Dosen Penguji Skripsi 6. Ibu Elvi Fatma, S.Kom, M.M. selaku Dosen Penguji Skripsi 7. Bapak Crystia Aji Putra, S.Kom selaku Dosen Penguji Skripsi

8. Bapak dan Ibu Dosen Jurusan Teknik Informatika yang telah memberikan bekal ilmu pengetahuan.

9. Bapak Mujib, Bapak Budi, dan rekan – rekan kerja di PT.DSM atas dukungan dalam penyelesaian skripsi ini.


(3)

disebutkan satu persatu, serta Tia dan Fika yang telah banyak memberikan dukungan, bantuan, serta doa dalam menyelesaikan Skripsi ini.


(4)

Penyusun : Chanif 

 

ABSTRAK

Ilmu Nahwu adalah ilmu yang mempelajari tentang jabatan kata dalam kalimat dan harakat akhirnya, baik secara i’rab (berubah) atau bina’ (tetap). Dan Tashrif secara bahasa berarti merubah, secara istilah memindah hukum asal dari satu lafadz ke beberapa contoh lafadz yang berbeda-beda karena beberapa makna yang diinginkan.

Berdasar dari fenomena pengharokatan yang masih menjadi permasalahan hingga saat ini dan dampaknya yang begitu besar, serta di lain sisi perkembangan teknologi yang kian canggih, penulis berupaya menyusun penelitian tentang pembetulan harokat akhir kata dalam kalimat bahasa Arab ini menggunakan teknologi kecerdasan buatan (Artificial Intelligence) yang berfokus pada pemanfaatan Decision Tree.

Pada akhirnya ujicoba pembetulan harokat dengan menggunakan decision treeini mampu menghasilkanpembetulan yang benar walaupun masih terdapat beberapa kesalahan pada hasil akhirnya, dan berharap nantinya memudahkan siapa pun yang ingin mengetahui harokat akhir suatu kata dalam kalimat bahasa Arab


(5)

1.1. Latar Belakang

Semangat keislaman yang mulai tumbuh dalam diri umat islam telah mendorong mereka untuk memahami ajaran agama lebih mendalam. Kedudukan istimewa yang dimiliki oleh bahasa Arab diantara bahasa-bahasa yang lain di dunia adalah karena ia berfungsi sebagai bahasa Alquran dan Hadist serta kitab-kitab lainnya. Itulah sebabnya, disebutkan bahwa dari Ibnu Abbas dengan riwayat Muslim, Rasulullah bersabda,

“Cintailah bahasa Arab karena tiga hal, yaitu bahwa saya adalah orang Arab, bahwa Alquran adalah bahasa Arab, dan bahasa penghuni surga di dalam surga adalah bahasa Arab.” (HR.

Al-Muslim)

Banyak hal yang harus dikuasai dalam mempelajari bahasa Arab, apalagi bila terjun di dunia penulisan (kitabah/writing) dan pembacaan (qiro’ah/reading). Di antara kajian yang membahas penulisan dan pembacaan dalam bahasa Arab adalah Ilmu Nahwu. Ilmu ini bertujuan untuk menjaga kesalahan dari penulisan dan pengucapan. Fokus ilmu ini membahas aturan akhir struktur kalimat


(6)

huruf terakhir pada suatu kata dalam sebuah kalimat inilah yang sering dibicarakan bahkan diperdebatkan oleh orang-orang yang sedang belajar bahasa Arab. Pengharokatan pada huruf akhir ini dipengaruhi oleh beberapa keadaan yakni kedudukan kata tersebut dalam sebuah kalimat dan pengaruh dari kata sebelum dan sesudahnya.

Secara definisi Ilmu Nahwu adalah ilmu yang mempelajari tentang jabatan kata dalam kalimat dan harakat akhirnya, baik secara

i’rab (berubah) atau bina’ (tetap). Dan Tashrif secara bahasa berarti

merubah, secara istilah memindah hukum asal dari satu lafadz ke beberapa contoh lafadz yang berbeda-beda karena beberapa makna yang diinginkan.

Berdasar dari fenomena pengharokatan yang masih menjadi permasalahan hingga saat ini dan dampaknya yang begitu besar, serta di lain sisi perkembangan teknologi yang kian canggih, penulis berupaya menyusun penelitian tentang pembetulan harokat akhir kata dalam kalimat bahasa Arab ini menggunakan teknologi kecerdasan buatan (Artificial Intelligence) yang berfokus pada pemanfaatan

Decision Tree.

Penggunaan decision tree ini diharapkan mampu mengadopsi pengetahuan para ahli nahwu dan pengetahuan-pengetahuan yang telah tertuang di kitab-kitab Ilmu Nahwu sehingga nantinya memudahkan siapa pun yang ingin mengetahui harokat akhir suatu kata dalam


(7)

1.2. Rumusan Masalah

Masalah pembetulan harokat akhir kata dalam kalimat bahasa Arab menggunakan decision tree dapat dirumuskan sebagai berikut: Bagaimana pembetulan harokat akhir kata dalam kalimat bahasa Arab menggunakan rule hasil dari generate data dengan menggunakan

decision tree pada sebuah aplikasi berbasis mobile.

1.3. Batasan Masalah

Pada aplikasi pembetulan harokat akhir kata dalam kalimat sederhana bahasa Arab menggunakan algoritama generate rule dengan

decision tree ini diberikan beberapa batasan permasalahan, batasan –

batasan tersebut adalah sebagai berikut:

a. Kalimat masukan berupa kalimat sederhana bahasa Arab berharokat.

a. Pembetulan harokat hanya meliputi huruf terakhir pada kata yang mu’rob (bisa berubah) dalam sebuah kalimat bahasa Arab.

b. Kaidah nahwu yang digunakan terbatas pada kaidah-kaidah dasar.

c. Bahasa pemrograman yang digunakan adalah Java 2 Platform,

Micro Edition


(8)

1.4. Tujuan Penelitian

Penelitian ini bertujuan untuk membuat suatu implementasi dan pengujian generate rule dengan lagoritma decision tree dengan masukan berupa kalimat bahasa Arab berharokat. Sistem ini akan menghasilkan kalimat bahasa Arab yang telah mengalami pembetulan pada harokat akhir kata, dan berharap penelitian ini dapat menghasilkan ilmu yang bermanfaat bagi semuanya.

1.5. Manfaat Penelitian

Hasil penelitian ini diharapkan dapat digunakan sebagai langkah awal untuk membangun sistem pembetulan harokat yang menyeluruh, yang bisa diaplikasikan pada kalimat-kalimat bahasa Arab yang lebih kompleks. Dengan penyesuaian tertentu, metode yang digunakan mungkin dapat juga dimanfaatkan untuk sistem deteksi objek secara umum yang tidak hanya terbatas pada kalimat bahasa Arab, misalnya kalimat bahasa Inggris dan bahasa Indonesia. Dari hasil penelitian ini juga diharapkan dapat diperoleh pemahaman yang lebih baik terhadap

decision tree.

1.6. Metodologi Penelitian

Metodologi yang diguakan dalam Tugas akhir ini adalah sebagai berikut :


(9)

a. Fase Analisis

Fase ini menganalisis setiap permasalahan yang akan dihadapi dalam pembangunan sistem ini, yang meliputi :

 Identifikasi Masalah

Mengenali setiap kelemahan dan kelebihan yang ada pada system.

 Analisis Masalah

Setiap masalah yang telah dikenali kemudian dianalisis menjadi sebuah pemahaman untuk menentukan setiap detial sistem yang akan dibangun.

 Analisis Kebutuhan

Setiap kebutuhan yang diperlukan oleh sistem ini dianalisis dalam tahap ini, agar nantinya sistem mampu berjalan sesuai yang diharapkan.

 Analisis Literatur

Studi ini dilakukan dengan cara mencari referensi yang berkaitan dengan penelitian yang dilakukan.

b. Fase Desain

Fase ini mambahas setiap desain yang ada pada sistem , yaitu:  Arsitektur Sistem


(10)

 Desain Output

Output yang akan dihasilkan oleh sistem berupa kalimat bahasa Arab berharokat.

 Desain Input

Format input yang akan diiputkan oleh user ditentukan pada tahap ini.

 Desain Proses

Alur kinerja sistem selama proses dijabarkan sekilas pada tahap ini.

 Desain Interface

Format desain tampilan interface.

c. Fase Implementasi

Fase ini membahas implementasi dari sistem yang telah dirancang dan didesain sebelumnya, antara lain :

 Penyiapan Training Data Set

Menyiapkan training data set yang akan digunakan untuk proses pembelajaran dari sistem. Data berupa contoh-contoh kalimat bahasa Arab.

 Perancangan dan Pembuatan Program

Merancang sistem dengan decision tree, kemudian membuat program aplikasinya.


(11)

 Pelatihan Sistem

Melakukan pelatihan pada sistem dengan training data set yang telah disiapkan sebelumnya.

 Fase Uji coba

Sistem ini akan diuji coba menggunakan kalimat bahasa Arab.

 Pembuatan Laporan

Membuat laporan tertulis mengenai Tugas Akhir ini.

1.7. Sistematika Penulisan

Sistematika Pembahasan Penulisan Skripsi ini nantinya tersusun atas beberapa sistematis penulisan, yaitu :

BAB I PENDAHULUAN

Berisi latar belakang yang menjelaskan tentang pentingnya penelitian Tugas Akhir yang dilakukan rumusan masalah, tujuan, manfaat metodologi, dan sistematika penulisan yang digunakan dalam laporan Tugas Akhir ini.

BAB II TINJAUAN PUSTAKA

Bab ini menjelaskan tentang teori-teori yang berkaitan dengan isi laporan tugas akhir dan aplikasi mobile yang


(12)

tree, Bahasa Pemrograman Java berbasis mobile.dan sekilas tentang Java 2 Micro Edition.

BAB III ANALISA DAN PERANCANGAN SISTEM

Bab ini menjelaskan tentang tata cara metode perancangan sistem yang digunakan untuk mengolah sumber data yang dibutuhkan sistem, antara lain: Flowchart dan, Diagram Blok.

BAB IV IMPLEMENTASI APLIKASI

Pada bab ini menjelaskan implementasi dari program yang telah dibuat meliputi lingkungan implementasi, implementasi proses dan implementasi antarmuka.

BAB V UJI COBA DAN EVALUASI

Pada bab ini menjelaskan tentang pelaksanaan uji coba dan evaluasi dari pelaksanaan uji coba dari program yang dibuat

BAB VI PENUTUP

Bab ini berisi tentang kesimpulan yang dapat diambil dari keseluruhan isi dari laporan Tugas Akhir serta


(13)

sistem yang ada demi kesempurnaan sistem yang lebih baik.

DAFTAR PUSTAKA

Pada bagian ini akan dipaparkan tentang sumber-sumber literatur yang digunakan dalam pembuatan laporan Tugas Akhir.


(14)

2.1. Bahasa Arab

Bahasa Arab (اللغة العربية al-lughah al-‘Arabīyyah, atau secara ringkas عربي‘Arabī) adalah salah satu bahasa Semitik Tengah, yang termasuk dalam rumpun bahasa Semitik dan berkerabat dengan bahasa Ibrani dan bahasa-bahasa Neo Arami. Bahasa Arab memiliki lebih banyak penutur daripada bahasa-bahasa lainnya dalam rumpun bahasa Semitik. Ia dituturkan oleh lebih dari 280 juta orang sebagai bahasa pertama, yang mana sebagian besar tinggal di Timur Tengah dan Afrika Utara.

Bahasa ini adalah bahasa resmi dari 25 negara, dan merupakan bahasa peribadatan dalam agama Islam karena merupakan bahasa yang dipakai oleh Al-Qur'an. Berdasarkan penyebaran geografisnya, bahasa Arab percakapan memiliki banyak variasi (dialek), beberapa dialeknya bahkan tidak dapat saling mengerti satu sama lain. Bahasa Arab modern telah diklasifikasikan sebagai satu makrobahasa dengan 27 sub-bahasa dalam ISO 639-3. Bahasa Arab Baku (kadang-kadang disebut Bahasa Arab Sastra) diajarkan secara luas di sekolah dan universitas, serta digunakan di tempat kerja, pemerintahan, dan media massa.


(15)

Bahasa Arab telah memberi banyak kosakata kepada bahasa lain dari dunia Islam, sama seperti peranan Latin kepada kebanyakan bahasa Eropa. Semasa Abad Pertengahan bahasa Arab juga merupakan alat utama budaya, terutamanya dalam sains, matematik adan filsafah, yang menyebabkan banyak bahasa Eropa turut meminjam banyak kosakata dari bahasa Arab

2.1.1. Sejarah Bahasa Arab

Bahasa Arab termasuk rumpun bahasa Smit yaitu bahasa yang dipakai bangsa-bangsa yang tinggal di sekitar Sungai Tigris dan Furat, dataran Syria dan Jazirah Arabia (Timur Tengah) seperti bahasa Finisia, Asyria, Ibrania, Arabia, Suryania, dan Babilonia. Dari sekian banyak bahasa tersebut yang bertahan sampai sekarang adalah Ibrani. Sebenarnya bahasa Arab timbul sejak beberapa abad sebelum Islam, karena bukti peninggalan sastra Arab baru dapat dicatat hanya mulai sejak dua abad sebelum Islam, sehingga pencatatan bahasa Arab dimulai saat ini.

Bahasa Arab Baku berasal dari Bahasa Arab Klasik, satu-satunya anggota rumpun bahasa Arab Utara Kuna yang saat ini masih digunakan, sebagaimana terlihat dalam inskripsi peninggalan Arab pra-Islam yang berasal dari abad ke-4. Bahasa Arab Klasik juga telah menjadi bahasa kesusasteraan dan bahasa peribadatan Islam sejak lebih


(16)

Seperti dengan bahasa Eropa lain, banyak kata-kata Inggris diserap dari bahasa Arab, selalunya melalui bahasa Eropa lainnya, terutama dari Spanyol dan Italia, di antaranya kosakata harian seperti "gula" (sukkar), "kapas" (qu n) atau "majalah" (makhzen). Kata-kata lain yang sangat terkenal misalnya "aljabar", "alkohol" dan "zenith".

Pengaruh Arab telah menjadi paling mendalam di mana pada negara yang dikuasai oleh Islam atau kuasa Islam. Arab adalah sumber kosa kata utama untuk bahasa yang berbagai seperti bahasa Berber, Kurdi, Persia, Swahili, Urdu, Hindi, Turki, Melayu, dan Indonesia, baik juga seperti bahasa lain di negara di mana bahasa ini adalah dituturkan. Contohnya perkataan Arab untuk buku /kita:b/ digunakan dalam semua bahasa yang disenaraikan, selain dari Melayu dan Indonesia. (Anonym, http://id.wikipedia.org/wiki/Bahasa_Arab)

2.1.2. Karakteristik Bahasa Arab

Ada beberapa hal yang menjadi ciri khas bahasa Arab yang merupakan kelebihan yang tidak terdapat pada bahasa lainnya, diantaranya adalah :

a. Jumlah abjad yang sebanyak 28 huruf dengan makharijul huruf (tempat keluarnya huruf) yang tidak ada pada bahasa yang lainnya (Tabel 2.1).


(17)

Tabel 2.1 Abjad Huruf Hijaiyah

Huruf Pengucapan Internasiaonal

ا alif alif

ب ba bā

ت ta tā

ث tsa ā

ج jim īm

ح ha ā

خ kha ā

د dal Dāl

ذ dal Dāl

ر ra r ā

ز zai z ā y

س sin Sīn

ش syin šīn

ص shad ād

ض dhad ād

ط tha ā

ظ zha' ā

ع 'ain 'ain

غ ghain Gain

ف fa fā


(18)

Lanjutan Tabel 2.1 Abjad Huruf Hijaiyah

ك kaf Kāf

ل lam Lām

م mim Mīm

ن nun Nūn

ha hā

و wau Wāw

ي ya yā

b. I’rab, yakni sesuatu yang mewajibkan keberadaan akhir kata pada keadaan tertentu, baik itu rafa’, nashab, jazm, dan jar yang terdapat pada isim (kata benda) dan juga fi’il (kata kerja).

c. Ilmu Arudl (ilmu notasi syi’ir) yang mana dengan ilmu ini menjadikan syi’ir berkembang dengan perkembangan yang sempurna.

d. Bahasa Ammiyah dan Fush-ha, ‘Ammiyah dipergunakan dalam interaksi jual beli atau komunikasi dalam situasi tidak formal sedang fush-ha adalah bahasa sastra dan pembelajaran, bahasa resmi yang dipergunakan dalam percetakan.

e. Adanya huruf “dhad” yang tidak ada pada bahasa yang lainnya, dan lain-lain.


(19)

f. Kata kerja dan grammatikal yang digunakan selalu berubah sesuai dengan subjek yang berrhubungan dengan kata kerja tersebut.

g. Tidak adanya kata yang bersyakal dengan syakal yang sulit dibaca, seperti “fi-u-la”.

h. Tidak adanya kata yang mempertemukan dua huruf mati secara langsung.

i. Sedikit sekali kata-kata yang terdiri dari dua huruf (al-alfadz al al tsuna’iyyah).

j. Tidak adanya 4 huruf yang berharokat secara terus menerus, disamping aspek-aspek lain yang termasuk dalam ranah deep structure (al-bina’ al-dahily) baik segi metafora, fonologi, kamus.

Aspek –aspek yang menjadi nilai lebih Bahasa Arab di atas dalam waktu yang sama akan mungkin menjadi kendala bagi pembelajarannya, dikarenakan taraf kerumitan yang mendorong munculnya kesulitan-kesulitan dalam proses belajar dan pembelajarannya.

2.1.3. Urgensi Mempelajari Bahasa Arab

Bahasa Arab adalah bahasa Agama Islam dan bahasa Al-Qur’an, seseorang tidak akan dapat memahami kitab dan sunnah


(20)

kecuali dengan bahasa Arab. Menyepelekan dan menggampangkan Bahasa Arab akan mengakibatkan lemah dalam memahami agama serta jahil terhadap permasalahan agama.

Kedudukan istimewa yang dimiliki oleh bahasa Arab diantara bahasa-bahasa yang lain di dunia adalah karena ia berfungsi sebagai bahasa Alquran dan Hadis serta kitab-kitab lainnya. Itulah sebabnya, maka di dalam kitab Faid al-Qadir Syarh al-Jami’ al-sagir susunan Al-Manawi (1976:178) disebutkan bahwa dari Ibnu Abbas dengan riwayat Muslim, Rasulullah bersabda:

“Cintailah bahasa Arab karena tiga hal, yaitu bahwa saya adalah orang Arab, bahwa Alquran adalah bahasa Arab, dan bahasa penghuni surga di dalam surga adalah bahasa Arab”. (HR. Al-Muslim).

2.1.4. Ilmu Nahwu dan Ilmu Shorof

Secara definisi Ilmu Nahwu adalah ilmu yang mempelajari tentang jabatan kata dalam kalimat dan harakat akhirnya, baik secara

i’rab (berubah) atau bina’ (tetap). Ilmu nahwu ini mengkaji tiga hal yaitu huruf, kata dan kalimat (Gambar 2.1).

Termasuk didalamnya adalah pembahasan shorof. Karena Ilmu Shorof bagian dari Ilmu Nahwu, yang ditekankan kepada pembahasan bentuk kata dan keadaannya ketika mufrodnya. Ilmu Shorof adalah


(21)

inginkan. Faidahnya antara lain ialah mengetahui makna dari suatu kalimat.

Gambar 2.1 Skema Ilmu nahwu

Keterangan :

o adalah huruf-huruf hijaiyah, yang

terdiri dari ا , ب , ت , ... dan seterusnya.

o (Kalimah) adalah ucapan yang berdiri

sendiri (dalam bahasa Indonesia disebut kata), kalimah itu ada tiga yaitu :

 Isim adalah kata benda

 Fi’il adalah kata kerja


(22)

o (Jumlah) adalah susunan yang terdiri dari

beberapa kalimah yang telah sempurna dan di dalam kaidah nahwunya telah memberikan dengan suatu hukum (dalam bahasa Indonesia disebut kalimat).

Jadi secara garis besar, pembahasan Nahwu mencakup pembahasan tentang bentuk kata dan keadannya ketika belum tersusun (mufrod) , semisal bentuk Isim Fa’il mengikuti wazan فاعل, Isim Tafdhil mengikuti wazan أفعل, berikut keadaan-keadaannya semisal cara mentatsniyahkan, menjamakkan, mentashghirkan dll. Juga pembahasan keadaan kata ketika sudah tersusun (murokkab) semisal rofa’nya kalimah isim ketika menjadi fa’il, atau memu’annatskan kalimah fi’il jika sebelumnya menunjukkan Mu’annats dll.

2.1.4.1. Isim (Kata Benda)

Secara harfiah, Isim berarti kata benda. Sedangkan menurut istilah, isim adalah semua jenis kata benda, atau segala sesuatu yang dikategorikan kata benda, baik benda mati maupun benda hidup, tanpa ada kaitannya dengan waktu. (Rusdianto, Ustad. 2010)

a. Isim ditinjau dari jenisnya

Ditinjau dari jenisnya, Isim dikelompokkan ke dalam dua bagian, yaitu :


(23)

Isim Mudzakar

Isim Mudzakar adalah kata yang menunjukkan gender laki – laki, baik manusia, hewan, ataupun benda mati yang dikategorikan sebagai mudzakar.

Isim Muannast

Isim Muannast adalah kata yang menunjukkan gender perempuan, baik manusia, hewan, ataupun benda mati yang dikategorikan sebagai muannast.

b. Isim ditinjau dari bilangannya

Ditinjau jumlah bilangannya, isim (kata benda) dibagi menjadi tiga, yaitu :

Isim Mufrad

Isim mufrad adalah kata benda yang menunjukkan arti tunggal, atau jumlah bendanya satu, baik mudzakar atau

muannast. Isim Mutsanna

Isim mutsanna adalah kata benda yang bilangan bendanya berjumlah dua,baik mudzakar maupun muannast.

Isim Jamak

Isim jamak adalah kata benda yang jumlah bendanya lebih dari dua, baik mudzakar maupun muannast.


(24)

bagian, yaitu jamak mudzakar salim, muannast salim, dan

jamak taksir.

c. Isim ditinjau dari kejelasan penunjukannya

Ditinjau dari segi jelas atau tidaknya makna yang dituju, isim dikelompokkan ke dalam dua bagian yaitu :

Isim Nakirah

Isim nakirah adalah kata benda yang maknanya masih umum, atau belum jelas kekhususannya. Secara sederhana, isim nakirah adalah kata benda tak dikenal, yang bias menerima awalan huruf alif dan lam.

Isim Makrifat

Isim makrifat adalah kata benda yang menunjukkan makna benda tertentu atau sudah dapat dikenali maknanya.

2.1.4.2. Fi’il (Kata Kerja)

Fi’il adalah kata yang menunjukkan arti pekerjaan, atau peristiwa yang terjadi pada waktu tertentu, baik dimasa lampau, sekarang atau yang akan datang. (Rusdianto, Ustad. 2010)

a. Fi’il ditinjau dari waktunya

Ditinjau dari segi waktu yang mengiringi terjadinya sebuah aktifitas, fi’il terbagi menjadi 3 bagian kelompok, yakni,


(25)

Fi’il Madhi

Fi’il madhi adalah kata kerja yang digunakan untuk menyatakan suatu perbuatan yang telah dikerjakan, atau

fi’il madhi merupakan kata kerja yang menunjukkan aktivitas atau peristiwa yang telah terjadi pada masa lampau.

Fi’il Mudhari’

Fi’il mudhari’ adalah kata kerja yang digunakan untuk menyatakan suatu perbuatan yang sedang terjadi, ataupun akan berlangsung. Dengan kata lain, fi’il mudhari’

merupakan kata kerja yang menunjukkan aktifitas atau peristiwa yang sedang terjadi, atau yang akan berlangsung.

Fi’il Am’ar

Fi’il am’ar adalah kata kerja yang digunakan untuk memerintah orang kedua, baik laki – laki maupun perempuan agar melakukan suatu pekerjaan. Fi’il amar

identik dengan istilah kata kerja perintah dalam bahasa Indonesia.

b. Fi’il ditinjau dari jumlah huruf asalnya

Ditinjau dari jumlah huruf pembentuknya, fi’il dibagi menjadi dua bagian, yaitu :


(26)

Fi’il Tsulatsi

Fi’il tsulatsi adalah kata kerja yang huruf asalnya tersusun dari tiga huruf. Masing – masing huruf asal tersebut biasa dikenal dengan sebutan fa’ fi’il, ‘ain fi’il,

dan lam fi’il.Fi’il Ruba’i

Fi’il ruba’I adalah kata kerja yang huruf asalnya tersusun dari empat huruf. Masing – masing huruf asal tersebut biasa dikenal dengan sebutan fa’ fi’il, ‘ain fi’il, lam fi’il

pertamadan lam fi’il kedua.

c. Fi’il ditinjau dari subyeknya

Ditinjau dari segi subyek pelakunya, fi’il dibagi menjadi dua bagian, yaitu :

Fi’il Ma’lum

Fi’il ma’lum adalah kata kerja yang disebutkan pelakunya (fail-nya). Fi’il ma’lum dapat dikatakan kata kerja aktif di dalam bahasa Indonesia.

Fi’il Majhul

Fi’il majhul adalah kata kerja yang tidak disebutkan pelakunya, atau disebut juga dengan istilah kata kerja pasif. Dalam fi’il majhul dikenal istilah naibul fa’il atau  objek yang berfungsi untuk menggantikan subyek. 


(27)

d. Fi’il ditinjau dari objeknya

Ditinjau dari segi butuh tidaknya trehadap objek dalam susunan kalimat, kata kerja dibedakan menjadi dua bagian, yaitu :

Fi’il Muta’addi

Fi’il muta’addi adalah kata kerja yang membutuhkan objek, susunan kalimat yang menggunakan fi’il muta’addi

tidak hanya terdiri dari subyek, tetapi harus dilengkapi pula dengan maf’ul bih (objek penderita). Dalam bahasa Indonesia, fi’il muta’addi identic dengan istilah kata kerja transitif.

Fi’il Lazim

Fi’il lazim adalah kata kerja yang tidak membutuhkan objek, kata kerja tersebut hanya membutuhkan subyek, sehingga dalam susunan kalimatnya hanya terdiri atas subjek dan predikat. Dalam bahasa Indonesia fi’il lazim

hamper sama degan istilah kata kerja intransitive. e. Fi’il ditinjau dari jenis huruf asalnya

Ditinjau dari segi jenis huruf asalnya, kata kerja dibedakan menjadi dua bagian besar yaitu :

Fi’il Shahih

Fi’il shahih adalah kata kerja yang semua huruf asalnya tidak berupa huruf ‘illat, yaitu alif, wawu, dan ya’


(28)

Fi’il Mu’tal

Fi’il mu’tal adalah kata kerja yang salah satu huruf asalnya berupa huruf ‘illat.

2.1.4.3. Huruf (Kata Bantu)

Huruf adalah kata yang tidak memiliki arti sempurna sebelum dihubungkan atau digabung dengan kata lainnya. Huruf berfungsi sebagai penghubung kata benda dengan kata benda, ataupun kata kerja dengan kata kerja. (Rusdianto, Ustad. 2010)

a. Huruf yang terhubung dengan kata benda

Huruf yang terhubung dengan kata benda dibagi menjadi enam jenis, yaitu ;

Huruf Jarr

Inna dan saudari – saudarinya

Huruf Nida’Huruf IstitsnaWawu Ma’iyah Lam Ibtida’

b. Huruf yang terhubung dengan kata kerja

Huruf yang terhubung dengan kata benda dibagi menjadi lima jenis, yaitu ;


(29)

Huruf NashabHuruf JazmMa dan La Nafi

Qad

Sin dan Saufa

c. Huruf yang terhubung dengan kata kerja dan kata benda

Terdapat empat jenis huruf yang dapat disandind dengan kata kerja maupun kata benda, yaitu :

Huruf AthafHuruf IstifhamWawu HalIn Nafi

2.1.4.4. Kalam dan Unsurnya

Dalam bahasa Arab kalam merupakan lafadz yang tersusun dan dapat memberi kefahaman kepada pendengar. Kalam itu paling sedikit tersusun dari dua isim atau fi’il dan isim.

Kalimat adalah ucapan yang berdiri sendiri (dalam bahasa Indonesia disebut kata). Dalam bahasa Arab kalimah terbagi menjadi tiga, yaitu :

a. Isim (kata benda) b. Fi’il (kata kerja)


(30)

c. Huruf yang bermakna

Kalimat-kalimat (kata) dalam bahasa Arab baik isim, fi’il maupun huruf, apabila sudah tersusun dalam pola-pola susunan kalimah bahasa Arab maka kalimah tersebut pasti mempunyai :

a. Status, yaitu bina (mabni) atau I rob (mu’rob). b. Tanda status.

Adapun pola susunan kalimah bahasa Arab banyak sekali, adapun beberapa dari pola tersebut antara lain :

a. mutabda’ + khobar

b. fi’il + fail

c. inna + isim inna + khobar inna

d. kana + isim kana + khobar kana

e. fi’il + fail + maf’ul bih

f. fi’il + naibul fail

g. fi’il + fail + huruf jer + isim majrur

h. nida + munada

2.1.4.5. Pengenalan I’rob

Dalam bahasa Arab salah satu unsur penting untuk memahami maksud dari teks atau sebuah tulisan adalah pahamnya pembaca akan struktur teks tersebut, baik dari kedudukan maupun harokatnya. I’rab


(31)

padanya, baik perubahan itu secara lafzhi atau taqdiri. I’rab terbagi menjadi empat, yaitu rafa’, nasha, jar, jazm. (Rusdianto, Ustad. 2010)

I’rab-I’rab tersebut yang bisa masuk pada isim hanya tiga, yaitu rafa’, nashab, dan jer. Sedangkan I’rab jazam, tidak bisa masuk pada isim. Adapun I’rab-I’rab yang bisa masuk pada fi’il juga ada tiga, yaitu rafa’, nashab, dan jazam. Sedangkan I’rab Jer, tidak bisa masuk pada fi’il.

2.1.4.6. Kalimat Sederhana dalam Bahasa Arab

Kalimat Sederhana adalah kalam yang mengungkapkan makna satu kalimat yang masing-masing unsurnya adalah asli atau sempurna satu lafadz. Kalimat sederhana dibagi menjadi dua macam :

a. Jumlah fi’iliyah

Jumlah atau kalimat yang tersusun anatara fi’il dan fail.

b. Jumlah isimiyah

Jumlah atau kalimat yang tersusun anatara isim dan isim.

2.2. Decision Tree

Di dalam kehidupan manusia sehari-hari, manusia selalu dihadapkan oleh berbagai macam masalah dari berbagai macam bidang. Masalah-masalah ini yang dihadapi oleh manusia tingkat kesulitan dan kompleksitasnya sangat bervariasi, mulai dari yang


(32)

dengan masalah tersebut dan perlu diperhitungkan sampai dengan yang sangat rumit dengan banyak sekali faktor-faktor / hal-hal yang turut serta berkaitan dengan masalah tersebut dan perlu untuk diperhitungkan.

Untuk menghadapi masalah-masalah ini, manusia mulai mengembangkan sebuah sistem / cara yang dapat membantu manusia agar dapat dengan mudah mampu untuk menyelesaikan masalah-masalah tersebut. Adapun pohon keputusan ini adalah sebuah jawaban akan sebuah sistem / cara yang manusia kembangkan untuk membantu mencari dan membuat keputusan untuk masalah-masalah tersebut dan dengan memperhitungkan berbagai macam factor yang ada di dalam lingkup masalah tersebut. Dengan pohon keputusan, manusia dapat dengan mudah melihat mengidentifikasi dan melihat hubungan antara faktor-faktor yang mempengaruhi suatu masalah dan dapat mencari penyelesaian terbaik dengan memperhitungkan faktor-faktor tersebut. (Hartanto Wirawan, ST)

2.2.1. Pengertian Decision Tree (Pohon Keputusan)

Decision Tree (Pohon Keputusan) adalah pohon dimana setiap cabangnya menunjukkan pilihan diantara sejumlah alternatif pilihan yang ada, dan setiap daunnya menunjukkan keputusan yang dipilih. Decision tree biasa digunakan untuk mendapatkan informasi untuk


(33)

sebuah root node (titik awal) yang dipakai oleh user untuk mengambil tindakan. Dari node root ini, user memecahnya sesuai dengan algoritma decision tree. Hasil akhirnya adalah sebuah decision tree dengan setiap cabangnya menunjukkan kemungkinan sekenario dari keputusan yang diambil serta hasilnya. (Irul. Sioju. 2010)

Contoh pemanfaatan decision tree :

 Diagnosa beberapa penyakit seperti kanker, hipertensi, stroke, dan penyakit lainnya.

 Menentukan apakah dengan kondisi yang ada layak untuk bermain tenis atau tidak.

 Menentukan apakah sebuah investasi bisnis layak dilakukan atau tidak.

 Pemilihan pegawai teladan sesuai dengan kriteria yang telah ditentukana sebelumnya.

 Deteksi gangguan pada komputer atau pada sekumpulan di jaringan computer.

 Pemilihan produk seperti rumah, kendaraan ,elektonik dan lain lain.

Secara struktural, pohon yang dalam analisis pemecahan masalah pengambilan keputusan adalah pemetaan mengenai alternatif-alternatif pemecahan masalah yang dapat diambil dari


(34)

masalah tersebut. Pohon tersebut juga memperlihatkan faktor-faktor kemungkinan / probablitas yang akan mempengaruhi alternatif-alternatif keputusan tersebut, disertai dengan estimasi hasil akhir yang akan didapat bila kita mengambil alternatif keputusan tersebut.

Pohon keputusan juga dapat digunakan untuk memperhitungkan analisa resiko dan tingkat utilitas yang ada pada suatu alternatif pengambilan keputusan. Selain itu, pohon keputusan juga dapat memperhitungkan nilai dari informasi tambahan yang mungkin akan kita pergunakan dalam mengambil salah satu dari alternatif keputusan yang ada di dalam pohon keputusan tersebut.

Kemampuan untuk menganalisa alternatif pengambilan keputusan yang ada dengan memperhitungkan faktor-faktor yang ada termasuk analisa resiko dan analisa informasi yang ada serta mampu memberikan estimasi hasil akhir dari suatu alternatif pengambilan keputusan membuat pohon keputusan ini sebuah support tool yang sangat berguna dalam memecahkan masalah pengambilan keputusan.

2.2.2. Skema Decision Tree

Skema dan struktur pohon keputusan adalah suatu permodelan dari struktur pohon menurut teori graf.


(35)

Gambar 2.2 Skema decision tree

Berdasarkan teori graf, definisi pohon adalah “sebuah graf, tak-berarah, terhubung, yang tidak mengandung sirkuitGraf adalah suatu representasi visual dari objek-objek diskrit yang dinyatakan dengan noktah, bulatan, atau titik, serta hubungan yang ada antara objek-objek tersebut. (Hartanto Wirawan, ST)

Decision tree adalah struktur flowchart yang menyerupai tree

(pohon), dimana setiap simpul internal menandakan suatu tes pada atribut, setiap cabang merepresentasikan hasil tes, dan simpul daun merepresentasikan kelas atau distribusi kelas. Alur pada decision tree

di telusuri dari simpul akar ke simpul daun yang memegang prediksi kelas untuk contoh tersebut. Decision tree mudah untuk dikonversi ke aturan klasifikasi (classification rules).


(36)

2.2.3. Konsep Decision Tree

Mengubah data menjadi sebuah pohon keputusan (Decision Tree) dan aturan-aturan keputusan (rule) (Gambar 2.3).

Gambar 2.3 Konsep decision tree

Salah satu pemanfaatannya adalah, dengan menyusun sebuah rule, kita dapat menentukan apakah seseorang mempunyai potensi untuk menderita hipertensi atau tidak berdasarkan data usia , berat badan dan jenis kelamin. (Irul. Sioju. 2010)

2.2.4. Konsep Data Dalam Decision Tree

Data dinyatakan dalam bentuk tabel dengan atribut dan record. Atribut menyatakan suatu parameter yang dibuat sebagai kriteria dalam pembentukan tree. Misalkan untuk menentukan main tenis, kriteria yang diperhatikan adalah cuaca, angin dan temperatur. Salah satu atribut merupakan atribut yang menyatakan data solusi per-item data yang disebut dengan target atribut. Atribut memiliki nilai-nilai yang dinamakan dengan instance. Misalkan atribut cuaca mempunyai instance berupa cerah, berawan dan hujan.


(37)

Agar lebih jelas, berikut diberikan contoh data langsung dalam bentuk tabelnya (Gambar 2.4).

Gambar 2.4 Contoh konsep decision tree dalam data

Entropy bisa dikatakan sebagai kebutuhan bit untuk menyatakan suatu kelas. Semakin kecil nilai entropy maka semakin baik digunakan untuk mengekstraksi suatu kelas. Entropy(S) adalah jumlah bit yang diperkirakan dibutuhkan untuk dapat mengekstrak suatu kelas (+ atau -) dari sejumlah data acak pada ruang sample S. Dimana S adalah ruang (data) sample yang digunakan untuk training. P+ adalah jumlah yang bersolusi positif (mendukung) pada data sample untuk kriteria tertentu. P- adalah jumlah yang bersolusi negatif (tidak mendukung) pada data sample untuk kriteria tertentu. Dan besarnya Entropy pada ruang sample S didefinisikan dengan:


(38)

Entropy ini selanjutnya juga digunakan untuk menentukan atribut mana dari data yang ada yang akan dijadikan sebagai node root. Agar lebih jelas dalam penggunaannya, selanjutnya akan diberikan sebuah contoh penggunaan decision tree untuk menentukan penderita hipertensi. Mulai dari tabelnya, penghitungan entropy untuk menentukan root, pembentukan Decision Treenya sampai pembuatan rules nya. (Irul. Sioju. 2010)

2.2.5. Manfaat Decision Tree

Manfaat utama dari penggunaan decision tree adalah kemampuannya untuk mem-break down proses pengambilan keputusan yang kompleks menjadi lebih simpel sehingga pengambil keputusan akan lebih menginterpretasikan solusi dari permasalahan. Decision tree juga berguna untuk mengeksplorasi data, menemukan hubungan tersembunyi antara sejumlah calon variabel input dengan sebuah variabel target. Pohon keputusan memadukan antara eksplorasi data dan pemodelan, sehingga sangat bagus sebagai langkah awal dalam proses pemodelan bahkan ketika dijadikan sebagai model akhir dari beberapa teknik lain.

Sering terjadi tawar menawar antara keakuratan model dengan transparansi model. Dalam beberapa aplikasi, akurasi dari sebuah


(39)

misalnya sebuah perusahaan direct mail membuat sebuah model yang akurat untuk memprediksi anggota mana yang berpotensi untuk merespon permintaan, tanpa memperhatikan bagaimana atau mengapa model tersebut bekerja.

2.2.6. Kelebihan Decision Tree

Beberapa Kelebihan dari penggunaan decision tree ini adalah : a. Daerah pengambilan keputusan yang sbelumnya kompleks dan

sangat global, dapat diubah menjadi lebih simpel dan spesifik. b. Eliminasi perhitungan-perhitungan yang tidak diperlukan,

karena ketika menggunakan metode decision tree maka sample

diuji hanya berdasarkan criteria atau kelas tertentu.

c. Fleksibel untuk memilih features dari internal nodes yang berbeda, feature yang terpilih akan membedakan suatu criteria dibandingkan criteria yang lain dalam node yang sama. Kefleksibelan metode decision tree ini meningkatkan kualitas keputusan yang dihasilkan jika dibandingkan ketika menggunakan metode penghitungan satu tahap yang lebih konvensional.

d. Dalam analisis multivariat, dengan kriteria dan kelas yang jumlahnya sangat banyak, seorang penguji biasanya perlu untuk mengestimasikan baik itu distribusi dimensi tinggi ataupun


(40)

decision tree dapat menghindari munculnya permasalahan ini dengan menggunakan criteria yang jumlahnya lebih sedikit pada setiap node internal tanpa banyak mengurangi kualitas keputusan yang dihasilkan.

2.2.7. Kekurangan Decision Tree

Beberapa Kekurangan dari penggunaan algoritma decision tree ini adalah :

a. Terjadi overlap terutama ketika kelas-kelas dan criteria yang digunakan jumlahnya sangat banyak. Hal tersebut juga dapat menyebabkan meningkatnya waktu pengambilan keputusan dan jumlah memory yang diperlukan.

b. Pengakumulasian jumlah error dari setiap level dalam sebuah pohon keputusan yang besar.

c. Kesulitan dalam mendesain decision tree yang optimal. Hasil kualitas keputusan yang didapatkan dari metode decision tree sangat tergantung pada bagaimana pohon tersebut didesain.

2.3. J2ME (Java 2 Platform Micro Edition)

J2ME (Java 2 Platform Micro Edition) adalah bagian dari platform Java yang merupakan kumpulan dari Java API untuk pengembangan software yang bersifat kecil, ramping dan hemat


(41)

device dan pengembangan aplikasi-aplikasi mobile. Pada taraf pengembangan aplikasi J2ME memiliki emulator yang dapat dipergunakan untuk tes aplikasi pada komputer pengembang, sehingga pengembang dapat lebih mudah melakukan coding, testing dan debugging pada emulator yang terdapat di PC.

2.3.1. Pengenalan J2ME

J2ME adalah lingkungan pengembangan yang dirancang untuk meletakan perangkat lunak Java pada barang elektronik beserta perangkat pendukungnya. Pada J2ME, jika perangkat lunak berfungsi baik pada sebuah perangkat, maka belum tentu juga berfungsi baik pada perangkat yang lainnya.

J2ME membawa Java ke dunia informasi, komunikasi, dan perangkat komputasi selain perangkat komputer desktop yang biasanya lebih kecil dibandingkan perangkat komputer desktop. J2ME biasa digunakan pada telepon selular, pager, personal digital assistants (PDA) dan sejenisnya. (Rr. Artiana Krestianti. 2010)

J2ME adalah bagian dari J2SE, karena itu tidak semua librabry yang ada pada J2SE dapat digunakan pada J2ME. Tetapi J2ME mempunyai beberapa library khusus yang tidak dimiliki J2SE. Arsitektur J2ME dapat dilihat seperti pada Gambar 2.5


(42)

Gambar 2.5 Arsitektur J2ME

Program J2ME, seperti semua program JAVA adalah diterjemahkan oleh VM. Program-program tersebut dikompile ke dalam bytecode dan diterjemahkan denga Java Virtual Machine(JVM).Ini berarti bahwa program-program tersebut tidak berhubungan langsung dengan perangkat.

J2ME menyediakan suatu interface yang sesuai dengan perangkat. Aplikasi-aplikasi tersebut tidak harus dikompile ulang supaya mampu dijalankan pada mesin yang berbeda. Inti dari J2ME terletak pada configuration dan profile-profile. Suatu configuration menggambarkan lingkungan runtime dasar dari suatu sistem J2ME. Ia menggambarkan core library, virtual machine, fitur keamanan dan jaringan.

Teknologi J2ME juga memiliki beberapa keterbatasan, terutama jika diaplikasikan pada ponsel. J2ME sangat tergantung pada


(43)

perangkat (device) yang digunakan, bisa dari segi merek ponsel dan dukungan terhadap teknologi J2ME. Misalnya, jika sebuah ponsel tidak memiliki kamera, maka jelas J2ME pada ponsel tersebut tidak dapat mengakses kamera. Keterbatasan lainnya adalah pada ukuran aplikasi, karena memori pada ponsel sangat terbatas. Sebagian ponsel tidak mengijin-kan aplikasi J2ME menulis pada file, karena alasan keamanan.

Configuration merupakan Java Library minimum dan kemampuan yang dimiliki oleh para pengembang J2ME, maksudnya adalah sebuah moblile device dengan kemampuan Java akan dioptimalkan agar sesuai. Configuration hanyalah mengatur hal-hal tentang kesamaan sehingga dapat dijadikan ukuran kesesuaian antar device. Misalnya sebuah lampu sepeda dapat digunakan oleh berjenis-jenis sepeda. (Rr. Artiana Krestianti. 2010)

Dalam J2ME telah didefinisikan dua buah konfigurasi yaitu : a. CLDC (Connected Limited Device Configuration) Untuk

perangkat kecil.

b. CDC (Connected Device Configuration) Untuk perangkat yang lebih besar.

2.3.2. CLDC dan CDC


(44)

diimplementasikan pada J2ME, seperti yang digunakan pada telepon selular, pager dan PDA. Perangkat tersebut sangat terbatas pada memori, sumber daya dan kemampuan memproses.

Spesifikasi CLDC pada J2ME adalah spesifikasi minimal dari package, kelas, dan sebagian fungsi JVM yang dikurangi agar dapat diimplementasikan dengan keterbatasan sumber daya pada alat-alat tersebut. JVM yang digunakan disebut KVM (Kilobyte Virtual Machine).

CDC (Connected Device Configuration) merupakan komunitas proses pada Java yang memiliki standardisasi. CDC terdiri dari virtual machine dan library dasar untuk dipergunakan pada profile industri. Implementasi CDC pada J2ME adalah source code yang menyediakan sambungan dengan macam-macam platform. Perbandingan antara CLDC dengan CDC Tabel 2.2. (Rr. Artiana Krestianti. 2010)

Tabel 2.2 Perbandingan CLDC dan CDC

CLDC CDC Mengimplementasikan

sebagian fitur dari J2SE

Mengimplementasikan seluruh fitur dari J2SE

Menggunakan KVM (Kilobyte Virtual Machine)

Menggunakan CVM (C-Virtual Machine)


(45)

Lanjutan Tabel 2.2 Perbandingan CLDC dan CDC

Digunakan pada handphone, PDA, pager yang memiliki memori terbatas (160-512 kb)

Digunakan pada Internet TV, Nokia Communicator yang memiliki memori minimal 2MB

Prosesor 16 / 32 bit Prosesor 32 bit

2.3.3. MIDP

Profile atau MIDP berbeda dengan configuration, profile membahas sesuatu yang spesifik untuk sebuah perangkat. Sebagai contoh misalnya, sebuah sepeda dengan merek tertentu tentu mempunyai ciri spesifik dari sepeda lainnya.

Dalam J2ME terdapat dua buah profile yaitu MIDP (Mobile Information Device Profile) dan Foundation Profile. Keterhubungan antara configuration dan profile yang ada pada J2ME beserta jenis mesin virtualnya dapat dilihat pada Gambar 2.6. (Rr. Artiana Krestianti. 2010)


(46)

Gambar 2.6 Konfigurasi dan profil J2ME

MIDP (Mobile Information Device Profile) adakal spesifikasi untuk sebuah profil J2ME. MIDP memiliki lapisan di atas CLDC, API tambahan untuk daur hidup aplikasi, antarmuka, jaringan, dan penyimpanan persisten.

Pada saat ini terdapat MIDP 1.0 dan MIDP 2.0, fitur tambahan pada MIDP 2.0 adalah terdapat API untuk multimedia, terdapat dukungan memainkan tone, tone sequence, dan file WAV walaupun tanpa adanya Mobile Media API (MMAPI).  

Sebuah aplikasi dari MIDP disebut sebagai MIDlet. Application Management Software (AMS) dari device ini akan bergerak mengikuti method create, start, pause, dan destroy dalam MIDlet. MIDlet dapat ditulis sekali dan dapat berjalan pada setiap mobile device yang mendukung spesifikasi Java Mobile.


(47)

Gambar 2.7 CLDC wireless platform dan MIDP

MIDlet adalah bagian dari paket javax.microedition.midlet. Sebuah MIDlet harus menjadi turunan dari class MIDlet. Ia dapat meminta parameter-parameter yang dibutuhkan dari AMS seperti yang telah didefinisikan pada application descriptor (JAD). Sebuah MIDlet tidak memiliki (dan harus tidak memiliki) method main. Ia secara otomatis akan dikenali oleh AMS dari starting point sebuah program. (Anonym, http://muhammadadri.net/wp-content/uploads/2008/05/jeni-slides-j2me-01-pengenalan-thdp-pembangunan-apl-mobille.pdf)


(48)

KVM (Kilobyte Virtual Machine) adalah paket JVM yang dirancang untuk perangkat yang kecil. KVM mendukung sebagian dari fitur-fitur JVM, tidak mendukung operasi floating-point dan finalisasi objek. KVM diimplementasikan dengan menggunakan C, sehingga sangat mudah beradaptasi pada tipe platform yang berbeda

CVM (C-Virtual Machine) adalah paket JVM yang digunakan pada CDC. CVM mempunyai seluruh fitur-fitur dari virtual machine yang dirancang untuk perangkat yang memerlukan fitur-fitur Java 2 Virtual Machine.

JAD digunakan untuk mendeskripsikan isi aplikasi untuk keperluan pemetaan. File JAD bersisi deskripsi file JAR (Java Archive) dan pemetaan atribut MIDlet, sedangkan file JAR berisi kumpulan kelas dan resource.

OTA (Over The Air) mengacu pada beberapa teknologi jaringan tanpa kabel. Dengan menggunakan OTA, provider MIDlet dapat menginstal MIDlet pada web server dan menyediakan link untuk mengunduh via WAP atau internet microbrowser.


(49)

3.1. Analisa Perancangan

Pada analisa perancangan terdapat beberapa proses perancangan system, proses – proses tersebut yakni identifikasi masalah, analisis masalah, analisis kebutuhan, analisis literatur.

3.1.1. Identifikasi Masalah

Masalah yang mungkin muncul dalam pembangunan sistem ini adalah masalah encoding teks Arab dalam bahasa pemrograman Java dan kerumitan proses representasi dari kaidah bahasa Arab ke logika komputer. Untuk permasalahan pertama bisa diselesaikan dengan mengkaji konsep penerapan unicode di Java, sedangkan untuk masalah kedua perlu dilakukan studi dan analisis lebih lanjut.

Kelebihan yang dimiliki sistem ini nantinya adalah kompabilitas yang tinggi yakni dapat dijalankan di kebanyakan sistem operasi mobile. Karena berbasis bahasa pemrograman Java, sistem ini mampu berjalan di sistem operasi Symbian, Java, ataupun Android.

Berdasar hasil identifikasi masalah dan kesempatan tersebut maka batasan - batasan penyelesaian masalah dan peningkatan kualitas sistem dapat digeneralkan pada bidang kinerja sistem dan dengan


(50)

bahwa sistem pembetulan harokat akhir kata dalam kalimat bahasa Arab ini sangat layak untuk dikembangkan. Sedangkan dari kekurangan yang ada dapat dilakukan perbaikan-perbaikan yang diperlukan sesuai dengan batasan-batasan lingkup yang telah ditentukan.

3.1.2. Analisis Masalah

Masalah utama dalam pembangunan sistem ini adalah permasalahan representasi dari kaidah Ilmu Nahwu yang tidak luput pula dari kaidah Ilmu Shorof ke dalam bahasa pemrograman komputer. Dengan analisis konsep Ilmu Nahwu dan Ilmu Shorof yang mendalam serta training secara berkelanjutan pada sistem, kompleksitas masalah ini secara perlahan akan teratasi.

3.1.3. Analisis Literatur

Untuk menunjang pembangunan sistem ini, dilakukan pula analisis literatur. Buku-buku ataupun buku elektronik yang berkaitan dengan tata bahasa yang membahas tentang Ilmu Nahwu dikumpulkan dan dikaji serta dianalisa agar mampu direpresentasikan dalam bahasa pemrograman komputer. Buku elektronik tentang decision tree juga menjadi rujukan untuk mengelola representasi Ilmu Nahwu dalam sebuah sofware. Begitu pula dengan buku-buku yang membahas script Bahasa Pemrograman J2ME, khususnya buku tentang pengenalan


(51)

online juga dilakukan untuk menunjang keterbatasan buku-buku yang membahas decision tree.

3.2. Perancangan Sistem

Pada perancangan system ini terdapat beberapa proses perancangan, proses – proses tersebut yakni arsitektur system, desain input, desain output, desain proses, desain interface.

3.2.1. Arsitektur system

Sistem ini memiliki arsitektur yang sederhana yakni bekerja dengan menerima input dari user berupa kalimat bahasa Arab yang kemudian diproses sedemikian rupa dan menampilkannya kembali (output) kepada user. Ekstensi dari file sistem ini adalah *.jar atau *.jad yang bisa langsung dijalankan di setiap device yang telah mendukung MIDlet java.

3.2.2. Desain input

Input yang akan diterima oleh sistem ini adalah sebuah kalimat bahasa Arab berharokat. Dalam pengembangannya, sistem ini nanti diharapkan mampu pula menangani kalimat bahasa Arab yang tidak berharokat.


(52)

3.2.3. Desain output

Output yang dihasilkan oleh sistem ini adalah sebuah kalimat bahasa Arab yang telah mengalami pemberian atau pembetulan harokat pada setiap akhir katanya.

3.2.4. Desain proses

Sistem ini bekerja dengan menggunakan sederetan proses decision tree. Pada proses tersebut kalimat yang telah diinputkan akan dipecah menjadi per kata baru kemudian ditentukan identitasnya masing-masing. Setelah mengenali identitas setiap kata lalu dianalis model kalimatnya dan proses terakhir adalah pemberian harokat pada akhir setia kata.

3.3. Proses Perancangan Aplikasi

Pada aplikasi ini terdapat beberapa proses perancangan, pada subbab ini akan dijelaskan tentang alur kerja proses secara umum dari aplikasi pembetulan harokat akhir kata pada kalimat sederhana bahasa Arab. Perancangan dimulai pembuatan alur kerja system untuk memberikan hasil yang benar pada proses pembuatan, pada aplikasi terdapat tambahan fitur yaitu fitur pengartian kalimat dan fitur penyimpanan arti kata baru, tetapi fitur ini hanya sederhana dan belum mengimplementasikan suatu metode tertentu.


(53)

Gambar 3.1 Alur proses system secara umum

Alur dalam flowchart pada Gambar 3.1 memodelkan alur kerja aplikasi dari awal sistem dijalankan dan proses – proses utama

Proses Awal Aplikasi Pemilihan Menu Proses Penyimpanan Arti Apakah Pembetulan Harokat Apakah Penyimpanan Arti Launch True True False False Proses Pembetulan

Harokat True True Apakah Kembali ke menu True True Apakah Proses Pengartian Apakah dari pembetulan Harokat False False Exit False False Proses Pengartian Kalimat True True Apakah Arti Diketahui True True True True Apakah Keluar Aplikasi False False False False True True Apakah Kembali Sebelumnya False False True True True True False False  


(54)

pembetulan harokat akhir kata dalam kalimat bahasa Arab ini dihentikan. Proses – proses utama dari aplikasi ini yaitu pemilihan menu, proses penyimpanan arti, proses pengartian, dan proses utama dari aplikasi yaitu proses pembetulan harokat akhir kata.

3.4. Proses Perancangan Pembetulan Harokat

Pada proses perancangan ini akan dijelaskan tentang alur kerja proses aplikasi pembetulan harokat akhir kata pada kalimat sederhana bahasa Arab. Perancangan dimulai pembuatan alur kerja system untuk memberikan hasil yang benar pada proses pembuatan, setelah itu terdapat implementasi dari algoritma decision tree pada proses pembetulan harokat berdasarkan parameter – parameter yang telah diberikan.

Decision  tree 


(55)

Alur dalam diagram blok pada Gambar 3.2 memodelkan masukan ke sistem dan keluaran dari sistem dalam aplikasi pembetulan harokat akhir kata dalam kalimat bahasa Arab ini. Berikut penjelasan diagram tersebut:

a. Input kalimat

Input masukan berupa sebuah kalimat bahasa Arab berharokat, masukan ini berupa data String.

b. Pemecahan kalimat

Sebuah kalimat yang telah dimasukkan akan dipisah menjadi per kata dan dijadikan sebuah array.

c. Pemberian kode

Pada masing-masing kata tersebut diberi sebuah kode unik yang terdiri dari tiga huruf dan diletakkan di awal kata. Kodetersebut menunjukkan identitas kata tersebut, apakah dia termasuk kata benda yang memiliki alif-lam? Ataukah kata kerja (fi’il madhi) murni (mujarrod)? Ataukah identitas kata yang lain berdasarkan pola yang ada pada kata.

d. Pemberian kode khusus fi’il madhi berdhomir

Pada setiap kata yang terdeteksi sebagai fi’il madhi akan masuk dalam proses ini dan untuk fi’il madhi yang disertai dhomir maka kode yang lama (pada blok sebelumnya) dihapus dan akan diberikan kode khusus lagi serta pemberian harokat


(56)

e. Pemberian kode khusus isim berdhomir

Tiap kata yang terdeteksi sebagai isim akan masuk dalam proses ini dan untuk isim yang disertai dhomir maka kode yang lama (pada blok sebelumnya) dihapus dan akan diberikan kode khusus lagi serta pemberian harokat khusus sesuai dengan dhomir-nya. Proses ini dilakukan ketika proses pemberian harokat baru dan penghapusan harokat lama di suatu kata pada saat tertentu.

f. Penghapusan dan pemberian harokat baru

Semua kata yang telah memiliki kode akan dilakukan proses decision tree berdasarkan hasil rule yang telah degenerate melalui proses branching, proses dimulai dengan penghapusan harokat terkhir kata melalui serangkaian parameter yang proses tersebut akan dimudahkan oleh decision tree. Kata yang sesuai dengan parameter tertentu akan diberi harokat baru.

g. Penghapusan kode dan penggabungan kata

Setelah masing-masing kata telah memiliki harokatnya, pada tahap ini saatnya penghapusan kode unik yang terdiri dari dua huruf pada awal kata. Sehingga kata ini nanti telah bersih dari kode-kode yang tadinya membantu kata ini dalam pemrosesan dan setiap kata yang telah melalui serangkaian proses dan telah memiliki harokat, disatukan kembali menjadi sebuah kalimat.


(57)

h. Output kalimat setelah pembetulan

Keluaran dari aplikasi ini berupa kalimat yang telah memiliki harokat akhir kata yang benar.

Proses decision tree dalam sistem ini digunakan pada saat proses pembetulan harokat terkahir kata dengan menghapus harokat sebelumnya berdasarkan atribut atau kode yang melekat pada kata tersebut.

Atribut-atribut yang tersusun pada decision tree berisi parameter yang diperoleh dari representasi kaidah bahasa Arab. Representasi tersebut berbeda dengan rumus yang telah digunakan dalam mempelajari Ilmu Nahwu, karena pada sistem ini representasi diambil dari sudut pandang bahasa pemrograman komputer. Sebagai akibatnya akan muncul beberapa istilah yang tidak baku atau mungkin tidak pernah ada dalam Ilmu Nahwu. Istilah-istilah tersebut ditujukan hanya untuk mempermudah penerapan bahasa Arab dalam aplikasi ini.

Pada batasan masalah, aplikasi ini hanya disusun untuk membetulkan kalimat bahasa Arab sederhana dan berharokat sehingga parameter-parameter yang dimasukkan dalam decision tree mungkin tidak mampu menangani seluruh pola ataupun model kalimat yang ada dalam bahasa Arab yang sedemikian kompleks.


(58)

3.5. Proses Perancangan Penyimpanan dan Pengartian Kata

Pada system ini tidak hanya terdapat proses pembetulan harokat, tetapi terdapat juga proses penyimpanan arti dan juga proses pengartian kalimat.

3.1.1. Penyimpanan Arti Kata Baru

Penyimpanan arti ini sebagai fitur tambahan dari system utama yaitu pembetulan harokat. Penyimpanan arti kata baru ini dapat dilakukan ketika awal apalikai ataupun ketika proses pengartian dan arti kata tidak diketahui. Pada subbab ini akan dijelasakan tentang proses penyimpanan arti kata baru.

Gambar 3.3 Alur proses penyimpanan arti

Alur dalam diagram blok pada Gambar 3.3 memodelkan masukan ke sistem dari proses penyimpanan arti kata bahasa Arab ke dalam bahasa Indonesia. Berikut penjelasan diagram tersebut:

 

Input Kata Input Arti Proses

Penyimpanan  


(59)

a. Input kata bahasa Arab

Inputan kata masukan berupa sebuah kata bahasa Arab berharokat dan dalam bentuk dasarnya, masukan ini berupa data String.

b. Inputan arti kata

Inputan arti kata berupa sebuah kata bahasa Indonesia, masukan ini berupa data String.

c. Proses penyimpanan

Proses Penyimpanan ini menggunakan RMS (Record Management Store) yang merupakan fasilitas fitur dari J2ME.

3.1.2. Pengartian Kata

Pengartian kata ini sebagai fitur tambahan dari sistem utama yaitu pembetulan harokat. Pengatian kata ini dapat dilakukan setelah proses pembetulan dijalankan . Pada subbab ini akan dijelasakan tentang proses pengartian kata pada suatu kalimat dari hasil pembetulan harokat

. Gambar 3.4 Alur proses pengartian kata Kalimat hasil dari

Pembetulan

Pemecahan Kalimat menjadi kata

Pencarian arti per kata

Penggabugan arti per kata menjadi

kalimat Hasil


(60)

Alur dalam diagram blok pada Gambar 3.4 memodelkan masukan ke sistem dari proses pengartian kata bahasa Arab ke dalam bahasa Indonesia. Berikut penjelasan diagram tersebut:

a. Hasil dari pembetualan

Input dari proses pengartian kata ini meruapakan kalimat hasil dari pembetulan harokat.

b. Pemecahan kalimat menjadi per kata

Sebuah kalimat hasil dari pembetulan akan dipisah menjadi per kata dan dijadikan sebuah array.

c. Pencarian arti kata

Pencarian arti kata dilakukan pada RMS yang telah menyimpan arti kata berdasarkan bentuk string Unicode yang disimpan. d. Penggabungan arti per kata menjadi kalimat

Penggabungan kata yang merupakan hasil pengartian menjadi suatu kalimat.

e. Output kalimat setelah diartikan

Keluaran dari proses ini berupa kalimat yang telah diartikan ke dalam bahasa Indonesia walaupun tidak mempunyai arti atau struktur yang sesuai karena hanya merupakan fitur tambahan, jadi hanya proses pengartian yang sederhana.


(61)

3.6. Perancangan Antarmuka

Pada aplikasi ini terdapat interface untuk beberapa antarmuka, perancangan antamuka ini masih sangat sederhana. Perancangan antarmuka dari aplikasi ini dibagi menjadi 4 bagian, yaitu antarmuka awal masuk, antarmuka utama, antarmuka menu help, dan antarmuka ketika proses dijalankan.

3.6.1. Perancangan Antarmuka Awal

Pada perancangan antarmuka awal ini, aplikasi mempunyai antarmuka seperti pada Gambar 3.5.

Gambar 3.5 Antarmuka awal aplikasi


(62)

pemrograman java berbasis mobile. Dan di antarmuka ini juga terdapat tulisan “Arabic Is Fun”, secara sederhana tulisan memberikan kesan awal pada user bahwa belajar bahasa arab sangat menyenangkan dan tidak sangatlah susah seperti bayangan sebelumnya, dengan gambaran awalan tersebut berharap dapat memotivasi untuk belajar bahasa arab lebih baik lagi.

3.6.2. Perancangan Antarmuka Utama

Pada perancangan antarmuka awal ini, aplikasi mempunyai antarmuka seperti pada Gambar 3.6.


(63)

Pada antarmuka utama ini terdapat sebuah menu yang terdiri dari 2 radiobuton. Radiobutton yang pertama merupakan menu untuk melalukakan proses penyimpanan data arti kata pada base, sedangkan arti yang kedua merupakan aplikasi utama yaitu pembetulan harokat.

3.6.3. Perancangan Antarmuka Penyimpanan Arti Kata

Pada antarmuka Pembetulan Harokat terdapat 3 buah textfield dan 5 buah menu, masing – masing mempunyai fungsi yang berbeda – beda. Selain objek – objek tersebut, terdapat sebuah ticker atau teks berjalan pada antarmuka ini, pada ticker tersebut teks berjalan dari arah kanan kea rah kiri secara terus – menerus, adapun teks yang tertulis pada ticker tersebut adalah “.::Penyimpanan Arti Kata BAru::.”.


(64)

a. Textfield 1

Textfield 1 berfungsi untuk mengetikkan inputan hurufsederhana bahasa Arab.

b. Textfield 2

Textfield 2 berfungsi untuk menampung inputan huruf dan dirangkai menjadi suatu kata.

c. Textfield 3

Textfield 3 berfungsi untuk menginputkan arti kata d. Menu Hapus

Menu ini berfungsi untuk backspace pada textfield 2 e. Menu Reset

Menu reset berfungsi untuk menghapus atau membersihkan teks pada masing – masing textfield seperti pada saat pertma kali aplikasi dijalankan.

f. Menu Kembali ke Menu

Menu ini berfungsi untuk kembali ke menu utama. g. Menu Help

Menu help berfungsi untuk menampilkan antarmuka help yang digunakan untuk bantuan pengguaan aplikasi

h. Menu Exit


(65)

3.6.4. Perancangan Antarmuka Pembetulan Harokat

Pada antarmuka Pembetulan Harokat terdapat 4 buah textfield dan 6 buah menu, masing – masing mempunyai fungsi yang berbeda – beda. Selain objek – objek tersebut, terdapat sebuah ticker atau teks berjalan pada antarmuka ini. Ticker tersebut sebenarnya juda terdapat di antarmuka help, pada ticker tersebut teks berjalan dari arah kanan kea rah kiri secara terus – menerus, adapun teks yang tertulis pada ticker tersebut adalah “.::Aplikasi Pembetulan Harokat Akhir Kata Dalam Kalimat Sederhana Bahasa Arab::.”.

a. Textfield 1

Textfield 1 berfungsi untuk mengetikkan inputan hurufsederhana bahasa Arab.

b. Textfield 2

Textfield 2 berfungsi untuk menampung inputan huruf dan dirangkai menjadi suatu kata.

c. Textfield 3

Textfield 3 berfungsi untuk mengeluarkan hasil output per kata yang sudah diberikan kode khusus setelah proses pemecahan kalimat sederhana bahasa Arab.

d. Textfield 4

Textfield 4 berfungsi untuk menghasilkan output kalimat sederhana bahasa Arab yang sudah mengalami proses di


(66)

dalamnya yang akhirnya menghasilkan kalimat yang sudah terjadi pembetulan.

e. Menu Hapus

Menu ini berfungsi untuk backspace pada textfield 2 f. Menu Reset

Menu reset berfungsi untuk menghapus atau membersihkan teks pada masing – masing textfield seperti pada saat pertma kali aplikasi dijalankan.

g. Menu Proses

Menu proses berfungsi untuk meng-eksekusi proses untuk mendapatkan hasil pembetulan kalimat. Antarmuka setelah menu proses dijalankan terdapat pad Gambar 3.8.


(67)

h. Menu Help

Menu help berfungsi untuk menampilkan antarmuka help yang digunakan untuk bantuan pengguaan aplikasi

i. Menu Exit

Menu exit berfungsi untuk menutup atau keluar dari aplikasi. j. Menu Arti

Menu Arti berfungsi untuk mengartikan hasil dari proses pembetulan ke bahasa Indonesia.

k. Menu Insert Arti

Menu ini berfungsi untuk pindah ke Form Insert Arti. l. Menu Kembali ke Menu

Menu ini berfungsi untuk kembali ke menu utama.

3.6.5. Perancangan Antarmuka Help

Perancangan pada antarmuka help terdapat beberapa info yang berguna untuk membantu penggunaan aplikasi, info – info tersebut diantaranya daftar konversi huruf alphabet ke huruf hijaiyah serta terdapat info cara penggunaannya (Gambar 3.9). Info cara penggunaan terdiri dari dari cara penggunaan ketika melakukan proses pembetulan harokat akhir kata dan juga tata cara penggunaan proses penyimpanan arti kata baru dan juga proses pengartian. Dengan adanya form bantuan ini dapat membantu user dalam melakukan proses yang terdapat di


(68)

apalikasi pembetulan harokat akhir kata pada kalimat sederhana bahasa Arab.


(69)

4.1. Kebutuhan Sistem

Spesifikasi hardware dan Sistem Operasi (OS) pada Device pada saat ini sudah lebih dari cukup untuk menjalankan sistem ini. Yang menjadi prioritas utama adalah spesifikasi software-nya yakni device tersebut mendukung jenis font Arabic ataupun bentuk – bentuk Unicode.

4.2. Penjelasan Program

Pada system ini akan di implementasikan pada pembetulan harokat akhir kata dalam kalimat bahasa Arab ini menggunakan bahasa pemrograman Java sebagai antar muka platform. Implementasi dimulai dari pembuatan rule berdasarkan data yang ada dengan menggunakan algoritma decision tree dan kemudian rule tersebut digenerate menjadi suatu logika percabangan. Hasil dari generate tersebut diimplementasikan untuk pembetulan harokat akhir kata pada kalimat sederhana bahasa Arab.

4.2.1. Pengaturan Keypad dan Penanganan Unicode


(70)

pengaturan bahasa (set language) serta pengubahan arah penulisan teks. Bagi divice yang telah ter-install atau mendukung komponen bahasa Arab tentu akan mudah untuk mengakses abjad bahasa Arab. Dalam aplikasi ini permasalahan tersebut telah diatasi dengan adanya pengaturan khusus pada system, hanyalah dibutuhkan divice yang sudah mendukung perubahan arah penulisan dari kanan ke kiri. Ketika user menginputkan sebuah kalimat pada textfield yang telah disediakan maka secara otomatis sistem pada aplikasi ini mengubah inputan keyboard menjadi Arabic dan arah penulisannya dari kanan ke kiri walaupun direksinya masih dari arah kiri. Pada sistem, otomatisasi ini dilakukan dengan cara men-set textfield ketika text di-inputkan ke aplikasi. Dengan pemanfaatan fungsi itemstatechange inputan dirubah ke text Arab berdasarkan pendeklasian parameter sebelumnya, berikut cuplikan dari source-codenya.

If (buf.compareTo("a")==0) buf="\u0627";  else if (buf.compareTo("b")==0) buf="\u0628";  else if (buf.compareTo("c")==0) buf="\u0629";  else if (buf.compareTo("d")==0) buf="\u062A";  else if (buf.compareTo("e")==0) buf="\u062B";  else if (buf.compareTo("f")==0) buf="\u062C";  else if (buf.compareTo("g")==0) buf="\u062D"; 


(71)

Ketika huruf pada keyboad tersebut ditekan maka yang muncul adalah huruf Arab yang sesuai dengan kode hexadecimal, untuk tabel kode hexadecimal huruf-huruf Arab telah disertakan dalam lampiran 1.

4.2.2. Penanganan Hexadecimal

Pada saat user memasukkan kalimat berbahasa Arab, teks tersebut mucul sebagai huruf Arab di hadapan user namun pada sistem teks tersebut berupa kode hexadecimal. Oleh karena itu, seluruh operasi teks yang ada di sistem berupa pengolahan data hexadecimal.

Misal seorang user memasukkan kata ﺪﺠْﺴ ا Maka data yang diolah dalam system adalah

Untuk mengatasi ini, maka parameter yang ditentukan pada proses juga berupa data hexadecimal. Pada data hex ini, urutan teks adalah kiri ke kanan. Jadi, meskipun input yang dimasukkan berupa kalimat bahasa Arab yang memiliki arah direksi dari kanan ke kiri, data yang masuk ke dalam sistem adalah kode hex yang memiliki arah kiri ke kanan secara berurutan.

\u0627\u0644\u0645\u064E\u0633\u0652\u062C\u0650\u062F\u 064F 


(72)

4.2.3. Pemecahan Kalimat Menjadi Kata dan Penyatuannya

Input yang dimasukkan oleh user ke dalam sistem ini adalah kalimat bahasa Arab yang memiliki atribut data String dan dalam sistem data ini berwujud hexadecimal. Untuk bisa menganalisis identitas setiap kata maka perlu dilakukan pemenggalan kata per kata dalam kalimat tersebut. Untuk mengkonversi String ke array String digunakan fungsi split.

private String[] split(String original,String separator) {

Vector nodes = new Vector();int index = original.indexOf(separator); 

  while(index>=0) { 

    nodes.addElement( original.substring(0, index) ); 

    original = original.substring(index+separator.length()); 

    index = original.indexOf(separator); 

  }nodes.addElement( original ); 

  String[] result = new String[ nodes.size() ]; 

  if( nodes.size()>0 ) { 

    for(int loop=0; loop<nodes.size(); loop++){ 

      result[loop] = (String)nodes.elementAt(loop); 

    } 

  }return result; 


(73)

Kalimat yang diinputkan dipecah menjadi beberapa kata berdasarkan pada spasi yang memisahkan masing-masing kata. Pada saat semua kata telah melalui serangkain proses pemberian harokat, maka seluruh kata tersebut harus dijadikan satu kembali menjadi sebuah kalimat yang utuh dan bisa ditampilkan ke hadapan user yang selanjutnya bisa dimanfaatkan di aplikasi lain. Proses untuk membentuk representasi String dari array string sebenarnya bisa menggunakan perulangan namun akan lebih mudah bila didefinisikan method sendiri untuk menanganinya.

4.2.4. Identifikasi Kata

Pada proses pemberian kode, sejumlah kata yang telah menjadi array akan masuk dalam sebuah proses percabangan. Proses ini akan memberi sebuah kode unik berupa dua huruf kepada masing-masing kata sesuai dengan identitasnya. Berdasarkan analisa terhadap Ilmu Nahwu, akhirnya dapat disusun beberapa kode yang nantinya kode tersebut menjadi nilai yang disisipkan pada setiap kata yang masuk (Tabel 4.1).

for (int i=1;i<kata.length;i++){ 

      kata[i]= " " + kata[i].substring(3, kata[i].length()); 

      tf3.setString(tf3.getString()+kata[i]); 


(74)

Tabel 4.1 Daftar kode-kode berdasarkan ciri

NO KODE IDENTITAS

1 hnb Huruf nashab

2 hjz Huruf jazm

3 hjr Huruf jerr

4 hik Huruf inna dan saudarinya

5 hid Huruf inna disisipi dhomir

6 hkn Huruf kana dan saudarinya

7 hkd Huruf kana disisipi dhomir

8 hnd Huruf nida

9 ill Isim alif lam

10 fmh Fi’il mudhori

11 mhj Fi’il mudhori majhul

12 fmd Fi’il madhi

13 mmj Fi’il madhi majhul

14 fmr Fi’il amr

15 imb Isim mabni

16 fdh Fi’il madhi disertai dhomir

17 idl Isim dhomir

18 itl Isim tanpa alif lam majrur


(75)

Atribut yang ditetapkan di masing-masing level ini berupa parameter yang merupakan representasi dari ciri-ciri kata dalam bahasa Arab. Parameter yang ditetapkan di dalam aplikasi ini berbeda dengan ciri yang telah ditetapkan oleh para ahli nahwu karena dalam aplikasi ini ciri-ciri yang diambil berdasarkan sudut pandang bahasa perograman komputer. Pemberian kode tersebut dialukan secara branching atau percabangan, berikut code pemberian kode tersebut.

 

Pengecekan dimulai dari pemanggilan cekIsim, jika fungsi itu memberikan nilai balik maka kata tersebut terdeteksi sebagai salah satu isim, jika tidak terdeteksi maka kata tersebut dilakukan pengecekan di

for (int i=0;i<a.length;i++){ buf=CekIsim(a[i]);  if (buf==null){ 

buf=CekFiil(a[i]);  }       

       if (buf==null) 

       buf=CekHuruf(a[i]); 

if (buf==null){ 

       buf="els"+a[i]; 

}  } 


(76)

cekFiil dan alur proses tersebut juga berlaku untuk cekHuruf dan jika semua tidak terdeteksi maka masuk ke kode “els”, berikut listing code fungsi cekIsim, cekFiil dan cekHuruf.

public String CekIsim(String kata){

        String hasil=null; 

        if (cekI_AL(kata)==true)  hasil = "ill"+kata; 

        else if(cekI_Dhomir(kata) == true) hasil = "idl" + kata; 

        else if(cekI_GH(kata)==true) hasil = "itl" + kata; 

        else if ( cekI_Isyaroh(kata)==true) hasil = "isy"+kata; 

        else if (cekI_Maushul(kata)==true) hasil = "mau"+kata; 

        return hasil; 

    } 

 

public String CekFiil(String kata){ 

        String hasil=null; 

        if (cekF_Amr(kata)==true) hasil = "fmr"+kata; 

        else if (cekF_MudhoriMajhul(kata)==true) hasil = "mhj" + kata; 

        else if (cekF_Mudhori(kata)==true) hasil = "fmh" + kata; 

        else if (cekF_MadhiMajhul(kata)==true) hasil = "mmj" +kata; 

        else if (cekF_Madhi(kata)==true)hasil = "fmd" + kata; 

        return hasil; 


(77)

Proses dari input kalimat hingga pemberian kode tersebut, secara sederhana dapat digambarkan dalam contoh berikum ini,

Kalimat input ٌﺮﺒْآاﺪﺠْﺴ ا

public String CekHuruf(String kata){ 

        String hasil=null; 

        if (CekJer(kata)==true) hasil = "hjr"+kata; 

        else if (CekInna(kata)==true){ 

      if (cekDhomirInna(kata)==true) hasil = "hid"+kata; 

      else hasil = "hik"+kata; 

        } 

        else if (cekKana(kata)==true){ 

      if (cekDhomirKana(kata)==true) hasil = "hkd"+kata; 

      else hasil = "hkn"+kata; 

        }  

        else if (cekNashob(kata)==true) hasil = "hnb"+kata; 

        else if (cekJazm(kata)==true) hasil = "hjz"+kata; 

        else if (cekNida(kata)==true) hasil = "hnd"+kata; 

        else if (cekAthof(kata)==true) hasil = "hth"+kata; 

        return hasil; 


(78)

Proses input dalam system

\u0627\u0644\u0645\u064E\u0633\u0652\u062C\u0650\u062F\u064F \u0627\u064E\u0643\u0652\u062B\u064E\u0631\u064C

Pemisahan per kata :

Kata1 (ﺪﺠْﺴ ا) :

\u0627\u0644\u0645\u064E\u0633\u0652\u062C\u0650\u062F\u064F

Kata2 (ٌﺮﺒْآا) : \u0627\u064E\u0643\u0652\u062B\u064E\u0631\u064C

Proses pemberian kode :

Kata1 :

ill\u0627\u0644\u0645\u064E\u0633\u0652\u062C\u0650\u062F\u064 F

Kata2 : els\u0627\u064E\u0643\u0652\u062B\u064E\u0631\u064C

Setelah melalui proses pemberian kode, terdapat pula pemberian kode ulang untuk beberapa model kata tertentu. Hal ini dilakukan karena kata tertentu tersebut akan mengalami kekacauan pada proses-proses berikutnya. Kata yang termasuk dalam kategori ini adalah kata yang disisipi oleh dhomir yaitu kata benda yang disisipi dhomir dan kata kerja (fi’il madhi) yang disisipi dhomir.


(79)

Melalui proses permberian harokat, kata ini menperoleh kode “els” namun karena terdeteksi tersisipi oleh dhomir, maka kata ini mendapatkan perlakuan khusus sehingga tidak hanya harokat akhir katanya yang diperhatikan tapi juga harokat dhomir yang menempel padanya. Setelah melalui proses ini, kata ini langsung memperoleh harokat dan memiliki kode khusus sehingga melewati jalur khusus pula di proses-proses berikutnya sehingga outputnya menjadi ﻪ .

4.2.5. Implementasi Decision Tree

Di aplikasi ini implementasi decision tree digunakan pemberian harokat sesuai parameter. Pola decision tree yang diterapkan pada masing-masing proses tersebut sama hanya atribut dan nilainya yang berbeda. Pembentukan decision tree ini dilakukan melalui prose generate rule pada suatu data yang merupakan hasil dari beberapa studi analisa perubahan harokat pada ilmu nahwu (Tabel 4.2).

Tabel 4.2 Analisa pembelajaran dari beberapa kaliamat

kalimat  kata1  kata2  kata3  kata4  perubahan  kalimat1  hnb  fmh        a 

kalimat2  hjz  fmh        s  kalimat3  hjr  ill        i 


(1)

Lampiran I

TABEL DECODING UNICODE ARAB UNICODE 

DECIMAL  HEXA  TULISAN 

1569  U+0621   ء

1571  U+0623   أ

1572  U+0624   ؤ

1573  U+0625   إ

1574  U+0626   ئ

1575  U+0627   ا

1576  U+0628   ب

1577  U+0629    ة

1578  U+062A    ت

1579  U+062B    ث

1580  U+062C    ج

1581  U+062D    ح

1582  U+062E    خ

1583  U+062F    د

1584  U+0630    ذ

1585  U+0631    ر

1586  U+0632    ز

1587  U+0633    س

1588  U+0634    ش

1589  U+0635    ص


(2)

1591  U+0637    ط

1592  U+0638    ظ

1593  U+0639    ع

1594  U+063A    غ

1601  U+0641    ف

1602  U+0642    ق

1603  U+0643    ك

1604  U+0644    ل

1605  U+0645    م

1606  U+0646    ن

1607  U+0647    

1608  U+0648    و

1609  U+0649    ى

1610  U+064A    ي

1611  U+064B   ˱ 

1612  U+064C   ˲ 

1613  U+064D   ˳ 

1614  U+064E   ˴ 

1615  U+064F   ˵ 

1616  U+0650   ˶ 

1617  U+0651   ˷ 


(3)

Lampiran II

TABEL HASIL UJICOBA APLIKASI

   input  output  kalimat yang benar 

  ْ   ْ   ْ

 ﺮ ْآا ْ ْا  ﺮ ْآا ْ ْا  ﺮ ْآا ْ ْا

  ْ ا   ْ ا   ْ ا

  ةﺮْ ْا ﻚ ْا ْ   ةﺮْ ْا ﻚ ْا ْ   ةﺮْ ْا ﻚ ْا ْ   ْ ْاحﺎ ْاﺪ ْ   ْ ْاحﺎ ْاﺪ ْ   ْ ْاحﺎ ْاﺪ ْ  ﺮْ وﻻْﻮ ةﺎ ْا آْﺄ  ﺮْ وﻻْﻮ ةﺎ ْا آْﺄ  ﺮْ وﻻْﻮ ةﺎ ْا آْﺄ  ﺔ ْ ْا ْ  ﺔ ْ ْا ْ  ﺔ ْ ْا ْ

  ﺮْا و   ﺮْا و   ﺮْا و

 بﺎ ﻜْاعﺎ  بﺎ ﻜْاعﺎ  بﺎ ﻜْاعﺎ 10   ةﺮﻜْاﺎ ْ  ةﺮﻜْاﺎ ْ  ةﺮﻜْاﺎ ْ

11   ﺔ انﺎ اﺮ  ﺔ انﺎ اﺮ  ﺔ انﺎ اﺮ

12    ْﻜْا ْ   ْﻜْا ْ   ْﻜْا ْ

13   ةﺮﻜْﺎ ْ ْا  ةﺮﻜْﺎ ْ ْا  ةﺮﻜْﺎ ْ ْا

14   ﻚ ﺎ ْ ﻈ  ﻚ ﺎ ْ ﻈ  ﻚ ﺎ ْ ﻈ

15   ﺮﻜ ْ  ﺮﻜ ْ  ﺮﻜ ْ

16   ﻚ ْ ْ أ  ﻚ ْ ْ أ  ﻚ ْ ْ أ

17   ﺔ ﺎ د ْ اﺪْ  ﺔ ﺎ د ْ اﺪْ  ﺔ ﺎ د ْ اﺪْ 18   ةﺮﻜْا ﺎ افﺪ  ةﺮﻜْا ﺎ افﺪ  ةﺮﻜْا ﺎ افﺪ


(4)

19   ﺪ ﻮْا  ﺪ ﻮْا  ﺪ ﻮْا

20   ضْﻮ ْا ْ  ضْﻮ ْا ْ  ضْﻮ ْا ْ

21   فْوﺮ ْابْءﺬْا آأ  فْوﺮ ْابْءﺬْا آأ  فْوﺮ ْابْءﺬْا آأ

22   قْﺮ ْا  قْﺮ ْا  قْﺮ ْا

23   ةزءﺎ ْا ْﺮ  ةزءﺎ ْا ْﺮ  ةزءﺎ ْا ْﺮ

24   ةﺮْهﺰْامﺎ ﻐْا  ةﺮْهﺰْامﺎ ﻐْا  ةﺮْهﺰْامﺎ ﻐْا

25   ﺔ ﺎ ْ ر  ﺔ ﺎ ْ ر  ﺔ ﺎ ْ ر

26   ﺔ ْ ةرْﻮ ْا  ﺔ ْ ةرْﻮ ْا  ﺔ ْ ةرْﻮ ْا 27   ﺪْ يْﺮ ْا  ﺪْ يْﺮ ْا  ﺪْ يْﺮ ْا 28   ةﻮْ ﺔ ﺎ ْا  ةﻮْ ﺔ ﺎ ْا  ةﻮْ ﺔ ﺎ ْا

29    ْﺮ رﺎ ْا   ْﺮ رﺎ ْا   ْﺮ رﺎ ْا

30    ْ ْا ْ   ْ ْا ْ   ْ ْا ْ

31   دْﺮ ْاﺪ ْ  دْﺮ ْاﺪ ْ  دْﺮ ْاﺪ ْ 32   ةدْرﻮْاْ ْ ا  ةدْرﻮْاْ ْ ا  ةدْرﻮْاْ ْ ا

33   لﺪ ْ ﻮ ْا  لﺪ ْ ﻮ ْا  لﺪ ْ ﻮ ْا

34   ﺮ ﺎ رﺎ ﻐْا  ﺮ ﺎ رﺎ ﻐْا  ﺮ ﺎ رﺎ ﻐْا 35    دْﺰ عرﺎ ْا   دْﺰ عرﺎ ْا   دْﺰ عرﺎ ْا

36   بﺬْآأْ  بﺬْآأْ  بﺬْآأْ

37   زْﻮ ْ  زْﻮ ْ  زْﻮ ْ

38    ﻆ ْ ْ  ﺪ ْﻆ ْ ْ  ﺪ ْﻆ ْ ْ


(5)

40   ﻚ ا ﺮ ْﻜ ْ  ﻚ ا ْﺮ ْﻜ ْ  ﻚ ا ْﺮ ْﻜ ْ

41   ﺮ ْادْﻮ  ﺮ ْادْﻮ  ﺮ ْادْﻮ

42    اﺮْ   اﺮْ   اﺮْ

43   ﺮ ْالﺰْ  ﺮ ْالﺰْ  ﺮ ْالﺰْ

44   ﺮ ﻐْارْﻮ  ﺮﻐْارْﻮ  ﺮ ﻐْارْﻮ 45   اﺬْﺪ مﺎ ﺰْانﺎآ  اﺬْﺪ مﺎ ﺰْانﺎآ  اﺬْﺪ مﺎ ﺰْانﺎآ

46   ﺎ ْﻈ ْ ْانﺎآ  ﺎ ْﻈ ْ ْانﺎآ  ﺎ ْﻈ ْ ْانﺎآ

47   ﺎ رﺎ دْﺮ ْارﺎ  ﺎ رﺎ دْﺮ ْارﺎ  ﺎ رﺎ دْﺮْارﺎ 48   ﺎ ْﻮ مذﺎﺨْا ْ  ﺎ ْﻮ مذﺎﺨْا ْ  ﺎ ْﻮ مذﺎﺨْا ْ

49   رْﻮ ْانإ  رْﻮ ْانإ  رْﻮ ْانإ

50    ْﺪ مﺮﻬْانإ   ْﺪ مﺮﻬْانإ   ْﺪ مﺮﻬْانإ 51   دﺎ ْ ابﺎ ﻜْانﺄآ  دﺎ ْ ابﺎ ﻜْانﺄآ  دﺎ ْ ابﺎ ﻜْانﺄآ

52   حﺎ ْ ﺮ ْانﺄآ  حﺎ ْ ﺮ ْانﺄآ  حﺎ ْ ﺮ ْانﺄآ

53    ﺮ ْا ْ   ﺮ ْا ْ   ﺮ ْا ْ

54   ءﺎ ا ﺮ ْالﺰ  ءﺎ ا ﺮ ْالﺰ  ءﺎ ا ﺮ ْالﺰ

55   ءﺎ ْاﻰ ﺨْاﻮ ْ  ءﺎ ْاﻰ ﺨْاﻮ ْ  ءﺎ ْاﻰ ﺨْاﻮ ْ 56   ةﺮْﺪ ْ ضْرﺄْا  ةﺮْﺪْ ضْرﺄْا  ةﺮْﺪ ْ ضْرﺄْا 57   نﺎ ْ ﻜْازْﻮ ْ  نﺎ ْ ﻜْازْﻮ ْ  نﺎ ْ ﻜْازْﻮ ْ 58    ْابﺮْ أْ   ْابﺮْ أْ   ْابﺮْ أْ

59   ﺮْ اﻰ عﺮْ  ﺮْ اﻰ ْعﺮْ  ﺮْ اﻰ ْعﺮْ


(6)

61    ْﺪ ثﺎ ﺄْا   ْﺪ ثﺎ ﺄْا   ْﺪ ثﺎ ﺄْا

62   ﺪْﺪ ْ ْا  ﺪْﺪ ْ ْا  ﺪْﺪ ْ ْا

63   ةﺮْهزﺪ  ةﺮْهزﺪ  ةﺮْهزﺪ 64    ْ ْا فْﻮﺨْا هﺬ   ْ ْا فْﻮﺨْا هﺬ   ْ ْا فْﻮﺨْا هﺬ 65   اﺮْ بْﻮ ْارﺎ  اﺮْ بْﻮ ْارﺎ  اﺮْ بْﻮْارﺎ

66    رﺎ   رﺎ   رﺎ

67   ﷲالْﻮ رﺎ  ﷲالْﻮ رﺎ  ﷲالْﻮ رﺎ 68   نْﻮ ْ ْاﺎ  نْﻮ ْ ْاﺎﻬ اﺎ  نْﻮ ْ ْاﺎﻬ اﺎ

69    اﺎ   اﺎﻬ اﺎ   اﺎﻬ اﺎ