3
APLIKASI TASHRIF ISTILAHI PADA ILMU SHARAF DENGAN MENGGUNAKAN METODE STEMMER BERBASIS WEB
Skripsi
Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Komputer Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh :
Indah Puji Astuti 206091004058
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA 2011
6
PERNYATAAN
Dengan ini saya menyatakan bahwa :
1. Skripsi ini merupakan hasil karya asli saya sendiri yang diajukan untuk
memenuhi salah satu persyaratan memperoleh gelar Strata 1 di UIN Syarif Hidayatullah Jakarta.
2. Semua sumber yang saya gunakan dalam penulisan ini telah saya cantumkan
sesuai dengan ketentuan yang berlaku di UIN Syarif Hidayatullah Jakarta. 3. Jika dikemudian hariterbukti bahwa karya ini bukan hasil karya hasil saya atau
merupakan hasil jiplakan dari karya orang lain, maka saya bersedia menerima sanksi yang berlaku di UIN Syarif Hidayatullah Jakarta.
Jakarta, Maret 2011
Indah Puji Astuti
7 ABSTRAK
Indah Puji Astuti, Aplikasi Tasrif Istilahi pada Ilmu Sharaf Dengan Menggunakan Metode Stemmer Berbasis Web. (Di bawah bimbingan : Fitri Mintarsih, M. Kom dan Drs. Tabah Rosadi, MA).
Bahasa Arab merupakan bahasa qur’aniah yang seharusnya sudah menjadi kebutuhan pokok kaum muslim untuk mempelajarinya. Mengingat bahasa ini adalah bahasa dimana Allah menurunkan langsung mu‟jizat Al-Qur‟an kepada Nabi Muhammad SAW, sebagai tuntunan hidup umatnya. Untuk membantu penguasaan bahasa arab dalam hal memahami perubahan kata diperlukan belajar ilmu tata bahasa dalam bahasa arab yang disebut dengan Ilmu Sharaf. Ilmu Sharaf selama ini dipelajari dengan teknik menghafal wazan atau pola-pola perubahan kata untuk mengetahui kata perubahannya, di sini penulis membuat suatu aplikasi yang bisa digunakan untuk menemukan pola-pola atau wazan suatu kata. Perancangan aplikasi ini nantinya akan menemukan wazan yang hanya dilakukan pada kata dasar, maka diperlukan proses stemming untuk mengubah kata berimbuhan menjadi kata dasar dan aplikasi ini memakai teknologi perangkat lunak berbasis web sebagai teknologi pengaksesnya.
Dalam metode pengembangan sistem untuk aplikasi ini, penulis menggunakan sistem RAD (Rapid Application Development) yang meliputi empat tahap siklus pengembangan, yaitu fase penentuan tujuan dan syarat-syarat informasi, fase perancangan, fase konstruksi, dan fase pelaksanaan. Bahasa pemrograman yang digunakan dalam mengimplementasikan aplikasi ini adalah bahasa pemrograman PHP dan Apache untuk web server-nya Aplikasi Tasrif Istilahi pada Ilmu Sharaf ini diharapkan bisa digunakan dengan mudah oleh para user yang ingin mendalami atau memulai belajar Ilmu Sharaf.
Kata Kunci : Tashrif, Ilmu Sharaf, Wazan, Stemming, Web XXVII halaman + 241 halaman, 102 gambar, 8 tabel, 5 lampiran Daftar Pustaka 29 (1997 – 2010)
8
KATA PENGANTAR
Bismillahirrahmaanirrahim
Alhamdulillah, segala puji dan syukur penulis panjatkan kehadirat Allah SWT, Tuhan semesta alam. Karena hanya dengan ridha-Nya penulis dapat menyelesaikan skripsi ini yang berjudul “Aplikasi Tashrif Istilahi Pada Ilmu Sharaf Dengan Menggunakan Metode Stemmer Berbasis Web”. Shalawat serta salam selalu tersampaikan kepada Rasulullah Shalallahu „Alaihi Wasallam, keluarganya, sahabatnya, serta pengikutnya yang setia hingga akhir zaman.
Penulis menyadari bahwa skripsi ini tidak dapat terselesaikan dengan baik tanpa bantuan dari berbagai pihak. Pada kesempatan ini, penulis ingin mengucapkan terima kasih yang sebesar-besarnya atas bimbingan dan arahan yang diberikan kepada penulis selama menyusun skripsi ini. Oleh karena itu izinkan penulis menyampaikan ucapan terima kasih kepada :
1. Bapak Dr. Syopiansyah Jaya Putra, M.Sis selaku Dekan Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta.
2. Bapak Yusuf Durrahman, M.Sc, MIT selaku Ketua Program Studi Teknik
Informatika Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta. 3. Ibu Fitri Mintarsih, M.Kom selaku Dosen Pembimbing I dan Bapak Tabah
Rosyadi, M.A selaku Dosen Pembimbing II. Atas waktu dan perhatian yang telah diluangkan, serta arahan dan bimbingan terhadap kesulitan yang penulis hadapi selama mengerjakan skripsi ini.
9
4. Ustadzah Siti Zuhriyah, STH. selaku Wakil Mudir Ma‟had Dzin-Nuroin Universitas Muhammadiyah Jakarta yang telah bersedia meluangkan waktu serta perhatian kepada penulis untuk berkonsultasi dan memberikan izin untuk menyebarkan kuesioner untuk studi literature dalam penyusunan skripsi ini. 5. Seluruh dosen dan staf karyawan Program Studi Teknik Informatika
Universitas Islam Negeri (UIN) Syarif Hidayatullah Jakarta yang telah membimbing penulis selama masa kuliah.
Penulis menyadari bahwa skripsi ini masih jauh dari sempurna, dan tidak lepas dari kesalahan dan kekurangan, oleh karena itu dengan segala kerendahan hati, penulis akan menerima semua saran, kritik maupun ide-ide yang membangun dari para pembaca. Kritik dan saran dapat disampaikan ke penulis melalui [email protected]. Akhir kata, dengan izin Allah semoga skripsi ini
dapat berguna bagi penulis khususnya dan bagi pembaca umumnya.
Jakarta, Maret 2011
Indah Puji Astuti
10
LEMBAR PERSEMBAHAN
Bismillahirrahmaanirrahim
Skripsi ini penulis persembahkan khusus bagi mereka yang telah memberikan dukungan moril maupun materil sehingga skripsi ini dapat terselesaikan dengan baik, mereka adalah :
1. Allah SWT yang telah memberikan rahmat, karunia serta ridho-Nya kepada
penulis dan cintanya yang begitu besar kepada penulis. Engkau begitu dekat Yaa Rabby bahkan lebih dekat dari urat nadi ini, yang selalu menemaniku, bahkan disaat orang-orang berpaling dariku.
2. Rasulullah SAW, pemimpin agung, yang menjadi suri tauladan ummat. Dimana kasih sayangmu kepada ummatmu begitu besar, sampai Engkau menjanjikan syafatmu untuk ummatmu kelak di yaumul hisab.
3. Kepada kedua orang tua tercinta, ummiku (Reni Siti Sulasih) dan abiku (Abdul
Madjid), terima kasih atas semua limpahan kasih sayang, cinta, kepercayaan, dukungan, kesabaran, dan perhatian yang begitu tulus kalian berikan kepadaku. Aku janji akan membuat kalian bangga dan bahagia wahai ummi abiku tercinta.
4. Kakak-kakakku tersayang, M. Syahrul Fuadi, S.E, Ratna Sulis Stowati, Bu Tar,
Pak Iul, kalian adalah kakak-kakak terbaik yang pernah kumiliki.
5. Keponakanku tersayang, Rahmadiansyah Putra Fuadi, Tsania Kamila Putri Fuadi, M. Iqbal Baharudin „Ilmi, Karisma Khoiru Nisa, celotehan kalian yang
polos dan jujur adalah sebagai penghibur hati disaat penat datang menyapaku.
11
6. Teman codinganku, yang membantuku berkutat dengan baris-baris program. Anwar, Ka Ariel, Om Rud, Andik. “Thank‟s banget teman…”
7. Teman-teman TI penjurusan Software Engineering, Wulan, Tedy, Nicky, Firman, Apit, Ana, Olik, Ipul, Nova, Andika, teman seperjuanganku di TI Software Engineering kelasnya laskar pelangi. Kita ber-10 harus tunjukkan pada dunia kalau kita adalah anak-anak terbaik bangsa. Semoga kita bisa menjadi generasi-generasi yang dapat membanggakan orang tua, agama dan negara.
8. Teman-teman TI B angkatan 2006 Hasan, Hermanto, Vera, Indah, Erin,
Hendry, Nina Sakinah, Upi, Rohadi, Herman, Esa, Sodikin, Oji, Eki, terimakasih atas semua kebersamaan yang kita jalani selama ada di UIN Syarif Hidayatullah Jakarta.
9. Teman-teman di pondok An-nisa‟, Muji, Dewi, Mery, Asiah, Elis, Yayah, Novi, Ida, Desi, Dine, Vera, Chaca, Upi, Wulan, Ilal. “Terimakasih atas semua
canda, kebersamaan, perhatian dan support yang kalian berikan selama kita tinggal dalam satu asrama.
10. Teman-teman Teknik Informatika dan Sistem Informasi dari angkatan 2006
until The Last Generation.
12 DAFTAR ISI
LEMBAR SAMPUL ... LEMBAR JUDUL ...
LEMBAR PERSETUJUAN PEMBIMBING ... LEMBAR PENGESAHAN ... LEMBAR PERNYATAAN ...
ABSTRAK ... KATA PENGANTAR ...
LEMBAR PERSEMBAHAN ... DAFTAR ISI ... DAFTAR TABEL ...
DAFTAR GAMBAR ... DAFTAR LAMPIRAN ...
DAFTAR ISTILAH ... PEDOMAN TRANSLITERASI ...
BAB I PENDAHULUAN ... 1.1. Latar Belakang Masalah ... 1.2. Perumusan Masalah ... 1.3. Batasan Masalah ... 1.4. Tujuan dan Manfaat Penelitian ... 1.4.1. Tujuan Penelitian ...
13
1.4.2. Manfaat Penelitian ... 1.5. Metodologi Penelitian ...
1.5.1. Metode Pengumpulan Data ... 1.5.2. Metode Pengembangan Sistem ... 1.6. Sistematika Penulisan ...
BAB II LANDASAN TEORI ...
2.1. Penelusuran Informasi (Information Retrieval) ... 2.2. Stemming ...
2.2.1. Porter Stemmer ... 2.2.2. Paice/Huck Stemmer ………. 2.2.3. Lovins Stemmer ……… 2.3. Algoritma Program ...
2.3.1. Pseudocode ... 2.3.2. Diagram Alur (Flowchart) ………... 2.4. Alat Bantu Pemodelan yang Digunakan dalam Pembangunan Sistem ………...
2.4.1. DFD (Data Flow Diagram) ... 2.4.2. ERD (Entity Relationship Diagram) ... 2.4.3. STD (State Transitions Diagram) ………. 2.5. Alat atau Tools Pembangunan Aplikasi ……….
2.5.1. Bahasa Pemrograman PHP ... 2.5.2. PhpMyAdmin ...
14
2.5.3. Pengujian Aplikasi dengan Menggunakan Metode
White Box ... 2.6. Konsep Aplikasi Berbasis Web ……….
2.6.1. Internet Engineering Task Force (IETF) ……….. 2.6.2. HTML ………..
2.7. Upload ………
2.7.1. Pengertian Upload ………
2.7.2. Langkah-langkah Upload Website ke Internet ………. 2.8. Metode Pengembangan Sistem RAD ……….
2.9. Bahasa Arab ……….
2.9.1. Pembagian Kata dalam Bahasa Arab ……….………..
2.9.2. Jenis-jenis Kata Kerja (Fi‟il) ……… 2.10. Ilmu Sharaf ………...
2.10.1. Pengertian Sharaf ………..
2.10.2. Istilah-istilah Dasar dalam Ilmu Sharaf ………... 2.10.3. Fi‟il Shohih ……….
2.11. Al-Qur‟an Surat Al-Baqarah ……… 2.12. Studi Literatur Sejenis ………..
BAB III METODOLOGI PENELITIAN... 3.1. Metode Pengumpulan Data ... 3.2. Metode Pengembangan Sistem ... 3.3. Alasan Menggunakan RAD ...
15
3.3. Kerangka Berfikir ...
BAB IV PEMBAHASAN ... 4.1. Fase Menentukan Syarat-syarat ...
4.1.1. Mendefinisikan Masalah ………..
4.1.2. Analisis Kebutuhan Masalah ………
4.2. Fase Perancangan ... 4.2.1. Perancangan Proses ………
4.2.1.1. Perancangan Proses Aplikasi ………..
4.2.1.2. Algoritma Stemming ………...
4.2.1.3. Teknik Stemming Imbuhan ………
4.2.1.4. Algoritma Stemmer Fi‟il ………
4.2.2. Perancangan Basis Data ……….
4.2.3. Perancangan Antar Muka (User Interface) ………... 4.2.3.1. Desain Tampilan Awal ………
4.2.3.2. Desain Tampilan Beranda (Home) ……….
4.2.3.3. Desain Halaman Belajar ………..
4.2.3.4. Desain Halaman About ………...
4.2.3.5. Desain Halaman Guest ……… 4.2.3.6. Desain Tampilan Logout ……….
4.2.4. Perancangan Struktur Menu ………
4.2.5. State Transition Diagram ……….
16
4.2.5.2. STD untuk Halaman Ilmu Sharaf ……… 4.2.5.3. STD untuk Halaman Tsulasi Mujarrod ………
4.2.5.4. STD untuk Halaman Belajar ………
4.2.5.5. STD untuk Halaman Help ………
4.2.5.6. STD untuk Halaman About Me ………...
4.2.5.7. STD untuk Halaman Contact ……… 4.2.5.8. STD untuk Halaman Maintenance ………...
4.2.5.9. STD untuk Halaman Guest ………...
4.2.5.10. STD untuk Halaman Login ……….……….
4.3. Fase Konstruksi ... 4.4. Fase Pelaksanaan ... 4.4.1. Pengujian untuk Fi‟il Madhi ………..
4.4.2. Pengujian untuk Fi‟il Mudhori‟ ………..
4.4.3. Pengujian untuk Fi‟il Amr ……….
BAB V PENUTUP ... 5.1. Kesimpulan ... 5.2. Saran ...
17
DAFTAR TABEL
Tabel 2.1. Simbol-simbol Flowchart ..…...………...………… Tabel 2.2. Daftar Studi Sejenis ……...…...………...…………
Tabel 4.1. Tabel Hasil Quesioner …..…...……… Tabel 4.2. Field-field Tabel huruf .…..…...……….. Tabel 4.3. Field-field Tabel Madhi ...………...……… Tabel 4.4. Field-field Tabel Tashrif ……...………. Tabel 4.5. Field-field Tabel Wazan ……...………. Tabel 4.6. Field-field Tabel Gbook ……...……… Tabel 4.7. Field-field Tabel Anggota ……...………. Tabel 4.8. Tabel Hasil Stem Fi‟il untuk Mencari Fi‟il Madhi Tanpa Harakat ...
27 57 76 106 108 111 113 114 115 171 Halaman
18
DAFTAR GAMBAR
Gambar 2.1. Contoh Stemming ………...………..…
Gambar 2.2. Flowchart Porter Stemmer ……...………..…
Gambar 2.3. Contoh Flowchart Porter Stemmer dengan kata „Slepping‟….… Gambar 2.4. Flowchart Paice/Husk Stemmer …...………. Gambar 2.5. Flowchart Chart Lovins Stemmer ...………. Gambar 2.6. Komponen Flow Diagram ………...………. Gambar 2.7. Perubahan State ………....……….
Gambar 2.8. Simbol Modul ………...………
Gambar 2.9. Simbol Tampilan Kondisi ………...………
Gambar 2.10. Simbol Tindakan ………...………..…
Gambar 2.11. Skema Kerja Web ………...………..…
Gambar 2.12. Membuat Nama Domain ………...………...
Gambar 2.13. Halaman Find Domain …………...………..… Gambar 2.14. Registrasi Account ………...………
Gambar 2.15. Order Now ……..………...………..…
Gambar 2.16. Tampilan Information ………...……….
Gambar 2.17. Fase-fase dalam Model RAD ………...……….. Gambar 3.1. Fase-fase RAD dalam Aplikasi Stemmer ……… Gambar 3.2. Kerangka Berfikir ………
Gambar 4.1. Gambar Stemmer Fi‟il …………...………
19
Gambar 4.2. Flowchart Stemmer Fi‟il …………...………
Gambar 4.3. Skema Jalannya Aplikasi Stemmer ...……… Gambar 4.4. Flowchart Stemmer Fi‟il-fi‟il dalam Al-Qur‟an...………
Gambar 4.5. Flowchart fi‟il madhi ...………..……….. Gambar 4.6. Flowchart fi‟il madhi dengan dhomir ْ ه...………... Gambar 4.7. Flowchart fi‟il madhi dengan prefix ف dan suffix او...………... Gambar 4.8. Flowchart fi‟il madhi dengan dhomir dan م ك...………..……… Gambar 4.9. Flowchart fi‟il madhi dengan prefix تسا...………..……… Gambar 4.10. Flowchart fi‟il mudhori‟………. Gambar 4.11. Flowchart fi‟il mudhori‟ dengan prefix يف dan suffix …... Gambar 4.12. Flowchart fi‟il mudhori‟ dengan prefix يف dhomir ه suffix
Gambar 4.13. Flowchart fi‟il mudhori‟ dengan prefix ت dan dhomir يه ه Gambar 4.14. Flowchart fi‟il mudhori‟ dengan dengan prefix يس suffix نو dan dhomir ………... Gambar 4.15. Flowchart fi‟il amr dengan dengan prefix ا dan dhomir ا ... Gambar 4.16. Flowchart fi‟il amr dengan dengan prefix ف ... Gambar 4.17. Flowchart fi‟il amr dengan dengan prefix ا ... Gambar 4.18. Flowchart fi‟il amr dengan dengan prefix ا dan dhomir ا ... Gambar 4.19. Flowchart fi‟il amr dengan dengan prefix ا ... Gambar 4.20. Tabel Huruf ا – ج ... Gambar 4.21. Tabel Madhi ………
Gambar 4.22. Tabel Tashrif ………... Gambar 4.23. Tabel Wazan ………
20
Gambar 4.24. Tabel Gbook ………
Gambar 4.25. Tabel Anggota ……….
Gambar 4.26. Tampilan Login ………
Gambar 4.27. Pesan Gagal Login ………... Gambar 4.28. Tampilan Form Pendaftaran ………..
Gambar 4.29. Tampilan Verifikasi (Registrasi Sukses) ………. Gambar 4.30. Tampilan Verifikasi (Registrasi Gagal) ……….. Gambar 4.31. Tampilan Index (Home) ……….. Gambar 4.32. Tampilan Belajar (Belajar Sharaf) ………... Gambar 4.33. Tampilan Belajar2 (bentuk asli dari kata yang diinputkan) ……. Gambar 4.34. Tampilan Belajar3 (wazan dari kata yang diinputkan) ………… Gambar 4.35. Tampilan Belajar4 (tashrif lengakap dari kata yang diinputkan) . Gambar 4.36. Tampilan Belajar (Help) ………... Gambar 4.37. Tampilan About (about me) ……….. Gambar 4.38. Tampilan About (contact) ………. Gambar 4.39. Tampilan Maintenance (insert) ………. Gambar 4.40. Tampilan Insert (tabel madhi) ………... Gambar 4.41. Tampilan Insert (tabel tashrif) ………... Gambar 4.42. Tampilan Insert (tabel madhi) ………... Gambar 4.43. Tampilan Maintenance (update) ……… Gambar 4.44. Tampilan Update (tabel madhi) ………. Gambar 4.45. Tampilan Form Ubah (tabel madhi) ……….. Gambar 4.46. Tampilan Update (tabel tashrif) ………
21
Gambar 4.47. Tampilan Form Ubah (tabel tashrif) ……….. Gambar 4.48. Tampilan Update (tabel wazan) ……… Gambar 4.49. Tampilan Form Ubah (tabel wazan) ……….. Gambar 4.50. Tampilan Maintenance (delete) ………. Gambar 4.51. Tampilan Delete (tabel madhi) ……….. Gambar 4.52. Tampilan Delete (tabel tashrif) ………..
Gambar 4.53. Tampilan Delete (tabel wazan) ……….. Gambar 4.54. Tampilan Guest ………. Gambar 4.55. Tampilan Logout ………... Gambar 4.56. Struktur Menu ………
Gambar 4.57. STD Halaman Beranda (Home) ……… Gambar 4.58. STD Halaman Ilmu Sharaf ………
Gambar 4.59. STD Halaman Tsulasi Mujarrod ………... Gambar 4.60. STD Halaman Belajar ………...
Gambar 4.61. STD Halaman Help ………...
Gambar 4.62. STD Halaman About Me ………... Gambar 4.63. STD Halaman Contact ………...
Gambar 4.64. STD Halaman Maintenance ……….
Gambar 4.65. STD Halaman Guest ………..
Gambar 4.66. STD Halaman Login ……….
Gambar 4.67. Proses Fi‟il ع خ………. Gambar 4.68. Bentuk Asli Fi‟il ع خ ………
22
Gambar 4.70. Tashrif Lengkap Fi‟il ع خ ……….
Gambar 4.71. Proses Fi‟il ْ ْ ْ يف……….
Gambar 4.72. Bentuk Asli Fi‟il ْ ْ ْ يف………
Gambar 4.73. Tampil Wazan Fi‟il ْ ْ ْ يف………
Gambar 4.74. Tashrif Lengkap Fi‟il ْ ْ ْ يف……….
Gambar 4.75. Proses Fi‟il اْ ف………..
Gambar 4.76. Bentuk Asli Fi‟il اْ ف……….
Gambar 4.77. Tampil Wazan Fi‟il اْ ف……….
Gambar 4.78. Tashrif Lengkap Fi‟il اْ ف………..
Gambar 4.79. Proses Fi‟il ْ ………...
Gambar 4.80. Bentuk Asli Fi‟il ْ ………..
Gambar 4.81. Tampil Wazan Fi‟il ْ ………..
Gambar 4.82. Tashrif Lengkap Fi‟il ْ ………...
Gambar 4.83. Proses Fi‟il ْ ْ يف………..
Gambar 4.84. Bentuk Asli Fi‟il ْ ْ يف………. Gambar 4.85. Tampil Wazan Fi‟il ْ ْ يف………...
Gambar 4.86. Tashrif Lengkap Fi‟il ْ ْ يف………..
Gambar 4.87. Proses Fi‟il َ ْ كْ يس……….
Gambar 4.88. Bentuk Asli Fi‟il َ ْ كْ يس……….
Gambar 4.89. Tampil Wazan Fi‟il َ ْ كْ يس………
Gambar 4.90. Tashrif Lengkap Fi‟il َ ْ كْ يس……….
Gambar 4.91. Proses Fi‟il ْ ْعا………..
23
Gambar 4.93. Tampil Wazan Fi‟il ْ ْعا……….
Gambar 4.94. Tashrif Lengkap Fi‟il ْ ْعا………..
Gambar 4.95. Proses Fi‟il اْ كْ ا………...
Gambar 4.96. Bentuk Asli Fi‟il اْ كْ ا……….. Gambar 4.97. Tampil Wazan Fi‟il اْ كْ ا………..
Gambar 4.98. Tashrif Lengkap Fi‟il اْ كْ ا………...
Gambar 4.99. Proses Fi‟il ْ ْض ف……….
Gambar 4.100.Bentuk Asli Fi‟il ْ ْض ف……… Gambar 4.101.Tampil Wazan Fi‟il ْ ْض ف ……….. Gambar 4.102.Tashrif Lengkap Fi‟il ْ ْض ف………....
166 166 167 167 168 168 169 169 170 170
24
DAFTAR LAMPIRAN
Lampiran A Source Code ……..……….………..…... Lampiran B Tampilan Aplikasi …..……….………..…... Lampiran C Kuesioner ……….………..…... Lampiran D Respon ……….………..…... Lampiran E Dokumen ………….……….………..…...
Halaman 179 208 226 230 240
25
DAFTAR ISTILAH
1. Affix Imbuhan
2. Dhamir Kata ganti orang, personal pronoun
3. Fi‟il Secara bahasa memiliki makna perbuatan atau kata kerja. Sedangkan menurut istilah dalam ilmu nahwu, fi’il adalah kata yang menunjukkan suatu makna yang ada pada zatnya serta terkait dengan waktu.
4. Fi‟il Amr Kata kerja untuk perintah
5. Fi‟il Madhi Kata kerja untuk masa lampau atau dalam istilah bahasa inggrisnya adalah past tense yang memiliki arti telah melakukan sesuatu.
6. Fi‟il Mudlori‟ Kata kerja yang memiliki arti sedang melakukan sesuatu atau dalam istilah bahasa inggrisnya present continues tense.
7. Fi‟il Nahiy Kata kerja larangan
8. Fi‟il Shohih Merupakan fi’il yang di dalamnya tidak terdapat huruf
‘illah (ي , , أ )
9. Fi‟il
Tsulasi Mujarrod
Kata kerja yang tersusun atas 3 huruf saja.
10. Harf Secara bahasa memilki arti huruf seperti yang kita kenal dalam bahasa indonesia ada 26 huruf. Sedangkan dalam Bahasa Arab kita mengenal ada 28 huruf yang kita kenal
26
dengan Huruf Hijaiyah. Akan tetapi, huruf yang dimaksud disini bukan setiap Huruf Hijaiyah melainkan Huruf Hijaiyah yang memiliki arti seperti و (dan), ف (maka), (dengan),ل (untuk), (akan), (seperti), ْيف (di dalam). 11. Huruf „illah Huruf ‘illah adalah huruf yang sukar pengucapannya di
dalam bahasa Arab. Huruf ‘illah ada 3 yaitu :{ ي ا } 12. Ilmu Sharaf Ilmu dalam pelajaran Bahasa Arab yang khusus membahas
tentang perubahan bentuk kata (dalam Bahasa Arab disebut dengan kalimat).
13. Infix Sisipan 14. Information
Retrieval
Sebuah proses pengidentifikasian, pencarian, penyediaan dan pemberian informasi atas kebutuhan atau permintaan pemakai unit informasi.
15. Ism Secara bahasa memiliki arti yang dinamakan atau nama atau kata benda. Sedangkan menurut ulama nahwu, isim adalah kata yang menunjukkan suatu makna yang ada pada zatnya akan tetapi tidak berkaitan dengan waktu.
16. Ism Faa‟il Subjek / pelaku 17. Ism Maf‟ul Objek
18. Ism Zaman Nama waktu 19. Ism Makan Nama tempat 20. Ism Alat Nama alat 21. Masdar Kata benda
27 22. Mufrad Satu, tunggal 23. Mutsanna Dua
24. Nahwu Ilmu yang mempelajari kaidah untuk mengenal fungsi-fungsi kata yang masuk pada kalimat, mengenal hukum akhir kata, dan untuk mengenal cara mengi’rob. (Mulakhos Qowaidul Lughoh).
25. Prefix Awalan
26. Stemming Proses pembuangan atau penggantian affix (baik prefix maupun suffix) untuk mendapatkan stem atau bentuk root dari suatu term.
27. Suffix Akhiran
28. Tashrif Perubahan asal suatu kata kepada kata-kata yang berbeda untuk mencapai arti yang di kehendaki dalam Bahasa Arab 29. Wasf Kata sifat
30. Wazan Merupakan suatu rumus baku, dimana setiap kata kerja nantinya akan masuk ke salah satu dari 35 rumus baku perubahan kata. Wazan biasanya menggunakan kata fa-'ain-lam (لعف).
28
PEDOMAN TRANSLITERASI
Huruf arab Huruf latin Huruf arab Huruf latin
ا A ض dh
B th
ت T ظ zh
Ts ع „
ج J gh
H ف f
خ Kh ق q
د D ك k
Dz ل l
R m
Z n
س S w
Sy ه h
ص Sh ي y
(sumber : pedoman transliterasi arab indonesia)
29 BAB I
PENDAHULUAN
1.1.Latar Belakang Masalah
Menurut Mujtahid (2006 : 1), bahasa adalah alat komunikasi yang sangat vital bagi manusia. Bahasa dipakai untuk menghubungkan perbedaan, persamaan serta berbagai dialektika peradaban dari zaman kuno hingga zaman sekarang. Tanpa bahasa seolah-olah dunia ini terasa gelap gulita. Begitu pentingnya bahasa, sehingga Wittgenstein menyebutnya sebagai paradikma.
Menurut Leonard Bloomfield dalam Nur Rofiah (2006 : 2), bahasa merupakan ekspresi dari ide, perasaan dan keinginan. Mempelajari bahasa merupakan hal yang sangat penting, karena dari bahasa kita bisa mengetahui perkembangan teknologi, sosial dan budaya suatu bangsa. Seperti yang telah kita ketahui di dunia ini, terdiri dari berbagai macam bangsa dan negara yang mempunyai bahasa nasional masing-masing seperti Bangsa Indonesia menggunakan Bahasa Indonesia, Bangsa Inggris menggunakan Bahasa Inggris, Bangsa Jepang menggunakan Bahasa Jepang, Bangsa Cina menggunakan Bahasa Cina, Bangsa Arab menggunakan Bahasa Arab dan sebagainya.
Salah satu bahasa yang sangat populer di kalangan umat Islam adalah Bahasa Arab karena bahasa ini adalah bahasa Qur’aniah yang dipakai
30
dalam ibadah sehari-hari seperti tilawah Qur‟an, sholat, dan juga berdo‟a pada Sang Khalik Allah SWT. Selain itu juga, Bahasa Arab merupakan bahasa pada dua pedoman umat Islam (al-Qur‟an dan al-Hadits), bahasa para nabi dan bahasa para penghuni syurga (Abu hamzah Yusuf al-Atsary, 2007). Maka sudah selayaknya bagi umat Islam untuk mempelajari Bahasa Arab sejak dini agar memudahkan dirinya dalam memahami ajaran agamanya (Nurlailah, 2006 : 1).
Dalam belajar bahasa kita tidak hanya harus mengetahui arti kata bahasa tersebut, tetapi ada juga tata bahasa yang harus kita perhatikan. Dalam bahasa Inggris kita kenal dengan istilah Granmar sedangkan dalam Bahasa Arab kita kenal dengan istilah Nahwu-Sharaf.
Ilmu Sharaf merupakan salah satu dari ilmu granmar Bahasa Arab ) هي لا هي داا ( adabiyatul arabiyyah. Secara bahasa Ilmu Sharaf diartikan sebagai ''Perubahan''. Mengetahui sharaf atau mengkaji bentuk perkataan adalah sangat penting dalam mempelajari Bahasa Arab karena dengan perubahan bentuk atau „sighah‟ suatu perkataan, maka perkataan itu
akan berubah. Dengan sharaf, kita bisa tahu dari mana suatu kata berasal. Minimal, orang yang mengerti sharaf Insya Allah tidak akan kesulitan menggunakan kamus-kamus Bahasa Arab, mengingat metode pencarian kata dalam kamus Bahasa Arab berbeda sekali dengan kamus bahasa lain pada umumnya.
31
bentuk kata (Bahasa Arab: kalimat). Perubahan bentuk kata ini dalam prakteknya disebut Tashrif. Oleh karena itu dinamakan Ilmu Sharaf (perubahan; berubah), karena Ilmu ini khusus mengenai pembahasan Tashrif (pengubahan; mengubah) (Toha, 2010).
Jika dalam Bahasa Inggris kita akan menemukan contoh perubahan kata go menjadi go – went – gone atau mungkin dalam bahasa Indonesia kita akan menemukan contoh perubahan kata tulis menjadi menulis – tulisan – ditulis. Maka Ilmu Sharaf juga membahas bentuk perubahan suatu
kata dasar menjadi kata yang lain. Meskipun terjadi perbedaan pendapat, umumnya ulama Sharaf menjadikan fi’il madhi sebagai dasar dari suatu kata.
Fi’il madhi inilah yang akan berubah menjadi kata yang lain (Al-Farmawy,
2010 : 1).
Bentuk perubahan kata dalam Bahasa Arab ada 35 bab. Setiap bab memiliki bentuk perubahan yang spesifik. Dan dari 35 bab terbagi menjadi beberapa jenis berdasarkan jumlah huruf yang menyusun kata dasarnya. Salah satu di antaranya adalah Ats Tsulatsy Al Mujarrad (tersusun dari tiga kata saja) yang terdiri dari 6 bab (Al-Farmawy, 2010 : 2).
32
sehingga dapat di akses via internet dan dapat dimanfaatkan oleh siapa saja yang ingin menggunakannya.
1.2.Perumusan Masalah
Berdasarkan latar belakang di atas, maka penulis merumuskan pokok permasalahan yang akan dikaji lebih lanjut sebagai berikut :
a. Bagaimana implementasi perancangan aplikasi dalam mengetahui kata
dasar dari suatu fi’il kemudian mencari wazan yang sesuai dan untuk mengetahui tashrif lengkap dari suatu fi’il yang kata dasarnya telah diketahui.
b. Bagaimana implementasi proses stemming dalam memecahkan suatu kata berimbuhan menjadi suatu kata dasar.
c. Bagaimana merancang program yang berbasis web untuk aplikasi.
1.3.Batasan Masalah
Batasan masalah dalam pembangunan aplikasi ini mencakup : a. Aplikasi yang dibuat berupa tasrif istilahi Tsulatsy Al Mujarrad (tersusun
dari tiga kata saja) untuk fi’il shohih saja berdasar buku Amtsilatu Tasrifiah karangan Syaikh Muhammad Ma‟sum Bin „Ali, yang diterbitkan oleh Maktabah wa Mathba‟ah Salim Nabhan Surabaya tahun 1965.
33 yang berbeda.
c. Contoh-contoh kata diambil dari fi’il-fi’il yang ada dalam surat
Al-Baqarah.
d. Perancangan aplikasi untuk mengetahui kata dasar (fi’il madhi asli) ,
mengetahui rumus baku dimana setiap fi’il nantinya akan masuk ke salah satu dari 6 rumus baku perubahan kata yang disebut dengan wazan dan mengetahui perubahan asal suatu kata kepada kata-kata yang berbeda untuk mencapai arti yang dikehendaki disebut dengan tashrif sehingga memudahkan pengguna dalam mempelajari perubahan kata dalam Ilmu Sharaf.
e. Kata yang dimasukkan dibatasi hanya pada fi’il shohih tsulasi mujarrod, atau yang hurufnya masih asli dan tidak ada campuran huruf ‘illahnya yang terdapat pada surat Al-Baqarah.
f. Teknik pemotongan kata menggunakan metode Porter Stemmer.
g. Kuisioner disebarkan pada santriwati ma‟had Dzin-Nuroin Universitas Muhammadiyah Jakarta.
1.4.Tujuan dan Manfaat Penelitian
1.4.1. Tujuan Penelitian
Tujuan yang ingin dicapai penulis dari penelitian ini adalah:
34 kata dalam Bahasa Arab.
b. Membantu dalam menemukan kata dasar dengan cara stemming
yang dapat membantu seseorang dalam belajar Ilmu Sharaf. Aplikasi ini dapat diakses dan dimanfaatkan oleh siapa saja dan dimana saja karena sistem ini berbasis web.
1.4.2. Manfaat Penelitian
Manfaat yang didapat dari penelitian ini adalah : 1.4.2.1. Bagi Penulis
a. Dapat membuat suatu aplikasi yang dapat membantu seseorang yang ingin mendalami Ilmu Sharaf.
b. Dapat mengimplementasikan teori-teori dalam algoritma
stemming ke dalam sebuah aplikasi tashrif istilahi untuk Ilmu Sharaf.
c. Dapat membangun suatu aplikasi berbasis web.
1.4.2.2.Bagi Universitas
a. Mengetahui kemampuan mahasiswa dalam penguasaan materi
dan penerapan ilmu yang telah di dapat di bangku kuliah.
b. Memberikan gambaran tentang kesiapan mahasiswa dalam
menghadapi dunia kerja dari hasil yang diperoleh selama pembelajaran pada masa kuliah.
1.4.2.3.Bagi Pengguna
35
Bahasa Arab dan mengetahui tashrif lengkap suatu kata sehingga memudahkan seseorang dalam mempelajari ilmu sharaf atau perubahan kata dalam Bahasa Arab.
b. Aplikasi ini dilengkapi dengan pemotongan kata berimbuhan
menjadi kata dasar yaitu dengan menggunakan metode stemmer sehingga memudahkan pengguna dalam mencari arti kata dalam kamus Bahasa Arab.
1.5.Metodologi Penelitian
Dalam proses penelitian ini, penulis menggunakan metodologi-metodologi yang umum digunakan penelitian lainnya, metodologi-metodologi yang digunakan antara lain :
1.5.1.Metode Pengumpulan Data
a. Metode Studi Pustaka; yaitu pengumpulan data dan informasi
dengan cara membaca buku referensi yang dapat dijadikan pedoman dalam pembahasan masalah ini. Selain itu, penulis juga menggunakan referensi dalam bentuk situs yang menyediakan informasi mengenai belajar Bahasa Arab, porter stemmer, bahasa pemrograman PHP dan lain sebagainya.
36
adalah questionnaire. Teknik tersebut adalah teknik pengumpulan data dengan jalan melakukan pembagian daftar pertanyaan langsung ke objek penelitian secara acak (Random Sampling) yaitu santriwati Ma‟had Dzin-Nuroin Universitas Muhammadiyah Jakarta.
1.5.2. Metode Pengembangan Sistem
Metode yang penulis gunakan dalam pengembangan sistem ini adalah RAD (Rapid Applications Development). Menurut Martin, metode RAD atau yang disebut dengan PAC (Pengembangan Aplikasi Cepat) terdiri dari empat fase yang meliputi (Kendall dan Kendall, 2006 : 239) :
a. Fase menentukan syarat yaitu menentukan tujuan dan syarat-syarat informasi yang dibutuhkan dalam penelitian skripsi ini. b. Fase perancangan merupakan tahap merancang proses-proses yang
akan terjadi di dalam sistem, perancangan basis data (database), dan perancangan antarmuka (interface).
c. Fase konstruksi merupakan kegiatan membuat baris-baris kode dalam bahasa pemrograman tertentu terhadap rancangan-rancangan yang telah dibuat.
d. Fase pelaksanaan merupakan tahapan untuk menguji dan mengenal
37 1.6.Sistematika Penulisan
Secara garis besar, skripsi ini terbagi menjadi 5 bab, yaitu : BAB I Pendahuluan
Pendahuluan memberikan uraian mengenai latar belakang masalah, perumusan masalah, batasan masalah, tujuan dan manfaat penelitian, metodologi penelitian, dan sistematika penulisan.
BAB II Landasan Teori
Landasan teori memberikan uraian mengenai teori yang berhubungan dengan permasalahan diambil penulis dan teori yang digunakan sebagai panduan dasar dalam pengembangan aplikasi ini seperti penjelasan tentang web, kata dasar fi’il (kata kerja) dan wazan dalam Bahasa Arab, stemming, hardware dan software yang digunakan, serta teori-teori penunjang yang digunakan dalam penulisan skripsi ini. Teori-teori tersebut diambil dari literature – literature, dokumentasi, serta informasi dari berbagai pihak.
BAB III Metodologi Penelitian
Bab ini berisi tentang metodologi penelitian yang digunakan serta langkah- langkah yang digunakan terkait dengan penelitian yang dilakukan.
BAB IV Perancangan program dan implementasi
38
implementasi atau cara pemakaian program yang penulis buat dan uji coba terhadap program.
BAB V Penutup
39 BAB II
LANDASAN TEORI
2.1. Penelusuran Informasi (Information Retrieval)
Pada prinsipnya penelusuran informasi merupakan sebuah proses pengidentifikasian, pencarian, penyediaan dan pemberian informasi atas kebutuhan atau permintaan pemakai unit informasi. Penelusuran Informasi merupakan kegiatan yang bertujuan untuk menyediakan dan memasok informasi bagi pemakai sebagai jawaban atas permintaan atau berdasarkan kebutuhan pemakai.
Information Retrieval merupakan bagian dari computer science yang berhubungan dengan pengambilan informasi dari dokumen-dokumen yang didasarkan pada isi dan konteks dari dokumen-dokumen itu sendiri. Information Retrieval merupakan suatu pencarian informasi (biasanya berupa dokumen) yang didasarkan pada suatu query (inputan user) yang diharapkan dapat memenuhi keinginan user dari kumpulan dokumen yang ada. Sedangkan, definisi query merupakan sebuah formula yang digunakan untuk mencari informasi yang dibutuhkan oleh user, dalam bentuk yang paling sederhana, sebuah query merupakan suatu keywords (kata kunci) dan dokumen yang mengandung keywords merupakan dokumen yang dicari dalam IRS (Mustaqim, 2009 : 1).
40
Menurut Lancaster dalam Ratu Siti Zaenab (2002 : 41), Sistem temu kembali informasi dapat didefinisikan sebagai suatu proses pencarian dokumen dengan menggunakan istilah-istilah pencarian untuk mendefinisikan dokumen sesuai dengan subjek yang diinginkan.
Menurut Lancaster dalam Janu Saptari dan Purwono (2006 : 3), Sistem Temu Kembali Informasi terdiri dari 6 (enam) subsistem, yaitu:
1. Subsistem dokumen. 2. Subsistem pengindeksan. 3. Subsistem kosa kata. 4. Subsistem pencarian.
5. Subsistem antarmuka pengguna-sistem. 6. Subsistem penyesuaian.
Menurut Zainal A. Hasibuan (1997 : 2), Indexing merupakan sebuah proses untuk melakukan pengindeksan terhadap kumpulan dokumen yang akan disediakan sebagai informasi kepada pemakai. Adapun tahapan dari pengindeksan adalah sebagai berikut :
a. Parsing Dokumen yaitu proses pengambilan kata-kata dari kumpulan
dokumen.
b. Stoplist yaitu proses pembuangan kata buang seperti: tetapi, yaitu,
sedangkan, dan sebagainya.
41
d. Term Weighting dan Inverted File yaitu proses pemberian bobot pada istilah.
2.2. Stemming
Menurut Hooper dan Paice (2005 : 1), banyak kata-kata mempunyai penafsiran semantic serupa dan dapat diperlakukan sama untuk kepentingan IR (Information Retrieval) aplikasi. Karena alasan ini, algoritma stemming atau stemmer telah dikembangkan.
Menurut Dani Yogatama (2008 : 9), Stemming adalah proses pembuangan atau penggantian affix (baik prefix maupun suffix) untuk mendapatkan stem atau bentuk root dari suatu term. Proses stemming sering disebut conflation, banyak digunakan dalam search engines pada tahap indexing maupun untuk ekspansi query, dalam hal ini stemming adalah proses yang bertujuan untuk meningkatkan performansi suatu sistem temu kembali informasi.
Contoh produk yang menggunakan algoritma stemming adalah search engines seperti Lycos dan Google dan juga kamus serta produk lain menggunakan NLP untuk kepentingan IR (Haryati, 2007 : 17).
42
Gambar 2.1. Contoh Stemming
Beberapa contoh stemmer adalah sebagai berikut : 2.2.1. Porter Stemmer
a. Penjelasan Singkat Porter Stemmer
Algoritma Porter dibuat oleh Martin Porter, dan pertama kali dipublikasikan pada tahun 1980. Porter stemmer adalah algoritma pembuangan suffix yang context sensitive.
Beberapa definisi yang digunakan dalam algoritma porter stemmer ini adalah :
- Konsonan yaitu huruf-huruf selain A, I, U, E, atau O, dan Y yang diawali oleh suatu konsonan.
- Vokal adalah huruf-huruf selain konsonan.
Konsonan akan dinotasikan dengan c, dan vokal dengan v. Suatu list ccc… dengan panjang lebih besar dari 0 dinotasikan dengan C, dan list vvv… dengan panjang lebih besar dinotasikan
dengan V. setiap kata atau bagian dari kata, dibangun oleh salah satu dari empat bentuk berikut :
Kata Hasil Stemming
جي
تحتف
ا قا
حتف
ا ق
43
- CVCV…C. Misalnya : firer (penembak), rod (tangkai), signal (tanda/sinyal) dan sebagainya.
- CVCV…V. Misalnya : five (lima), vane (baling-baling), deny (mengingkari) dan sebagainya.
- VCVC…C. Misalnya : arid (gersang), even (rata/datar), afar (dari jauh) dan sebagainya.
- VCVC…V : Misalnya : abode (tempat kediaman), impure
(kotor), operate (menjalankan) dan sebagainya. b. Langkah-langkah dalam Algoritma Porter Stemmer
Terdapat lima langkah utama dalam algoritma Porter. Tiap langkah dieksekusi berurutan dan hanya dieksekusi sekali untuk setiap term. (Yogatama, 2008 : 11) :
1) Langkah 1
a. Langkah ini bertujuan untuk mereduksi term-term jamak
menjadi bentuk tunggalnya. Rule-rule yang digunakan : - SSES → SS
- IES → I - SS → S - S →
b. Langkah ini bertujuan untuk mereduksi term-term dalam bentuk continues atau participle ke term dasarnya. Rule-rule yang digunakan :
44 - ED →
- ING →
Langkah berikut ini hanya dieksekusi jika rule kedua atau ketiga di langkah (1b) diinvokasi. Langkah ini diperlukan untuk menyesuaikan bentuk term ketika suatu term berubah dari bentuk continues atau participle menjadi bentuk dasarnya. Proses yang dilakukan meliputi pemetaan term dengan akhiran double letter ke single letter dan penambahan –E untuk beberapa suffix. Rule-rule yang digunakan :
- AT → ATE - BL → BLE - IZ → IZE
c. Langkah ini bertujuan untuk mengganti „-Y‟ dengan „-I‟ jika terdapat huruf vokal lain dalam term.
Rule yang digunakan : - Y → I
2) Langkah 2
45
langkah ini juga diurutkan berdasarkan nilai penultimate letter. Pemilihan penultimate letter ini bertujuan untuk mendapatkan distribusi yang merata terhadap nilai-nilai yang mungkin untuk string S1.
Rule-rule yang digunakan :
- ATIONAL → ATE - IZATION → IZE
- TIONAL → TION - ATION → ATE
- ENCI → ENCE - ATOR → ATE
- ANCI → ANCE - ALISM → AL
- IZER → IZE - IVENESS → IVE
- ABLI → ABLE - FULNESS → FUL
- ALLI → AL - OUSNESS → OUS
- ENTLI → ENT - ALITI → AL
- ELI → E - IVITI → IVE
- OUSLI → OUS - BILITI → BLE
3) Langkah 3
Pada langkah ini dilakukan pengindeksan pada huruf terakhir term untuk membuang beberapa akhiran spesifik.
Rule-rule yang digunakan :
- ICTATE → IC - ICAL → IC
- ATIVE → - FUL →
- ALIZE → AZ - NESS →
46 4) Langkah 4
Pada langkah ini dilakukan pengindeksan pada penultimate letter dari term untuk membuang beberapa akhiran spesifik jika term tersebut memiliki nilai (m > 1). Rule-rule yang digunakan :
- (m > 1) AL -> - (m > 1) E ->
- (m > 1) ANCE -> - (m > 1 and (*S or *T)) ION -> - (m > 1) ENCE -> - (m > 1) OU ->
- (m > 1) ER -> - (m > 1) ISM -> - (m > 1) IC -> - (m > 1) ATE -> - (m > 1) ABLE -> - (m > 1) ITI -> - (m > 1) IBLE -> - (m > 1) OUS -> - (m > 1) ANT -> - (m > 1) IVE -> - (m > 1) EMENT -> - (m > 1) IZE -> - (m > 1) MENT ->
5) Langkah 5
Langkah terakhir ini bertujuan untuk melakukan penyesuaian akhir terhadap stem yang dihasilkan
a. Membuang huruf terakhir „-E‟
47 c. Flowchart Porter Stemmer
START
Aturan 1
Aturan 2
Aturan 3
Aturan 4
Aturan 5
Hasil
END
Pemotongan imbuhan
Pemotongan imbuhan
Pemotongan imbuhan
Pemotongan imbuhan
Pemotongan imbuhan Tidak
Tidak
Tidak
Ya Ya
Ya
Ya
Ya
Tidak
[image:45.595.113.489.134.671.2]Tidak
48
Untuk lebih memahami tentang algoritma porter stemmer, maka penulis memberikan contoh sebagai berikut :
START
Aturan 1
Aturan 2
Aturan 3
Aturan 4
Aturan 5
Hasil Sleep
END
Pemotongan imbuhan
Tidak
Tidak
Tidak
Ya
Tidak
Tidak Input kata
[image:46.595.114.485.166.697.2]Sleeping
Gambar 2.3. Contoh Flowchart Porter Stemmer dengan kata
49
Dari Gambar 2.3. dapat dijelaskan bahwa input kata „sleeping‟ masuk ke langkah 1, tetapi tidak memenuhi aturan pada
langkah 1. Kemudia kata sleeping masuk pada langkah 2 dengan membuang huruf „ing‟ sehingga menjadi „sleep‟. Kata „sleep‟ masuk
ke langkah 3, tetapi tidak memenuhi aturan pada langkah 3. Kemudian masuk ke langkah 4, tetapi tidak memenuhi aturan pada langkah 4. Begitu seterusnya sampai masuk ke langkah 5 hingga hasilnya tetap kata „sleep‟.
Kelebihan dari porter stemmer adalah banyak digunakan untuk aplikasi kamus, mudah diimplementasikan karena rule-rulenya mudah dipahami, dan membutuhkan sedikit memori dalam penyimpanan database. (Gregorius, 2006 : 9), sehingga hal inilah yang membuat penulis memilih menggunakan algoritma porter stemmer dalam pembuatan aplikasi ini.
2.2.2. Paice/Huck Stemmer
a. Penjelasan Singkat Paice/Husk Stemmer
Algoritma Paice/Husk dibuat oleh Chris Paice dengan bantuan Gareth Husk dan pertama kali dipublikasikan pada tahun 1990. Paice/Husk stemmer merupakan conflation based iterative stemmer yang sangat kuat dan agresif.
50
akhiran dari suffix, sehingga pengaksesan tabel rule dilakukan dengan melakukan look-up terhadap huruf akhir dari kata yang sedang diolah (Yogatama, 2008 : 12).
b. Flowchart Paice/Husk Stemmer
START
Aturan stemming
Aturan selanjutnya Aturan
pemotongan
Pemotongan imbuhan Dapat
dilakukan
Kata dasar sesuai
Pemotongan ulang
END
Ya Ya
Ya tidak
tidak
tidak tidak
[image:48.595.113.562.169.659.2]Ya
51 2.2.3. Lovins Stemmer
a. Penjelasan Singkat Lovins Stemmer
Algoritma Lovins merupakan algoritma stemming yang pertama, dibuat oleh Julie Beth Lovins dan dipublikasikan pada tahun 1968. Desain dari algoritma ini banyak dipengaruhi oleh technical vocabulary. Lovins menyatakan bahwa bentuk yang paling diharapkan dari context sensitive rule adalah bentuk yang dapat digeneralisasi untuk diterapkan dalam berbagai situasi. Dalam kenyataannya, sedikit sekali rule-rule yang memenuhi syarat di atas. Untuk setiap endings, terdapat beberapa kasus khusus yang dapat menyebabkan kesalahan stem yang dihasilkan. Lovins stemmer mengatasi hal ini dengan menangani exception-exception yang lebih sering muncul dengan harapan dapat membatasi jumlah kesalahan dalam daftar exception. (Yogatama, 2008 : 13).
52 b. Flowchart Lovins Stemmer
START
Menentukan daftar akhiran untuk memulai pemotongan kata
Mencari daftar akhiran dari bagian akhiran kata
Konteks sensitif
Pemotongan akhiran
Pencarian daftar rekaman
Merekam kata yang telah
dipotong
END Hasil Ya
Tidak Ya
Tidak
[image:50.595.113.489.126.699.2]Tidak Ya
53 2.3.Algoritma Program
2.3.1.Pseudocode
a. Pengertian Pseudocode
Menurut Adikara (2010 : 1), Pseudocode adalah salah satu cara untuk menterjemahkan sebuah Algoritma pemrograman dengan bahasa tingkat tinggi (bahasa yang dimengerti manusia), dideskripsikan sangat mudah untuk bisa dimengerti.
b. Aturan Penulisan Pseudocode
Menurut Sutarman (2006 : 16), setiap pemrogram mempunyai aturan penulisan algoritma yang belum tentu sama. Tidak ada aturan yang baku dalam teks algoritma. Pseudocode dapat disusun oleh tiga bagian : Judul Algoritma, Kamus dan Algoritma. - Judul
Penjelasan tentang algoritma, yang berisi uraian singkat mengenai apa yang dilakukan oleh algoritma
- Kamus
Semua nama yang dipakai, meliputi nama tipe, konstanta, variabel atau peubah, nama prosedur dan nama fungsi didefinisikan sendiri.
- Algoritma
54 2.3.2.Diagram Alur (Flowchart)
a. Pengertian Diagram Alur (Flowchart)
Flowchart adalah penggambaran secara grafik dari langkah-langkah dan urut-urutan prosedur dari suatu program. Flowchart menolong analis dan programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam pengoperasian (Febriani, 2008 : 1).
Kegunaan dari Diagram Alur (Flow chart) adalah untuk mendesain dan merepresentasikan program. Secara garis besar, unsur-unsur pemrograman adalah Input → Proses → Output.
Kriteria Algoritma Menurut Donald E. Knuth (2010 : 4) : 1. Input: algoritma dapat memiliki nol atau lebih inputan dari luar. 2. Output: algoritma harus memiliki minimal satu buah output
keluaran.
3. Definiteness (pasti): algoritma memiliki instruksi-instruksi yang jelas dan tidak ambigu.
4. Finiteness (ada batas): algoritma harus memiliki titik berhenti (stopping role).
55 b. Lambang-lambang Flowchart
Tabel 2.1. Simbol-simbol Flowchart (Proboyekti, 2009 : 1)
LAMBANG NAMA FUNGSI
TERMINATOR Awal atau akhir Program
FLOW Arah aliran program PREPARATION Inisialisasi/pemberian nilai
awal
PROCES Proses/pengolahan data
INPUT/OUTPUT DATA
Input/output data
SUB PROGRAM Sub program
DECISION Seleksi/kondisi
ON PAGE CONNECTOR
Penghubung bagian-bagian flowchart pada halaman yang sama
OFF PAGE CONNECTOR
Penghubung bagian-bagian flowchart pada halaman yang berbeda COMMEN Tempat komentar tentang
56
2.4. Alat Bantu Pemodelan yang Digunakan dalam Pembangunan Sistem
2.4.1. DFD (Data Flow Diagram)
Data Flow Diagram (DFD) adalah suatu diagram yang menggunakan notasi-notasi untuk menggambarkan arus dari data sistem, yang penggunaannya sangat membantu untuk memahami sistem secara logika, tersruktur dan jelas. DFD merupakan alat bantu dalam menggambarkan atau menjelaskan sistem yang sedang berjalan logis.
DFD ini adalah salah satu alat pembuatan model yang sering digunakan, khususnya bila fungsi-fungsi sistem merupakan bagian yang lebih penting dan kompleks dari pada data yang dimanipulasi oleh sistem. Dengan kata lain, DFD adalah alat pembuatan model yang memberikan penekanan hanya pada fungsi sistem.
DFD ini merupakan alat perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi dapat digunakan untuk penggambaran analisa maupun rancangan sistem yang mudah dikomunikasikan oleh profesional sistem kepada pemakai maupun pembuat program (Parno, 2010 : 1).
57
[image:55.595.111.512.145.554.2]Data Flow Diagram terdiri dari beberapa komponen, diantaranya adalah :
Gambar 2.6. Komponen Flow Diagram 2.4.2. ERD (Entity Relationship Diagram)
ERD merupakan diagram model yang digunakan sebagai representasi struktur basis data yang mencakup nama tabel yang di dalamnya terdapat keterangan dari tabel dan adanya relasi antar tabel serta bentuk dari relasi itu sendiri dibuat berdasarkan notasi baku yang ada. ERD digunakan untuk menyatakan hubungan antara suatu entitas atau objek berupa tabel dengan entitas yang lain. Unsur-unsur pembentuk ERD antara lain:
1. Entity
Entity menggambarkan suatu objek di dunia nyata. Misalnya pada basis data suatu perusahaan terdapat data karyawan. Satu orang karyawan beserta atribut-atributnya disebut entity. Kumpulan dari entity yang memiliki tipe dan atribut yang sama disebut entity set.
Terminator
Proses
Data store
58 2. Atribut
Atribut merupakan karakteristik entity yang berfungsi untuk menggambarkan entity tersebut secara utuh.
Contohnya entity set karyawan memiliki atribut nip, nama, dan umur. Tipe-tipe atribut antara lain :
a. Simple atribut
Merupakan atribut yang tidak memiliki subparts. Contohnya atribut umur.
b. Composite atribut
Merupakan atribut yang memiliki subparts. Misalnya nama pada data karyawan yang terdiri dari nama depan dan nama belakang. Atribut ini digunakan untuk mengelompokkan atribut yang saling berhubungan sehingga menghasilkan pemodelan yang lebih rapi. c. Single valued atribut
Merupakan atribut yang pada semua entity bernilai sama. Misalnya Nip seorang karyawan pada entity karyawan dan entity gaji memiliki nilai yang sama.
d. Multi valued atribut
59 e. Null atribut
Null atribut adalah atribut yang tidak memiliki nilai. Contohnya jika seorang karyawan belum memiliki anak, maka atribut NamaAnak bernilai null.
f. Derived atribut
Nilai atribut ini bergantung pada atribut lain/ merupakan hasil dari suatu proses. Misalnya atribut LamaBekerja pada entity karyawan bergantung pada nilai atribut TanggalMasuk dan CurrentDate.
3. Key atribut
Satu atau lebih atribut dapat berfungsi sebagai key apabila kumpulan atribut tersebut dapat membedakan satu entity dengan entity yang lainnya. Key atribut bersifat unik.
4. Weak entity
Weak entity merupakan entity yang tidak memiliki key sendiri. Key untuk entity ini berasal dari entity lain. Misalnya Nip karyawan dijadikan primary key untuk entity DataAnak karyawan.
5. Weak relation
Weak relation meyatakan hubungan suatu weak entity dengan entity lainnya.
2.4.3. STD (State Transitions Diagram)
60
[image:58.595.114.511.191.568.2]state) sistem dan cara dimana transisi dibuat dari state atau ke state lainnya. STD berfungsi sebagai dasar bagi pemodelan tingkah laku. Informasi tambahan sebagai aspek control dari perangkat lunak diisikan dalam spesifikasi control/control specification (CSPEC). (Pressman, 2002 : 354).
Gambar 2.7. Perubahan State
Simbol-simbol yang digunakan dalam State Transitions Diagram adalah sebagai berikut (Hikmat, 2005 : 26-27) :
a. Modul
Dipresentasikan dengan simbol lingkaran kecil dan digambarkan apabila terjadi tindakan.
Gambar 2.8. Simbol Modul b. Tampilan Kondisi
Dipresentasikan dengan simbol kotak. Merupakan layer yang ditampilkan menurut keadaan tertentu yang mewakili suatu kondisi.
Gambar 2.9 Simbol Tampilan Kondisi State 1
State 2
61 c. Tindakan (State Transitions)
Dipresentasikan dengan simbol anak panah dan biasanya disertai keterangan aksi yang dilakukan.
Gambar 2.10 Simbol Tindakan
2.5.Alat (tools) untuk pembangunan aplikasi 2.5.1. Bahasa Pemrograman PHP
2.5.1.1. Personal Home Page (PHP)
PHP adalah salah satu bahasa pemrograman yang berjalan pada sebuah webserver dan berfungsi sebagai pengolah data pada sebuah server.
PHP ini diciptakan oleh seorang programmer Unix dan Perl yang bernama Rasmus Lerdorf pada bulan Agustus-September 1994. (Rafiza, 2006 : 1)
2.5.1.2. Kemampuan PHP
62
merupakan kependekan dari PHP:HyperText Preprocessor, merupakan bahasa script server side yang disisipkan dalam dokumen HTML.
Oleh karena itu, berdasarkan penjelasan Sidik (2004 : 4-5) PHP dapat melakukan apa saja yang dapat dilakukan oleh program CGI lain, yaitu mengolah data dengan tipe apapun, menciptakan halaman web yang dinamis, serta menerima dan menciptakan data cookies.
Arti script server-side adalah, agar dapat menjalankan script ini dibutuhkan tiga program utama, yaitu web server (dapat berupa IIS dari Windows atau Apache), modul PHP, dan juga web browser. (Rafiza, 2006 : 2)
2.5.1.3. Prinsip Kerja PHP
Sistem kerja dari PHP diawali dengan permintaan yang berasal dari halaman website oleh browser. Berdasarkan URL atau alamat web site dalam jaringan internet, browser akan menemukan sebuah alamat dari webserver, mengidentifikasi halaman yang dikehendaki, dan menyampaikan segala informasi yang dibutuhkan oleh webserver. Selanjutnya, webserver akan mencarikan berkas yang akan diminta dan menampilkannya di browser. Browser yang mendapatkan isinya segera menerjemahkan kode HTML dan menampilkannya. (Rafiza, 2006 : 3).
63
dilakukan, basis data yang didukung oleh PHP diantaranya Adabas D, dBase, Empress, FilePro, FrontBase, Hyperwave, IBM DB2, Informix, Ingres, Interbase, MSQL, Direct MS SQL, MySQL, ODBC, Oracle (OC17 dan OC18), Ovrimos, PostgreSQL, Solid, SQLite, Sybase, Velocis, dan Unix DBM (Sidik, 2004 : 4 – 5).
2.5.2. PhpMyAdmin
phpMyAdmin adalah perangkat lunak bebas yang ditulis dalam bahasa pemrograman PHP yang digunakan untuk menangani administrasi
MySQL melalui (World Wide Web). phpMyAdmin mendukung berbagai operasi MySQL, diantaranya (mengelola basis data, tabel-tabel, bidang (fields), relasi (relations), indeks, pengguna (users), perijinan (permissions), dan lain-lain).
Pada dasarnya, mengelola basis data dengan MySQL harus dilakukan dengan cara mengetikkan baris-baris perintah yang sesuai (command line) untuk setiap maksud tertentu. Jika seseorang ingin membuat basis data (database), ketikkan baris perintah yang sesuai untuk membuat basis data. Jika seseorang menghapus tabel, ketikkan baris perintah yang sesuai untuk menghapus tabel. Hal tersebut tentu saja sangat menyulitkan karena seseorang harus hafal dan mengetikkan perintahnya satu per satu.
64
membuat tabel, mengisi data, dan lain-lain dengan mudah, tanpa harus menghafal baris perintahnya.
phpMyAdmin merupakan bagian untuk mengelola basis data MySQL yang ada di komputer. Untuk membukanya, buka browser lalu ketikkan alamat http://localhost/phpmyadmin, maka akan muncul halaman phpMyAdmin. Di situ nantinya seseorang bisa membuat (create) basis data baru, dan mengelolanya.
2.5.3. Pengujian Aplikasi dengan Metode White Box
Pengujian White-Box, yang kadang-kadang disebut pengujian glass-box, adalah metode desain test case yang menggunakan struktur kontrol desain procedural untuk memperoleh test case (Pressman, 2002 : 533).
Pengujian white-box berfokus pada struktur control program. Test case dilakukan untuk memastikan bahwa semua statemen pada program telah dieksekusi paling tidak satu kali selama pengujian dan bahwa semua kondisi logis telah diuji. Pengujian basic path, tehnik pengujian white-box, menggunakan grafik (matriks grafiks) untuk melakukan serangkaian pengujian yang independent secara linear yang akan memastikan cakupan (Pressman, 2002 : 565).
Dengan menggunakan metode white box, analis sistem akan dapat memperoleh test case seperti berikut :
65
2. Mengerjakan seluruh keputusan logikal
3. Mengerjakan seluruh loop yang sesuai dengan batasannya
4. Mengerjakan seluruh struktur data internal yang menjamin validitas
2.6.Konsep Aplikasi Berbasis Web
Menurut Sidik dan Pohan (2005 : 1 – 2) World Wide Web (WWW) yang lebih dikenal dengan web, merupakan salah satu layanan yang didapat oleh pemakai komputer yang terhubung ke internet. Web pada awalnya adalah ruang informasi dalam internet, dengan menggunakan teknologi hypertext, pemakai dituntun untuk menemukan informasi dengan menggunakan link yang disediakan dalam dokumen web yang ditampilkan dalam web browser. Web memudahkan pengguna komputer untuk berinteraksi dengan pelaku internet lainnya dan menelusuri informasi. Selain itu web telah diadopsi oleh perusahaan sebagai bagian dari strategi teknologi informasinya, karena beberapa alasan yaitu akses informasi mudah, set-up server lebih mudah, informsi mudah didistribusikan, dan bebas platform, yaitu informasi dapat disajikan oleh web browser pada sistem operasi mana saja karena adanya standar dokumen berbagai tipe data dapat disajikan.
66
Gambar 2.11. Skema Kerja Web
Aplikasi web (web application) adalah aplikasi yang dapat diakses dengan menggunakan web browser lewat jaringan baik internet ataupun intranet (misal internet perusahaan). Halaman-halaman web yang telah ditambahkan kode program (PHP, ASP, JSP, Perl, dsb) biasa dikenal dengan nama web application (aplikasi web).
2.6.1.Internet Engineering Task Force (IETF)
Internet Engineering Task Force (IETF), merupakan sebuah organisasi yang menjaring banyak pihak (baik itu individual ataupun organisasional) yang tertarik dalam pengembangan jaringan komputer dan internet. Organisasi ini diatur oleh IESG (Internet Engineering
INTERNET Web Browser URL:http://.../abc.htm <HTML> <H1>Welcome</H1> </HTML> Web Browser URL:http://.../abc.htm Welcome <HTML> <H1>Welcome</H1> </HTML> Hard Disk HTTP Computer
File : abc.htm HTTP
Get
abc.htm
HTTP Reply
Temp. File of Memory
67
Steering Group), dan diberi tugas untuk mempelajari masalah-masalah teknik yang terjadi dalam jaringan komputer dan internet, dan kemudian mengusulkan solusi dari masalah tersebut kepada IAB (Internet Architecture Board). Pekerjaan IETF dilakukan oleh banyak kelompok kerja (disebut sebagai Working Groups) yang berkonsentrasi di bagian satu topik saja, seperti halnya keamanan, routing, dan lainnya. IETF merupakan pihak yang mempublikasikan spesifikasi yang membuat standar protokol TCP/IP.
2.6.2.HTML
68
dibuat oleh kolaborasi Caillau TIM dengan Berners-lee robert ketika mereka bekerja di CERN pada tahun 1989 (CERN adalah lembaga penelitian fisika energi tinggi di Jenewa).
1. Tahun 1980, IBM memikirkan pembuatan suatu dokumen yang akan mengenali setiap elemen dari dokumen dengan suatu tanda tertentu. IBM kemudian mengembangkan suatu jenis bahasa yang menggabungkan teks dengan perintah-perintah pemformatan dokumen. Bahasa ini dinamakan Markup Langiage, sebuah bahasa yang menggunakan tanda-tanda sebagai basisnya. IBM menamakan sistemnya ini sebagai Generalized Markup Language atau GML. 2. Tahun 1986, ISO menyatakan bahwa IBM memiliki suatu konsep
tentang dokumen yang sangat baik, dan kemudian mengeluarkan suatu publikasi ( ISO 8879 ) yang menyatakan markup language sebagai standar untuk pembuatan dokumen-dokumen. ISO membuat bahasa ini dari GML milik IBM, tetapi memberinya nama lain, yaitu SGML ( Standard Generalized Markup Language ).
69
terakhir dari HTML adalah HTML 4.01, meskipun saat ini telah berkembang XHTML yang merupakan pengembangan dari HTML.
2.7. Upload
2.7.1. Pengertian Upload
Upload atau unggah merupakan suatu cara untuk mengirimkan data. (contoh: data gambar, data program, data word, data excel, data pdf) dari PC milik pribadi ke sebuah sistem server atau sistem yang mirip lainya dan data tersebut akan di publikasikan di internet sehingga bisa dilihat dan diambil oleh orang lain.
Upload atau unggah ini sering kali dilakukan oleh banyak pengguna internet dengan harapan supaya data yang dimiliki bisa di gunakan oleh orang lain yang membutuhkan ataupun hanya untuk sekedar pembelajaran. Tool-tool yang digunakan untuk proses upload diantaranya adalah : Cute FTP, Filezila, dan lain-lain.
2.7.2. Langkah-langkah Upload Website ke Internet
1. Membuat account email
70 2. Membuat nama domain di (co.cc)
[image:68.595.113.560.274.595.2]Langkah berikutnya adalah membuat domain (Free) di http://www.co.cc/?id=157816. kemudian isikan kotak yang tersedia dengan nama domain yang diinginkan seperti: nama-kamu.co.cc, namawebkamu.co.cc. bila nama yang dimasukan sudah ada yang memiliki, maka akan diminta untuk memasukan kembali nama domain yang lain, akan tetapi jika nama yang dimasukan belum ada yang memiliki maka nama domain tersebut akan menjadi milik kita, caranya yaitu dengan mengklik check availability.
Gambar 2.12. Membuat Nama Domain
71
Gambar 2.13. Halaman Find Domain
Langkah selanjutnya akan diminta untuk melakukan registrasi, ikuti terus langkah registrasi hingga selesai. Setelah selesai memasukkan data, kemudian ceklis I accept the Terms of Service. Klik tombol Create an Account now, setelah itu klik Domain setting dan lakukan langkah ketiga tapi ingat jangan tutup dulu window tersebut karena setup akan bisa dilakukan jika sudah mempunyai webhosting.
72
Gambar 2.14. Registrasi Account 3. Mendaftar (Registrasi) di 000webhost.com
73
Gambar 2.15. Halaman Order Now
74
Gambar 2.16. Tampilan Information
4. Melakukan SetUp di Co.cc
Copy account detail yang telah dibahas di langkah ke tiga. kemudian kembali ke tab SetUp (Domain Setting) www.co.cc yang diterangkan di langkah ke-2. Dalam DNS setting pastelah host server yang tadi di copy (isi kedua nya). Dengan begitu Domain Setting telah selesai dilakukan. Tapi website masih belum bisa di akses karena registrasi www.co.cc memerlukan waktu 2×24 jam hingga domain yang telah dibuat sebelumnya beredar di internet.
5. Upload file itu ke Web Hosting
75
bernama Public_Html file itu merupakan tempat dimana kita memasukan data-data untuk keperluan website kita. masuklah ke folder tersebut, lalu upload file. Cara meng-Upload : klik tulisan Upload di atas folder Public_Html, maka akan di bawa ke halaman Upload setelah itu Browse pada kotak sebelah kanan (sebelah kanan berguna untuk mengupload file berextensi ZIP, sebelah kiri untuk file yang tidak terkompresi) lalu klik tanda centang yang berada di atas, setelah itu klik lagi tanda cen