• Tidak ada hasil yang ditemukan

Modul Word Graph Kata Benda pada KG_EDITOR Berbasis Java Desktop

N/A
N/A
Protected

Academic year: 2017

Membagikan "Modul Word Graph Kata Benda pada KG_EDITOR Berbasis Java Desktop"

Copied!
112
0
0

Teks penuh

(1)

MODUL WORD GRAPH KATA BENDA PADA KG_EDITOR

BERBASIS JAVA DESKTOP

RANI DWIJAYANTI

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

(2)

DEPARTEMEN ILMU KOMPUTER

MODUL WORD GRAPH KATA BENDA PADA KG_EDITOR

BERBASIS JAVA DESKTOP

RANI DWIJAYANTI

Skripsi

sebagai salah satu syarat untuk memperoleh gelar

Sarjana Komputer pada

Departemen Ilmu Komputer

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

(3)

on Java Desktop. Supervised by SRI NURDIATIand AHMAD RIDHA.

One natural language processing method that can represent result of semantic analysis of a text as a graph is Knowledge Graph (KG). BogorDelftConstruct is a software developed to analyze a text and visualize it as a graph using KG. BogorDelftConstruct was developed using MATLAB programming language, which is not freely accessible. Because of that, in this reseach we develop a system using Java programming language, so everyone can run this system freely. The objective of this research is to add a word graph module for Indonesian noun in the system. Indonesian nouns comprise of 20 word graph patterns. All but one of them are formed by affixation. The process of forming word graph is started by getting root word and affix contained in input word using stemming based on Kamus Besar Bahasa Indonesia (KBBI). The root word is used to determine the part-of-speech in KBBI, which is used as a parameter to determine which pattern is appropriate. The pattern containing the meaning of the word would then be generated by the system. In this word graph module, only 19 patterns can be implemented. From 176 words used in testing, there were only 4 errors, equivalent to an accuracy of more than 97%.

(4)

Menyetujui:

Pembimbing 1, Pembimbing 2,

Dr Ir Sri Nurdiati MSc Ahmad Ridha SKom MS

NIP. 19601126 198601 2 001 NIP. 19800507 200501 1 001

Mengetahui: Ketua Departemen,

Dr Ir Agus Bouno MSi MKom NIP. 19660702 199302 1 001

(5)

kasih sayang-Nya penulis bisa menyelesaikan penelitian ini dengan baik. Shalawat serta salam penulis sampaikan kepada junjungan Nabi Muhammad Shallallahu ‘alaihi wa sallam, juga kepada keluarganya, sahabatnya, dan pengikutnya yang setia hingga akhir zaman. Pada pengerjaan tugas akhir ini, penulis melakukan penelitian mengenai word graph kata benda. Penelitian ini dilakukan sejak Maret 2010 sampai dengan Desember 2011.

Penulis menyampaikan terima kasih kepada

1 Kedua orang tua penulis, yaitu Arie Djunianto dan Endeh Nahdiah. Terima Kasih atas segala doa, dukungan, motivasi, pengertian, dan doa yang tidak pernah putus sehingga penulis akhirnya dapat menyelesaikan penelitian ini,

2 Dr. Ir. Sri Nurdiati, M.Sc dan Ahmad Ridha, S.Kom, M.S sebagai pembimbing bagi penulis dalam penyusunan skripsi. Terima kasih atas bimibingan, nasihat, motivasi, kritik, serta saran yang sering diberikan kepada penulis selama mengerjakan penelitian ini,

3 Bapak Sony Hartono Wijaya, S.Kom, M.Kom sebagai penguji. Terima kasih atas segala kritik dan saran yang diberikan kepada penulis terhadap penelitian ini,

4 Kakak dan adik penulis, yaitu Teguh Arif Wicaksana dan Leni Novitasari. Terima kasih atas kasih sayang dan dukungan yang telah diberikan,

5 Roby Ginanjar. Terima kasih atas kasih sayang, semangat, dukungan, bantuan, serta doa yang diberikan selama penulis mengerjakan penelitian ini,

6 Teman-teman satu bimbingan. Ria, Ichonx, Made, Topa, dan Dean, terima kasih atas bantuan, dukungan, serta motivasi yang selalu diberikan,

7 Teman-teman Laboratorium Computer Intelligence. Wido, Dimpy, Benz, Laras, Deka, terima kasih atas kegembiraan, masukan, dan semangat yang diberikan,

8 Teman-teman seperjuangan Ilkom 44, dan

9 Semua pihak yang tidak dapat penulis sebutkan satu persatu yang telah membantu penulis dalam menyelesaikan penelitian ini.

Karya ilmiah ini masih jauh dari kesempurnaan, namun penulis berharap semoga penelitian ini dapat memberikan manfaat.

Bogor, Februari 2012

(6)

Djunianto dan Ibu Endeh Nahdiah. Penulis merupakan anak kedua dari tiga bersaudara. Penulis menempuh pendidikan formal di SDN Panaragan 2 Bogor dan lulus pada tahun 1998. Penulis kemudian melanjutkan pendidikan menengah di SMP Negeri 4 Bogor dan lulus pada tahun 2004. Pada tahun 2004, penulis diterima sebagai murid Sekolah Menengah Atas (SMA) Negeri 2 Bogor. Penulis lulus dari SMA Negeri 2 Bogor pada tahun 2007 dan diterima sebagai mahasiswi di Departemen Ilmu Komputer, Fakultas Matematika dan Pengetahuan Alam, Institut Pertanian Bogor melalui Jalur Undangan Seleksi Masuk IPB (USMI).

Selain pendidikan formal, penulis juga pernah mengikuti beberapa kegiatan ekstrakurikuler selama masa SMA dan perkuliahan. Penulis merupakan anggota paduan suara SMA Negeri 2 Bogor pada tahun 2004 - 2007. Penulis juga pernah menjadi salah satu anggota pasukan pengibar bendera (paskibra) dalam organisasi Pasukan Khusus Caraka Muda (PKCM) SMA Negeri 2 Bogor pada tahun 2004 - 2007. Pada tahun 2004, penulis meraih juara ke-3 pada Lomba Ketangkasan Baris Berbaris (LKBB) tingkat Kota Madya Bogor dan pada tahun 2005 penulis juga meraih juara ke-2 dalam lomba baris berbaris Gema Paksina SMA Regina Pacis Bogor tingkat Kota Madya Bogor. Selama masa perkuliahan, penulis dipercaya untuk menjadi anggota Divisi Kesekretariatan dalam organisasi Himpunan Mahasiswa Ilmu Komputer (Himalkom) pada tahun 2008 - 2009 dan menjadi penanggung jawab pada Subdivisi Surat Menyurat dalam divisi yang sama pada tahun 2009 - 2010.

(7)

v

DAFTAR TABEL ... vi

DAFTAR GAMBAR ... vi

DAFTAR LAMPIRAN ... vii

PENDAHULUAN Latar Belakang ... 1

Tujuan ... 1

Ruang Lingkup ... 1

Manfaat Penelitian ... 1

TINJAUAN PUSTAKA Kata Benda ... 1

Java ... 2

Metode Pengembangan Prototype ... 2

Graph ... 2

Knowledge Graph (KG) ... 2

Word Graph ... 3

Stemming ... 3

Aspek-aspek Ontologi ... 3

METODE PENELITIAN Studi Literatur dan Analisis Pola Pembentukan Word Graph Kata Benda... 3

Penambahan Modul Word Graph Kata Benda pada KG_EDITOR ... 3

1 Listen to Customer... 4

2 Build or Revise Mock-up ... 4

3 Customer Test Drives Mock-up ... 4

HASIL DAN PEMBAHASAN Analisis Pola Word Graph Kata Benda ... 4

Penambahan Modul Word Graph Kata Benda pada KG_EDITOR ... 5

1 Iterasi Pertama... 5

1.1 Listen to Customer ... 5

1.2 Build Mock-up ... 6

1.3 Customer Test Drives Mock-up ... 14

2 Iterasi Kedua ... 14

2.1 Listen to Customer ... 14

2.2 Revise Mock-up ... 14

2.3 Customer Test Drives Mock-up ... 15

Kekurangan dan Kelebihan Sistem ... 16

KESIMPULAN DAN SARAN Kesimpulan ... 16

Saran ... 17

DAFTAR PUSTAKA ... 17

(8)

vi

1 Contoh isi tabel „entry‟ pada database „kamus‟ ... 7

2 Contoh isi tabel „polabenda‟ ... 7

3 Data hasil kueri dengan input „pertanian‟ untuk pengecekan KBBI ... 8

4 Hasil dari proses stemming KBBI menggunakan input kata benda „pertanian‟ ... 8

5 Hasil dari proses stemming KBBI menggunakan input kata benda „pertanian‟ ... 9

6 Contoh isi tabel „polabenda‟ sebelum field„Pola‟ diberikan nilai default ... 15

7 Contoh isi tabel „polabenda‟ setelah field„Pola‟ diberikan nilai default ... 15

DAFTAR GAMBAR

Halaman 1 Diagram metode pengembangan prototype ... 4

2 Use Case Diagram untuk modul word graph kata benda ... 6

3 Kueri pengecekan KBBI ... 8

4 Kueri pencarian jenis kata dasar ... 8

5 Proses pencarian akhiran pada class Akhiran ... 9

6 Contoh aturan pembentukan awalan ... 10

7 Contoh aturan pembentukan awalan dan kata dasar pada class Luluh ... 11

8 Kueri penentuan pola word graph kata benda ... 11

9 Kode program pada class PolaKataBenda ... 12

10 Kode program pada class KataBenda15 ... 12

11 Hasil pembangkitan Pola 15 dengan contoh input„pertanian‟ ... 13

12 Bentuk antarmuka menu bar ... 13

13 Bentuk antarmuka panel kanvas... 13

14 Bentuk tampilan input dialog box untuk kata benda ... 13

15 Output dari pengujian dengan input kata „pemecahan‟ ... 14

(9)

vii

1 Pola word graph kata benda yang digunakan ... 19

2 Diagram alir pembuatan modul word graph kata benda pada sistem KG_EDITOR ... 23

3 Class diagram modul word graph kata benda ... 24

4 Sequence diagram modul word graph kata benda ... 28

5 Pesan peringatan KG_EDITOR pada tahap praproses ... 29

6 Diagram alir stemming manual ... 30

7 Diagram alir stemming meluruh ... 31

8 Hasil pengujian pola 1 ... 32

9 Hasil Pengujian pola 2 ... 33

10 Hasil pengujian pola 3 ... 34

11 Hasil pengujian pola 4 ... 35

12 Hasil pengujian pola 5 ... 36

13 Hasil pengujian pola 6 ... 37

14 Hasil pengujian pola 7 ... 38

15 Hasil pengujian pola 8 ... 39

16 Hasil pengujian pola 9 ... 40

17 Hasil pengujian pola 10 ... 41

18 Hasil pengujian pola 11 ... 42

19 Hasil pengujian pola 12 ... 43

20 Hasil pengujian pola 13 ... 44

21 Hasil pengujian pola 14 ... 45

22 Hasil pengujian pola 15 ... 46

23 Hasil pengujian pola 16 ... 47

24 Hasil pengujian pola 17 ... 48

25 Hasil pengujian pola 18 ... 49

(10)

PENDAHULUAN

Latar Belakang

Natural language processing (NLP) adalah teknologi yang memungkinkan untuk melakukan pemrosesan berbagai macam bahasa alami yang digunakan manusia untuk berkomunikasi (Hulliyah 2007). Tantangan terbesar dalam NLP adalah ambiguitas. Ambiguitas banyak sekali ditemukan terutama dalam pemrosesan teks. Ambiguitas disebabkan oleh adanya perbedaan pemahaman terhadap teks akibat interpretasi yang subjektif. Salah satu metode yang digunakan untuk memecahkan masalah ambiguitas dalam teks adalah dengan metode Knowledge Graph (KG).

Knowledge Graph (KG) merupakan salah

satu metode dalam NLP yang digunakan untuk menjelaskan atau menggambarkan bahasa dengan berfokus pada aspek semantis (makna) kata daripada aspek sintaksis (Zhang 2002). Metode ini dapat merepresentasikan suatu informasi kata berdasarkan maknanya dan menampilkannya dalam bentuk graf. Salah satu perangkat lunak yang telah dikembangkan untuk menganalisis teks dan menampilkan visualisasi dalam bentuk graf menggunakan metode KG adalah BogorDelftConstruct. Perangkat lunak ini merupakan hasil penelitian Romadoni (2009) yang dapat menganalisis teks bahasa Indonesia dan merupakan hasil pengembangan dari penelitian terdahulu yang dilakukan oleh Mark van Koningsveld pada tahun 2003 - 2008. Beliau berhasil menciptakan sistem yang dapat menganalisis teks bahasa Inggris dan menampilkannya dalam bentuk graf yang diberi nama DelftConstruct.

BogorDelftConstruct dikembangkan dengan menggunakan bahasa pemrograman MATLAB. MATLAB bersifat closed platform sehingga sistem ini tidak dapat dijalankan tanpa adanya MATLAB. Oleh karena itu, pada penelitian ini sistem akan dikembangkan menggunakan bahasa pemrograman Java. Java merupakan bahasa pemrograman yang bersifat open source sehingga pengguna dapat mengakses sistem secara bebas. Pengguna dapat mengakses kode program dari sistem yang dibuat bahkan memodifikasinya sehingga pengguna dapat memanfaatkan sistem sesuai kebutuhan. Sistem ini terdiri atas beberapa modul jenis kata. Penelitian kali ini hanya akan mengembangkan modul word graph kata benda. Modul ini berfungsi untuk menampilkan word graph kata benda sesuai dengan input yang diberikan pengguna.

Tujuan

Tujuan dari penelitian ini adalah menambahkan modul word graph jenis kata benda pada sistem KG_EDITOR dengan menggunakan bahasa pemrograman Java berbasis desktop.

Ruang Lingkup

Sistem word graph kata benda yang dikembangkan dalam penelitian ini didasarkan pada pola pembentukan word graph kata benda yang terdapat pada penelitian Saleh (2009) yang

berjudul “Analisis Pembentukan Word Graph Kata Benda Menggunakan Teori Knowledge Graph”. Penelitian ini juga dibatasi hanya untuk kata benda bentuk tunggal, bukan merupakan paduan antar kata benda maupun antara kata benda dengan jenis kata lainnya.

Manfaat Penelitian

Penelitian ini diharapkan dapat memberikan pengetahuan mengenai makna suatu kata dari segi semantis, khususnya kata benda, dengan melihat pola dari kata tersebut yang divisualisasikan menggunakan word graph. Penggunaan Java sebagai bahasa pemrograman diharapkan dapat memberikan kemudahan pengaksesan oleh masyarakat.

TINJAUAN PUSTAKA

Kata Benda

Menurut Alwi et al. (2003), kata benda dapat dilihat dari tiga segi, yaitu segi semantis, segi sintaksis, dan segi bentuk. Bedasarkan segi semantis, kita dapat mengatakan bahwa kata benda adalah kata yang mengacu pada manusia, binatang, benda, dan konsep atau pengertian. Dari segi sintaksisnya, kata benda memiliki ciri-ciri tertentu, yaitu:

1 Dalam kalimat yang predikatnya kata kerja, kata benda cenderung menduduki fungsi subjek, objek, atau pelengkap.

2 Kata benda tidak dapat diingkarkan dengan kata tidak. Kata pengingkarnya adalah bukan.

3 Kata benda umumnya dapat diikuti oleh kata sifat, baik secara langsung maupun dengan diantarai oleh kata yang.

(11)

1 Kata Benda Dasar

Kata benda dasar adalah kata benda yang hanya terdiri atas satu morfem. Kata benda terdiri atas kata benda dasar umum dan kata benda dasar khusus (Alwi et al. 2003).

2 Kata Benda Turunan

Kata benda turunan adalah kata benda yang terbentuk dari kata benda dasar dengan menambahkan afiks tertentu pada kata dasar. Penurunan kata benda ini dilakukan berdasarkan afiksasi, perulangan, dan pemajemukan.

Dalam tata bahasa baku bahasa Indonesia pada dasarnya ada tiga prefiks dan satu sufiks yang dipakai untuk menurunkan kata benda, yaitu prefiks ke-, per-, peng-, dan sufiks -an. Prefiks dan sufiks dapat bergabung. Jadi, secara keseluruhan terdapat tujuh macam afiksasi dalam penurunan kata benda, yaitu:

1 Afiksasi kata benda dengan ke-. 2 Afiksasi kata benda dengan per-.

Prefiks per- memiliki tiga alomorf, yaitu pel-, per-, dan pe-.

3 Afiksasi kata benda dengan peng-.

Prefiks peng- memiliki enam alomorf, yaitu pem-, pen-, peny-, pe-, peng-, dan penge-. 4 Afiksasi kata benda dengan -an.

5 Afiksasi kata benda dengan peng-an. Kata benda dengan afiksasi peng-an memiliki beberapa alomorf : peng-an, pen-an, pem-pen-an, penge-pen-an, peny-pen-an, dan pe-an. 6 Afiksasi kata benda dengan per-an. 7 Afiksasi kata benda dengan ke-an.

Berdasarkan penelitian sebelumnya yang dilakukan oleh Saleh (2009), diperoleh 20 pola pembentukan word graph kata benda yang terdiri atas 19 pola pembentukan word graph berdasarkan afiksasi dan masing-masing sebuah pola kata benda dasar (KBD) dan kata benda turunan (KBT) yang belum dapat dimasukkan ke dalam pola yang telah terbentuk sesuai dengan makna katanya.

Java

Java adalah bahasa pemrograman dan platform komputasi yang pertama kali dirilis oleh Sun Microsystem pada tahun 1995. Java merupakan bahasa pemrograman berorientasi objek yang dapat dijalankan pada berbagai platform sistem operasi. Selain itu, Java memiliki library yang cukup besar sehingga dapat memudahkan dalam membuat sebuah aplikasi dengan cepat (Cornell & Horstmann 2008).

Abstract Window Toolkit

Sistem windowing memiliki tantangan terbesar untuk portabilitas. Ketika pengguna memindahkan aplikasi dari Windows ke Machintosh, pengguna mungkin dapat menyelamatkan sebagian besar sistem komputasi, tetapi pengguna harus menuliskan kembali kode program antarmuka untuk window secara lengkap. Tantangan ini ditangani oleh sebuah package pada Java yang disebut

Abstract Window Toolkit (AWT). AWT dapat

mempertahankan tampilan lokal dan nuansa lingkungan pengguna. Akibat dari adanya AWT, suatu aplikasi yang sama dapat terlihat sesuai di semua lingkungan implementasi. Kode program yang sama dapat bekerja di semua platform. Selain menyediakan sekumpulan set bagi komponen antarmuka, AWT juga memiliki fasilitas untuk memanipulasi gambar dan menghasilkan grafis (Zukowski 1997).

Metode Pengembangan Prototype

Metode prototype merupakan salah satu metode perangkat lunak yang sering digunakan ketika seorang pengguna hanya mendefinisikan secara umum mengenai apa yang dikehendakinya tanpa menjelaskan dengan detail input, proses, serta output yang dibutuhkan. Sebaliknya, pengembang kurang memperhatikan efisiensi algoritme, serta kemampuan sistem operasi dan antarmuka yang menghubungkan manusia dan komputer (Pressman 2001).

Metode prototype berfungsi sebagai sebuah mekanisme untuk mengidentifikasi kebutuhan perangkat lunak. Ketika suatu prototype dibangun, pihak pengembang akan berusaha untuk menggunakan bagian-bagian dari program tersebut atau menggunakan suatu tools yang memungkinkan program dapat dihasilkan dengan cepat (Pressman 2001).

Graph

Menurut Deo (2009), graf G = (V,E) adalah pasangan terurut dengan V adalah himpunan berhingga dan tak kosong dari elemen graf yang disebut vertex dan E adalah himpunan pasangan tak terurut dari vertex V yang disebut edge E. Vertex disebut juga node atau titik, sedangkan edge disebut juga garis atau sisi.

Knowledge Graph (KG)

(12)

merepresentasikan suatu informasi dalam bentuk graf berarah, sehingga diharapkan dapat dengan mudah dipahami (Rusiyamti 2008).

KG tersusun dari concept dan relationship (Zhang 2002). Concept dapat dibedakan menjadi tiga jenis, yaitu token, type, dan name.

a Token

Token mengekspresikan sesuatu yang

dialami dalam dunia nyata atau konsep dari dalam persepsi manusia (Zhang 2002). Token bersifat subjektif karena merupakan konsep yang dipahami seseorang menurut cara pandang masing-masing (Rusiyamti 2008). Sebuah token dinyatakan dengan menggunakan simbol “”.

b Type

Type adalah konsep berupa informasi umum

dan bersifat objektif karena merupakan kesepakatan yang dibuat sebelumnya (Rusiyamti 2008). Contoh type adalah buah, binatang, dan manusia.

c Name

Name adalah suatu konsep yang bersifat

individual. Sesuatu dapat diberi name dengan banyak cara. Contoh name adalah fuji. Fuji merupakan name dari apel.

Word Graph

Word graph adalah graf dari sebuah kata atau frasa kata. Setiap kata dalam teori KG yang berhubungan dengan word graph menyatakan makna dari kata dan oleh karena itu disebut

semantic word graph. Gabungan beberapa word

graph dari kata-kata dalam sebuah kalimat

disebut sentence graph. Graf yang merepresentasikan kombinasi beberapa sentence graph dalam sebuah teks disebut text graph (Nurdiati & Hoede 2008).

Stemming

Stemming merupakan proses pemotongan

imbuhan pada kata untuk mendapatkan kata dasar. Proses ini mempunyai dua tujuan. Tujuan yang pertama adalah efisien. Stemming mengurangi jumlah kata unik di dalam indeks. Tujuan yang kedua adalah efektif. Stemming memperbaiki recall dengan mengurangi semua bentuk dari kata dasar (Liddy 2001).

Aspek-aspek Ontologi

Ontologi merupakan gambaran dari beberapa konsep dan relasi di antaranya untuk mendefinisikan ide-ide yang merepresentasikan konsep, relasi, dan logikanya (Saleh 2009). Menurut Nurdiati dan Hoede (2008), sampai saat ini ontologi terdiri atas 9 binary relationship dan 4 jenis frame relationship.

Binary relationship merupakan penghubung

antara dua concept yang membentuk sebuah graf. Berikut ini merupakan jenis-jenis binary relatonship:

1 Similarity of sets, alikeness : ALI

2 Causality : CAU

3 Equality : EQU

4 Subset relationship : SUB

5 Disparateness : DIS

6 Attribution : PAR

7 Ordering : ORD

8 Informational dependency : SKO

9 Ontologi F (Focus)

Frame merupakan vertex berlabel dan

digunakan untuk mengelompokkan beberapa konsep (Rahmat 2009). Satu objek terkadang tidak cukup terwakili oleh sebuah token sehingga diperlukan frame yang mengelompokkan token tersebut dalam sebuah pernyataan. Menurut Zhang (2002), terdapat empat frame relationship sebagai berikut:

1 Focusing on a situation : FPAR

2 Negation of a situation : NEGPAR

3 Possibility of a situation : POSPAR

4 Necessity of a situation : NECPAR

METODE PENELITIAN

Studi Literatur dan Analisis Pola

Pembentukan Word Graph Kata Benda

Penelitian ini diawali dengan melakukan studi literatur. Studi literatur merupakan kegiatan mengumpulkan dan mempelajari berbagai bahan pustaka yang relevan dengan topik penelitian. Penelitian ini didasarkan pada penelitian sebelumnya, yaitu tesis Saleh (2009)

yang berjudul “Analisis Pembentukan Word

Graph Kata Benda Menggunakan metode

Knowledge Graph”. Selain itu, pada penelitian ini juga akan dilakukan analisis pola word

graph kata benda yang telah dibentuk.

Berdasarkan penelitian Saleh (2009), diperoleh 20 pola pembentukan word graph kata benda. Hasil analisis tersebut kemudian akan digunakan untuk membuat modul word graph kata benda menggunakan bahasa pemrograman Java.

Penambahan Modul Word Graph Kata

Benda pada KG_EDITOR

(13)

Gambar 1 Diagram metode pengembangan prototype.

1 Listen to Customer

Tahap listen to customer merupakan tahap untuk melakukan pengumpulan kebutuhan pengguna (requirements gathering). Pihak pengembang dan pengguna bertemu dan mendeskripsikan tujuan keseluruhan dari perangkat lunak, mengidentifikasi kebutuhan-kebutuhan, dan menguraikan permintaan pengguna (Pressman 2001).

2 Build or Revise Mock-up

Tahap build or revise mock-up merupakan tahap perencanaan dan perancangan prototype yang berfokus pada representasi aspek-aspek dari perangkat lunak yang terlihat oleh pengguna (contoh: pendekatan input dan format output) (Pressman 2001).

3 Customer Test Drives Mock-up

Customer test drives mock-up merupakan

tahap evaluasi yang dilakukan oleh pengguna untuk mengetahui apakah prototype yang dibangun telah sesuai dengan kebutuhan pengguna (Pressman 2001). Tahap ini dilakukan melalui proses pengujian. Pengujian pada penelitian ini dilakukan dengan menggunakan metode black box. Metode pengujian black box menitikberatkan pengujian sistem pada fungsi kebutuhan software. Model pengujian ini tidak memperhatikan bagaimana proses yang terjadi di dalam sistem, melainkan hanya mempertimbangkan hasil keluaran saja (Pressman 2001).

Sistem yang telah selesai dibangun selanjutnya dihitung tingkat akurasinya. Sejumlah kata benda dimasukkan ke dalam skenario pengujian untuk selanjutnya dihitung tingkat akurasinya. Penghitungan akurasi dilakukan dengan menghitung jumlah kata yang dikenali dan sesuai dengan pola word graph.

Akurasi=Ʃ Kata yang benar

Ʃ Kata yang diuji x 100%

HASIL DAN PEMBAHASAN

Analisis Pola Word Graph Kata Benda

Penelitian ini didasarkan pada penelitian Saleh (2009). Hasil penelitian Saleh (2009) adalah 20 pola pembentukan word graph kata benda berikut:

1 Pola kata benda dasar (KBD).

2 Pola pe-kata kerja (KK) 1, yang bermakna orang yang KK.

3 Pola pe-KK 2, yang bermakna orang yang KK, sesuatu yang KK atau alat KK.

4 Pola pe-KK 3, yang bermakna orang atau sesuatu yang di-KK atau dijadikan KK. 5 Pola pe-kata benda (KB) 1, yang bermakna

orang yang berhubungan dengan KB. 6 Pola pe-KB 2, yang bermakna orang atau

sesuatu yang berhubungan dengan KB. 7 Pola pe-kata sifat (KS) 1, yang bermakna

12 Pola kata bilangan.

13 Pola pe-KK-an 1, yang bermakna perbuatan

Berdasarkan penelitian Saleh (2009), pola-pola pembentukan word graph kata benda dikelompokkan berdasarkan imbuhan dan kata dasar dari suatu kata benda. Setiap jenis imbuhan dan kata dasar yang membentuk suatu kata memiliki makna tertentu. Tidak semua pola

word graph yang dihasilkan pada penelitian

(14)

Penambahan Modul Word Graph Kata Benda pada KG_EDITOR

Proses penambahan modul word graph kata benda menggunakan metode pengembangan prototype. Proses ini dilakukan sebanyak dua kali iterasi. Iterasi pertama merupakan proses pembuatan sistem secara keseluruhan. Iterasi kedua merupakan perbaikan atas kesalahan yang terjadi pada iterasi pertama. Perbaikan sistem dilakukan berdasarkan hasil pengujian dan evaluasi yang dilakukan oleh pengguna.

1 Iterasi Pertama

1.1 Listen to Customer

Tahap pertama penambahan modul word

graph kata benda adalah mendefinisikan

keinginan pengguna. Tahapan ini dilakukan untuk mendapatkan spesifikasi KG_EDITOR berdasarkan kebutuhan pengguna. Analisis terdiri atas deskripsi umum sistem, kebutuhan sistem, batasan sistem, karakteristik pengguna, dan deskripsi proses sistem.

1.1.1 Deskripsi Umum

KG_EDITOR merupakan sebuah tools yang digunakan untuk menganalisis kata menggunakan metode KG (Walayatullah 2011). KG_EDITOR dikembangkan menggunakan bahasa pemrograman Java berbasis desktop dengan tujuan memperbaiki kekurangan dari sistem BogorDelftConstruct yang dikembangkan melalui penelitian sebelumnya. Sistem BogorDelftConstruct dikembangkan dengan bahasa pemrograman MATLAB yang bersifat close platform. Oleh karena itu, KG_EDITOR dikembangkan dengan bahasa pemrograman Java karena Java bersifat open source. KG_EDITOR membutuhkan sebuah textfield agar pengguna dapat memasukkan input sehingga dapat diproses oleh sistem. Selain itu, sistem ini juga membutuhkan data yang terdapat di dalam Kamus Besar Bahasa Indonesia (KBBI) untuk dimasukkan ke dalam database. KBBI berfungsi dalam proses pengecekan input

dan stemming kata untuk memperoleh word

graph yang sesuai dengan pola kata benda yang

telah disimpan di dalam sistem. Fungsi stemming juga dibutuhkan oleh sistem ini untuk menangani input kata berimbuhan. Selain itu,

KG_EDITOR ini juga membutuhkan fungsi-fungsi yang akan digunakan untuk menampilkan pola-pola word graph kata benda pada kanvas.

1.1.3 Batasan Sistem

Batasan-batasan yang terdapat pada sistem ini adalah sebagai berikut:

Input kata yang dapat diproses dalam sistem

ini hanya berupa kata benda tunggal (satu kata).

 Proses stemming manual tidak berlaku untuk kata-kata yang mengandung sisipan dan imbuhan asing.

 Sistem hanya mengimplementasikan 19 pola word graph kata benda dari 20 pola yang dihasilkan pada penelitian Saleh (2009). Pola word graph kata benda yang digunakan dalam penelitian ini dapat dilihat pada Lampiran 1.

 Sistem hanya dapat menampilkan word

graph kata benda, namun tidak dapat

menyimpan dan memodifikasi hasil dari pembentukan word graph.

 Penggambaran relasi hanya dapat digambarkan secara vertikal dan horizontal.

1.1.4 Sasaran Pengguna

Pengguna sistem KG_EDITOR bukan orang awam yang tidak mengerti konsep KG, khususnya word graph, karena KG_EDITOR bukanlah sistem untuk mempelajari konsep KG. Sistem ini dibuat untuk orang-orang yang telah mengerti konsep KG karena output dari sistem ini adalah berupa word graph yang merupakan bagian dari konsep KG.

1.1.5 Deskripsi Proses Sistem

Tampilan awal KG_EDITOR ketika pertama kali dijalankan berupa kanvas kosong sebagai tampilan default sistem. Operasi pembentukan

word graph kata benda dimulai dengan memilih

menu „Modul‟ yang terdapat di sudut kiri atas sistem, kemudian memilih submenu „Kata Benda‟. Sebuah dialog box muncul sebagai respon pemilihan submenu „Kata Benda‟.

Dialog box digunakan sebagai media bagi

pengguna untuk memasukkan input yang berupa kata benda tunggal. Input kemudian diproses oleh sistem untuk melalui beberapa tahapan pembentukan word graph kata benda. Word

graph yang dianggap sesuai bagi input

(15)

kata benda dapat dilihat melalui diagram alir sistem yang terdapat pada Lampiran 2.

1.2 Build Mock-up

Pada tahap ini, dilakukan proses perancangan dan implementasi berdasarkan spesifikasi yang diinginkan oleh pengguna. Perancangan dan implementasi terdiri atas dua jenis, yaitu perancangan dan implementasi secara fungsional dan antarmuka.

1.2.1 Perancangan Fungsional

Perancangan fungsional meliputi proses pembangkitan word graph kata benda yang didasarkan pada pola word graph kata benda hasil penelitian Saleh (2009). Proses pembangkitan modul word graph kata benda meliputi praproses, pengecekan KBBI,

stemming, penentuan pola word graph kata

benda, dan pembangkitan word graph kata benda. Berdasarkan spesifikasi pengembangan modul word graph kata benda, dibuatlah use

„Modul‟. Terdapat beberapa pilihan submenu di

dalam menu „Modul‟. Pengguna memilih

submenu „Kata Benda‟ untuk mengaktifkan

modul word graph kata benda. Selain itu, pengguna juga dapat memasukkan input sesuai keinginan melihat bentuk word graph yang sesuai dengan input kata yang diberikan. Gambar 2 menjelaskan deskripsi modul word

graph kata benda yang telah digambarkan

dalam use case. Gambaran mengenai class

diagram dan sequence diagram dari sistem

modul word graph kata benda dapat dilihat pada Lampiran 3 dan Lampiran 4.

 Praproses

Tahap praproses dilakukan untuk membatasi input kata pada sistem. Pada tahap ini, kata yang dimasukkan akan diperiksa apakah bersifat tunggal atau tidak. Jika kata yang dimasukkan bersifat tunggal, kata tersebut akan diproses ke tahap selanjutnya. Tahap ini juga digunakan untuk memeriksa nilai masukan, apakah berupa karakter atau tidak.

 Pengecekan KBBI

Input yang telah melalui tahap praproses akan dilakukan pengecekan apakah input tersebut termasuk dalam jenis kata benda dan terdapat pada KBBI yang disesuaikan atau tidak. Input yang berupa kata benda dan terdaftar di dalam KBBI yang disesuaikan kemudian akan melalui tahap stemming KBBI,

sementara jika tidak terdaftar dalam KBBI akan melalui tahap stemming manual.

Gambar 2 Use case diagram untuk modul word dasarnya melalui proses stemming KBBI. Parameter-parameter tersebut kemudian digunakan untuk memperoleh pola word graph kata benda yang sesuai dengan input. Proses

stemming yang dilakukan sistem disesuaikan

dengan pola pembentukan word graph kata benda pada penelitian Saleh (2009).

Stemming Manual

Input yang telah melalui tahap pengecekan KBBI, namun tidak ditemukan di dalam KBBI, akan di-stemming secara manual. Stemming manual dilakukan untuk memperoleh kata dasar dan imbuhan. Jika terdapat lebih dari satu kata dasar, sistem akan mengambil kata dasar yang pertama kali ditemukan.

 Penentuan Pola Word Graph Kata Benda Proses stemming, baik stemming KBBI maupun stemming manual, menghasilkan data yang berisi imbuhan, kata dasar, dan jenis kata dasar. Data tersebut kemudian digunakan untuk menentukan pola word graph kata benda. Penentuan pola dilakukan dengan mencocokkan imbuhan (awalan dan akhiran) dengan jenis kata dasar yang diperoleh pada proses stemming dengan data pada database.

 Pembangkitan Word Graph Kata Benda Proses selanjutnya setelah pola word graph kata benda berhasil ditentukan adalah pembangkitan word graph kata benda. Pola

word graph yang sesuai akan digambarkan dan

(16)

juga akan menggambarkan input dan kata dasarnya dalam satu kesatuan pola word graph kata benda. Pola-pola yang dibangkitkan merupakan hasil kombinasi dari komponen-komponen word graph seperti token, binary

relationship, dan frame relationship.

Komponen-komponen tersebut telah dibuat pada penelitian sebelumnya oleh Walayatullah (2011) dan digunakan dalam penelitian ini untuk membentuk pola-pola word graph kata benda.

1.2.2 Perancangan Antarmuka

Antarmuka KG_EDITOR yang dirancang adalah sebuah kanvas, yang akan menjadi media untuk menampilkan word graph, dan menu bar sebagai menu utama yang terdapat pada menu items „File‟ dan „Modul‟.

1.2.3 Perancangan Database

Database yang digunakan pada penelitian

ini bernama „kamus‟. Database „kamus‟ terdiri atas dua buah tabel, yaitu „entry‟ dan field„EntryId‟, „Word‟, „Category‟, „Stem‟, dan „Qty‟. Field „EntryId‟ merupakan primary key pada tabel „entry‟ sementara field„Word‟ berisi kata dalam bahasa Indonesia, baik kata dasar maupun kata berimbuhan. Field „Category‟ berisi jenis kata dasar yang berupa kata benda (n), kata kerja (v), kata sifat (a), dan sebagainya. Field „Stem‟ berisi kata dasar dari kata yang berada di dalam field„Word‟. Field„Qty‟ berisi sejumlah nilai untuk menentukan suatu kata termasuk pada word graph kata benda tertentu. Field ini bermanfaat untuk menentukan pola word graph bagi kata benda yang memiliki imbuhan serta jenis kata dasar yang sama persis. Berikut ini merupakan contoh isi dari tabel

„entry‟ yang ditunjukkan pada Tabel 1.

Tabel 1 Contoh isi tabel „entry‟ pada database „kamus‟

Tabel „polabenda‟ digunakan untuk proses

pengecekan pola pembentukan word graph kata benda. Tabel tersebut berisi enam field, yaitu

„PolaID‟, „Awalan‟, „KategoriKD‟, „Akhiran‟, „Qty‟, dan „Pola‟. Contoh dari tabel „polabenda‟ dapat dilihat pada Tabel 2.

Tabel 2 Contoh isi tabel „polabenda‟

PolaID Awalan KategoriKD Akhiran Qty Pola

11 pe v null 1 2

(17)

sebanyak satu record. Record tersebut memiliki atribut „EntryID‟, „Word‟, „Category‟, „Stem‟,

dan „Qty‟. Jika input tidak terdaftar di dalam KBBI, input tersebut akan langsung masuk ke proses stemming manual.

Contoh input yang diberikan pengguna

adalah „pertanian‟ yang telah lolos tahap

praproses. Input ini kemudian akan dicek keberadaannya pada KBBI yang disesuaikan. Pertama, sistem akan mengecek keberadaan input „pertanian‟ di dalam tabel „entry‟ dengan menggunakan kueri seperti pada Gambar 3.

Gambar 3 Kueri pengecekan KBBI.

Berdasarkan kueri tersebut, sistem akan mencari keberadaan input „pertanian‟ di dalam field „Word‟ pada tabel „entry‟ dengan „Category‟ yang digunakan adalah „n‟ (kata benda). Hasil

pencarian menunjukkan bahwa „pertanian‟

terdaftar di dalam tabel „entry‟. Sistem akan mengambil data sebanyak satu record. Hasil dari kueri di atas ditunjukkan pada Tabel 3.

Tabel 3 Data hasil kueri dengan input „pertanian‟ untuk pengecekan

KBBI diproses oleh class StemKBBI sementara input yang tidak terdaftar di dalam KBBI akan dilakukan proses stemming manual yang melibatkan beberapa class. Proses stemming KBBI pada penelitian ini berfungsi untuk memotong input kata, mengambil kata dasar dari input tersebut, serta mencari jenis dari kata dasar. Hasil dari pemotongan input kata adalah berupa imbuhan dan kata dasar.

Contoh input yang diberikan pengguna

adalah „pertanian‟ yang telah terdeteksi di

dalam KBBI. Kata „pertanian‟ akan masuk ke dalam proses stemmingKBBI. Kata „pertanian‟ pada proses ini pertama kali akan diambil kata dasar, jenis input kata, dan nilai qty yang

terdapat di dalam KBBI yang disesuaikan (tabel

„entry‟). Proses selanjutnya adalah pengecekan terjadinya peluruhan pada kata dasar. Kata

„pertanian‟ merupakan contoh input kata yang kata dasarnya tidak meluruh sehingga sistem akan langsung memotong kata tersebut untuk mengambil awalan dan akhirannya, yaitu „per‟

dan „an‟. Proses selanjutnya setelah diperoleh awalan dan akhiran adalah pencarian jenis kata dasar dari input. Kata „pertanian‟ memiliki kata dasar „tani‟. Kata „tani‟ akan dicari jenis katanya oleh sistem. Proses pencarian jenis kata dasar dilakukan dengan menggunakan kueri yang dideskripsikan pada Gambar 4.

Gambar 4 Kueri pencarian jenis kata dasar.

Parameter input pada kueri tersebut merepresentasikan kata dasar. Berdasarkan kueri tersebut dapat diketahui bahwa untuk mencari jenis kata dasar maka sistem akan

mencari kata „tani‟ di dalam tabel „entry‟ yang

memiliki nilai sama pada field „Word‟ dan „Stem‟, yaitu yang bernilai „tani‟. Sistem

kemudian mengambil jenis kata dasar dari hasil kueri tersebut. Hasil dari proses stemming KBBI dengan contoh input kata „pertanian‟ dapat dilihat pada Tabel 4.

Tabel 4 Hasil dari proses stemming KBBI menggunakan input kata benda

(18)

Contoh stemming KBBI untuk input kata yang kata dasarnya meluruh terdapat pada kata

„pemotongan‟. Kata ini dideteksi sebagai kata

yang mengalami peluruhan karena kata dasar

„potong‟ tidak berada di dalam kata „pemotongan‟ sehingga diberi nilai -1. Berbeda

dengan kata „pertanian‟, kata dasar „tani‟

merupakan bagian dari kata „pertanian‟ sehingga tidak diberi nilai -1. Proses stemming selanjutnya adalah pemotongan kata dasar

„potong‟ menjadi „otong‟. Kata dasar „potong‟

diperoleh melalui pencarian kata dasar di dalam

tabel „entry‟. Kata „potong‟ kemudian dipotong sebanyak satu huruf dari depan menjadi „otong‟ dan disimpan sementara pada suatu variabel. Pemotongan tersebut dilakukan untuk mendapatkan awalan dan akhiran kata. Peluruhan kata juga berlaku untuk suatu kata yang kata dasarnya diawali oleh huruf k, p, t, dan s. Kata dasar „otong‟ yang merupakan

bagian dari kata „pemotongan‟ selanjutnya

dilakukan proses pemotongan untuk mengambil awalan dan akhiran. Proses stemming KBBI untuk kata pemotongan menghasilkan awalan

„pem‟ dan akhiran „an‟. Hasil dari proses

stemming KBBI dengan contoh input kata

„pemotongan‟ dapat dilihat pada Tabel 5.

Tabel 5 Hasil dari proses stemming KBBI menggunakan input kata benda

„pertanian‟ KBBI yang disesuaikan akan dilakukan stemming secara manual. Proses ini dilakukan untuk memperoleh imbuhan dan kata dasar.

Stemming manual yang dilakukan oleh modul

word graph kata benda dikhususkan untuk jenis

kata benda saja karena proses ini mengacu pada bentuk-bentuk imbuhan yang terdapat pada pola pembentukan word graph kata benda dalam penelitian Saleh (2009).

Stemming manual diawali oleh proses

pencarian bentuk akhiran yang sesuai. Proses ini dilakukan oleh class Akhiran1. Bentuk akhiran yang terdapat pada proses ini adalah bentuk

akhiran -an. Input yang memiliki akhiran -an akan dipotong. Hasil pemotongan tersebut selanjutnya akan dianggap sebagai sebuah kata dasar. Kata tersebut kemudian akan dicek

keberadaannya di dalam tabel „entry‟ oleh class CekKBBI. Jika kata dasar tersebut terdaftar di

dalam tabel „entry‟, kata tersebut akan dianggap sebagai kata dasar. Namun, jika tidak, sistem akan menduga bahwa kata tersebut mengandung awalan. Nilai null pada akhiran akan diberikan jika input tidak mengandung akhiran -an. Nilai null pada akhiran menandakan bahwa input tidak mengalami pemotongan akhiran sehingga nilai input tidak berubah. Proses tersebut dapat dilihat pada Gambar 5.

Contoh kata yang memiliki akhiran -an dan

tidak terdaftar di dalam tabel „entry‟ adalah kata „pendugaan‟. Kata „pendugaan‟ akan dipotong

oleh class Akhiran menjadi kata „penduga‟ dan berakhiran -an. Kata „penduga‟ selanjutnya akan dicek keberadaannya di dalam tabel

„entry‟ oleh class CekKBBI. Sistem akan

mengecek apakah kata „penduga‟ merupakan

kata dasar atau bukan. Hasil pengecekan

menunjukkan bahwa kata „penduga‟ tidak

termasuk dalam daftar kata dasar sehingga sistem menduga bahwa kata „penduga‟ memiliki

awalan. Oleh karena itu, kata „penduga‟ akan

masuk ke tahap selanjutnya, yaitu proses pencarian awalan yang sesuai.

11

public class Akhiran1 { ....

public Akhiran1(String input) { ....

if("an".equals(akh)){ akhiran=akh;

Gambar 5 Proses pencarian akhiran pada class Akhiran1.

(19)

dengan aturan pembentukan awalan pada kata benda. Jika hasil pemotongan tersebut termasuk dalam salah satu aturan, sistem akan mengembalikan kedua nilai hasil pemotongan tersebut sebagai output. Sebaliknya, jika hasil pemotongan tersebut tidak cocok dengan aturan-aturan yang ada, sistem akan melakukan pemotongan terus menerus dengan batas tertentu hingga diperoleh awalan dan kata dasar yang paling sesuai dengan aturan pembentukan awalan. Class Awalan akan mengembalikan nilai null untuk awalan dan kata dasar menjadi tetap seperti sebelum awalan dipotong jika tidak ada satupun aturan yang sesuai dengan hasil pemotongan kata. Aturan pembentukan awalan terdiri atas dua parameter, yaitu awalan dan kata dasar.

Contoh kata yang memiliki awalan adalah

kata „penduga‟ yang merupakan hasil

pemotongan akhiran -an dari kata „pendugaan‟. Kata tersebut merupakan kata yang memiliki awalan pen- dan huruf pertama dari kata dasar

„duga‟ adalah „d‟. Kedua nilai tersebut termasuk

dalam salah satu aturan pembentukan awalan pada kata benda. Oleh karena itu, class Awalan akan mengembalikan nilai „pen‟ dan „duga‟

sebagai awalan dan kata dasar dari kata

„penduga‟. Gambar 6 menggambarkan contoh

aturan pembentukan awalan pada kata benda.

11

34 public Awalan(String input) { ....

64 if(("pen".equals(aw)) && kd1.matches("[cdjtz]+")){ 65 awalan=aw; 66 kdasar=kd; }

....

68 if(("pem".equals(aw) )&& kd1.matches("[bfvp]+")){

Gambar 6 Contoh aturan pembentukan awalan pada class Awalan.

Tahap ketiga dari proses stemming manual adalah proses pencarian kata dasar di dalam KBBI yang disesuaikan. Kata yang telah melalui proses penentuan akhiran dan awalan selanjutnya akan masuk ke tahap ini untuk menentukan kata dasar dari kata tersebut. Proses ini dilakukan oleh class Stemm. Kata dasar yang diperoleh dari proses kedua, yaitu proses pencarian awalan, akan dicari keberadaannya di

dalam tabel „entry‟ oleh class CekKBBI. Kata

dasar yang ditemukan di dalam tabel „entry‟

kemudian akan dikembalikan sebagai output kata dasar beserta awalan dan akhiran yang diperoleh dari proses sebelumnya. Kata dasar yang tidak terdapat di dalam tabel „entry‟ akan dikembalikan nilai input awalnya seperti pada saat sebelum mengalami pemotongan akhiran.

Contoh kata dari proses sebelumnya yaitu

„pendugaan‟. Hasil pemotongan akhiran adalah awalan untuk kata tersebut adalah akhiran -an,

awalan „pen‟, dan kata dasar „duga‟. Kata dasar „duga‟ yang diperoleh dari proses pencarian

awalan selanjutnya akan dicek keberadaannya

di dalam tabel „entry‟. Hasil pencarian menunjukkan bahwa kata „duga‟ terdapat di dalam tabel „entry‟ sehingga sistem menentukan

kata „duga‟ sebagai kata dasar dari kata

„pendugaan‟.

Sebagian kata benda mengalami proses peluruhan. Kata benda yang meluruh masuk ke proses stemming meluruh setelah melalui tahap ketiga, yaitu proses pencarian kata dasar. Proses

stemming meluruh diawali dengan proses

pencarian akhiran, kemudian pencarian awalan, dan proses terakhir adalah pencarian kata dasar.

Proses pencarian akhiran untuk kata benda yang meluruh sama seperti proses pencarian untuk kata benda yang tidak meluruh. Sistem akan mengecek apakah input mengandung akhiran -an atau tidak, kemudian sistem akan mengecek keberadaan kata dasar hasil pemotongan akhiran ke dalam tabel „entry‟. Contoh kata benda yang meluruh dan tidak

terdapat di dalam tabel „entry‟ adalah „pemecahan‟. Kata „pemecahan‟ pertama kali

akan masuk ke class Akhiran1 untuk dilakukan proses pencarian akhiran yang sesuai. Proses tersebut menunjukkan bahwa kata „pemecahan‟ memiliki akhiran -an sehingga kata tersebut

dipotong menjadi „pemecah‟, lalu sistem akan

menyimpan akhiran -an dari hasil pemotongan

tersebut. Kata „pemecah‟ selanjutnya akan

masuk ke proses pencarian awalan yang sesuai.

(20)

adalah pengecekan terhadap isi variabel kd1 dan kd2, apakah masing-masing variabel tersebut adalah huruf vokal (a, i, u, e, o) atau bukan. Hasil pengecekan huruf vokal terhadap masing-masing variabel tersebut adalah berupa nilai boolean. Variabel yang berisi huruf vokal akan diberi nilai true, sementara variabel yang berisi selain huruf vokal akan diberi nilai false. Proses keempat adalah penentuan awalan dan kata dasar yang paling sesuai berdasarkan aturan pembentukan awalan. Hasil pemotongan yang berupa awalan, kata dasar, serta nilai boolean hasil dari pengecekan nilai variabel kd1 dan kd2 kemudian akan dijadikan sebagai parameter penentu nilai awalan dan akhiran yang akan diambil. Keempat proses tersebut dilakukan sebanyak lima iterasi hingga diperoleh awalan dan kata dasar yang paling sesuai dengan salah satu aturan pembentukan awalan untuk kata yang meluruh. Misalnya, jika nilai aw adalah

„pem‟ dan variabel a bernilai true, nilai aw dianggap sebagai awalan dan nilai kd dianggap sebagai kata dasar dengan ditambahkan huruf

„t‟ pada awal kata. Gambar 7 mengilustrasikan

contoh aturan pembentukan awalan dan kata dasar untuk kata yang meluruh.

11

public class Luluh { ....

else if (("mem".equals(aw) || "pem".equals(aw)) && a){

Gambar 7 Contoh aturan pembentukan awalan dan kata dasar pada class Luluh.

Kata „pemecah‟ yang telah lolos dari tahap

pencarian akhiran selanjutnya akan masuk ke proses pencarian awalan. Tahap pertama adalah pemotongan huruf pertama dari kata „pemecah‟,

yaitu „p‟. Huruf „p‟ kemudian disimpan di dalam variabel aw sebagai awalan, sementara huruf-huruf sisanya, yaitu „emecah‟ disimpan di dalam variabel kd sebagai kata dasar. Tahap kedua adalah pemotongan huruf pertama dan

kedua dari kata dasar „emecah‟. Huruf pertama dari kata dasar „emecah‟ adalah „e‟, sementara huruf keduanya adalah „m‟. Kedua huruf ini

masing-masing disimpan didalam variabel kd1 dan kd2. Tahap ketiga adalah pengecekan huruf

vokal terhadap variabel kd1 dan kd2. Dilihat dari isi kedua variabel tersebut, kd1 berisi huruf

vokal „e‟ sehingga diberi nilai true, sedangkan kd2 berisi huruf konsonan „m‟ sehingga diberi nilai false. Kedua nilai boolean tersebut masing-masing disimpan di dalam variabel a dan b. Proses keempat adalah penentuan kata dasar dan awalan. Berdasarkan nilai pada masing-masing variabel aw, kd, a, dan b, dapat disimpulkan bahwa tidak ada nilai parameter yang sesuai dengan aturan pembentukan awalan. Class Luluh kemudian akan menambah iterasi hingga diperoleh nilai yang sesuai pada iterasi ke-4. Nilai-nilai variabel yang diperoleh pada iterasi ke-4 yaitu aw=‟pem‟, kd=‟ecah‟, kd1=‟e‟, kd2=‟c‟, a=true, dan b=false. Nilai-nilai tersebut sesuai dengan aturan kedua yang mensyaratkan nilai aw=‟pem‟ dan a=true sehingga diperoleh awalan „pem‟ dan kata dasar „pecah‟. Urutan proses stemming manual dapat dilihat pada Lampiran 6.

 Penentuan Pola Word Graph Kata Benda Kata yang telah berhasil melalui tahap

stemming, baik stemming KBBI maupun

stemming manual, selanjutnya akan masuk ke proses pengecekan pola word graph kata benda. Proses pengecekan pola dilakukan oleh class PolaBenda dengan mencocokkan antara output dari proses stemming dengan data pada tabel

„polabenda‟ dalam database „kamus‟. Output yang dihasilkan dari proses stemming di antaranya adalah kata, kata dasar, jenis input, jenis kata dasar, awalan, akhiran, dan quality. Empat dari tujuh output yang dihasilkan melalui proses stemming akan digunakan sebagai parameter untuk menentukan pola yang sesuai. Penentuan pola dilakukan dengan menggunakan kueri seperti pada Gambar 8.

Gambar 8 Kueri penentuan pola word graph kata benda.

Beberapa pola pembentukan word graph kata benda dipecah menjadi beberapa bagian karena memiliki makna yang berbeda walaupun strukturnya sama. Misalnya, pola pe-Kata Kerja (KK) dipecah menjadi tiga bagian, yaitu pe-KK 1, pe-KK 2, dan pe-KK 3. Ketiga pola tersebut memiliki imbuhan dan jenis kata dasar yang sama persis, yaitu awalan ‘pe‟ dengan jenis kata dasarnya adalah kata kerja, namun ketiga pola tersebut memiliki arti yang berbeda. Pola pe

-KK 1 memiliki makna “orang yang -KK”,

(21)

sementara pola pe-KK 2 memiliki makna

“orang yang KK, sesuatu yang KK, atau alat

KK”. Hal berbeda juga terjadi pada pola pe-KK

3 yang memiliki makna “orang atau sesuatu

yang di-KK atau dijadikan KK”. Perbedaan makna tersebut menyebabkan bentuk word

graph yang dihasilkan untuk masing-masing

pola berbeda. Pola lain yang dipecah adalah pola pe-KB. Pola pe-KB dibedakan menjadi pola pe-KB 1 dan pola pe-KB 2. Begitu juga dengan pola pe-KS, pola pe-KK-an, dan pola pe-KS-an yang masing-masing dibedakan menjadi dua bentuk pola.

Parameter „Qty‟ merupakan parameter pembeda yang menentukan bentuk word graph bagi suatu kata yang memiliki struktur sama, namun maknanya berbeda. Parameter „Qty‟ diberi nilai satu sampai tiga, disesuaikan dengan jumlah perbedaan makna untuk setiap pola pembentukan. Misalnya, pola pe-KS yang dibagi menjadi pola pe-KS 1 dan pola pe-KS 2. Nilai „Qty‟ yang diberikan adalah „1‟ untuk pola pe-KS 1 dan „2‟ untuk pola pe-KS 2. Nilai yang sama juga diberikan kepada pola lainnya.

Contoh proses penentuan pola word graph kata benda untuk kata yang memiliki struktur sama, namun maknanya berbeda terdapat pada

kata benda „penyayang‟ dan „penyejuk‟. Kata „penyayang‟ dan „penyejuk‟ memiliki imbuhan

dan jenis kata dasar yang sama, yaitu „peny‟ dan kata sifat (a). Berdasarkan KBBI, kedua kata ini memiliki makna yang berbeda. Kata

„penyayang‟ bermakna “orang yang memiliki

sifat belas kasih”, sedangkan kata „penyejuk‟ bermakna “alat untuk menyejukkan”.

Berdasarkan perbedaan tersebut, kata

„penyayang‟ masuk ke Pola pe-KS 1 yang

Tahap ini merupakan visualisasi pola word graph yang telah ditentukan. Output dari proses penentuan pola word graph kata benda adalah nama pola word graph kata benda. Nama pola tersebut kemudian akan diperiksa keberadaannya oleh class PolaKataBenda. Nama pola adalah berupa nilai satu hingga 19, sesuai dengan jumlah pola word graph kata benda yang diimplementasikan. Jika nama pola tersebut terdapat di dalam class

PolaKataBenda, sistem akan menampilkan

bentuk word graph-nya. Jika tidak ada, sistem akan memunculkan pesan peringatan. Misalnya,

output yang dihasilkan dari tahap penentuan

pola word graph untuk kata „pertanian‟ adalah „15‟. Hal ini bermakna bahwa kata „pertanian‟

termasuk ke dalam pola „15‟. Sistem kemudian memeriksa keberadaan pola „15‟ ada di dalam classPolaKataBenda. Karena pola tersebut ada, sistem lalu memanggil class KataBenda15 yang berisi aturan-aturan untuk menggambarkan pola pe-KB-an 1 dan memvisualisasikan bentuk

word graph-nya. Bentuk kode program untuk

class PolaKataBenda dan KataBenda15 dapat dilihat pada Gambar 9 dan Gambar 10.

18

public class PolaKataBenda { public String kata;

....

KataBenda19 KB19;

public PolaKataBenda(String kata){

KB1.drawKataBenda1(gd); }

.... else{

gd.drawString("Pola tidak ditemukan.", 10, 20); }}

Gambar 9 Kode program pada class PolaKataBenda.

public class KataBenda15 { Ali AK, AA;

....

public KataBenda15(int x, int y, String kata){

....

AK = new Ali(x+60, y+30); .... }

public void drawKataBenda15 (Graphics2D gd){

AK.drawAliKanan(gd); FP.drawFrameFokus(gd); ....

}}

Gambar 10 Kode program pada class KataBenda15.

Setiap bentuk pola word graph kata benda digambarkan dalam satu class sehingga terdapat 19 class pola pembentukan word graph kata benda pada penelitian ini, yaitu mulai dari class

(22)

Penggambaran pola word graph seperti pada Gambar 10. Penggambaran pola word graph ditentukan oleh variabel integer yang menyimpan nilai koordinat untuk setiap komponen word graph. Variabel ini yang akan menentukan letak penggambaran untuk setiap komponen tersebut pada sistem. Setiap komponen word graph yang telah ditentukan letak penggambarannya kemudian akan digambarkan dalam bentuk dua dimensi. Sistem akan menampilkan pesan peringatan ketika ia tidak dapat mengenali pola pembentukan word graph kata benda dari input yang diberikan pengguna. Hasil pembangkitan Pola 15 dari contoh input „pertanian‟ dapat dilihat pada Gambar 11.

Gambar 11 Hasil pembangkitan Pola 15 dengan contoh input„pertanian‟.

1.2.5 Implementasi Antarmuka

Antarmuka perangkat lunak KG_EDITOR terdiri atas dua bagian, yaitu menu bar dan Bagian panel kanvas digunakan sebagai media untuk memvisualisasikan bentuk word graph kata benda. Tampilan awal kanvas pada saat perangkat lunak pertama kali dijalankan adalah berupa kanvas kosong berwarna putih. Bentuk antarmuka untuk menu bar dan panel kanvas dapat dilihat pada Gambar 12, sedangkan contoh antarmuka panel kanvas yang dapat menampilkan sebuah bentuk word graph dapat dilihat pada Gambar 13.

Input dialog box merupakan antarmuka yang

muncul ketika pengguna memilih salah satu sub menu pada menu „Kamus‟. Input dialog box digunakan sebagai media untuk memasukkan input kata. Gambaran mengenai input dialog box diilustrasikan pada Gambar 14.

Gambar 12 Bentuk antarmuka menu bar.

Gambar 13 Bentuk antarmuka panel kanvas.

Gambar 14 Bentuk tampilan input dialog box untuk kata benda.

KG_EDITOR juga menyediakan fasilitas shortcut sebagai pilihan lain bagi pengguna yang ingin mengaktifkan salah satu sub menu pada menu „Kamus‟. Shortcut yang digunakan untuk modul word graph kata benda pada KG_EDITOR adalah dengan menekan tombol CTRL+B pada keyboard.

KG_EDITOR untuk kata benda akan memberikan suatu peringatan untuk memberitahu pengguna jika terjadi kesalahan pada input kata atau tidak ditemukannya pola yang sesuai bagi input kata. Peringatan-peringatan tersebut ditampilkan dalam bentuk dialog box.

1.2.6 Lingkungan Implementasi

(23)

a Lingkungan perangkat keras

Processor AMD Turion(tm) X2

Dual-Core Mobile RM-74 2.20 GHz  RAM 2 GB

 HDD 250 GB  Monitor

Keyboard dan mouse

b Lingkungan perangkat lunak

 Windows 7 Professional sebagai sistem operasi

 Netbeans 6.8 sebagai IDE (Integrated

Development Environment)

 XAMPP sebagai servercontrol panel  Java 6.0 sebagai bahasa pemrograman 1.3 Customer Test Drives Mock-up

Tahap ini merupakan tahap evaluasi sistem. Tahap ini dilakukan melalui proses pengujian menggunakan metode black box. Pengguna menguji sistem dengan memasukkan berbagai kemungkinan input untuk mengetahui apakah sistem memberikan output yang sesuai tanpa memerhatikan proses yang terjadi di dalamnya. Hasil pengujian menunjukkan kesesuaian antara hasil yang seharusnya dengan hasil yang didapat melalui proses pengujian. Hasil tersebut kemudian dievaluasi oleh pengembang. Setiap kekurangan sistem yang ditemukan dalam tahap ini selanjutnya diperbaiki hingga kebutuhan pengguna dapat dipenuhi.

Pengujian sistem dilakukan dengan menggunakan 173 kata benda uji yang terdiri atas 4-10 kata uji untuk setiap bentuk pola word

graph kata benda. Hasil pengujian

menunjukkan terdapat 9 kata benda uji yang tidak dapat ditemukan bentuk word graph-nya. Beberapa kata tersebut di antaranya adalah

„pemecahan‟, „pendugaan‟, „penjaring‟, „penyemangat‟, „pengharum‟, „binaan‟, „aliran‟, „kritikan‟, dan „pendamaian‟. Hal ini terjadi

Hasil stemming manual selalu menghasilkan nilai null untuk „Qty‟ sehingga sistem tidak dapat menentukan jenis pola untuk kata tersebut. Misalnya, kata „pemecahan‟ yang tidak

terdaftar di dalam KBBI. Kata „pemecahan‟

seharusnya termasuk dalam pola pe-KK-an 1

yang bermakna “perbuatan atau hal memecahkan”, namun karena nilai „Qty‟ yang

dihasilkan dari proses stemming manual adalah null, sistem tidak dapat mengenali pola untuk

kata „pemecahan‟. Oleh karena itu, output yang dihasilkan adalah berupa pesan peringatan

bahwa pola tidak ditemukan. Output dari

pengujian terhadap kata „pemecahan‟ dapat

dilihat pada Gambar 15.

Gambar 15 Output dari pengujian dengan input kata „pemecahan‟.

2 Iterasi Kedua

Iterasi kedua dilakukan untuk memperbaiki kekurangan-kekurangan sistem yang terdapat pada iterasi pertama. Kekurangan yang diperbaiki dalam iterasi kedua ini yaitu dalam tahap penentuan pola word graph kata benda. 2.1 Listen to Customer

Berdasarkan hasil evaluasi yang diperoleh dari iterasi pertama, pengguna menginginkan agar pengembang melakukan perbaikan terhadap kekurangan yang dihasilkan pada iterasi pertama. Pengguna menginginkan agar pengembang melakukan penentuan pola word

graph untuk sejumlah kata yang melalui proses

stemming manual. Penentuan pola ini berlaku untuk kata-kata yang memiliki struktur imbuhan dan jenis kata yang sama persis, namun memiliki makna yang berbeda.

2.2 Revise Mock-up

Perbaikan terhadap sistem pada iterasi kedua dilakukan sesuai dengan permintaan pengguna pada tahap listen to customer. Tahap ini merupakan perbaikan terhadap proses penentuan pola word graph kata benda. Penentuan pola dilakukan dengan memberikan nilai default terhadap pola bagi sejumlah kata yang memiliki struktur imbuhan dan jenis kata yang sama, namun maknanya berbeda. Perbaikan ini dilakukan untuk mencegah tidak ditemukannya bentuk word graph suatu kata benda yang tidak terdaftar di dalam tabel

„entry‟. Nilai „Qty‟ untuk seluruh kata yang

terdaftar di dalam tabel „entry‟ telah ditentukan sehingga sistem pasti akan menemukan bentuk

word graph untuk kata-kata tersebut. Nilai

„Qty‟ untuk kata-kata yang melalui tahap

stemming manual belum ditentukan. Semua

(24)

Tabel 6 Contoh isi tabel „polabenda‟ sebelum field„Pola‟ diberikan nilai default Awalan KategoriKD Akhiran Qty Pola

pe a null 1 7

pe a null 2 8

Penentuan nilai default dilakukan terhadap

tabel „polabenda‟ di dalam database „Kamus‟. Penentuan tersebut dilakukan dengan melihat

persentase jumlah kata pada tabel „entry‟ untuk

masing-masing imbuhan. Nilai default ditentukan dengan terlebih dahulu melihat jumlah kata terbanyak untuk setiap imbuhan. Misalnya pada pola kata pe-KS, jumlah kata

terbanyak di dalam tabel „entry‟ antara pola word graph pe-KS 1 dan pe-KS 2 adalah kata dengan pola pe-KS 1, maka sistem akan secara otomatis memasukkan setiap kata yang tidak

terdaftar di dalam tabel „entry‟ ke dalam pola pe-KS 1 jika kata tersebut memiliki imbuhan

„pe‟ dan jenis kata dasarnya adalah kata sifat. Penentuan nilai default terhadap pola word

graph kata benda diberikan pada tabel

„polabenda‟ yang dapat dilihat pada Tabel 7. Tabel 7 Contoh isi tabel „polabenda‟ setelah

field„Pola‟ diberikan nilai default Awalan KategoriKD Akhiran Qty Pola

pe a null 1 7

pe a null 2 8

pe a null null 8

2.3 Customer Test Drives Mock-up

Pengujian pada iterasi kedua dilakukan dengan memberikan input berupa kata benda

yang tidak terdaftar di dalam tabel „entry‟.

Contoh input yang diberikan pengguna adalah

„pemecahan‟. Sistem tidak dapat menemukan

bentuk word graph untuk kata „pemecahan‟ pada iterasi pertama karena belum diberikan nilai default terhadap pola pada tabel

„polabenda‟. Setelah dilakukan perbaikan,

sistem sekarang sudah dapat menentukan bentuk word graph untuk kata „pemecahan‟. Output yang dihasilkan oleh sistem jika contoh

input yang diberikan adalah „pemecahan‟ dapat

dilihat pada Gambar 16.

Gambar 16 Output yang dihasilkan dari input kata „pemecahan‟.

Perbaikan sistem dengan memberikan nilai default terhadap pola tidak sepenuhnya dapat menghasilkan word graph yang sesuai. Kesalahan terjadi pada proses penentuan pola

word graph untuk kata benda „penyemangat‟

dan „penjaring‟. Kata „penyemangat‟ tidak terdaftar di dalam tabel „entry‟ sehingga harus

melalui proses stemming manual. Makna dari

kata „penyemangat‟ seharusnya adalah “orang

atau sesuatu yang berhubungan dengan

semangat” sehingga seharusnya kata tersebut masuk ke Pola 6, yaitu pola pe-KB 2. Namun,

sistem memasukkan kata „penyemangat‟ ke

dalam Pola 5, yaitu pola pe-KB 1 yang

bermakna “orang yang berhubungan dengan KB”. Kesalahan tersebut terjadi akibat

pemberian nilai default terhadap pola pe-KS. Sistem secara otomatis akan memasukkan setiap kata dengan struktur pe-KS dan tidak terdaftar

di dalam tabel „entry‟ ke dalam pola 5.

Tingkat akurasi yang diperoleh dari 176 kata uji yang digunakan adalah sebesar 97,16%.

Akurasi= 172

176 x 100%=97,16% Selain kesalahan penentuan pola pada kata

„penyemangat‟ dan „penjaring‟, sistem juga melakukan kesalahan pembangkitan pola pada

kata „pemerah‟ dan „pengemas‟. Kesalahan

pembangkitan pola word graph kata benda terjadi karena kata dasar yang dihasilkan dari proses stemming lebih dari satu kata dasar. Jika hasil dari proses stemming menghasilkan lebih dari satu kata, kemungkinan kata dasar yang terpilih adalah yang pertama kali dikenali polanya walaupun pilihan tersebut belum tentu benar.

Kata „pemerah‟ yang terdaftar di dalam tabel „entry‟ memiliki dua kata dasar, yaitu „merah‟ dan „perah‟. Posisi kata „merah‟ di dalam tabel „entry‟ berada di atas kata „perah‟. Oleh karena itu, sistem akan mengambil kata dasar „merah‟

Gambar

Gambar 1  Diagram metode pengembangan
Gambar 2  Use case diagram untuk modul word graph kata benda.
Tabel 2  Contoh isi tabel „polabenda‟
Tabel 4  Hasil dari proses stemming KBBI
+7

Referensi

Dokumen terkait

Based on the explanation above, the researcher formulated the research question as follows: Can the implementation of information gap develop the speaking skill of the

Untuk itu, para ahli CBT (NACBT, 2007) menganggap bahwa aspek kognitif harus menjadi aspek yang utama dalam melakukan terapi. Hal ini dikarenakan suatu kondisi psikis

MASHUR Qur'an Hadist MI Swasta Darul Hikmah Sawahan KAB.. MANBA'UL

Spongebob Squarepants bukanlah serial kartun yang khusus bertemakan imajinasi bagi anak-anak, namun serial kartun ini dapat memberikan ajaran mengenai persahabatan yang

EFEKTIVITAS MODEL PEMBELAJARAN MISSOURI MATHEMATICS PROJECT (MMP) TERHADAP KEMAMPUAN BERPIKIR KREATIF MATEMATIS DAN PRESTASI BELAJAR PESERTA DIDIK PADA MATERI HIMPUNAN KELAS

Besarnya tarif retribusi jasa pengelolaan pasar tradisional disesuaikan dengan kelas pasarnya, sebagaimana yang tertuang pada Peraturan Bupati Bogor Nomor 12 Tahun

Data dari kedua kata langsung didapat jika kedua kata terdapat dalam KBBI, sama seperti pengecekan langsung kata masukan pada KBBI yang dilakukan pada iterasi

Lampiran 2 Diagram alir pembuatan modul word graph kata benda pada sistem KG_EDITOR.. Lampiran 3 Class diagram modul word graph kata benda 1 Class diagram